cloudmersive-validate-api-client 1.3.3 → 1.3.9

Sign up to get free protection for your applications and to get access to all the features.
Files changed (122) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +30 -9
  3. data/cloudmersive-validate-api-client.gemspec +1 -1
  4. data/docs/AddressApi.md +118 -0
  5. data/docs/AddressGetServersResponse.md +2 -2
  6. data/docs/AddressVerifySyntaxOnlyResponse.md +3 -0
  7. data/docs/DomainApi.md +112 -2
  8. data/docs/EmailApi.md +3 -3
  9. data/docs/IPAddressApi.md +1 -1
  10. data/docs/LeadEnrichmentApi.md +61 -0
  11. data/docs/LeadEnrichmentRequest.md +21 -0
  12. data/docs/LeadEnrichmentResponse.md +25 -0
  13. data/docs/NameApi.md +59 -4
  14. data/docs/ParseAddressRequest.md +9 -0
  15. data/docs/ParseAddressResponse.md +16 -0
  16. data/docs/PhoneNumberApi.md +1 -1
  17. data/docs/UserAgentApi.md +63 -0
  18. data/docs/UserAgentValidateRequest.md +8 -0
  19. data/docs/UserAgentValidateResponse.md +21 -0
  20. data/docs/ValidateCountryRequest.md +8 -0
  21. data/docs/ValidateCountryResponse.md +12 -0
  22. data/docs/ValidateIdentifierRequest.md +15 -0
  23. data/docs/ValidateIdentifierResponse.md +9 -0
  24. data/docs/ValidateUrlRequestFull.md +8 -0
  25. data/docs/ValidateUrlRequestSyntaxOnly.md +8 -0
  26. data/docs/ValidateUrlResponseFull.md +12 -0
  27. data/docs/ValidateUrlResponseSyntaxOnly.md +9 -0
  28. data/docs/VatApi.md +1 -1
  29. data/docs/VatLookupRequest.md +1 -1
  30. data/docs/VatLookupResponse.md +12 -5
  31. data/docs/WhoisResponse.md +11 -0
  32. data/lib/cloudmersive-validate-api-client.rb +18 -1
  33. data/lib/cloudmersive-validate-api-client/api/address_api.rb +133 -0
  34. data/lib/cloudmersive-validate-api-client/api/domain_api.rb +113 -3
  35. data/lib/cloudmersive-validate-api-client/api/email_api.rb +4 -4
  36. data/lib/cloudmersive-validate-api-client/api/ip_address_api.rb +2 -2
  37. data/lib/cloudmersive-validate-api-client/api/lead_enrichment_api.rb +78 -0
  38. data/lib/cloudmersive-validate-api-client/api/name_api.rb +60 -5
  39. data/lib/cloudmersive-validate-api-client/api/phone_number_api.rb +2 -2
  40. data/lib/cloudmersive-validate-api-client/api/user_agent_api.rb +78 -0
  41. data/lib/cloudmersive-validate-api-client/api/vat_api.rb +2 -2
  42. data/lib/cloudmersive-validate-api-client/api_client.rb +1 -1
  43. data/lib/cloudmersive-validate-api-client/api_error.rb +1 -1
  44. data/lib/cloudmersive-validate-api-client/configuration.rb +1 -1
  45. data/lib/cloudmersive-validate-api-client/models/address_get_servers_response.rb +3 -1
  46. data/lib/cloudmersive-validate-api-client/models/address_verify_syntax_only_response.rb +35 -5
  47. data/lib/cloudmersive-validate-api-client/models/check_response.rb +1 -1
  48. data/lib/cloudmersive-validate-api-client/models/first_name_validation_request.rb +1 -1
  49. data/lib/cloudmersive-validate-api-client/models/first_name_validation_response.rb +1 -1
  50. data/lib/cloudmersive-validate-api-client/models/full_email_validation_response.rb +1 -1
  51. data/lib/cloudmersive-validate-api-client/models/full_name_validation_request.rb +1 -1
  52. data/lib/cloudmersive-validate-api-client/models/full_name_validation_response.rb +1 -1
  53. data/lib/cloudmersive-validate-api-client/models/geolocate_response.rb +1 -1
  54. data/lib/cloudmersive-validate-api-client/models/get_gender_request.rb +1 -1
  55. data/lib/cloudmersive-validate-api-client/models/get_gender_response.rb +1 -1
  56. data/lib/cloudmersive-validate-api-client/models/last_name_validation_request.rb +1 -1
  57. data/lib/cloudmersive-validate-api-client/models/last_name_validation_response.rb +1 -1
  58. data/lib/cloudmersive-validate-api-client/models/lead_enrichment_request.rb +319 -0
  59. data/lib/cloudmersive-validate-api-client/models/lead_enrichment_response.rb +359 -0
  60. data/lib/cloudmersive-validate-api-client/models/parse_address_request.rb +199 -0
  61. data/lib/cloudmersive-validate-api-client/models/parse_address_response.rb +269 -0
  62. data/lib/cloudmersive-validate-api-client/models/phone_number_validate_request.rb +1 -1
  63. data/lib/cloudmersive-validate-api-client/models/phone_number_validation_response.rb +1 -1
  64. data/lib/cloudmersive-validate-api-client/models/user_agent_validate_request.rb +189 -0
  65. data/lib/cloudmersive-validate-api-client/models/user_agent_validate_response.rb +319 -0
  66. data/lib/cloudmersive-validate-api-client/models/validate_country_request.rb +189 -0
  67. data/lib/cloudmersive-validate-api-client/models/validate_country_response.rb +229 -0
  68. data/lib/cloudmersive-validate-api-client/models/validate_identifier_request.rb +259 -0
  69. data/lib/cloudmersive-validate-api-client/models/validate_identifier_response.rb +199 -0
  70. data/lib/cloudmersive-validate-api-client/models/validate_url_request_full.rb +189 -0
  71. data/lib/cloudmersive-validate-api-client/models/validate_url_request_syntax_only.rb +189 -0
  72. data/lib/cloudmersive-validate-api-client/models/validate_url_response_full.rb +229 -0
  73. data/lib/cloudmersive-validate-api-client/models/validate_url_response_syntax_only.rb +199 -0
  74. data/lib/cloudmersive-validate-api-client/models/vat_lookup_request.rb +2 -1
  75. data/lib/cloudmersive-validate-api-client/models/vat_lookup_response.rb +80 -5
  76. data/lib/cloudmersive-validate-api-client/models/whois_response.rb +112 -2
  77. data/lib/cloudmersive-validate-api-client/version.rb +2 -2
  78. data/spec/api/address_api_spec.rb +59 -0
  79. data/spec/api/domain_api_spec.rb +25 -1
  80. data/spec/api/email_api_spec.rb +1 -1
  81. data/spec/api/ip_address_api_spec.rb +1 -1
  82. data/spec/api/lead_enrichment_api_spec.rb +47 -0
  83. data/spec/api/name_api_spec.rb +13 -1
  84. data/spec/api/phone_number_api_spec.rb +1 -1
  85. data/spec/api/user_agent_api_spec.rb +47 -0
  86. data/spec/api/vat_api_spec.rb +1 -1
  87. data/spec/api_client_spec.rb +1 -1
  88. data/spec/configuration_spec.rb +1 -1
  89. data/spec/models/address_get_servers_response_spec.rb +1 -1
  90. data/spec/models/address_verify_syntax_only_response_spec.rb +19 -1
  91. data/spec/models/check_response_spec.rb +1 -1
  92. data/spec/models/first_name_validation_request_spec.rb +1 -1
  93. data/spec/models/first_name_validation_response_spec.rb +1 -1
  94. data/spec/models/full_email_validation_response_spec.rb +1 -1
  95. data/spec/models/full_name_validation_request_spec.rb +1 -1
  96. data/spec/models/full_name_validation_response_spec.rb +1 -1
  97. data/spec/models/geolocate_response_spec.rb +1 -1
  98. data/spec/models/get_gender_request_spec.rb +1 -1
  99. data/spec/models/get_gender_response_spec.rb +1 -1
  100. data/spec/models/last_name_validation_request_spec.rb +1 -1
  101. data/spec/models/last_name_validation_response_spec.rb +1 -1
  102. data/spec/models/lead_enrichment_request_spec.rb +120 -0
  103. data/spec/models/lead_enrichment_response_spec.rb +144 -0
  104. data/spec/models/parse_address_request_spec.rb +48 -0
  105. data/spec/models/parse_address_response_spec.rb +90 -0
  106. data/spec/models/phone_number_validate_request_spec.rb +1 -1
  107. data/spec/models/phone_number_validation_response_spec.rb +1 -1
  108. data/spec/models/user_agent_validate_request_spec.rb +42 -0
  109. data/spec/models/user_agent_validate_response_spec.rb +120 -0
  110. data/spec/models/validate_country_request_spec.rb +42 -0
  111. data/spec/models/validate_country_response_spec.rb +66 -0
  112. data/spec/models/validate_identifier_request_spec.rb +84 -0
  113. data/spec/models/validate_identifier_response_spec.rb +48 -0
  114. data/spec/models/validate_url_request_full_spec.rb +42 -0
  115. data/spec/models/validate_url_request_syntax_only_spec.rb +42 -0
  116. data/spec/models/validate_url_response_full_spec.rb +66 -0
  117. data/spec/models/validate_url_response_syntax_only_spec.rb +48 -0
  118. data/spec/models/vat_lookup_request_spec.rb +1 -1
  119. data/spec/models/vat_lookup_response_spec.rb +43 -1
  120. data/spec/models/whois_response_spec.rb +67 -1
  121. data/spec/spec_helper.rb +1 -1
  122. metadata +66 -16
@@ -0,0 +1,269 @@
1
+ =begin
2
+ #validateapi
3
+
4
+ #The validation APIs help you validate data. Check if an E-mail address is real. Check if a domain is real. Check up on an IP address, and even where it is located. All this and much more is available in the validation API.
5
+
6
+ OpenAPI spec version: v1
7
+
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: 2.3.1
10
+
11
+ =end
12
+
13
+ require 'date'
14
+
15
+ module CloudmersiveValidateApiClient
16
+ # Result of parsing an address into its component parts
17
+ class ParseAddressResponse
18
+ # True if the parsing operation was successful, false otherwise
19
+ attr_accessor :successful
20
+
21
+ # The name of the building, house or structure if applicable, such as \"Cloudmersive Building 2\". This will often by null.
22
+ attr_accessor :building
23
+
24
+ # The street number or house number of the address. For example, in the address \"1600 Pennsylvania Avenue NW\" the street number would be \"1600\". This value will typically be populated for most addresses.
25
+ attr_accessor :street_number
26
+
27
+ # The name of the street or road of the address. For example, in the address \"1600 Pennsylvania Avenue NW\" the street number would be \"Pennsylvania Avenue NW\".
28
+ attr_accessor :street
29
+
30
+ # The city of the address.
31
+ attr_accessor :city
32
+
33
+ # The state or province of the address.
34
+ attr_accessor :state_or_province
35
+
36
+ # The postal code or zip code of the address.
37
+ attr_accessor :postal_code
38
+
39
+ # Country of the address, if present in the address. If not included in the address it will be null.
40
+ attr_accessor :country_full_name
41
+
42
+ # Two-letter ISO 3166-1 country code
43
+ attr_accessor :iso_two_letter_code
44
+
45
+
46
+ # Attribute mapping from ruby-style variable name to JSON key.
47
+ def self.attribute_map
48
+ {
49
+ :'successful' => :'Successful',
50
+ :'building' => :'Building',
51
+ :'street_number' => :'StreetNumber',
52
+ :'street' => :'Street',
53
+ :'city' => :'City',
54
+ :'state_or_province' => :'StateOrProvince',
55
+ :'postal_code' => :'PostalCode',
56
+ :'country_full_name' => :'CountryFullName',
57
+ :'iso_two_letter_code' => :'ISOTwoLetterCode'
58
+ }
59
+ end
60
+
61
+ # Attribute type mapping.
62
+ def self.swagger_types
63
+ {
64
+ :'successful' => :'BOOLEAN',
65
+ :'building' => :'String',
66
+ :'street_number' => :'String',
67
+ :'street' => :'String',
68
+ :'city' => :'String',
69
+ :'state_or_province' => :'String',
70
+ :'postal_code' => :'String',
71
+ :'country_full_name' => :'String',
72
+ :'iso_two_letter_code' => :'String'
73
+ }
74
+ end
75
+
76
+ # Initializes the object
77
+ # @param [Hash] attributes Model attributes in the form of hash
78
+ def initialize(attributes = {})
79
+ return unless attributes.is_a?(Hash)
80
+
81
+ # convert string to symbol for hash key
82
+ attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
83
+
84
+ if attributes.has_key?(:'Successful')
85
+ self.successful = attributes[:'Successful']
86
+ end
87
+
88
+ if attributes.has_key?(:'Building')
89
+ self.building = attributes[:'Building']
90
+ end
91
+
92
+ if attributes.has_key?(:'StreetNumber')
93
+ self.street_number = attributes[:'StreetNumber']
94
+ end
95
+
96
+ if attributes.has_key?(:'Street')
97
+ self.street = attributes[:'Street']
98
+ end
99
+
100
+ if attributes.has_key?(:'City')
101
+ self.city = attributes[:'City']
102
+ end
103
+
104
+ if attributes.has_key?(:'StateOrProvince')
105
+ self.state_or_province = attributes[:'StateOrProvince']
106
+ end
107
+
108
+ if attributes.has_key?(:'PostalCode')
109
+ self.postal_code = attributes[:'PostalCode']
110
+ end
111
+
112
+ if attributes.has_key?(:'CountryFullName')
113
+ self.country_full_name = attributes[:'CountryFullName']
114
+ end
115
+
116
+ if attributes.has_key?(:'ISOTwoLetterCode')
117
+ self.iso_two_letter_code = attributes[:'ISOTwoLetterCode']
118
+ end
119
+
120
+ end
121
+
122
+ # Show invalid properties with the reasons. Usually used together with valid?
123
+ # @return Array for valid properties with the reasons
124
+ def list_invalid_properties
125
+ invalid_properties = Array.new
126
+ return invalid_properties
127
+ end
128
+
129
+ # Check to see if the all the properties in the model are valid
130
+ # @return true if the model is valid
131
+ def valid?
132
+ return true
133
+ end
134
+
135
+ # Checks equality by comparing each attribute.
136
+ # @param [Object] Object to be compared
137
+ def ==(o)
138
+ return true if self.equal?(o)
139
+ self.class == o.class &&
140
+ successful == o.successful &&
141
+ building == o.building &&
142
+ street_number == o.street_number &&
143
+ street == o.street &&
144
+ city == o.city &&
145
+ state_or_province == o.state_or_province &&
146
+ postal_code == o.postal_code &&
147
+ country_full_name == o.country_full_name &&
148
+ iso_two_letter_code == o.iso_two_letter_code
149
+ end
150
+
151
+ # @see the `==` method
152
+ # @param [Object] Object to be compared
153
+ def eql?(o)
154
+ self == o
155
+ end
156
+
157
+ # Calculates hash code according to all attributes.
158
+ # @return [Fixnum] Hash code
159
+ def hash
160
+ [successful, building, street_number, street, city, state_or_province, postal_code, country_full_name, iso_two_letter_code].hash
161
+ end
162
+
163
+ # Builds the object from hash
164
+ # @param [Hash] attributes Model attributes in the form of hash
165
+ # @return [Object] Returns the model itself
166
+ def build_from_hash(attributes)
167
+ return nil unless attributes.is_a?(Hash)
168
+ self.class.swagger_types.each_pair do |key, type|
169
+ if type =~ /\AArray<(.*)>/i
170
+ # check to ensure the input is an array given that the 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 # or else data not found in attributes(hash), not an issue as the data can be optional
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 :DateTime
190
+ DateTime.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
+ temp_model = CloudmersiveValidateApiClient.const_get(type).new
221
+ temp_model.build_from_hash(value)
222
+ end
223
+ end
224
+
225
+ # Returns the string representation of the object
226
+ # @return [String] String presentation of the object
227
+ def to_s
228
+ to_hash.to_s
229
+ end
230
+
231
+ # to_body is an alias to to_hash (backward compatibility)
232
+ # @return [Hash] Returns the object in the form of hash
233
+ def to_body
234
+ to_hash
235
+ end
236
+
237
+ # Returns the object in the form of hash
238
+ # @return [Hash] Returns the object in the form of hash
239
+ def to_hash
240
+ hash = {}
241
+ self.class.attribute_map.each_pair do |attr, param|
242
+ value = self.send(attr)
243
+ next if value.nil?
244
+ hash[param] = _to_hash(value)
245
+ end
246
+ hash
247
+ end
248
+
249
+ # Outputs non-array value in the form of hash
250
+ # For object, use to_hash. Otherwise, just return the value
251
+ # @param [Object] value Any valid value
252
+ # @return [Hash] Returns the value in the form of hash
253
+ def _to_hash(value)
254
+ if value.is_a?(Array)
255
+ value.compact.map{ |v| _to_hash(v) }
256
+ elsif value.is_a?(Hash)
257
+ {}.tap do |hash|
258
+ value.each { |k, v| hash[k] = _to_hash(v) }
259
+ end
260
+ elsif value.respond_to? :to_hash
261
+ value.to_hash
262
+ else
263
+ value
264
+ end
265
+ end
266
+
267
+ end
268
+
269
+ end
@@ -6,7 +6,7 @@
6
6
  OpenAPI spec version: v1
7
7
 
8
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
9
- Swagger Codegen version: unset
9
+ Swagger Codegen version: 2.3.1
10
10
 
11
11
  =end
12
12
 
@@ -6,7 +6,7 @@
6
6
  OpenAPI spec version: v1
7
7
 
8
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
9
- Swagger Codegen version: unset
9
+ Swagger Codegen version: 2.3.1
10
10
 
11
11
  =end
12
12
 
@@ -0,0 +1,189 @@
1
+ =begin
2
+ #validateapi
3
+
4
+ #The validation APIs help you validate data. Check if an E-mail address is real. Check if a domain is real. Check up on an IP address, and even where it is located. All this and much more is available in the validation API.
5
+
6
+ OpenAPI spec version: v1
7
+
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: 2.3.1
10
+
11
+ =end
12
+
13
+ require 'date'
14
+
15
+ module CloudmersiveValidateApiClient
16
+ # User-Agent parse and validation request
17
+ class UserAgentValidateRequest
18
+ # The user agent string you wish to parse and validate
19
+ attr_accessor :user_agent_string
20
+
21
+
22
+ # Attribute mapping from ruby-style variable name to JSON key.
23
+ def self.attribute_map
24
+ {
25
+ :'user_agent_string' => :'UserAgentString'
26
+ }
27
+ end
28
+
29
+ # Attribute type mapping.
30
+ def self.swagger_types
31
+ {
32
+ :'user_agent_string' => :'String'
33
+ }
34
+ end
35
+
36
+ # Initializes the object
37
+ # @param [Hash] attributes Model attributes in the form of hash
38
+ def initialize(attributes = {})
39
+ return unless attributes.is_a?(Hash)
40
+
41
+ # convert string to symbol for hash key
42
+ attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
43
+
44
+ if attributes.has_key?(:'UserAgentString')
45
+ self.user_agent_string = attributes[:'UserAgentString']
46
+ end
47
+
48
+ end
49
+
50
+ # Show invalid properties with the reasons. Usually used together with valid?
51
+ # @return Array for valid properties with the reasons
52
+ def list_invalid_properties
53
+ invalid_properties = Array.new
54
+ return invalid_properties
55
+ end
56
+
57
+ # Check to see if the all the properties in the model are valid
58
+ # @return true if the model is valid
59
+ def valid?
60
+ return true
61
+ end
62
+
63
+ # Checks equality by comparing each attribute.
64
+ # @param [Object] Object to be compared
65
+ def ==(o)
66
+ return true if self.equal?(o)
67
+ self.class == o.class &&
68
+ user_agent_string == o.user_agent_string
69
+ end
70
+
71
+ # @see the `==` method
72
+ # @param [Object] Object to be compared
73
+ def eql?(o)
74
+ self == o
75
+ end
76
+
77
+ # Calculates hash code according to all attributes.
78
+ # @return [Fixnum] Hash code
79
+ def hash
80
+ [user_agent_string].hash
81
+ end
82
+
83
+ # Builds the object from hash
84
+ # @param [Hash] attributes Model attributes in the form of hash
85
+ # @return [Object] Returns the model itself
86
+ def build_from_hash(attributes)
87
+ return nil unless attributes.is_a?(Hash)
88
+ self.class.swagger_types.each_pair do |key, type|
89
+ if type =~ /\AArray<(.*)>/i
90
+ # check to ensure the input is an array given that the the attribute
91
+ # is documented as an array but the input is not
92
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
93
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
94
+ end
95
+ elsif !attributes[self.class.attribute_map[key]].nil?
96
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
97
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
98
+ end
99
+
100
+ self
101
+ end
102
+
103
+ # Deserializes the data based on type
104
+ # @param string type Data type
105
+ # @param string value Value to be deserialized
106
+ # @return [Object] Deserialized data
107
+ def _deserialize(type, value)
108
+ case type.to_sym
109
+ when :DateTime
110
+ DateTime.parse(value)
111
+ when :Date
112
+ Date.parse(value)
113
+ when :String
114
+ value.to_s
115
+ when :Integer
116
+ value.to_i
117
+ when :Float
118
+ value.to_f
119
+ when :BOOLEAN
120
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
121
+ true
122
+ else
123
+ false
124
+ end
125
+ when :Object
126
+ # generic object (usually a Hash), return directly
127
+ value
128
+ when /\AArray<(?<inner_type>.+)>\z/
129
+ inner_type = Regexp.last_match[:inner_type]
130
+ value.map { |v| _deserialize(inner_type, v) }
131
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
132
+ k_type = Regexp.last_match[:k_type]
133
+ v_type = Regexp.last_match[:v_type]
134
+ {}.tap do |hash|
135
+ value.each do |k, v|
136
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
137
+ end
138
+ end
139
+ else # model
140
+ temp_model = CloudmersiveValidateApiClient.const_get(type).new
141
+ temp_model.build_from_hash(value)
142
+ end
143
+ end
144
+
145
+ # Returns the string representation of the object
146
+ # @return [String] String presentation of the object
147
+ def to_s
148
+ to_hash.to_s
149
+ end
150
+
151
+ # to_body is an alias to to_hash (backward compatibility)
152
+ # @return [Hash] Returns the object in the form of hash
153
+ def to_body
154
+ to_hash
155
+ end
156
+
157
+ # Returns the object in the form of hash
158
+ # @return [Hash] Returns the object in the form of hash
159
+ def to_hash
160
+ hash = {}
161
+ self.class.attribute_map.each_pair do |attr, param|
162
+ value = self.send(attr)
163
+ next if value.nil?
164
+ hash[param] = _to_hash(value)
165
+ end
166
+ hash
167
+ end
168
+
169
+ # Outputs non-array value in the form of hash
170
+ # For object, use to_hash. Otherwise, just return the value
171
+ # @param [Object] value Any valid value
172
+ # @return [Hash] Returns the value in the form of hash
173
+ def _to_hash(value)
174
+ if value.is_a?(Array)
175
+ value.compact.map{ |v| _to_hash(v) }
176
+ elsif value.is_a?(Hash)
177
+ {}.tap do |hash|
178
+ value.each { |k, v| hash[k] = _to_hash(v) }
179
+ end
180
+ elsif value.respond_to? :to_hash
181
+ value.to_hash
182
+ else
183
+ value
184
+ end
185
+ end
186
+
187
+ end
188
+
189
+ end