washout_builder 0.12.3 → 0.12.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- MjNjZTU3M2FjMjU1NDg3NjNiZWZmYWNiMjJiZmQ0NzFmYTIxOTFiZg==
4
+ M2JhN2Y4NzUzNWRkMmRmMTFiZGZiZTlkNzkxMjA3YzhjYWUwOGZjNg==
5
5
  data.tar.gz: !binary |-
6
- ZGRmY2YwNWQ3NDc0YzZiODY5ZDA0OTlmNjliMDFmZmVkOTk4YzFlNw==
6
+ NjFkM2ZmZGYxZjU5M2Y3ODJmYzVjZGM4OTI2M2I2ODg4OTJmMDNmNw==
7
7
  SHA512:
8
8
  metadata.gz: !binary |-
9
- M2RjOWJlYzMxNTU3NWE4OWFkZjAwMGFkYzUwMWIyYThlYTg4Nzg3NmNmNDg4
10
- ZGMxZWU2ZmE1NDQ1MjBlNWI2OWYxY2UzYTU1MjYzZjUzZDEwNWFmZjg1MWZi
11
- NzQyYTNkMWUxYTQ4ODJmOWE5OTEzMzAwZDg3MWJhM2MyOTRiZTA=
9
+ MWU0Mzc2ZDc3Mzg3NTRjODJmNGQ1YTY0YTg5NGVhOWJhZWVmNDhhMDA0NjUw
10
+ ZDU4YWRkYmE0MjllZjM1YWU4ZjhjMGNkMzM3MjFkMzIxNTcwMzM4YzhjODZl
11
+ NDFjZmM1OTNhZDc4MGM2YmFhMTQ2Mzc2YWZjMDFlYWU3NjE5ZDU=
12
12
  data.tar.gz: !binary |-
13
- MGE1ZDFiOWQ3NDJiOTdiOTY4MjM0ZTVmNTBmYzM5N2IyMzU0YjJkNTgxNGQ2
14
- N2I5NDU5N2QyM2M3YzFiMjk0MjE0NjNmZmUxOWQ1MTRiYjBkYWJlMGQ4ZjZj
15
- YWNhOWJkYjZhY2UwNzZkZTgwNDJhODY3MzhjOGQ5NmZlODY1NDQ=
13
+ MzM0MjI0MDhlOTdiZjY1YjE4YjY3ODNlYTg1N2E1MTY2MmRjZjJkZWZjYWQx
14
+ YjQ3MmMyNWQ0ZTVlODc1ODVhMGIyYjZkMDIxYWVhNGZjMzNmNThmMmEyMjBi
15
+ MDQ4NzRiNzExNjZhNTcwZmViZWFlZmQ1ODM1ZjM2ZGM4YmJkNWI=
@@ -4,39 +4,49 @@ module WashoutBuilderHelper
4
4
  types.each { |hash| create_complex_type_html(xml, hash[:obj], hash[:class], hash[:ancestors]) }
5
5
  end
6
6
 
7
+
8
+
9
+ def create_element_type_html(pre, complex_class, element)
10
+ unless complex_class.nil?
11
+ if element.multiplied == false
12
+ pre << "<a href='##{complex_class}'><span class='lightBlue'>#{complex_class}</span></a>&nbsp;<span class='bold'>#{element.name}</span>"
13
+ else
14
+ pre << "<a href='##{complex_class}'><span class='lightBlue'>Array of #{complex_class}</span></a>&nbsp;<span class='bold'>#{element.name}</span>"
15
+ end
16
+ end
17
+ end
18
+
19
+
20
+ def create_class_type_html(xml, class_name, ancestors)
21
+ xml.h3 { |pre| pre << "#{class_name} #{ancestors.blank? ? "" : "<small>(extends <a href='##{ancestors[0].to_s.classify}'>#{ancestors[0].to_s.classify}</a>)</small>" } " }
22
+ end
23
+
24
+
25
+ def create_complex_type_element_html(xml, element)
26
+ element.type = "string" if element.type == "text"
27
+ element.type = "integer" if element.type == "int"
28
+ xml.li { |pre|
29
+ if WashoutBuilder::Type::BASIC_TYPES.include?(element.type)
30
+ pre << "<span class='blue'>#{element.type}</span>&nbsp;<span class='bold'>#{element.name}</span>"
31
+ else
32
+ complex_class = element.get_complex_class_name
33
+ create_element_type_html(pre, complex_class, element)
34
+ end
35
+ }
36
+ end
7
37
 
8
38
 
9
39
  def create_complex_type_html(xml, param, class_name, ancestors)
10
40
  unless param.blank?
11
41
  xml.a( "name" => "#{class_name}") { }
12
- xml.h3 { |pre| pre << "#{class_name} #{ancestors.blank? ? "" : "<small>(extends <a href='##{ancestors[0].to_s.classify}'>#{ancestors[0].to_s.classify}</a>)</small>" } " }
13
-
42
+
43
+ create_class_type_html(xml, class_name, ancestors)
14
44
  if param.is_a?(WashOut::Param)
15
45
  xml.ul("class" => "pre") {
16
-
17
46
  param.map.each do |element|
18
- element.type = "string" if element.type == "text"
19
- # raise YAML::dump(element) if class_name.include?("ype") and element.name == "members"
20
- xml.li { |pre|
21
- if WashoutBuilder::Type::BASIC_TYPES.include?(element.type)
22
- element.type = "integer" if element.type == "int"
23
- pre << "<span class='blue'>#{element.type}</span>&nbsp;<span class='bold'>#{element.name}</span>"
24
- else
25
- complex_class = element.get_complex_class_name
26
- unless complex_class.nil?
27
- if element.multiplied == false
28
- pre << "<a href='##{complex_class}'><span class='lightBlue'>#{complex_class}</span></a>&nbsp;<span class='bold'>#{element.name}</span>"
29
- else
30
- pre << "<a href='##{complex_class}'><span class='lightBlue'>Array of #{complex_class}</span></a>&nbsp;<span class='bold'>#{element.name}</span>"
31
- end
32
- end
33
- end
34
- }
35
-
47
+ create_complex_type_element_html(xml, element)
36
48
  end
37
-
38
49
  }
39
-
40
50
  end
41
51
  end
42
52
  end
@@ -50,31 +60,37 @@ module WashoutBuilderHelper
50
60
  end
51
61
  end
52
62
 
63
+ def create_virtus_model_complex_element_type(pre, attr_primitive, attribute, array)
64
+ attribute_primitive = array == true ? "Array of #{attr_primitive}" : "#{attr_primitive}"
65
+ pre << "<a href='##{attr_primitive}'><span class='lightBlue'> #{attribute_primitive}</span></a>&nbsp;<span class='bold'>#{attribute}</span>"
66
+ end
67
+
68
+
69
+ def create_html_virtus_model_element_type(xml, attribute, attr_details)
70
+ xml.li { |pre|
71
+ if WashoutBuilder::Type::BASIC_TYPES.include?(attr_details[:primitive].to_s.downcase) || attr_details[:primitive] == "nilclass"
72
+ pre << "<span class='blue'>#{attr_details[:primitive].to_s.downcase == "nilclass" ? "string" : attr_details[:primitive].to_s.downcase }</span>&nbsp;<span class='bold'>#{attribute}</span>"
73
+
74
+ else
75
+ if attr_details[:primitive].to_s.downcase == "array"
76
+
77
+ attr_primitive = WashoutBuilder::Type::BASIC_TYPES.include?(attr_details[:member_type].to_s.downcase) ? attr_details[:member_type].to_s.downcase : attr_details[:member_type]
78
+ create_virtus_model_complex_element_type(pre,attr_primitive, attribute, true )
79
+ else
80
+ create_virtus_model_complex_element_type(pre,attr_details[:primitive], attribute, false )
81
+ end
82
+ end
83
+ }
84
+ end
53
85
 
54
-
55
86
 
56
87
  def create_html_virtus_model_type(xml, param, fault_structure, ancestors)
57
88
  if param.is_a?(Class)
58
- xml.h3 { |pre| pre << "#{param} #{ancestors.blank? ? "" : "<small>(extends <a href='##{ancestors[0].to_s.classify}'>#{ancestors[0].to_s.classify}</a>)</small>" } " }
89
+ create_class_type_html(xml, param, ancestors)
59
90
  xml.a("name" => "#{param}") {}
60
91
  xml.ul("class" => "pre") {
61
-
62
-
63
92
  fault_structure.each do |attribute, attr_details|
64
- xml.li { |pre|
65
- if WashoutBuilder::Type::BASIC_TYPES.include?(attr_details[:primitive].to_s.downcase) || attr_details[:primitive] == "nilclass"
66
- pre << "<span class='blue'>#{attr_details[:primitive].to_s.downcase == "nilclass" ? "string" : attr_details[:primitive].to_s.downcase }</span>&nbsp;<span class='bold'>#{attribute}</span>"
67
-
68
- else
69
- if attr_details[:primitive].to_s.downcase == "array"
70
-
71
- attr_primitive = WashoutBuilder::Type::BASIC_TYPES.include?(attr_details[:member_type].to_s.downcase) ? attr_details[:member_type].to_s.downcase : attr_details[:member_type]
72
- pre << "<a href='##{attr_primitive}'><span class='lightBlue'>Array of #{attr_primitive}</span></a>&nbsp;<span class='bold'>#{attribute}</span>"
73
- else
74
- pre << "<a href='##{attr_details[:primitive] }'><span class='lightBlue'>#{attr_details[:primitive]}</span></a>&nbsp;<span class='bold'>#{attribute}</span>"
75
- end
76
- end
77
- }
93
+ create_html_virtus_model_element_type(xml, attribute, attr_details)
78
94
  end
79
95
  }
80
96
  end
@@ -87,73 +103,35 @@ module WashoutBuilderHelper
87
103
  end
88
104
  end
89
105
 
106
+
107
+ def create_return_complex_type_html(xml, complex_class, builder_out)
108
+ return_content = builder_out[0].multiplied == false ? "#{complex_class}" : "Array of #{complex_class}"
109
+ xml.span("class" => "pre") { xml.a("href" => "##{complex_class}") { |xml| xml.span("class" => "lightBlue") { |y| y<<"#{return_content}" } } }
110
+ end
90
111
 
91
-
92
- def create_html_public_method(xml, operation, formats)
93
- # raise YAML::dump(formats[:builder_in])
94
- xml.h3 "#{operation}"
95
- xml.a("name" => "#{operation}") {}
96
-
97
-
98
- xml.p("class" => "pre"){ |pre|
99
- unless formats[:builder_out].nil?
100
- complex_class = formats[:builder_out][0].get_complex_class_name
101
- if WashoutBuilder::Type::BASIC_TYPES.include?(formats[:builder_out][0].type)
102
- xml.span("class" => "blue") { |y| y<< "#{formats[:builder_out][0].type}" }
103
- else
104
- unless complex_class.nil?
105
- if formats[:builder_out][0].multiplied == false
106
- pre << "<a href='##{complex_class}'><span class='lightBlue'>#{complex_class}</span></a>"
107
- else
108
- pre << "<a href='##{complex_class}'><span class='lightBlue'>Array of #{complex_class}</span></a>"
109
- end
110
- end
111
- end
112
- else
113
- pre << "void"
114
- end
115
-
116
- xml.span("class" => "bold") {|y| y << "#{operation} (" }
117
- mlen = formats[:builder_in].size
118
- xml.br if mlen > 1
119
- spacer = "&nbsp;&nbsp;&nbsp;&nbsp;"
120
- if mlen > 0
121
- j=0
122
- while j<mlen
123
- param = formats[:builder_in][j]
124
- complex_class = param.get_complex_class_name
125
- use_spacer = mlen > 1 ? true : false
126
- if WashoutBuilder::Type::BASIC_TYPES.include?(param.type)
127
- pre << "#{use_spacer ? spacer: ''}<span class='blue'>#{param.type}</span>&nbsp;<span class='bold'>#{param.name}</span>"
112
+
113
+ def create_return_type_html(xml, formats)
114
+ xml.p "Return value:"
115
+ xml.ul {
116
+ xml.li {
117
+ unless formats[:builder_out].nil?
118
+ complex_class = formats[:builder_out][0].get_complex_class_name
119
+ if WashoutBuilder::Type::BASIC_TYPES.include?(formats[:builder_out][0].type)
120
+ xml.span("class" => "pre") { |xml| xml.span("class" => "blue") { |sp| sp << "#{formats[:builder_out][0].type}" } }
128
121
  else
129
- unless complex_class.nil?
130
- if param.multiplied == false
131
- pre << "#{use_spacer ? spacer: ''}<a href='##{complex_class}'><span class='lightBlue'>#{complex_class}</span></a>&nbsp;<span class='bold'>#{param.name}</span>"
132
- else
133
- pre << "#{use_spacer ? spacer: ''}<a href='##{complex_class}'><span class='lightBlue'>Array of #{complex_class}</span></a>&nbsp;<span class='bold'>#{param.name}</span>"
134
- end
135
- end
122
+ create_return_complex_type_html(xml, complex_class, formats[:builder_out]) unless complex_class.nil?
136
123
  end
137
- if j< (mlen-1)
138
- xml.span ", "
139
- end
140
- if mlen > 1
141
- xml.br
142
- end
143
- if (j+1) == mlen
144
- xml.span("class" => "bold") {|y| y << ")" }
145
- end
146
- j+=1
124
+ else
125
+ xml.span("class" => "pre") { |sp| sp << "void" }
147
126
  end
148
-
149
- end
150
-
151
-
152
-
127
+
128
+ }
153
129
  }
154
- xml.p "#{formats[:description]}" if !formats[:description].blank?
130
+ end
131
+
132
+
133
+ def create_parameters_html(xml, formats)
155
134
  xml.p "Parameters:"
156
-
157
135
  xml.ul {
158
136
  j=0
159
137
  mlen = formats[:builder_in].size
@@ -164,47 +142,21 @@ module WashoutBuilderHelper
164
142
  if WashoutBuilder::Type::BASIC_TYPES.include?(param.type)
165
143
  pre << "<span class='blue'>#{param.type}</span>&nbsp;<span class='bold'>#{param.name}</span>"
166
144
  else
167
- unless complex_class.nil?
168
- if param.multiplied == false
169
- pre << "<a href='##{complex_class}'><span class='lightBlue'>#{complex_class}</span></a>&nbsp;<span class='bold'>#{param.name}</span>"
170
- else
171
- pre << "<a href='##{complex_class}'><span class='lightBlue'>Array of #{complex_class}</span></a>&nbsp;<span class='bold'>#{param.name}</span>"
172
- end
173
- end
145
+ create_element_type_html(pre, complex_class, param)
174
146
  end
175
147
  }
176
148
  j+=1
177
149
  end
178
-
179
- }
180
-
181
- xml.p "Return value:"
182
- xml.ul {
183
- xml.li {
184
- unless formats[:builder_out].nil?
185
- complex_class = formats[:builder_out][0].get_complex_class_name
186
- if WashoutBuilder::Type::BASIC_TYPES.include?(formats[:builder_out][0].type)
187
- xml.span("class" => "pre") { |xml| xml.span("class" => "blue") { |sp| sp << "#{formats[:builder_out][0].type}" } }
188
- else
189
- unless complex_class.nil?
190
- if formats[:builder_out][0].multiplied == false
191
- xml.span("class" => "pre") { xml.a("href" => "##{complex_class}") { |xml| xml.span("class" => "lightBlue") { |y| y<<"#{complex_class}" } } }
192
- else
193
- xml.span("class" => "pre") { xml.a("href" => "##{complex_class}") { |xml| xml.span("class" => "lightBlue") { |y| y<<"Array of #{complex_class}" } } }
194
- end
195
- end
196
- end
197
- else
198
- xml.span("class" => "pre") { |sp| sp << "void" }
199
- end
200
-
201
- }
150
+
202
151
  }
152
+ end
153
+
154
+ def create_exceptions_list_html(xml, formats)
203
155
  unless formats[:raises].blank?
204
156
  faults = formats[:raises]
205
157
  faults = [formats[:raises]] if !faults.is_a?(Array)
206
158
 
207
- faults = faults.select { |x| x.is_a?(Class) && (x.ancestors.detect{ |fault| WashoutBuilder::Type.get_fault_classes.include?(fault) }.present? || WashoutBuilder::Type.get_fault_classes.include?(x) ) }
159
+ faults = faults.select { |x| WashoutBuilder::Type.valid_fault_class?(x) }
208
160
  unless faults.blank?
209
161
  xml.p "Exceptions:"
210
162
  xml.ul {
@@ -215,5 +167,79 @@ module WashoutBuilderHelper
215
167
  end
216
168
  end
217
169
  end
170
+
171
+
172
+ def create_html_public_method_return_type(xml,pre, formats)
173
+ unless formats[:builder_out].nil?
174
+ complex_class = formats[:builder_out][0].get_complex_class_name
175
+ if WashoutBuilder::Type::BASIC_TYPES.include?(formats[:builder_out][0].type)
176
+ xml.span("class" => "blue") { |y| y<< "#{formats[:builder_out][0].type}" }
177
+ else
178
+ unless complex_class.nil?
179
+ if formats[:builder_out][0].multiplied == false
180
+ pre << "<a href='##{complex_class}'><span class='lightBlue'>#{complex_class}</span></a>"
181
+ else
182
+ pre << "<a href='##{complex_class}'><span class='lightBlue'>Array of #{complex_class}</span></a>"
183
+ end
184
+ end
185
+ end
186
+ else
187
+ pre << "void"
188
+ end
189
+ end
190
+
191
+ def create_html_public_method_arguments_complex_type(pre, spacer, use_spacer, complex_class, param)
192
+ argument_content = param.multiplied == false ? "#{complex_class}" : "Array of #{complex_class}"
193
+ pre << "#{use_spacer ? spacer: ''}<a href='##{complex_class}'><span class='lightBlue'>#{argument_content}</span></a>&nbsp;<span class='bold'>#{param.name}</span>"
194
+ end
195
+
196
+ def create_html_public_method_arguments(xml, pre, operation, formats)
197
+ xml.span("class" => "bold") {|y| y << "#{operation} (" }
198
+ mlen = formats[:builder_in].size
199
+ xml.br if mlen > 1
200
+ spacer = "&nbsp;&nbsp;&nbsp;&nbsp;"
201
+ if mlen > 0
202
+ j=0
203
+ while j<mlen
204
+ param = formats[:builder_in][j]
205
+ complex_class = param.get_complex_class_name
206
+ use_spacer = mlen > 1 ? true : false
207
+ if WashoutBuilder::Type::BASIC_TYPES.include?(param.type)
208
+ pre << "#{use_spacer ? spacer: ''}<span class='blue'>#{param.type}</span>&nbsp;<span class='bold'>#{param.name}</span>"
209
+ else
210
+ unless complex_class.nil?
211
+ create_html_public_method_arguments_complex_type(pre, spacer, use_spacer, complex_class, param)
212
+ end
213
+ end
214
+ if j< (mlen-1)
215
+ xml.span ", "
216
+ end
217
+ if mlen > 1
218
+ xml.br
219
+ end
220
+ if (j+1) == mlen
221
+ xml.span("class" => "bold") {|y| y << ")" }
222
+ end
223
+ j+=1
224
+ end
225
+
226
+ end
227
+ end
228
+
229
+
230
+ def create_html_public_method(xml, operation, formats)
231
+ # raise YAML::dump(formats[:builder_in])
232
+ xml.h3 "#{operation}"
233
+ xml.a("name" => "#{operation}") {}
234
+
235
+ xml.p("class" => "pre"){ |pre|
236
+ create_html_public_method_return_type(xml,pre, formats)
237
+ create_html_public_method_arguments(xml, pre, operation, formats)
238
+ }
239
+ xml.p "#{formats[:description]}" if !formats[:description].blank?
240
+ create_parameters_html(xml, formats)
241
+ create_return_type_html(xml, formats)
242
+ create_exceptions_list_html(xml, formats)
243
+ end
218
244
 
219
245
  end
@@ -1,3 +1,3 @@
1
1
  module WashoutBuilder
2
- VERSION = "0.12.3"
2
+ VERSION = "0.12.4"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: washout_builder
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.12.3
4
+ version: 0.12.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - bogdanRada