xbim_comms 2.0.0 → 2.0.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (145) hide show
  1. checksums.yaml +4 -4
  2. metadata +5 -148
  3. data/Gemfile +0 -9
  4. data/README.md +0 -210
  5. data/Rakefile +0 -10
  6. data/lib/xbim_comms/api/contacts_api.rb +0 -206
  7. data/lib/xbim_comms/api/conversations_api.rb +0 -2670
  8. data/lib/xbim_comms/api/files_api.rb +0 -107
  9. data/lib/xbim_comms/api/snapshots_api.rb +0 -100
  10. data/lib/xbim_comms/api_client.rb +0 -390
  11. data/lib/xbim_comms/api_error.rb +0 -57
  12. data/lib/xbim_comms/configuration.rb +0 -278
  13. data/lib/xbim_comms/models/aggregate.rb +0 -227
  14. data/lib/xbim_comms/models/aggregate_list_value.rb +0 -220
  15. data/lib/xbim_comms/models/analytical_result.rb +0 -270
  16. data/lib/xbim_comms/models/analytical_result_all_of.rb +0 -258
  17. data/lib/xbim_comms/models/animation.rb +0 -232
  18. data/lib/xbim_comms/models/animation_all_of.rb +0 -220
  19. data/lib/xbim_comms/models/bitmap.rb +0 -303
  20. data/lib/xbim_comms/models/blob.rb +0 -245
  21. data/lib/xbim_comms/models/boolean_value.rb +0 -218
  22. data/lib/xbim_comms/models/clipping_plane.rb +0 -231
  23. data/lib/xbim_comms/models/coloring.rb +0 -229
  24. data/lib/xbim_comms/models/column_request.rb +0 -279
  25. data/lib/xbim_comms/models/component.rb +0 -236
  26. data/lib/xbim_comms/models/components.rb +0 -240
  27. data/lib/xbim_comms/models/contact.rb +0 -227
  28. data/lib/xbim_comms/models/contact_list.rb +0 -238
  29. data/lib/xbim_comms/models/conversation.rb +0 -392
  30. data/lib/xbim_comms/models/conversation_create.rb +0 -273
  31. data/lib/xbim_comms/models/conversation_list.rb +0 -238
  32. data/lib/xbim_comms/models/conversation_tenant.rb +0 -254
  33. data/lib/xbim_comms/models/conversation_update.rb +0 -302
  34. data/lib/xbim_comms/models/entity_key.rb +0 -227
  35. data/lib/xbim_comms/models/exception_message.rb +0 -245
  36. data/lib/xbim_comms/models/file.rb +0 -266
  37. data/lib/xbim_comms/models/file_all_of.rb +0 -254
  38. data/lib/xbim_comms/models/int32_value.rb +0 -218
  39. data/lib/xbim_comms/models/key_frame.rb +0 -236
  40. data/lib/xbim_comms/models/line.rb +0 -231
  41. data/lib/xbim_comms/models/message.rb +0 -416
  42. data/lib/xbim_comms/models/message_content.rb +0 -220
  43. data/lib/xbim_comms/models/message_create.rb +0 -273
  44. data/lib/xbim_comms/models/message_list.rb +0 -238
  45. data/lib/xbim_comms/models/message_part.rb +0 -246
  46. data/lib/xbim_comms/models/message_update.rb +0 -297
  47. data/lib/xbim_comms/models/orthogonal_camera.rb +0 -269
  48. data/lib/xbim_comms/models/participant.rb +0 -232
  49. data/lib/xbim_comms/models/participant_with_role.rb +0 -293
  50. data/lib/xbim_comms/models/participant_with_role_create.rb +0 -266
  51. data/lib/xbim_comms/models/participant_with_role_list.rb +0 -238
  52. data/lib/xbim_comms/models/participant_with_role_update.rb +0 -261
  53. data/lib/xbim_comms/models/perspective_camera.rb +0 -269
  54. data/lib/xbim_comms/models/pie_chart.rb +0 -257
  55. data/lib/xbim_comms/models/pie_chart_all_of.rb +0 -245
  56. data/lib/xbim_comms/models/point.rb +0 -227
  57. data/lib/xbim_comms/models/preview_row.rb +0 -220
  58. data/lib/xbim_comms/models/schedule.rb +0 -270
  59. data/lib/xbim_comms/models/schedule_all_of.rb +0 -258
  60. data/lib/xbim_comms/models/schedule_column.rb +0 -384
  61. data/lib/xbim_comms/models/schedule_request.rb +0 -252
  62. data/lib/xbim_comms/models/schedule_request_all_of.rb +0 -240
  63. data/lib/xbim_comms/models/section_box.rb +0 -274
  64. data/lib/xbim_comms/models/sheet.rb +0 -268
  65. data/lib/xbim_comms/models/sheet_all_of.rb +0 -256
  66. data/lib/xbim_comms/models/sheet_part.rb +0 -254
  67. data/lib/xbim_comms/models/snapshot.rb +0 -270
  68. data/lib/xbim_comms/models/text.rb +0 -220
  69. data/lib/xbim_comms/models/view.rb +0 -239
  70. data/lib/xbim_comms/models/view_all_of.rb +0 -227
  71. data/lib/xbim_comms/models/view_setup_hints.rb +0 -236
  72. data/lib/xbim_comms/models/viewpoint.rb +0 -296
  73. data/lib/xbim_comms/models/visibility.rb +0 -238
  74. data/lib/xbim_comms/version.rb +0 -15
  75. data/lib/xbim_comms.rb +0 -104
  76. data/spec/api/contacts_api_spec.rb +0 -74
  77. data/spec/api/conversations_api_spec.rb +0 -521
  78. data/spec/api/files_api_spec.rb +0 -50
  79. data/spec/api/snapshots_api_spec.rb +0 -49
  80. data/spec/api_client_spec.rb +0 -226
  81. data/spec/configuration_spec.rb +0 -42
  82. data/spec/models/aggregate_list_value_spec.rb +0 -34
  83. data/spec/models/aggregate_spec.rb +0 -40
  84. data/spec/models/analytical_result_all_of_spec.rb +0 -58
  85. data/spec/models/analytical_result_spec.rb +0 -58
  86. data/spec/models/animation_all_of_spec.rb +0 -34
  87. data/spec/models/animation_spec.rb +0 -34
  88. data/spec/models/bitmap_spec.rb +0 -68
  89. data/spec/models/blob_spec.rb +0 -52
  90. data/spec/models/boolean_value_spec.rb +0 -34
  91. data/spec/models/clipping_plane_spec.rb +0 -40
  92. data/spec/models/coloring_spec.rb +0 -40
  93. data/spec/models/column_request_spec.rb +0 -56
  94. data/spec/models/component_spec.rb +0 -46
  95. data/spec/models/components_spec.rb +0 -46
  96. data/spec/models/contact_list_spec.rb +0 -46
  97. data/spec/models/contact_spec.rb +0 -40
  98. data/spec/models/conversation_create_spec.rb +0 -64
  99. data/spec/models/conversation_list_spec.rb +0 -46
  100. data/spec/models/conversation_spec.rb +0 -122
  101. data/spec/models/conversation_tenant_spec.rb +0 -58
  102. data/spec/models/conversation_update_spec.rb +0 -68
  103. data/spec/models/entity_key_spec.rb +0 -40
  104. data/spec/models/exception_message_spec.rb +0 -52
  105. data/spec/models/file_all_of_spec.rb +0 -58
  106. data/spec/models/file_spec.rb +0 -58
  107. data/spec/models/int32_value_spec.rb +0 -34
  108. data/spec/models/key_frame_spec.rb +0 -46
  109. data/spec/models/line_spec.rb +0 -40
  110. data/spec/models/message_content_spec.rb +0 -34
  111. data/spec/models/message_create_spec.rb +0 -64
  112. data/spec/models/message_list_spec.rb +0 -46
  113. data/spec/models/message_part_spec.rb +0 -46
  114. data/spec/models/message_spec.rb +0 -146
  115. data/spec/models/message_update_spec.rb +0 -68
  116. data/spec/models/orthogonal_camera_spec.rb +0 -64
  117. data/spec/models/participant_spec.rb +0 -40
  118. data/spec/models/participant_with_role_create_spec.rb +0 -44
  119. data/spec/models/participant_with_role_list_spec.rb +0 -46
  120. data/spec/models/participant_with_role_spec.rb +0 -62
  121. data/spec/models/participant_with_role_update_spec.rb +0 -44
  122. data/spec/models/perspective_camera_spec.rb +0 -64
  123. data/spec/models/pie_chart_all_of_spec.rb +0 -52
  124. data/spec/models/pie_chart_spec.rb +0 -52
  125. data/spec/models/point_spec.rb +0 -40
  126. data/spec/models/preview_row_spec.rb +0 -34
  127. data/spec/models/schedule_all_of_spec.rb +0 -58
  128. data/spec/models/schedule_column_spec.rb +0 -118
  129. data/spec/models/schedule_request_all_of_spec.rb +0 -46
  130. data/spec/models/schedule_request_spec.rb +0 -46
  131. data/spec/models/schedule_spec.rb +0 -58
  132. data/spec/models/section_box_spec.rb +0 -70
  133. data/spec/models/sheet_all_of_spec.rb +0 -58
  134. data/spec/models/sheet_part_spec.rb +0 -58
  135. data/spec/models/sheet_spec.rb +0 -58
  136. data/spec/models/snapshot_spec.rb +0 -50
  137. data/spec/models/text_spec.rb +0 -28
  138. data/spec/models/view_all_of_spec.rb +0 -40
  139. data/spec/models/view_setup_hints_spec.rb +0 -46
  140. data/spec/models/view_spec.rb +0 -40
  141. data/spec/models/viewpoint_spec.rb +0 -82
  142. data/spec/models/visibility_spec.rb +0 -46
  143. data/spec/spec_helper.rb +0 -111
  144. data/xbim_comms-1.0.0.gem +0 -0
  145. data/xbim_comms.gemspec +0 -38
@@ -1,274 +0,0 @@
1
- =begin
2
- #Flex Comms API 2.0
3
-
4
- #Communication centralised around construction data
5
-
6
- The version of the OpenAPI document: 2.0
7
- Contact: info@xbim.net
8
- Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 5.4.0
10
-
11
- =end
12
-
13
- require 'date'
14
- require 'time'
15
-
16
- module XbimComms
17
- class SectionBox
18
- attr_accessor :location
19
-
20
- attr_accessor :rotation_x
21
-
22
- attr_accessor :rotation_y
23
-
24
- attr_accessor :rotation_z
25
-
26
- attr_accessor :length_x
27
-
28
- attr_accessor :length_y
29
-
30
- attr_accessor :length_z
31
-
32
- # Attribute mapping from ruby-style variable name to JSON key.
33
- def self.attribute_map
34
- {
35
- :'location' => :'location',
36
- :'rotation_x' => :'rotationX',
37
- :'rotation_y' => :'rotationY',
38
- :'rotation_z' => :'rotationZ',
39
- :'length_x' => :'lengthX',
40
- :'length_y' => :'lengthY',
41
- :'length_z' => :'lengthZ'
42
- }
43
- end
44
-
45
- # Returns all the JSON keys this model knows about
46
- def self.acceptable_attributes
47
- attribute_map.values
48
- end
49
-
50
- # Attribute type mapping.
51
- def self.openapi_types
52
- {
53
- :'location' => :'Array<Float>',
54
- :'rotation_x' => :'Float',
55
- :'rotation_y' => :'Float',
56
- :'rotation_z' => :'Float',
57
- :'length_x' => :'Float',
58
- :'length_y' => :'Float',
59
- :'length_z' => :'Float'
60
- }
61
- end
62
-
63
- # List of attributes with nullable: true
64
- def self.openapi_nullable
65
- Set.new([
66
- ])
67
- end
68
-
69
- # Initializes the object
70
- # @param [Hash] attributes Model attributes in the form of hash
71
- def initialize(attributes = {})
72
- if (!attributes.is_a?(Hash))
73
- fail ArgumentError, "The input argument (attributes) must be a hash in `XbimComms::SectionBox` initialize method"
74
- end
75
-
76
- # check to see if the attribute exists and convert string to symbol for hash key
77
- attributes = attributes.each_with_object({}) { |(k, v), h|
78
- if (!self.class.attribute_map.key?(k.to_sym))
79
- fail ArgumentError, "`#{k}` is not a valid attribute in `XbimComms::SectionBox`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
80
- end
81
- h[k.to_sym] = v
82
- }
83
-
84
- if attributes.key?(:'location')
85
- if (value = attributes[:'location']).is_a?(Array)
86
- self.location = value
87
- end
88
- end
89
-
90
- if attributes.key?(:'rotation_x')
91
- self.rotation_x = attributes[:'rotation_x']
92
- end
93
-
94
- if attributes.key?(:'rotation_y')
95
- self.rotation_y = attributes[:'rotation_y']
96
- end
97
-
98
- if attributes.key?(:'rotation_z')
99
- self.rotation_z = attributes[:'rotation_z']
100
- end
101
-
102
- if attributes.key?(:'length_x')
103
- self.length_x = attributes[:'length_x']
104
- end
105
-
106
- if attributes.key?(:'length_y')
107
- self.length_y = attributes[:'length_y']
108
- end
109
-
110
- if attributes.key?(:'length_z')
111
- self.length_z = attributes[:'length_z']
112
- end
113
- end
114
-
115
- # Show invalid properties with the reasons. Usually used together with valid?
116
- # @return Array for valid properties with the reasons
117
- def list_invalid_properties
118
- invalid_properties = Array.new
119
- invalid_properties
120
- end
121
-
122
- # Check to see if the all the properties in the model are valid
123
- # @return true if the model is valid
124
- def valid?
125
- true
126
- end
127
-
128
- # Checks equality by comparing each attribute.
129
- # @param [Object] Object to be compared
130
- def ==(o)
131
- return true if self.equal?(o)
132
- self.class == o.class &&
133
- location == o.location &&
134
- rotation_x == o.rotation_x &&
135
- rotation_y == o.rotation_y &&
136
- rotation_z == o.rotation_z &&
137
- length_x == o.length_x &&
138
- length_y == o.length_y &&
139
- length_z == o.length_z
140
- end
141
-
142
- # @see the `==` method
143
- # @param [Object] Object to be compared
144
- def eql?(o)
145
- self == o
146
- end
147
-
148
- # Calculates hash code according to all attributes.
149
- # @return [Integer] Hash code
150
- def hash
151
- [location, rotation_x, rotation_y, rotation_z, length_x, length_y, length_z].hash
152
- end
153
-
154
- # Builds the object from hash
155
- # @param [Hash] attributes Model attributes in the form of hash
156
- # @return [Object] Returns the model itself
157
- def self.build_from_hash(attributes)
158
- new.build_from_hash(attributes)
159
- end
160
-
161
- # Builds the object from hash
162
- # @param [Hash] attributes Model attributes in the form of hash
163
- # @return [Object] Returns the model itself
164
- def build_from_hash(attributes)
165
- return nil unless attributes.is_a?(Hash)
166
- self.class.openapi_types.each_pair do |key, type|
167
- if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
168
- self.send("#{key}=", nil)
169
- elsif type =~ /\AArray<(.*)>/i
170
- # check to ensure the input is an array given that the attribute
171
- # is documented as an array but the input is not
172
- if attributes[self.class.attribute_map[key]].is_a?(Array)
173
- self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
174
- end
175
- elsif !attributes[self.class.attribute_map[key]].nil?
176
- self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
177
- end
178
- end
179
-
180
- self
181
- end
182
-
183
- # Deserializes the data based on type
184
- # @param string type Data type
185
- # @param string value Value to be deserialized
186
- # @return [Object] Deserialized data
187
- def _deserialize(type, value)
188
- case type.to_sym
189
- when :Time
190
- Time.parse(value)
191
- when :Date
192
- Date.parse(value)
193
- when :String
194
- value.to_s
195
- when :Integer
196
- value.to_i
197
- when :Float
198
- value.to_f
199
- when :Boolean
200
- if value.to_s =~ /\A(true|t|yes|y|1)\z/i
201
- true
202
- else
203
- false
204
- end
205
- when :Object
206
- # generic object (usually a Hash), return directly
207
- value
208
- when /\AArray<(?<inner_type>.+)>\z/
209
- inner_type = Regexp.last_match[:inner_type]
210
- value.map { |v| _deserialize(inner_type, v) }
211
- when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
212
- k_type = Regexp.last_match[:k_type]
213
- v_type = Regexp.last_match[:v_type]
214
- {}.tap do |hash|
215
- value.each do |k, v|
216
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
217
- end
218
- end
219
- else # model
220
- # models (e.g. Pet) or oneOf
221
- klass = XbimComms.const_get(type)
222
- klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
223
- end
224
- end
225
-
226
- # Returns the string representation of the object
227
- # @return [String] String presentation of the object
228
- def to_s
229
- to_hash.to_s
230
- end
231
-
232
- # to_body is an alias to to_hash (backward compatibility)
233
- # @return [Hash] Returns the object in the form of hash
234
- def to_body
235
- to_hash
236
- end
237
-
238
- # Returns the object in the form of hash
239
- # @return [Hash] Returns the object in the form of hash
240
- def to_hash
241
- hash = {}
242
- self.class.attribute_map.each_pair do |attr, param|
243
- value = self.send(attr)
244
- if value.nil?
245
- is_nullable = self.class.openapi_nullable.include?(attr)
246
- next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
247
- end
248
-
249
- hash[param] = _to_hash(value)
250
- end
251
- hash
252
- end
253
-
254
- # Outputs non-array value in the form of hash
255
- # For object, use to_hash. Otherwise, just return the value
256
- # @param [Object] value Any valid value
257
- # @return [Hash] Returns the value in the form of hash
258
- def _to_hash(value)
259
- if value.is_a?(Array)
260
- value.compact.map { |v| _to_hash(v) }
261
- elsif value.is_a?(Hash)
262
- {}.tap do |hash|
263
- value.each { |k, v| hash[k] = _to_hash(v) }
264
- end
265
- elsif value.respond_to? :to_hash
266
- value.to_hash
267
- else
268
- value
269
- end
270
- end
271
-
272
- end
273
-
274
- end
@@ -1,268 +0,0 @@
1
- =begin
2
- #Flex Comms API 2.0
3
-
4
- #Communication centralised around construction data
5
-
6
- The version of the OpenAPI document: 2.0
7
- Contact: info@xbim.net
8
- Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 5.4.0
10
-
11
- =end
12
-
13
- require 'date'
14
- require 'time'
15
-
16
- module XbimComms
17
- class Sheet < MessagePart
18
- attr_accessor :width
19
-
20
- attr_accessor :height
21
-
22
- attr_accessor :parts
23
-
24
- attr_accessor :file
25
-
26
- attr_accessor :snapshot
27
-
28
- # Attribute mapping from ruby-style variable name to JSON key.
29
- def self.attribute_map
30
- {
31
- :'width' => :'width',
32
- :'height' => :'height',
33
- :'parts' => :'parts',
34
- :'file' => :'file',
35
- :'snapshot' => :'snapshot'
36
- }
37
- end
38
-
39
- # Returns all the JSON keys this model knows about, including the ones defined in its parent(s)
40
- def self.acceptable_attributes
41
- attribute_map.values.concat(superclass.acceptable_attributes)
42
- end
43
-
44
- # Attribute type mapping.
45
- def self.openapi_types
46
- {
47
- :'width' => :'Integer',
48
- :'height' => :'Integer',
49
- :'parts' => :'Array<SheetPart>',
50
- :'file' => :'File',
51
- :'snapshot' => :'Snapshot'
52
- }
53
- end
54
-
55
- # List of attributes with nullable: true
56
- def self.openapi_nullable
57
- Set.new([
58
- ])
59
- end
60
-
61
- # List of class defined in allOf (OpenAPI v3)
62
- def self.openapi_all_of
63
- [
64
- :'MessagePart',
65
- :'SheetAllOf'
66
- ]
67
- end
68
-
69
- # Initializes the object
70
- # @param [Hash] attributes Model attributes in the form of hash
71
- def initialize(attributes = {})
72
- if (!attributes.is_a?(Hash))
73
- fail ArgumentError, "The input argument (attributes) must be a hash in `XbimComms::Sheet` initialize method"
74
- end
75
-
76
- # check to see if the attribute exists and convert string to symbol for hash key
77
- attributes = attributes.each_with_object({}) { |(k, v), h|
78
- if (!self.class.attribute_map.key?(k.to_sym))
79
- fail ArgumentError, "`#{k}` is not a valid attribute in `XbimComms::Sheet`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
80
- end
81
- h[k.to_sym] = v
82
- }
83
-
84
- # call parent's initialize
85
- super(attributes)
86
-
87
- if attributes.key?(:'width')
88
- self.width = attributes[:'width']
89
- end
90
-
91
- if attributes.key?(:'height')
92
- self.height = attributes[:'height']
93
- end
94
-
95
- if attributes.key?(:'parts')
96
- if (value = attributes[:'parts']).is_a?(Array)
97
- self.parts = value
98
- end
99
- end
100
-
101
- if attributes.key?(:'file')
102
- self.file = attributes[:'file']
103
- end
104
-
105
- if attributes.key?(:'snapshot')
106
- self.snapshot = attributes[:'snapshot']
107
- end
108
- end
109
-
110
- # Show invalid properties with the reasons. Usually used together with valid?
111
- # @return Array for valid properties with the reasons
112
- def list_invalid_properties
113
- invalid_properties = super
114
- invalid_properties
115
- end
116
-
117
- # Check to see if the all the properties in the model are valid
118
- # @return true if the model is valid
119
- def valid?
120
- true && super
121
- end
122
-
123
- # Checks equality by comparing each attribute.
124
- # @param [Object] Object to be compared
125
- def ==(o)
126
- return true if self.equal?(o)
127
- self.class == o.class &&
128
- width == o.width &&
129
- height == o.height &&
130
- parts == o.parts &&
131
- file == o.file &&
132
- snapshot == o.snapshot && super(o)
133
- end
134
-
135
- # @see the `==` method
136
- # @param [Object] Object to be compared
137
- def eql?(o)
138
- self == o
139
- end
140
-
141
- # Calculates hash code according to all attributes.
142
- # @return [Integer] Hash code
143
- def hash
144
- [width, height, parts, file, snapshot].hash
145
- end
146
-
147
- # Builds the object from hash
148
- # @param [Hash] attributes Model attributes in the form of hash
149
- # @return [Object] Returns the model itself
150
- def self.build_from_hash(attributes)
151
- new.build_from_hash(attributes)
152
- end
153
-
154
- # Builds the object from hash
155
- # @param [Hash] attributes Model attributes in the form of hash
156
- # @return [Object] Returns the model itself
157
- def build_from_hash(attributes)
158
- return nil unless attributes.is_a?(Hash)
159
- super(attributes)
160
- self.class.openapi_types.each_pair do |key, type|
161
- if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
162
- self.send("#{key}=", nil)
163
- elsif type =~ /\AArray<(.*)>/i
164
- # check to ensure the input is an array given that the attribute
165
- # is documented as an array but the input is not
166
- if attributes[self.class.attribute_map[key]].is_a?(Array)
167
- self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
168
- end
169
- elsif !attributes[self.class.attribute_map[key]].nil?
170
- self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
171
- end
172
- end
173
-
174
- self
175
- end
176
-
177
- # Deserializes the data based on type
178
- # @param string type Data type
179
- # @param string value Value to be deserialized
180
- # @return [Object] Deserialized data
181
- def _deserialize(type, value)
182
- case type.to_sym
183
- when :Time
184
- Time.parse(value)
185
- when :Date
186
- Date.parse(value)
187
- when :String
188
- value.to_s
189
- when :Integer
190
- value.to_i
191
- when :Float
192
- value.to_f
193
- when :Boolean
194
- if value.to_s =~ /\A(true|t|yes|y|1)\z/i
195
- true
196
- else
197
- false
198
- end
199
- when :Object
200
- # generic object (usually a Hash), return directly
201
- value
202
- when /\AArray<(?<inner_type>.+)>\z/
203
- inner_type = Regexp.last_match[:inner_type]
204
- value.map { |v| _deserialize(inner_type, v) }
205
- when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
206
- k_type = Regexp.last_match[:k_type]
207
- v_type = Regexp.last_match[:v_type]
208
- {}.tap do |hash|
209
- value.each do |k, v|
210
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
211
- end
212
- end
213
- else # model
214
- # models (e.g. Pet) or oneOf
215
- klass = XbimComms.const_get(type)
216
- klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
217
- end
218
- end
219
-
220
- # Returns the string representation of the object
221
- # @return [String] String presentation of the object
222
- def to_s
223
- to_hash.to_s
224
- end
225
-
226
- # to_body is an alias to to_hash (backward compatibility)
227
- # @return [Hash] Returns the object in the form of hash
228
- def to_body
229
- to_hash
230
- end
231
-
232
- # Returns the object in the form of hash
233
- # @return [Hash] Returns the object in the form of hash
234
- def to_hash
235
- hash = super
236
- self.class.attribute_map.each_pair do |attr, param|
237
- value = self.send(attr)
238
- if value.nil?
239
- is_nullable = self.class.openapi_nullable.include?(attr)
240
- next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
241
- end
242
-
243
- hash[param] = _to_hash(value)
244
- end
245
- hash
246
- end
247
-
248
- # Outputs non-array value in the form of hash
249
- # For object, use to_hash. Otherwise, just return the value
250
- # @param [Object] value Any valid value
251
- # @return [Hash] Returns the value in the form of hash
252
- def _to_hash(value)
253
- if value.is_a?(Array)
254
- value.compact.map { |v| _to_hash(v) }
255
- elsif value.is_a?(Hash)
256
- {}.tap do |hash|
257
- value.each { |k, v| hash[k] = _to_hash(v) }
258
- end
259
- elsif value.respond_to? :to_hash
260
- value.to_hash
261
- else
262
- value
263
- end
264
- end
265
-
266
- end
267
-
268
- end