cloudmersive-virus-scan-api-client 1.3.3 → 2.0.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (36) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +1 -1
  3. data/README.md +10 -5
  4. data/cloudmersive-virus-scan-api-client.gemspec +3 -3
  5. data/docs/CloudStorageVirusFound.md +9 -0
  6. data/docs/CloudStorageVirusScanResult.md +12 -0
  7. data/docs/ScanApi.md +9 -5
  8. data/docs/ScanCloudStorageApi.md +197 -0
  9. data/docs/VirusScanAdvancedResult.md +2 -0
  10. data/lib/cloudmersive-virus-scan-api-client.rb +4 -1
  11. data/lib/cloudmersive-virus-scan-api-client/api/scan_api.rb +21 -18
  12. data/lib/cloudmersive-virus-scan-api-client/api/scan_cloud_storage_api.rb +244 -0
  13. data/lib/cloudmersive-virus-scan-api-client/api_client.rb +11 -9
  14. data/lib/cloudmersive-virus-scan-api-client/api_error.rb +1 -1
  15. data/lib/cloudmersive-virus-scan-api-client/configuration.rb +2 -2
  16. data/lib/cloudmersive-virus-scan-api-client/models/cloud_storage_virus_found.rb +196 -0
  17. data/lib/cloudmersive-virus-scan-api-client/models/cloud_storage_virus_scan_result.rb +228 -0
  18. data/lib/cloudmersive-virus-scan-api-client/models/virus_found.rb +7 -10
  19. data/lib/cloudmersive-virus-scan-api-client/models/virus_scan_advanced_result.rb +28 -11
  20. data/lib/cloudmersive-virus-scan-api-client/models/virus_scan_result.rb +7 -10
  21. data/lib/cloudmersive-virus-scan-api-client/models/website_scan_request.rb +7 -10
  22. data/lib/cloudmersive-virus-scan-api-client/models/website_scan_result.rb +10 -12
  23. data/lib/cloudmersive-virus-scan-api-client/version.rb +2 -2
  24. data/spec/api/scan_api_spec.rb +7 -5
  25. data/spec/api/scan_cloud_storage_api_spec.rb +79 -0
  26. data/spec/api_client_spec.rb +52 -35
  27. data/spec/configuration_spec.rb +9 -9
  28. data/spec/models/cloud_storage_virus_found_spec.rb +47 -0
  29. data/spec/models/cloud_storage_virus_scan_result_spec.rb +65 -0
  30. data/spec/models/virus_found_spec.rb +3 -4
  31. data/spec/models/virus_scan_advanced_result_spec.rb +20 -9
  32. data/spec/models/virus_scan_result_spec.rb +3 -4
  33. data/spec/models/website_scan_request_spec.rb +2 -3
  34. data/spec/models/website_scan_result_spec.rb +9 -10
  35. data/spec/spec_helper.rb +1 -1
  36. metadata +11 -2
@@ -0,0 +1,228 @@
1
+ =begin
2
+ #virusapi
3
+
4
+ #The Cloudmersive Virus Scan API lets you scan files and content for viruses and identify security issues with content.
5
+
6
+ OpenAPI spec version: v1
7
+
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: 2.4.14
10
+
11
+ =end
12
+
13
+ require 'date'
14
+
15
+ module CloudmersiveVirusScanApiClient
16
+ # Result of running a virus scan on cloud storage
17
+ class CloudStorageVirusScanResult
18
+ # True if the operation of retrieving the file, and scanning it were successfully completed, false if the file could not be downloaded from cloud storage, or if the file could not be scanned. Note that successful completion does not mean the file is clean; for the output of the virus scanning operation itself, use the CleanResult and FoundViruses parameters.
19
+ attr_accessor :successful
20
+
21
+ # True if the scan contained no viruses, false otherwise
22
+ attr_accessor :clean_result
23
+
24
+ # Array of viruses found, if any
25
+ attr_accessor :found_viruses
26
+
27
+ # Detailed error message if the operation was not successful
28
+ attr_accessor :error_detailed_description
29
+
30
+ # Size in bytes of the file that was retrieved and scanned
31
+ attr_accessor :file_size
32
+
33
+ # Attribute mapping from ruby-style variable name to JSON key.
34
+ def self.attribute_map
35
+ {
36
+ :'successful' => :'Successful',
37
+ :'clean_result' => :'CleanResult',
38
+ :'found_viruses' => :'FoundViruses',
39
+ :'error_detailed_description' => :'ErrorDetailedDescription',
40
+ :'file_size' => :'FileSize'
41
+ }
42
+ end
43
+
44
+ # Attribute type mapping.
45
+ def self.swagger_types
46
+ {
47
+ :'successful' => :'BOOLEAN',
48
+ :'clean_result' => :'BOOLEAN',
49
+ :'found_viruses' => :'Array<CloudStorageVirusFound>',
50
+ :'error_detailed_description' => :'String',
51
+ :'file_size' => :'Integer'
52
+ }
53
+ end
54
+
55
+ # Initializes the object
56
+ # @param [Hash] attributes Model attributes in the form of hash
57
+ def initialize(attributes = {})
58
+ return unless attributes.is_a?(Hash)
59
+
60
+ # convert string to symbol for hash key
61
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
62
+
63
+ if attributes.has_key?(:'Successful')
64
+ self.successful = attributes[:'Successful']
65
+ end
66
+
67
+ if attributes.has_key?(:'CleanResult')
68
+ self.clean_result = attributes[:'CleanResult']
69
+ end
70
+
71
+ if attributes.has_key?(:'FoundViruses')
72
+ if (value = attributes[:'FoundViruses']).is_a?(Array)
73
+ self.found_viruses = value
74
+ end
75
+ end
76
+
77
+ if attributes.has_key?(:'ErrorDetailedDescription')
78
+ self.error_detailed_description = attributes[:'ErrorDetailedDescription']
79
+ end
80
+
81
+ if attributes.has_key?(:'FileSize')
82
+ self.file_size = attributes[:'FileSize']
83
+ end
84
+ end
85
+
86
+ # Show invalid properties with the reasons. Usually used together with valid?
87
+ # @return Array for valid properties with the reasons
88
+ def list_invalid_properties
89
+ invalid_properties = Array.new
90
+ invalid_properties
91
+ end
92
+
93
+ # Check to see if the all the properties in the model are valid
94
+ # @return true if the model is valid
95
+ def valid?
96
+ true
97
+ end
98
+
99
+ # Checks equality by comparing each attribute.
100
+ # @param [Object] Object to be compared
101
+ def ==(o)
102
+ return true if self.equal?(o)
103
+ self.class == o.class &&
104
+ successful == o.successful &&
105
+ clean_result == o.clean_result &&
106
+ found_viruses == o.found_viruses &&
107
+ error_detailed_description == o.error_detailed_description &&
108
+ file_size == o.file_size
109
+ end
110
+
111
+ # @see the `==` method
112
+ # @param [Object] Object to be compared
113
+ def eql?(o)
114
+ self == o
115
+ end
116
+
117
+ # Calculates hash code according to all attributes.
118
+ # @return [Fixnum] Hash code
119
+ def hash
120
+ [successful, clean_result, found_viruses, error_detailed_description, file_size].hash
121
+ end
122
+
123
+ # Builds the object from hash
124
+ # @param [Hash] attributes Model attributes in the form of hash
125
+ # @return [Object] Returns the model itself
126
+ def build_from_hash(attributes)
127
+ return nil unless attributes.is_a?(Hash)
128
+ self.class.swagger_types.each_pair do |key, type|
129
+ if type =~ /\AArray<(.*)>/i
130
+ # check to ensure the input is an array given that the attribute
131
+ # is documented as an array but the input is not
132
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
133
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
134
+ end
135
+ elsif !attributes[self.class.attribute_map[key]].nil?
136
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
137
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
138
+ end
139
+
140
+ self
141
+ end
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
147
+ def _deserialize(type, value)
148
+ case type.to_sym
149
+ when :DateTime
150
+ DateTime.parse(value)
151
+ when :Date
152
+ Date.parse(value)
153
+ when :String
154
+ value.to_s
155
+ when :Integer
156
+ value.to_i
157
+ when :Float
158
+ value.to_f
159
+ when :BOOLEAN
160
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
161
+ true
162
+ else
163
+ false
164
+ end
165
+ when :Object
166
+ # generic object (usually a Hash), return directly
167
+ value
168
+ when /\AArray<(?<inner_type>.+)>\z/
169
+ inner_type = Regexp.last_match[:inner_type]
170
+ value.map { |v| _deserialize(inner_type, v) }
171
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
172
+ k_type = Regexp.last_match[:k_type]
173
+ v_type = Regexp.last_match[:v_type]
174
+ {}.tap do |hash|
175
+ value.each do |k, v|
176
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
177
+ end
178
+ end
179
+ else # model
180
+ temp_model = CloudmersiveVirusScanApiClient.const_get(type).new
181
+ temp_model.build_from_hash(value)
182
+ end
183
+ end
184
+
185
+ # Returns the string representation of the object
186
+ # @return [String] String presentation of the object
187
+ def to_s
188
+ to_hash.to_s
189
+ end
190
+
191
+ # to_body is an alias to to_hash (backward compatibility)
192
+ # @return [Hash] Returns the object in the form of hash
193
+ def to_body
194
+ to_hash
195
+ end
196
+
197
+ # Returns the object in the form of hash
198
+ # @return [Hash] Returns the object in the form of hash
199
+ def to_hash
200
+ hash = {}
201
+ self.class.attribute_map.each_pair do |attr, param|
202
+ value = self.send(attr)
203
+ next if value.nil?
204
+ hash[param] = _to_hash(value)
205
+ end
206
+ hash
207
+ end
208
+
209
+ # Outputs non-array value in the form of hash
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
213
+ def _to_hash(value)
214
+ if value.is_a?(Array)
215
+ value.compact.map { |v| _to_hash(v) }
216
+ elsif value.is_a?(Hash)
217
+ {}.tap do |hash|
218
+ value.each { |k, v| hash[k] = _to_hash(v) }
219
+ end
220
+ elsif value.respond_to? :to_hash
221
+ value.to_hash
222
+ else
223
+ value
224
+ end
225
+ end
226
+
227
+ end
228
+ 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: 2.3.1
9
+ Swagger Codegen version: 2.4.14
10
10
 
11
11
  =end
12
12
 
@@ -21,7 +21,6 @@ module CloudmersiveVirusScanApiClient
21
21
  # Name of the virus that was found
22
22
  attr_accessor :virus_name
23
23
 
24
-
25
24
  # Attribute mapping from ruby-style variable name to JSON key.
26
25
  def self.attribute_map
27
26
  {
@@ -44,7 +43,7 @@ module CloudmersiveVirusScanApiClient
44
43
  return unless attributes.is_a?(Hash)
45
44
 
46
45
  # convert string to symbol for hash key
47
- attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
46
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
48
47
 
49
48
  if attributes.has_key?(:'FileName')
50
49
  self.file_name = attributes[:'FileName']
@@ -53,20 +52,19 @@ module CloudmersiveVirusScanApiClient
53
52
  if attributes.has_key?(:'VirusName')
54
53
  self.virus_name = attributes[:'VirusName']
55
54
  end
56
-
57
55
  end
58
56
 
59
57
  # Show invalid properties with the reasons. Usually used together with valid?
60
58
  # @return Array for valid properties with the reasons
61
59
  def list_invalid_properties
62
60
  invalid_properties = Array.new
63
- return invalid_properties
61
+ invalid_properties
64
62
  end
65
63
 
66
64
  # Check to see if the all the properties in the model are valid
67
65
  # @return true if the model is valid
68
66
  def valid?
69
- return true
67
+ true
70
68
  end
71
69
 
72
70
  # Checks equality by comparing each attribute.
@@ -97,10 +95,10 @@ module CloudmersiveVirusScanApiClient
97
95
  return nil unless attributes.is_a?(Hash)
98
96
  self.class.swagger_types.each_pair do |key, type|
99
97
  if type =~ /\AArray<(.*)>/i
100
- # check to ensure the input is an array given that the the attribute
98
+ # check to ensure the input is an array given that the attribute
101
99
  # is documented as an array but the input is not
102
100
  if attributes[self.class.attribute_map[key]].is_a?(Array)
103
- self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
101
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
104
102
  end
105
103
  elsif !attributes[self.class.attribute_map[key]].nil?
106
104
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
@@ -182,7 +180,7 @@ module CloudmersiveVirusScanApiClient
182
180
  # @return [Hash] Returns the value in the form of hash
183
181
  def _to_hash(value)
184
182
  if value.is_a?(Array)
185
- value.compact.map{ |v| _to_hash(v) }
183
+ value.compact.map { |v| _to_hash(v) }
186
184
  elsif value.is_a?(Hash)
187
185
  {}.tap do |hash|
188
186
  value.each { |k, v| hash[k] = _to_hash(v) }
@@ -195,5 +193,4 @@ module CloudmersiveVirusScanApiClient
195
193
  end
196
194
 
197
195
  end
198
-
199
196
  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: 2.3.1
9
+ Swagger Codegen version: 2.4.14
10
10
 
11
11
  =end
12
12
 
@@ -27,16 +27,21 @@ module CloudmersiveVirusScanApiClient
27
27
  # True if the scan contained a script (such as a PHP script, Python script, etc.) which can be a significant risk factor
28
28
  attr_accessor :contains_script
29
29
 
30
+ # True if the scan contained a password protected or encrypted file, which can be a significant risk factor
31
+ attr_accessor :contains_password_protected_file
32
+
30
33
  # True if the uploaded file is of a type that is not allowed based on the optional restrictFileTypes parameter, false otherwise; if restrictFileTypes is not set, this will always be false
31
34
  attr_accessor :contains_restricted_file_format
32
35
 
36
+ # True if the uploaded file contains embedded Macros of other embedded threats within the document, which can be a significant risk factor
37
+ attr_accessor :contains_macros
38
+
33
39
  # For file format verification-supported file formats, the contents-verified file format of the file. Null indicates that the file format is not supported for contents verification. If a Virus or Malware is found, this field will always be set to Null.
34
40
  attr_accessor :verified_file_format
35
41
 
36
42
  # Array of viruses found, if any
37
43
  attr_accessor :found_viruses
38
44
 
39
-
40
45
  # Attribute mapping from ruby-style variable name to JSON key.
41
46
  def self.attribute_map
42
47
  {
@@ -44,7 +49,9 @@ module CloudmersiveVirusScanApiClient
44
49
  :'contains_executable' => :'ContainsExecutable',
45
50
  :'contains_invalid_file' => :'ContainsInvalidFile',
46
51
  :'contains_script' => :'ContainsScript',
52
+ :'contains_password_protected_file' => :'ContainsPasswordProtectedFile',
47
53
  :'contains_restricted_file_format' => :'ContainsRestrictedFileFormat',
54
+ :'contains_macros' => :'ContainsMacros',
48
55
  :'verified_file_format' => :'VerifiedFileFormat',
49
56
  :'found_viruses' => :'FoundViruses'
50
57
  }
@@ -57,7 +64,9 @@ module CloudmersiveVirusScanApiClient
57
64
  :'contains_executable' => :'BOOLEAN',
58
65
  :'contains_invalid_file' => :'BOOLEAN',
59
66
  :'contains_script' => :'BOOLEAN',
67
+ :'contains_password_protected_file' => :'BOOLEAN',
60
68
  :'contains_restricted_file_format' => :'BOOLEAN',
69
+ :'contains_macros' => :'BOOLEAN',
61
70
  :'verified_file_format' => :'String',
62
71
  :'found_viruses' => :'Array<VirusFound>'
63
72
  }
@@ -69,7 +78,7 @@ module CloudmersiveVirusScanApiClient
69
78
  return unless attributes.is_a?(Hash)
70
79
 
71
80
  # convert string to symbol for hash key
72
- attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
81
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
73
82
 
74
83
  if attributes.has_key?(:'CleanResult')
75
84
  self.clean_result = attributes[:'CleanResult']
@@ -87,10 +96,18 @@ module CloudmersiveVirusScanApiClient
87
96
  self.contains_script = attributes[:'ContainsScript']
88
97
  end
89
98
 
99
+ if attributes.has_key?(:'ContainsPasswordProtectedFile')
100
+ self.contains_password_protected_file = attributes[:'ContainsPasswordProtectedFile']
101
+ end
102
+
90
103
  if attributes.has_key?(:'ContainsRestrictedFileFormat')
91
104
  self.contains_restricted_file_format = attributes[:'ContainsRestrictedFileFormat']
92
105
  end
93
106
 
107
+ if attributes.has_key?(:'ContainsMacros')
108
+ self.contains_macros = attributes[:'ContainsMacros']
109
+ end
110
+
94
111
  if attributes.has_key?(:'VerifiedFileFormat')
95
112
  self.verified_file_format = attributes[:'VerifiedFileFormat']
96
113
  end
@@ -100,20 +117,19 @@ module CloudmersiveVirusScanApiClient
100
117
  self.found_viruses = value
101
118
  end
102
119
  end
103
-
104
120
  end
105
121
 
106
122
  # Show invalid properties with the reasons. Usually used together with valid?
107
123
  # @return Array for valid properties with the reasons
108
124
  def list_invalid_properties
109
125
  invalid_properties = Array.new
110
- return invalid_properties
126
+ invalid_properties
111
127
  end
112
128
 
113
129
  # Check to see if the all the properties in the model are valid
114
130
  # @return true if the model is valid
115
131
  def valid?
116
- return true
132
+ true
117
133
  end
118
134
 
119
135
  # Checks equality by comparing each attribute.
@@ -125,7 +141,9 @@ module CloudmersiveVirusScanApiClient
125
141
  contains_executable == o.contains_executable &&
126
142
  contains_invalid_file == o.contains_invalid_file &&
127
143
  contains_script == o.contains_script &&
144
+ contains_password_protected_file == o.contains_password_protected_file &&
128
145
  contains_restricted_file_format == o.contains_restricted_file_format &&
146
+ contains_macros == o.contains_macros &&
129
147
  verified_file_format == o.verified_file_format &&
130
148
  found_viruses == o.found_viruses
131
149
  end
@@ -139,7 +157,7 @@ module CloudmersiveVirusScanApiClient
139
157
  # Calculates hash code according to all attributes.
140
158
  # @return [Fixnum] Hash code
141
159
  def hash
142
- [clean_result, contains_executable, contains_invalid_file, contains_script, contains_restricted_file_format, verified_file_format, found_viruses].hash
160
+ [clean_result, contains_executable, contains_invalid_file, contains_script, contains_password_protected_file, contains_restricted_file_format, contains_macros, verified_file_format, found_viruses].hash
143
161
  end
144
162
 
145
163
  # Builds the object from hash
@@ -149,10 +167,10 @@ module CloudmersiveVirusScanApiClient
149
167
  return nil unless attributes.is_a?(Hash)
150
168
  self.class.swagger_types.each_pair do |key, type|
151
169
  if type =~ /\AArray<(.*)>/i
152
- # check to ensure the input is an array given that the the attribute
170
+ # check to ensure the input is an array given that the attribute
153
171
  # is documented as an array but the input is not
154
172
  if attributes[self.class.attribute_map[key]].is_a?(Array)
155
- self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
173
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
156
174
  end
157
175
  elsif !attributes[self.class.attribute_map[key]].nil?
158
176
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
@@ -234,7 +252,7 @@ module CloudmersiveVirusScanApiClient
234
252
  # @return [Hash] Returns the value in the form of hash
235
253
  def _to_hash(value)
236
254
  if value.is_a?(Array)
237
- value.compact.map{ |v| _to_hash(v) }
255
+ value.compact.map { |v| _to_hash(v) }
238
256
  elsif value.is_a?(Hash)
239
257
  {}.tap do |hash|
240
258
  value.each { |k, v| hash[k] = _to_hash(v) }
@@ -247,5 +265,4 @@ module CloudmersiveVirusScanApiClient
247
265
  end
248
266
 
249
267
  end
250
-
251
268
  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: 2.3.1
9
+ Swagger Codegen version: 2.4.14
10
10
 
11
11
  =end
12
12
 
@@ -21,7 +21,6 @@ module CloudmersiveVirusScanApiClient
21
21
  # Array of viruses found, if any
22
22
  attr_accessor :found_viruses
23
23
 
24
-
25
24
  # Attribute mapping from ruby-style variable name to JSON key.
26
25
  def self.attribute_map
27
26
  {
@@ -44,7 +43,7 @@ module CloudmersiveVirusScanApiClient
44
43
  return unless attributes.is_a?(Hash)
45
44
 
46
45
  # convert string to symbol for hash key
47
- attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
46
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
48
47
 
49
48
  if attributes.has_key?(:'CleanResult')
50
49
  self.clean_result = attributes[:'CleanResult']
@@ -55,20 +54,19 @@ module CloudmersiveVirusScanApiClient
55
54
  self.found_viruses = value
56
55
  end
57
56
  end
58
-
59
57
  end
60
58
 
61
59
  # Show invalid properties with the reasons. Usually used together with valid?
62
60
  # @return Array for valid properties with the reasons
63
61
  def list_invalid_properties
64
62
  invalid_properties = Array.new
65
- return invalid_properties
63
+ invalid_properties
66
64
  end
67
65
 
68
66
  # Check to see if the all the properties in the model are valid
69
67
  # @return true if the model is valid
70
68
  def valid?
71
- return true
69
+ true
72
70
  end
73
71
 
74
72
  # Checks equality by comparing each attribute.
@@ -99,10 +97,10 @@ module CloudmersiveVirusScanApiClient
99
97
  return nil unless attributes.is_a?(Hash)
100
98
  self.class.swagger_types.each_pair do |key, type|
101
99
  if type =~ /\AArray<(.*)>/i
102
- # check to ensure the input is an array given that the the attribute
100
+ # check to ensure the input is an array given that the attribute
103
101
  # is documented as an array but the input is not
104
102
  if attributes[self.class.attribute_map[key]].is_a?(Array)
105
- self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
103
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
106
104
  end
107
105
  elsif !attributes[self.class.attribute_map[key]].nil?
108
106
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
@@ -184,7 +182,7 @@ module CloudmersiveVirusScanApiClient
184
182
  # @return [Hash] Returns the value in the form of hash
185
183
  def _to_hash(value)
186
184
  if value.is_a?(Array)
187
- value.compact.map{ |v| _to_hash(v) }
185
+ value.compact.map { |v| _to_hash(v) }
188
186
  elsif value.is_a?(Hash)
189
187
  {}.tap do |hash|
190
188
  value.each { |k, v| hash[k] = _to_hash(v) }
@@ -197,5 +195,4 @@ module CloudmersiveVirusScanApiClient
197
195
  end
198
196
 
199
197
  end
200
-
201
198
  end