artikcloud 2.0.0 → 2.0.5

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.
Files changed (144) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +12 -12
  3. data/README.md +33 -10
  4. data/artikcloud.gemspec +5 -6
  5. data/docs/Action.md +9 -0
  6. data/docs/ActionArray.md +8 -0
  7. data/docs/Actions.md +12 -0
  8. data/docs/DeviceTypesApi.md +10 -10
  9. data/docs/DevicesApi.md +68 -15
  10. data/docs/ExportApi.md +10 -10
  11. data/docs/Message.md +11 -0
  12. data/docs/MessagesApi.md +205 -27
  13. data/docs/NormalizedAction.md +16 -0
  14. data/docs/NormalizedActionsEnvelope.md +17 -0
  15. data/docs/PresenceEnvelope.md +9 -0
  16. data/docs/PresenceModel.md +9 -0
  17. data/docs/RegistrationsApi.md +6 -6
  18. data/docs/RulesApi.md +8 -8
  19. data/docs/RulesEnvelope.md +1 -1
  20. data/docs/SnapshotResponse.md +9 -0
  21. data/docs/SnapshotResponses.md +10 -0
  22. data/docs/SnapshotsResponseEnvelope.md +9 -0
  23. data/docs/TagsApi.md +7 -7
  24. data/docs/TokenInfo.md +11 -0
  25. data/docs/TokenInfoSuccessResponse.md +8 -0
  26. data/docs/TokensApi.md +54 -7
  27. data/docs/UsersApi.md +18 -20
  28. data/git_push.sh +16 -1
  29. data/lib/artikcloud/api/device_types_api.rb +52 -59
  30. data/lib/artikcloud/api/devices_api.rb +120 -76
  31. data/lib/artikcloud/api/export_api.rb +43 -45
  32. data/lib/artikcloud/api/messages_api.rb +285 -103
  33. data/lib/artikcloud/api/registrations_api.rb +34 -34
  34. data/lib/artikcloud/api/rules_api.rb +43 -48
  35. data/lib/artikcloud/api/tags_api.rb +37 -35
  36. data/lib/artikcloud/api/tokens_api.rb +85 -30
  37. data/lib/artikcloud/api/users_api.rb +83 -102
  38. data/lib/artikcloud/api_client.rb +56 -13
  39. data/lib/artikcloud/api_error.rb +13 -4
  40. data/lib/artikcloud/configuration.rb +45 -1
  41. data/lib/artikcloud/models/ack_envelope.rb +59 -24
  42. data/lib/artikcloud/models/acknowledgement.rb +65 -33
  43. data/lib/artikcloud/models/action.rb +212 -0
  44. data/lib/artikcloud/models/action_array.rb +201 -0
  45. data/lib/artikcloud/models/action_details.rb +61 -27
  46. data/lib/artikcloud/models/action_details_array.rb +59 -24
  47. data/lib/artikcloud/models/action_in.rb +69 -39
  48. data/lib/artikcloud/models/action_out.rb +67 -36
  49. data/lib/artikcloud/models/actions.rb +241 -0
  50. data/lib/artikcloud/models/aggregate_data.rb +69 -39
  51. data/lib/artikcloud/models/aggregates_histogram_data.rb +71 -42
  52. data/lib/artikcloud/models/aggregates_histogram_response.rb +71 -42
  53. data/lib/artikcloud/models/aggregates_response.rb +69 -39
  54. data/lib/artikcloud/models/app_properties.rb +64 -30
  55. data/lib/artikcloud/models/check_token_message.rb +59 -24
  56. data/lib/artikcloud/models/check_token_response.rb +59 -24
  57. data/lib/artikcloud/models/device.rb +85 -63
  58. data/lib/artikcloud/models/device_array.rb +59 -24
  59. data/lib/artikcloud/models/device_envelope.rb +60 -24
  60. data/lib/artikcloud/models/device_reg_complete_request.rb +59 -24
  61. data/lib/artikcloud/models/device_reg_confirm_user_request.rb +63 -30
  62. data/lib/artikcloud/models/device_reg_confirm_user_response.rb +59 -24
  63. data/lib/artikcloud/models/device_reg_confirm_user_response_envelope.rb +59 -24
  64. data/lib/artikcloud/models/device_reg_status_response.rb +61 -27
  65. data/lib/artikcloud/models/device_reg_status_response_envelope.rb +59 -24
  66. data/lib/artikcloud/models/device_token.rb +69 -33
  67. data/lib/artikcloud/models/device_token_envelope.rb +60 -24
  68. data/lib/artikcloud/models/device_type.rb +93 -75
  69. data/lib/artikcloud/models/device_type_array.rb +59 -24
  70. data/lib/artikcloud/models/device_type_envelope.rb +60 -24
  71. data/lib/artikcloud/models/device_types_envelope.rb +68 -33
  72. data/lib/artikcloud/models/devices_envelope.rb +68 -33
  73. data/lib/artikcloud/models/error_envelope.rb +59 -24
  74. data/lib/artikcloud/models/export_data.rb +71 -42
  75. data/lib/artikcloud/models/export_data_array.rb +59 -24
  76. data/lib/artikcloud/models/export_history_response.rb +65 -33
  77. data/lib/artikcloud/models/export_normalized_messages_response.rb +83 -60
  78. data/lib/artikcloud/models/export_request.rb +73 -45
  79. data/lib/artikcloud/models/export_request_data.rb +79 -54
  80. data/lib/artikcloud/models/export_request_info.rb +77 -51
  81. data/lib/artikcloud/models/export_request_response.rb +59 -24
  82. data/lib/artikcloud/models/export_response.rb +79 -54
  83. data/lib/artikcloud/models/export_status_response.rb +67 -36
  84. data/lib/artikcloud/models/field_path.rb +59 -24
  85. data/lib/artikcloud/models/field_presence.rb +60 -24
  86. data/lib/artikcloud/models/field_presence_envelope.rb +78 -42
  87. data/lib/artikcloud/models/fields_actions.rb +61 -27
  88. data/lib/artikcloud/models/manifest_properties.rb +60 -24
  89. data/lib/artikcloud/models/manifest_properties_envelope.rb +60 -24
  90. data/lib/artikcloud/models/manifest_versions.rb +60 -24
  91. data/lib/artikcloud/models/manifest_versions_envelope.rb +60 -24
  92. data/lib/artikcloud/models/message.rb +233 -0
  93. data/lib/artikcloud/models/message_action.rb +67 -36
  94. data/lib/artikcloud/models/message_id.rb +59 -24
  95. data/lib/artikcloud/models/message_id_envelope.rb +59 -24
  96. data/lib/artikcloud/models/message_in.rb +69 -39
  97. data/lib/artikcloud/models/message_out.rb +67 -36
  98. data/lib/artikcloud/models/non_empty_string.rb +59 -24
  99. data/lib/artikcloud/models/normalized_action.rb +279 -0
  100. data/lib/artikcloud/models/normalized_actions_envelope.rb +285 -0
  101. data/lib/artikcloud/models/normalized_message.rb +81 -45
  102. data/lib/artikcloud/models/normalized_messages_envelope.rb +80 -51
  103. data/lib/artikcloud/models/output_rule.rb +85 -63
  104. data/lib/artikcloud/models/presence_envelope.rb +208 -0
  105. data/lib/artikcloud/models/presence_model.rb +208 -0
  106. data/lib/artikcloud/models/properties_envelope.rb +60 -24
  107. data/lib/artikcloud/models/refresh_token_response.rb +65 -33
  108. data/lib/artikcloud/models/register_message.rb +67 -36
  109. data/lib/artikcloud/models/rule_array.rb +59 -24
  110. data/lib/artikcloud/models/rule_creation_info.rb +65 -33
  111. data/lib/artikcloud/models/rule_envelope.rb +59 -24
  112. data/lib/artikcloud/models/rule_error.rb +65 -33
  113. data/lib/artikcloud/models/rule_update_info.rb +65 -33
  114. data/lib/artikcloud/models/rule_warning_output.rb +61 -27
  115. data/lib/artikcloud/models/rules_envelope.rb +69 -35
  116. data/lib/artikcloud/models/snapshot_response.rb +210 -0
  117. data/lib/artikcloud/models/snapshot_responses.rb +219 -0
  118. data/lib/artikcloud/models/snapshots_response_envelope.rb +208 -0
  119. data/lib/artikcloud/models/tag.rb +61 -27
  120. data/lib/artikcloud/models/tag_array.rb +59 -24
  121. data/lib/artikcloud/models/tags_envelope.rb +59 -24
  122. data/lib/artikcloud/models/token.rb +65 -33
  123. data/lib/artikcloud/models/token_info.rb +226 -0
  124. data/lib/artikcloud/models/token_info_success_response.rb +199 -0
  125. data/lib/artikcloud/models/token_request.rb +59 -24
  126. data/lib/artikcloud/models/token_response.rb +59 -24
  127. data/lib/artikcloud/models/unregister_device_response.rb +79 -54
  128. data/lib/artikcloud/models/unregister_device_response_envelope.rb +59 -24
  129. data/lib/artikcloud/models/user.rb +77 -42
  130. data/lib/artikcloud/models/user_envelope.rb +60 -24
  131. data/lib/artikcloud/models/web_socket_error.rb +63 -30
  132. data/lib/artikcloud/version.rb +14 -5
  133. data/lib/artikcloud.rb +26 -4
  134. data/spec/api/device_types_api_spec.rb +110 -0
  135. data/spec/api/devices_api_spec.rb +143 -0
  136. data/spec/api/export_api_spec.rb +96 -0
  137. data/spec/api/messages_api_spec.rb +7 -7
  138. data/spec/api/registrations_api_spec.rb +82 -0
  139. data/spec/api/rules_api_spec.rb +96 -0
  140. data/spec/api/tags_api_spec.rb +84 -0
  141. data/spec/api/tokens_api_spec.rb +12 -21
  142. data/spec/api/users_api_spec.rb +1 -1
  143. data/spec/spec_helper.rb +1 -1
  144. metadata +60 -22
@@ -1,14 +1,23 @@
1
1
  =begin
2
- ARTIK Cloud API
2
+ #ARTIK Cloud API
3
+
4
+ #No descripton provided (generated by Swagger Codegen https://github.com/swagger-api/swagger-codegen)
3
5
 
4
6
  OpenAPI spec version: 2.0.0
5
7
 
6
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
7
9
 
8
- License: MIT
9
- http://en.wikipedia.org/wiki/MIT_License
10
+ Licensed under the Apache License, Version 2.0 (the "License");
11
+ you may not use this file except in compliance with the License.
12
+ You may obtain a copy of the License at
13
+
14
+ http://www.apache.org/licenses/LICENSE-2.0
10
15
 
11
- Terms of Service: http://www.samsung.com/global/business/mobile/info/terms-and-conditions.html
16
+ Unless required by applicable law or agreed to in writing, software
17
+ distributed under the License is distributed on an "AS IS" BASIS,
18
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
19
+ See the License for the specific language governing permissions and
20
+ limitations under the License.
12
21
 
13
22
  =end
14
23
 
@@ -19,12 +28,11 @@ module ArtikCloud
19
28
  class DeviceTypeEnvelope
20
29
  attr_accessor :data
21
30
 
31
+
22
32
  # Attribute mapping from ruby-style variable name to JSON key.
23
33
  def self.attribute_map
24
34
  {
25
-
26
35
  :'data' => :'data'
27
-
28
36
  }
29
37
  end
30
38
 
@@ -32,24 +40,39 @@ module ArtikCloud
32
40
  def self.swagger_types
33
41
  {
34
42
  :'data' => :'DeviceType'
35
-
36
43
  }
37
44
  end
38
45
 
46
+ # Initializes the object
47
+ # @param [Hash] attributes Model attributes in the form of hash
39
48
  def initialize(attributes = {})
40
49
  return unless attributes.is_a?(Hash)
41
50
 
42
51
  # convert string to symbol for hash key
43
- attributes = attributes.inject({}){|memo,(k,v)| memo[k.to_sym] = v; memo}
52
+ attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
44
53
 
45
-
46
- if attributes[:'data']
54
+ if attributes.has_key?(:'data')
47
55
  self.data = attributes[:'data']
48
56
  end
49
-
57
+
58
+ end
59
+
60
+ # Show invalid properties with the reasons. Usually used together with valid?
61
+ # @return Array for valid properies with the reasons
62
+ def list_invalid_properties
63
+ invalid_properties = Array.new
64
+ return invalid_properties
50
65
  end
51
66
 
52
- # Check equality by comparing each attribute.
67
+ # Check to see if the all the properties in the model are valid
68
+ # @return true if the model is valid
69
+ def valid?
70
+ return false if @data.nil?
71
+ return true
72
+ end
73
+
74
+ # Checks equality by comparing each attribute.
75
+ # @param [Object] Object to be compared
53
76
  def ==(o)
54
77
  return true if self.equal?(o)
55
78
  self.class == o.class &&
@@ -57,35 +80,41 @@ module ArtikCloud
57
80
  end
58
81
 
59
82
  # @see the `==` method
83
+ # @param [Object] Object to be compared
60
84
  def eql?(o)
61
85
  self == o
62
86
  end
63
87
 
64
- # Calculate hash code according to all attributes.
88
+ # Calculates hash code according to all attributes.
89
+ # @return [Fixnum] Hash code
65
90
  def hash
66
91
  [data].hash
67
92
  end
68
93
 
69
- # build the object from hash
94
+ # Builds the object from hash
95
+ # @param [Hash] attributes Model attributes in the form of hash
96
+ # @return [Object] Returns the model itself
70
97
  def build_from_hash(attributes)
71
98
  return nil unless attributes.is_a?(Hash)
72
99
  self.class.swagger_types.each_pair do |key, type|
73
100
  if type =~ /^Array<(.*)>/i
101
+ # check to ensure the input is an array given that the the attribute
102
+ # is documented as an array but the input is not
74
103
  if attributes[self.class.attribute_map[key]].is_a?(Array)
75
104
  self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
76
- else
77
- #TODO show warning in debug mode
78
105
  end
79
106
  elsif !attributes[self.class.attribute_map[key]].nil?
80
107
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
81
- else
82
- # data not found in attributes(hash), not an issue as the data can be optional
83
- end
108
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
84
109
  end
85
110
 
86
111
  self
87
112
  end
88
113
 
114
+ # Deserializes the data based on type
115
+ # @param string type Data type
116
+ # @param string value Value to be deserialized
117
+ # @return [Object] Deserialized data
89
118
  def _deserialize(type, value)
90
119
  case type.to_sym
91
120
  when :DateTime
@@ -119,21 +148,25 @@ module ArtikCloud
119
148
  end
120
149
  end
121
150
  else # model
122
- _model = ArtikCloud.const_get(type).new
123
- _model.build_from_hash(value)
151
+ temp_model = ArtikCloud.const_get(type).new
152
+ temp_model.build_from_hash(value)
124
153
  end
125
154
  end
126
155
 
156
+ # Returns the string representation of the object
157
+ # @return [String] String presentation of the object
127
158
  def to_s
128
159
  to_hash.to_s
129
160
  end
130
161
 
131
- # to_body is an alias to to_body (backward compatibility))
162
+ # to_body is an alias to to_hash (backward compatibility)
163
+ # @return [Hash] Returns the object in the form of hash
132
164
  def to_body
133
165
  to_hash
134
166
  end
135
167
 
136
- # return the object in the form of hash
168
+ # Returns the object in the form of hash
169
+ # @return [Hash] Returns the object in the form of hash
137
170
  def to_hash
138
171
  hash = {}
139
172
  self.class.attribute_map.each_pair do |attr, param|
@@ -144,8 +177,10 @@ module ArtikCloud
144
177
  hash
145
178
  end
146
179
 
147
- # Method to output non-array value in the form of hash
180
+ # Outputs non-array value in the form of hash
148
181
  # For object, use to_hash. Otherwise, just return the value
182
+ # @param [Object] value Any valid value
183
+ # @return [Hash] Returns the value in the form of hash
149
184
  def _to_hash(value)
150
185
  if value.is_a?(Array)
151
186
  value.compact.map{ |v| _to_hash(v) }
@@ -161,4 +196,5 @@ module ArtikCloud
161
196
  end
162
197
 
163
198
  end
199
+
164
200
  end
@@ -1,14 +1,23 @@
1
1
  =begin
2
- ARTIK Cloud API
2
+ #ARTIK Cloud API
3
+
4
+ #No descripton provided (generated by Swagger Codegen https://github.com/swagger-api/swagger-codegen)
3
5
 
4
6
  OpenAPI spec version: 2.0.0
5
7
 
6
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
7
9
 
8
- License: MIT
9
- http://en.wikipedia.org/wiki/MIT_License
10
+ Licensed under the Apache License, Version 2.0 (the "License");
11
+ you may not use this file except in compliance with the License.
12
+ You may obtain a copy of the License at
13
+
14
+ http://www.apache.org/licenses/LICENSE-2.0
10
15
 
11
- Terms of Service: http://www.samsung.com/global/business/mobile/info/terms-and-conditions.html
16
+ Unless required by applicable law or agreed to in writing, software
17
+ distributed under the License is distributed on an "AS IS" BASIS,
18
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
19
+ See the License for the specific language governing permissions and
20
+ limitations under the License.
12
21
 
13
22
  =end
14
23
 
@@ -25,18 +34,14 @@ module ArtikCloud
25
34
 
26
35
  attr_accessor :data
27
36
 
37
+
28
38
  # Attribute mapping from ruby-style variable name to JSON key.
29
39
  def self.attribute_map
30
40
  {
31
-
32
41
  :'total' => :'total',
33
-
34
42
  :'count' => :'count',
35
-
36
43
  :'offset' => :'offset',
37
-
38
44
  :'data' => :'data'
39
-
40
45
  }
41
46
  end
42
47
 
@@ -47,36 +52,53 @@ module ArtikCloud
47
52
  :'count' => :'Integer',
48
53
  :'offset' => :'Integer',
49
54
  :'data' => :'DeviceTypeArray'
50
-
51
55
  }
52
56
  end
53
57
 
58
+ # Initializes the object
59
+ # @param [Hash] attributes Model attributes in the form of hash
54
60
  def initialize(attributes = {})
55
61
  return unless attributes.is_a?(Hash)
56
62
 
57
63
  # convert string to symbol for hash key
58
- attributes = attributes.inject({}){|memo,(k,v)| memo[k.to_sym] = v; memo}
64
+ attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
59
65
 
60
-
61
- if attributes[:'total']
66
+ if attributes.has_key?(:'total')
62
67
  self.total = attributes[:'total']
63
68
  end
64
-
65
- if attributes[:'count']
69
+
70
+ if attributes.has_key?(:'count')
66
71
  self.count = attributes[:'count']
67
72
  end
68
-
69
- if attributes[:'offset']
73
+
74
+ if attributes.has_key?(:'offset')
70
75
  self.offset = attributes[:'offset']
71
76
  end
72
-
73
- if attributes[:'data']
77
+
78
+ if attributes.has_key?(:'data')
74
79
  self.data = attributes[:'data']
75
80
  end
76
-
81
+
77
82
  end
78
83
 
79
- # Check equality by comparing each attribute.
84
+ # Show invalid properties with the reasons. Usually used together with valid?
85
+ # @return Array for valid properies with the reasons
86
+ def list_invalid_properties
87
+ invalid_properties = Array.new
88
+ return invalid_properties
89
+ end
90
+
91
+ # Check to see if the all the properties in the model are valid
92
+ # @return true if the model is valid
93
+ def valid?
94
+ return false if @total.nil?
95
+ return false if @count.nil?
96
+ return false if @offset.nil?
97
+ return true
98
+ end
99
+
100
+ # Checks equality by comparing each attribute.
101
+ # @param [Object] Object to be compared
80
102
  def ==(o)
81
103
  return true if self.equal?(o)
82
104
  self.class == o.class &&
@@ -87,35 +109,41 @@ module ArtikCloud
87
109
  end
88
110
 
89
111
  # @see the `==` method
112
+ # @param [Object] Object to be compared
90
113
  def eql?(o)
91
114
  self == o
92
115
  end
93
116
 
94
- # Calculate hash code according to all attributes.
117
+ # Calculates hash code according to all attributes.
118
+ # @return [Fixnum] Hash code
95
119
  def hash
96
120
  [total, count, offset, data].hash
97
121
  end
98
122
 
99
- # build the object from hash
123
+ # Builds the object from hash
124
+ # @param [Hash] attributes Model attributes in the form of hash
125
+ # @return [Object] Returns the model itself
100
126
  def build_from_hash(attributes)
101
127
  return nil unless attributes.is_a?(Hash)
102
128
  self.class.swagger_types.each_pair do |key, type|
103
129
  if type =~ /^Array<(.*)>/i
130
+ # check to ensure the input is an array given that the the attribute
131
+ # is documented as an array but the input is not
104
132
  if attributes[self.class.attribute_map[key]].is_a?(Array)
105
133
  self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
106
- else
107
- #TODO show warning in debug mode
108
134
  end
109
135
  elsif !attributes[self.class.attribute_map[key]].nil?
110
136
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
111
- else
112
- # data not found in attributes(hash), not an issue as the data can be optional
113
- end
137
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
114
138
  end
115
139
 
116
140
  self
117
141
  end
118
142
 
143
+ # Deserializes the data based on type
144
+ # @param string type Data type
145
+ # @param string value Value to be deserialized
146
+ # @return [Object] Deserialized data
119
147
  def _deserialize(type, value)
120
148
  case type.to_sym
121
149
  when :DateTime
@@ -149,21 +177,25 @@ module ArtikCloud
149
177
  end
150
178
  end
151
179
  else # model
152
- _model = ArtikCloud.const_get(type).new
153
- _model.build_from_hash(value)
180
+ temp_model = ArtikCloud.const_get(type).new
181
+ temp_model.build_from_hash(value)
154
182
  end
155
183
  end
156
184
 
185
+ # Returns the string representation of the object
186
+ # @return [String] String presentation of the object
157
187
  def to_s
158
188
  to_hash.to_s
159
189
  end
160
190
 
161
- # to_body is an alias to to_body (backward compatibility))
191
+ # to_body is an alias to to_hash (backward compatibility)
192
+ # @return [Hash] Returns the object in the form of hash
162
193
  def to_body
163
194
  to_hash
164
195
  end
165
196
 
166
- # return the object in the form of hash
197
+ # Returns the object in the form of hash
198
+ # @return [Hash] Returns the object in the form of hash
167
199
  def to_hash
168
200
  hash = {}
169
201
  self.class.attribute_map.each_pair do |attr, param|
@@ -174,8 +206,10 @@ module ArtikCloud
174
206
  hash
175
207
  end
176
208
 
177
- # Method to output non-array value in the form of hash
209
+ # Outputs non-array value in the form of hash
178
210
  # For object, use to_hash. Otherwise, just return the value
211
+ # @param [Object] value Any valid value
212
+ # @return [Hash] Returns the value in the form of hash
179
213
  def _to_hash(value)
180
214
  if value.is_a?(Array)
181
215
  value.compact.map{ |v| _to_hash(v) }
@@ -191,4 +225,5 @@ module ArtikCloud
191
225
  end
192
226
 
193
227
  end
228
+
194
229
  end
@@ -1,14 +1,23 @@
1
1
  =begin
2
- ARTIK Cloud API
2
+ #ARTIK Cloud API
3
+
4
+ #No descripton provided (generated by Swagger Codegen https://github.com/swagger-api/swagger-codegen)
3
5
 
4
6
  OpenAPI spec version: 2.0.0
5
7
 
6
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
7
9
 
8
- License: MIT
9
- http://en.wikipedia.org/wiki/MIT_License
10
+ Licensed under the Apache License, Version 2.0 (the "License");
11
+ you may not use this file except in compliance with the License.
12
+ You may obtain a copy of the License at
13
+
14
+ http://www.apache.org/licenses/LICENSE-2.0
10
15
 
11
- Terms of Service: http://www.samsung.com/global/business/mobile/info/terms-and-conditions.html
16
+ Unless required by applicable law or agreed to in writing, software
17
+ distributed under the License is distributed on an "AS IS" BASIS,
18
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
19
+ See the License for the specific language governing permissions and
20
+ limitations under the License.
12
21
 
13
22
  =end
14
23
 
@@ -25,18 +34,14 @@ module ArtikCloud
25
34
 
26
35
  attr_accessor :data
27
36
 
37
+
28
38
  # Attribute mapping from ruby-style variable name to JSON key.
29
39
  def self.attribute_map
30
40
  {
31
-
32
41
  :'total' => :'total',
33
-
34
42
  :'count' => :'count',
35
-
36
43
  :'offset' => :'offset',
37
-
38
44
  :'data' => :'data'
39
-
40
45
  }
41
46
  end
42
47
 
@@ -47,36 +52,53 @@ module ArtikCloud
47
52
  :'count' => :'Integer',
48
53
  :'offset' => :'Integer',
49
54
  :'data' => :'DeviceArray'
50
-
51
55
  }
52
56
  end
53
57
 
58
+ # Initializes the object
59
+ # @param [Hash] attributes Model attributes in the form of hash
54
60
  def initialize(attributes = {})
55
61
  return unless attributes.is_a?(Hash)
56
62
 
57
63
  # convert string to symbol for hash key
58
- attributes = attributes.inject({}){|memo,(k,v)| memo[k.to_sym] = v; memo}
64
+ attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
59
65
 
60
-
61
- if attributes[:'total']
66
+ if attributes.has_key?(:'total')
62
67
  self.total = attributes[:'total']
63
68
  end
64
-
65
- if attributes[:'count']
69
+
70
+ if attributes.has_key?(:'count')
66
71
  self.count = attributes[:'count']
67
72
  end
68
-
69
- if attributes[:'offset']
73
+
74
+ if attributes.has_key?(:'offset')
70
75
  self.offset = attributes[:'offset']
71
76
  end
72
-
73
- if attributes[:'data']
77
+
78
+ if attributes.has_key?(:'data')
74
79
  self.data = attributes[:'data']
75
80
  end
76
-
81
+
77
82
  end
78
83
 
79
- # Check equality by comparing each attribute.
84
+ # Show invalid properties with the reasons. Usually used together with valid?
85
+ # @return Array for valid properies with the reasons
86
+ def list_invalid_properties
87
+ invalid_properties = Array.new
88
+ return invalid_properties
89
+ end
90
+
91
+ # Check to see if the all the properties in the model are valid
92
+ # @return true if the model is valid
93
+ def valid?
94
+ return false if @total.nil?
95
+ return false if @count.nil?
96
+ return false if @offset.nil?
97
+ return true
98
+ end
99
+
100
+ # Checks equality by comparing each attribute.
101
+ # @param [Object] Object to be compared
80
102
  def ==(o)
81
103
  return true if self.equal?(o)
82
104
  self.class == o.class &&
@@ -87,35 +109,41 @@ module ArtikCloud
87
109
  end
88
110
 
89
111
  # @see the `==` method
112
+ # @param [Object] Object to be compared
90
113
  def eql?(o)
91
114
  self == o
92
115
  end
93
116
 
94
- # Calculate hash code according to all attributes.
117
+ # Calculates hash code according to all attributes.
118
+ # @return [Fixnum] Hash code
95
119
  def hash
96
120
  [total, count, offset, data].hash
97
121
  end
98
122
 
99
- # build the object from hash
123
+ # Builds the object from hash
124
+ # @param [Hash] attributes Model attributes in the form of hash
125
+ # @return [Object] Returns the model itself
100
126
  def build_from_hash(attributes)
101
127
  return nil unless attributes.is_a?(Hash)
102
128
  self.class.swagger_types.each_pair do |key, type|
103
129
  if type =~ /^Array<(.*)>/i
130
+ # check to ensure the input is an array given that the the attribute
131
+ # is documented as an array but the input is not
104
132
  if attributes[self.class.attribute_map[key]].is_a?(Array)
105
133
  self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
106
- else
107
- #TODO show warning in debug mode
108
134
  end
109
135
  elsif !attributes[self.class.attribute_map[key]].nil?
110
136
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
111
- else
112
- # data not found in attributes(hash), not an issue as the data can be optional
113
- end
137
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
114
138
  end
115
139
 
116
140
  self
117
141
  end
118
142
 
143
+ # Deserializes the data based on type
144
+ # @param string type Data type
145
+ # @param string value Value to be deserialized
146
+ # @return [Object] Deserialized data
119
147
  def _deserialize(type, value)
120
148
  case type.to_sym
121
149
  when :DateTime
@@ -149,21 +177,25 @@ module ArtikCloud
149
177
  end
150
178
  end
151
179
  else # model
152
- _model = ArtikCloud.const_get(type).new
153
- _model.build_from_hash(value)
180
+ temp_model = ArtikCloud.const_get(type).new
181
+ temp_model.build_from_hash(value)
154
182
  end
155
183
  end
156
184
 
185
+ # Returns the string representation of the object
186
+ # @return [String] String presentation of the object
157
187
  def to_s
158
188
  to_hash.to_s
159
189
  end
160
190
 
161
- # to_body is an alias to to_body (backward compatibility))
191
+ # to_body is an alias to to_hash (backward compatibility)
192
+ # @return [Hash] Returns the object in the form of hash
162
193
  def to_body
163
194
  to_hash
164
195
  end
165
196
 
166
- # return the object in the form of hash
197
+ # Returns the object in the form of hash
198
+ # @return [Hash] Returns the object in the form of hash
167
199
  def to_hash
168
200
  hash = {}
169
201
  self.class.attribute_map.each_pair do |attr, param|
@@ -174,8 +206,10 @@ module ArtikCloud
174
206
  hash
175
207
  end
176
208
 
177
- # Method to output non-array value in the form of hash
209
+ # Outputs non-array value in the form of hash
178
210
  # For object, use to_hash. Otherwise, just return the value
211
+ # @param [Object] value Any valid value
212
+ # @return [Hash] Returns the value in the form of hash
179
213
  def _to_hash(value)
180
214
  if value.is_a?(Array)
181
215
  value.compact.map{ |v| _to_hash(v) }
@@ -191,4 +225,5 @@ module ArtikCloud
191
225
  end
192
226
 
193
227
  end
228
+
194
229
  end