phari_doc_gen 3.1.0 → 3.1.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 25a089731181cdd74ef5e329ebea21ca0c76f470
4
- data.tar.gz: 3bcb65a77bca2679904cc4cf4133a5d9b0fadbc9
3
+ metadata.gz: 9cfc4375dfeebfedbc72b6c1d72606e1bd785956
4
+ data.tar.gz: 2af9ab2a967951d392116b56ff6bc994a00c09f7
5
5
  SHA512:
6
- metadata.gz: 96346210049485630f6a468ef809b4346d0cd1cb5037dcbb701ebd9fcc9571a5a8df8a8aff937eea6064c91cd3b90651d7b82cb226243eb75e3c5faff221a43f
7
- data.tar.gz: 4183130f49d48de9f04e29fca8f6e2f3bdf1b8e505997f864ff3cb2c46e4e3c363ca80f654be546637ca68f79fc1c7278274e66efe3f45f9056adc786371c61c
6
+ metadata.gz: 227d7265a65225e844dc144faa4a43481c534aad13c8ad296a5f9980ecfc8a4b9b8ac1d8c0ffab85a52b93ba627ff14190211533f4dc0768c37947445f1cc527
7
+ data.tar.gz: 2b30ebe10d48fbfbad635019205c972235a0c3dcdb082b01dd570ebd237e16ac48dcf6c90970eb2a1e84be60f43efacb024ed069c32b4f1d5977884ef658804e
File without changes
@@ -5,19 +5,18 @@
5
5
  # Luiz Philippe.
6
6
  #--------------------------------------------------------------------------------------------
7
7
 
8
+ require 'erubis'
8
9
  require_relative 'modelo.rb'
9
10
  require_relative 'rota.rb'
10
11
  require_relative 'metodo.rb'
11
12
  require_relative 'methodParam.rb'
12
13
  require_relative 'meta.rb'
13
- require 'erubis'
14
14
 
15
15
  class FileHandler
16
16
  # Reading files
17
17
  # Find a folder with the project name
18
18
  def packageExistis?(packageName)
19
19
  found = false
20
- package = ''
21
20
  puts'Finding project'
22
21
  puts'It may take some time...'
23
22
  packageName += '/' unless packageName.end_with?('/')
@@ -481,7 +480,9 @@ class FileHandler
481
480
  type = type.slice(0, type.index("\s"))
482
481
  end
483
482
  type = type.slice(0, type.size-1) if type.end_with?("\s") || type.end_with?("\n")
484
- isObject = true if type.downcase == "object"
483
+ isObject = type.downcase == "object"
484
+ isCollection = type.downcase == "array"
485
+ # Inserting attributes inside objects
485
486
  if name.include?(">")
486
487
  isChild = true
487
488
  path = []
@@ -492,17 +493,23 @@ class FileHandler
492
493
  end
493
494
  fatherObject = nil
494
495
  path.each do |object|
495
- raise ArgumentError, "Object #{object} does not exists!" unless objects.has_key?(object) && objects["#{object}"].isObject
496
- fatherObject = objects["#{object}"]
496
+ if (fatherObject.nil? || fatherObject.isObject)
497
+ raise ArgumentError, "Object #{object} does not exists!" unless objects.has_key?(object) && (objects["#{object}"].isObject || objects["#{object}"].isCollection)
498
+ fatherObject = objects["#{object}"]
499
+ elsif (fatherObject.isCollection)
500
+ raise ArgumentError, "Object #{object} is not a position of #{fatherObject.name}!" unless (objects["content"].isObject || objects["content"].isCollection)
501
+ fatherObject = objects["content"]
502
+ end
497
503
  objects = fatherObject.childAttributes
498
504
  end
499
505
  end
500
- data = MethodParam.new(name, type, notNull, isObject, isChild, example)
501
- fatherObject.addField data unless fatherObject.nil?
506
+ data = MethodParam.new(name, type, notNull, isObject, isCollection, isChild, example)
507
+ fatherObject.addField data unless (fatherObject.nil? || fatherObject.isCollection)
508
+ fatherObject.setContent data unless (fatherObject.nil? || fatherObject.isObject)
502
509
  # Return the data
503
510
  return data
504
511
  elsif argument.include? "nil"
505
- data = MethodParam.new('', 'nil', nil, nil, nil, nil)
512
+ data = MethodParam.new('', 'nil', false, false, false, false, nil)
506
513
  return data
507
514
  end
508
515
  argumentText = argument.slice(0, argument.index("\n"))
@@ -545,8 +552,7 @@ class FileHandler
545
552
  # Write the css content
546
553
  def writeCSS(file)
547
554
  css_file = gem_libdir+'/templates/style.css'
548
- css = File.read(css_file)
549
- file.write(css)
555
+ file.write(File.read(css_file))
550
556
  end
551
557
 
552
558
  #Write the main project HTML content
@@ -588,7 +594,9 @@ class FileHandler
588
594
  def gem_libdir
589
595
  t = ["#{File.dirname(File.expand_path($0))}/../lib/#{Meta::NAME}",
590
596
  "#{Gem.dir}/gems/#{Meta::NAME}-#{Meta::VERSION}/lib/#{Meta::NAME}"]
591
- t.each {|i| return i if File.readable?(i) }
597
+ t.each do |i|
598
+ return i if File.readable?(i)
599
+ end
592
600
  raise "both paths are invalid: #{t}"
593
601
  end
594
602
  end
@@ -1,4 +1,4 @@
1
1
  module Meta
2
2
  NAME = 'phari_doc_gen'
3
- VERSION = '3.1.0'
3
+ VERSION = '3.1.1'
4
4
  end
@@ -6,44 +6,56 @@
6
6
  #--------------------------------------------------------------------------------------------
7
7
 
8
8
  class MethodParam
9
- attr_accessor :name, :type, :notNull, :isObject, :isChild, :example, :childAttributes, :serial
9
+ attr_accessor :name, :type, :notNull, :isObject, :isCollection, :isChild, :example, :childAttributes, :serial
10
10
 
11
- def initialize(name = "", type = "", notNull = true, isObject = false, isChild = false, example = nil)
12
- @name = name
13
- @type = type
14
- @notNull = notNull
15
- @isObject = isObject
16
- @isChild = isChild
17
- @example = example
18
- @childAttributes = {} if @isObject
19
- @serial = self.serialize
11
+ def initialize(name = "", type = "", notNull = true, isObject = false, isCollection = false, isChild = false, example = nil)
12
+ @name = name
13
+ @type = type
14
+ @notNull = notNull
15
+ @isObject = isObject
16
+ @isCollection = isCollection
17
+ @isChild = isChild
18
+ @example = example
19
+ @childAttributes = {} if (@isObject || @isCollection)
20
20
  end
21
21
 
22
22
  def addField attribute
23
- @childAttributes["#{attribute.name}"] = attribute
24
- @serial = self.serialize
23
+ raise ArgumentError, "Cannot add field to no object param" unless @isObject
24
+ @childAttributes["#{attribute.name}"] = attribute
25
+ end
26
+
27
+ def setContent attribute
28
+ raise ArgumentError, "Cannot set content of no array param" unless @isCollection
29
+ @childAttributes["content"] = attribute
25
30
  end
26
31
 
27
32
  def serialize
28
- if @type == 'nil'
29
- serialized = "Null"
30
- elsif @isObject
31
- serialized = "#{@name}: {<br><ul>"
32
- @childAttributes.each do |attribute|
33
- serialized = serialized + "<li>#{attribute[1].serialize}</li>"
34
- end
35
- serialized = serialized + "</ul>}"
33
+ if @type == 'nil'
34
+ serialized = "Null"
35
+ elsif @isObject
36
+ serialized = "#{@name}: {<br><ul>"
37
+ @childAttributes.each do |attribute|
38
+ serialized = serialized + "<li>#{attribute[1].serialize}</li>"
39
+ end
40
+ serialized = serialized + "</ul>}"
41
+ elsif @isCollection
42
+ if @childAttributes['content'].nil?
43
+ serialized = "#{@name}: [<br><ul><li>Null</li><li>...</li></ul>"
44
+ else
45
+ # puts "child attributes: #{@childAttributes['content'].type}"
46
+ serialized = "#{@name}: [<br><ul><li>#{@childAttributes['content'].serialize},</li><li>...</li>]</ul>"
47
+ end
48
+ else
49
+ unless @example.nil?
50
+ serialized = "#{@name}: #{@example}"
36
51
  else
37
- unless @example.nil?
38
- serialized = "#{@name}: #{@example}"
39
- else
40
- serialized = "#{@name}: #{@type}"
41
- end
52
+ serialized = "#{@name}: #{@type}"
42
53
  end
43
- serialized
54
+ end
55
+ serialized
44
56
  end
45
57
 
46
- def printSelf
58
+ def dump
47
59
  puts self.serialize
48
60
  end
49
61
  end
@@ -54,25 +54,33 @@
54
54
  <%description = method.description%>
55
55
  <div class='list-group-item'>
56
56
  <h4 class='list-group-item-heading'>CRUD: <%=type%><br>Name: <%name%></h4>
57
- <p><br>Inputs:<br><ul>
58
- <%unless inputs.nil?%>
59
- <%for input in inputs%>
60
- <%input = input[1]%>
61
- <li><%=input.serialize%></li>
62
- <%end%>
63
- <%end%>
64
- </ul><br>Outputs:<br><ul>
65
- <%unless outputs.nil?%>
66
- <% for output in outputs%>
67
- <%output = output[1]%>
68
- <%if output != 'nil'%>
69
- <li><%=output.serialize%></li>
70
- <%else%>
71
- <li>Null</li>
57
+ <p>
58
+ <br>Inputs:
59
+ <br>
60
+ <ul>
61
+ <%unless inputs.nil?%>
62
+ <%for input in inputs%>
63
+ <%input = input[1]%>
64
+ <li><%=input.serialize%></li>
72
65
  <%end%>
73
- <%end%>
74
- <%end%>
75
- </ul><br>Description: <%=description%></p>
66
+ <%end%>
67
+ </ul>
68
+ <br>Outputs:
69
+ <br>
70
+ <ul>
71
+ <%unless outputs.nil?%>
72
+ <% for output in outputs%>
73
+ <%output = output[1]%>
74
+ <%if output != 'nil'%>
75
+ <li><%=output.serialize%></li>
76
+ <%else%>
77
+ <li>Null</li>
78
+ <%end%>
79
+ <%end%>
80
+ <%end%>
81
+ </ul>
82
+ <br>Description: <%=description%>
83
+ </p>
76
84
  </div>
77
85
  <%end%>
78
86
  <%end%>
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: phari_doc_gen
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.1.0
4
+ version: 3.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Phari Solutions
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2018-02-21 00:00:00.000000000 Z
12
+ date: 2018-02-23 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: activesupport