ory-hydra-client 1.9.0 → 1.9.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (90) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +5 -5
  3. data/docs/AcceptConsentRequest.md +18 -17
  4. data/docs/AcceptLoginRequest.md +18 -17
  5. data/docs/AdminApi.md +815 -303
  6. data/docs/CompletedRequest.md +8 -7
  7. data/docs/ConsentRequest.md +30 -29
  8. data/docs/ConsentRequestSession.md +10 -9
  9. data/docs/ContainerWaitOKBodyError.md +8 -7
  10. data/docs/FlushInactiveOAuth2TokensRequest.md +8 -7
  11. data/docs/GenericError.md +14 -13
  12. data/docs/HealthNotReadyStatus.md +8 -7
  13. data/docs/HealthStatus.md +8 -7
  14. data/docs/JSONWebKey.md +40 -39
  15. data/docs/JSONWebKeySet.md +8 -7
  16. data/docs/JsonWebKeySetGeneratorRequest.md +12 -11
  17. data/docs/LoginRequest.md +24 -23
  18. data/docs/LogoutRequest.md +14 -13
  19. data/docs/OAuth2Client.md +72 -71
  20. data/docs/OAuth2TokenIntrospection.md +34 -33
  21. data/docs/Oauth2TokenResponse.md +18 -17
  22. data/docs/OpenIDConnectContext.md +16 -15
  23. data/docs/PluginConfig.md +38 -37
  24. data/docs/PluginConfigArgs.md +14 -13
  25. data/docs/PluginConfigInterface.md +10 -9
  26. data/docs/PluginConfigLinux.md +12 -11
  27. data/docs/PluginConfigNetwork.md +8 -7
  28. data/docs/PluginConfigRootfs.md +10 -9
  29. data/docs/PluginConfigUser.md +10 -9
  30. data/docs/PluginDevice.md +14 -13
  31. data/docs/PluginEnv.md +14 -13
  32. data/docs/PluginInterfaceType.md +12 -11
  33. data/docs/PluginMount.md +20 -19
  34. data/docs/PluginSettings.md +14 -13
  35. data/docs/PreviousConsentSession.md +20 -19
  36. data/docs/PublicApi.md +201 -60
  37. data/docs/RejectRequest.md +16 -15
  38. data/docs/UserinfoResponse.md +44 -43
  39. data/docs/Version.md +8 -7
  40. data/docs/VolumeUsageData.md +10 -9
  41. data/docs/WellKnown.md +58 -57
  42. data/lib/ory-hydra-client.rb +2 -2
  43. data/lib/ory-hydra-client/api/admin_api.rb +122 -92
  44. data/lib/ory-hydra-client/api/public_api.rb +34 -26
  45. data/lib/ory-hydra-client/api_client.rb +50 -48
  46. data/lib/ory-hydra-client/api_error.rb +2 -2
  47. data/lib/ory-hydra-client/configuration.rb +34 -7
  48. data/lib/ory-hydra-client/models/accept_consent_request.rb +21 -9
  49. data/lib/ory-hydra-client/models/accept_login_request.rb +20 -8
  50. data/lib/ory-hydra-client/models/completed_request.rb +20 -8
  51. data/lib/ory-hydra-client/models/consent_request.rb +20 -8
  52. data/lib/ory-hydra-client/models/consent_request_session.rb +20 -8
  53. data/lib/ory-hydra-client/models/container_wait_ok_body_error.rb +20 -8
  54. data/lib/ory-hydra-client/models/flush_inactive_o_auth2_tokens_request.rb +21 -9
  55. data/lib/ory-hydra-client/models/generic_error.rb +20 -8
  56. data/lib/ory-hydra-client/models/health_not_ready_status.rb +20 -8
  57. data/lib/ory-hydra-client/models/health_status.rb +20 -8
  58. data/lib/ory-hydra-client/models/json_web_key.rb +20 -8
  59. data/lib/ory-hydra-client/models/json_web_key_set.rb +20 -8
  60. data/lib/ory-hydra-client/models/json_web_key_set_generator_request.rb +20 -8
  61. data/lib/ory-hydra-client/models/login_request.rb +20 -8
  62. data/lib/ory-hydra-client/models/logout_request.rb +20 -8
  63. data/lib/ory-hydra-client/models/o_auth2_client.rb +22 -10
  64. data/lib/ory-hydra-client/models/o_auth2_token_introspection.rb +20 -8
  65. data/lib/ory-hydra-client/models/oauth2_token_response.rb +20 -8
  66. data/lib/ory-hydra-client/models/open_id_connect_context.rb +20 -8
  67. data/lib/ory-hydra-client/models/plugin_config.rb +20 -8
  68. data/lib/ory-hydra-client/models/plugin_config_args.rb +20 -8
  69. data/lib/ory-hydra-client/models/plugin_config_interface.rb +20 -8
  70. data/lib/ory-hydra-client/models/plugin_config_linux.rb +20 -8
  71. data/lib/ory-hydra-client/models/plugin_config_network.rb +20 -8
  72. data/lib/ory-hydra-client/models/plugin_config_rootfs.rb +20 -8
  73. data/lib/ory-hydra-client/models/plugin_config_user.rb +20 -8
  74. data/lib/ory-hydra-client/models/plugin_device.rb +20 -8
  75. data/lib/ory-hydra-client/models/plugin_env.rb +20 -8
  76. data/lib/ory-hydra-client/models/plugin_interface_type.rb +20 -8
  77. data/lib/ory-hydra-client/models/plugin_mount.rb +20 -8
  78. data/lib/ory-hydra-client/models/plugin_settings.rb +20 -8
  79. data/lib/ory-hydra-client/models/previous_consent_session.rb +21 -9
  80. data/lib/ory-hydra-client/models/reject_request.rb +20 -8
  81. data/lib/ory-hydra-client/models/userinfo_response.rb +20 -8
  82. data/lib/ory-hydra-client/models/version.rb +20 -8
  83. data/lib/ory-hydra-client/models/volume_usage_data.rb +20 -8
  84. data/lib/ory-hydra-client/models/well_known.rb +20 -8
  85. data/lib/ory-hydra-client/version.rb +3 -3
  86. data/ory-hydra-client.gemspec +4 -5
  87. data/spec/api_client_spec.rb +3 -3
  88. data/spec/configuration_spec.rb +2 -2
  89. data/spec/spec_helper.rb +2 -2
  90. metadata +32 -52
@@ -3,14 +3,15 @@
3
3
 
4
4
  #Welcome to the ORY Hydra HTTP API documentation. You will find documentation for all HTTP APIs here.
5
5
 
6
- The version of the OpenAPI document: v1.9.0
6
+ The version of the OpenAPI document: v1.9.1
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.3.1
9
+ OpenAPI Generator version: 5.0.0
10
10
 
11
11
  =end
12
12
 
13
13
  require 'date'
14
+ require 'time'
14
15
 
15
16
  module OryHydraClient
16
17
  class LoginRequest
@@ -52,6 +53,11 @@ module OryHydraClient
52
53
  }
53
54
  end
54
55
 
56
+ # Returns all the JSON keys this model knows about
57
+ def self.acceptable_attributes
58
+ attribute_map.values
59
+ end
60
+
55
61
  # Attribute type mapping.
56
62
  def self.openapi_types
57
63
  {
@@ -218,7 +224,9 @@ module OryHydraClient
218
224
  def build_from_hash(attributes)
219
225
  return nil unless attributes.is_a?(Hash)
220
226
  self.class.openapi_types.each_pair do |key, type|
221
- if type =~ /\AArray<(.*)>/i
227
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
228
+ self.send("#{key}=", nil)
229
+ elsif type =~ /\AArray<(.*)>/i
222
230
  # check to ensure the input is an array given that the attribute
223
231
  # is documented as an array but the input is not
224
232
  if attributes[self.class.attribute_map[key]].is_a?(Array)
@@ -226,7 +234,7 @@ module OryHydraClient
226
234
  end
227
235
  elsif !attributes[self.class.attribute_map[key]].nil?
228
236
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
229
- end # or else data not found in attributes(hash), not an issue as the data can be optional
237
+ end
230
238
  end
231
239
 
232
240
  self
@@ -238,8 +246,8 @@ module OryHydraClient
238
246
  # @return [Object] Deserialized data
239
247
  def _deserialize(type, value)
240
248
  case type.to_sym
241
- when :DateTime
242
- DateTime.parse(value)
249
+ when :Time
250
+ Time.parse(value)
243
251
  when :Date
244
252
  Date.parse(value)
245
253
  when :String
@@ -269,7 +277,9 @@ module OryHydraClient
269
277
  end
270
278
  end
271
279
  else # model
272
- OryHydraClient.const_get(type).build_from_hash(value)
280
+ # models (e.g. Pet) or oneOf
281
+ klass = OryHydraClient.const_get(type)
282
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
273
283
  end
274
284
  end
275
285
 
@@ -295,7 +305,7 @@ module OryHydraClient
295
305
  is_nullable = self.class.openapi_nullable.include?(attr)
296
306
  next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
297
307
  end
298
-
308
+
299
309
  hash[param] = _to_hash(value)
300
310
  end
301
311
  hash
@@ -318,5 +328,7 @@ module OryHydraClient
318
328
  value
319
329
  end
320
330
  end
331
+
321
332
  end
333
+
322
334
  end
@@ -3,14 +3,15 @@
3
3
 
4
4
  #Welcome to the ORY Hydra HTTP API documentation. You will find documentation for all HTTP APIs here.
5
5
 
6
- The version of the OpenAPI document: v1.9.0
6
+ The version of the OpenAPI document: v1.9.1
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.3.1
9
+ OpenAPI Generator version: 5.0.0
10
10
 
11
11
  =end
12
12
 
13
13
  require 'date'
14
+ require 'time'
14
15
 
15
16
  module OryHydraClient
16
17
  class LogoutRequest
@@ -36,6 +37,11 @@ module OryHydraClient
36
37
  }
37
38
  end
38
39
 
40
+ # Returns all the JSON keys this model knows about
41
+ def self.acceptable_attributes
42
+ attribute_map.values
43
+ end
44
+
39
45
  # Attribute type mapping.
40
46
  def self.openapi_types
41
47
  {
@@ -133,7 +139,9 @@ module OryHydraClient
133
139
  def build_from_hash(attributes)
134
140
  return nil unless attributes.is_a?(Hash)
135
141
  self.class.openapi_types.each_pair do |key, type|
136
- if type =~ /\AArray<(.*)>/i
142
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
143
+ self.send("#{key}=", nil)
144
+ elsif type =~ /\AArray<(.*)>/i
137
145
  # check to ensure the input is an array given that the attribute
138
146
  # is documented as an array but the input is not
139
147
  if attributes[self.class.attribute_map[key]].is_a?(Array)
@@ -141,7 +149,7 @@ module OryHydraClient
141
149
  end
142
150
  elsif !attributes[self.class.attribute_map[key]].nil?
143
151
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
144
- end # or else data not found in attributes(hash), not an issue as the data can be optional
152
+ end
145
153
  end
146
154
 
147
155
  self
@@ -153,8 +161,8 @@ module OryHydraClient
153
161
  # @return [Object] Deserialized data
154
162
  def _deserialize(type, value)
155
163
  case type.to_sym
156
- when :DateTime
157
- DateTime.parse(value)
164
+ when :Time
165
+ Time.parse(value)
158
166
  when :Date
159
167
  Date.parse(value)
160
168
  when :String
@@ -184,7 +192,9 @@ module OryHydraClient
184
192
  end
185
193
  end
186
194
  else # model
187
- OryHydraClient.const_get(type).build_from_hash(value)
195
+ # models (e.g. Pet) or oneOf
196
+ klass = OryHydraClient.const_get(type)
197
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
188
198
  end
189
199
  end
190
200
 
@@ -210,7 +220,7 @@ module OryHydraClient
210
220
  is_nullable = self.class.openapi_nullable.include?(attr)
211
221
  next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
212
222
  end
213
-
223
+
214
224
  hash[param] = _to_hash(value)
215
225
  end
216
226
  hash
@@ -233,5 +243,7 @@ module OryHydraClient
233
243
  value
234
244
  end
235
245
  end
246
+
236
247
  end
248
+
237
249
  end
@@ -3,14 +3,15 @@
3
3
 
4
4
  #Welcome to the ORY Hydra HTTP API documentation. You will find documentation for all HTTP APIs here.
5
5
 
6
- The version of the OpenAPI document: v1.9.0
6
+ The version of the OpenAPI document: v1.9.1
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.3.1
9
+ OpenAPI Generator version: 5.0.0
10
10
 
11
11
  =end
12
12
 
13
13
  require 'date'
14
+ require 'time'
14
15
 
15
16
  module OryHydraClient
16
17
  class OAuth2Client
@@ -142,6 +143,11 @@ module OryHydraClient
142
143
  }
143
144
  end
144
145
 
146
+ # Returns all the JSON keys this model knows about
147
+ def self.acceptable_attributes
148
+ attribute_map.values
149
+ end
150
+
145
151
  # Attribute type mapping.
146
152
  def self.openapi_types
147
153
  {
@@ -155,7 +161,7 @@ module OryHydraClient
155
161
  :'client_secret_expires_at' => :'Integer',
156
162
  :'client_uri' => :'String',
157
163
  :'contacts' => :'Array<String>',
158
- :'created_at' => :'DateTime',
164
+ :'created_at' => :'Time',
159
165
  :'frontchannel_logout_session_required' => :'Boolean',
160
166
  :'frontchannel_logout_uri' => :'String',
161
167
  :'grant_types' => :'Array<String>',
@@ -176,7 +182,7 @@ module OryHydraClient
176
182
  :'token_endpoint_auth_method' => :'String',
177
183
  :'token_endpoint_auth_signing_alg' => :'String',
178
184
  :'tos_uri' => :'String',
179
- :'updated_at' => :'DateTime',
185
+ :'updated_at' => :'Time',
180
186
  :'userinfo_signed_response_alg' => :'String'
181
187
  }
182
188
  end
@@ -446,7 +452,9 @@ module OryHydraClient
446
452
  def build_from_hash(attributes)
447
453
  return nil unless attributes.is_a?(Hash)
448
454
  self.class.openapi_types.each_pair do |key, type|
449
- if type =~ /\AArray<(.*)>/i
455
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
456
+ self.send("#{key}=", nil)
457
+ elsif type =~ /\AArray<(.*)>/i
450
458
  # check to ensure the input is an array given that the attribute
451
459
  # is documented as an array but the input is not
452
460
  if attributes[self.class.attribute_map[key]].is_a?(Array)
@@ -454,7 +462,7 @@ module OryHydraClient
454
462
  end
455
463
  elsif !attributes[self.class.attribute_map[key]].nil?
456
464
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
457
- end # or else data not found in attributes(hash), not an issue as the data can be optional
465
+ end
458
466
  end
459
467
 
460
468
  self
@@ -466,8 +474,8 @@ module OryHydraClient
466
474
  # @return [Object] Deserialized data
467
475
  def _deserialize(type, value)
468
476
  case type.to_sym
469
- when :DateTime
470
- DateTime.parse(value)
477
+ when :Time
478
+ Time.parse(value)
471
479
  when :Date
472
480
  Date.parse(value)
473
481
  when :String
@@ -497,7 +505,9 @@ module OryHydraClient
497
505
  end
498
506
  end
499
507
  else # model
500
- OryHydraClient.const_get(type).build_from_hash(value)
508
+ # models (e.g. Pet) or oneOf
509
+ klass = OryHydraClient.const_get(type)
510
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
501
511
  end
502
512
  end
503
513
 
@@ -523,7 +533,7 @@ module OryHydraClient
523
533
  is_nullable = self.class.openapi_nullable.include?(attr)
524
534
  next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
525
535
  end
526
-
536
+
527
537
  hash[param] = _to_hash(value)
528
538
  end
529
539
  hash
@@ -546,5 +556,7 @@ module OryHydraClient
546
556
  value
547
557
  end
548
558
  end
559
+
549
560
  end
561
+
550
562
  end
@@ -3,14 +3,15 @@
3
3
 
4
4
  #Welcome to the ORY Hydra HTTP API documentation. You will find documentation for all HTTP APIs here.
5
5
 
6
- The version of the OpenAPI document: v1.9.0
6
+ The version of the OpenAPI document: v1.9.1
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.3.1
9
+ OpenAPI Generator version: 5.0.0
10
10
 
11
11
  =end
12
12
 
13
13
  require 'date'
14
+ require 'time'
14
15
 
15
16
  module OryHydraClient
16
17
  # https://tools.ietf.org/html/rfc7662
@@ -77,6 +78,11 @@ module OryHydraClient
77
78
  }
78
79
  end
79
80
 
81
+ # Returns all the JSON keys this model knows about
82
+ def self.acceptable_attributes
83
+ attribute_map.values
84
+ end
85
+
80
86
  # Attribute type mapping.
81
87
  def self.openapi_types
82
88
  {
@@ -241,7 +247,9 @@ module OryHydraClient
241
247
  def build_from_hash(attributes)
242
248
  return nil unless attributes.is_a?(Hash)
243
249
  self.class.openapi_types.each_pair do |key, type|
244
- if type =~ /\AArray<(.*)>/i
250
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
251
+ self.send("#{key}=", nil)
252
+ elsif type =~ /\AArray<(.*)>/i
245
253
  # check to ensure the input is an array given that the attribute
246
254
  # is documented as an array but the input is not
247
255
  if attributes[self.class.attribute_map[key]].is_a?(Array)
@@ -249,7 +257,7 @@ module OryHydraClient
249
257
  end
250
258
  elsif !attributes[self.class.attribute_map[key]].nil?
251
259
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
252
- end # or else data not found in attributes(hash), not an issue as the data can be optional
260
+ end
253
261
  end
254
262
 
255
263
  self
@@ -261,8 +269,8 @@ module OryHydraClient
261
269
  # @return [Object] Deserialized data
262
270
  def _deserialize(type, value)
263
271
  case type.to_sym
264
- when :DateTime
265
- DateTime.parse(value)
272
+ when :Time
273
+ Time.parse(value)
266
274
  when :Date
267
275
  Date.parse(value)
268
276
  when :String
@@ -292,7 +300,9 @@ module OryHydraClient
292
300
  end
293
301
  end
294
302
  else # model
295
- OryHydraClient.const_get(type).build_from_hash(value)
303
+ # models (e.g. Pet) or oneOf
304
+ klass = OryHydraClient.const_get(type)
305
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
296
306
  end
297
307
  end
298
308
 
@@ -318,7 +328,7 @@ module OryHydraClient
318
328
  is_nullable = self.class.openapi_nullable.include?(attr)
319
329
  next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
320
330
  end
321
-
331
+
322
332
  hash[param] = _to_hash(value)
323
333
  end
324
334
  hash
@@ -341,5 +351,7 @@ module OryHydraClient
341
351
  value
342
352
  end
343
353
  end
354
+
344
355
  end
356
+
345
357
  end
@@ -3,14 +3,15 @@
3
3
 
4
4
  #Welcome to the ORY Hydra HTTP API documentation. You will find documentation for all HTTP APIs here.
5
5
 
6
- The version of the OpenAPI document: v1.9.0
6
+ The version of the OpenAPI document: v1.9.1
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.3.1
9
+ OpenAPI Generator version: 5.0.0
10
10
 
11
11
  =end
12
12
 
13
13
  require 'date'
14
+ require 'time'
14
15
 
15
16
  module OryHydraClient
16
17
  # The Access Token Response
@@ -39,6 +40,11 @@ module OryHydraClient
39
40
  }
40
41
  end
41
42
 
43
+ # Returns all the JSON keys this model knows about
44
+ def self.acceptable_attributes
45
+ attribute_map.values
46
+ end
47
+
42
48
  # Attribute type mapping.
43
49
  def self.openapi_types
44
50
  {
@@ -148,7 +154,9 @@ module OryHydraClient
148
154
  def build_from_hash(attributes)
149
155
  return nil unless attributes.is_a?(Hash)
150
156
  self.class.openapi_types.each_pair do |key, type|
151
- if type =~ /\AArray<(.*)>/i
157
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
158
+ self.send("#{key}=", nil)
159
+ elsif type =~ /\AArray<(.*)>/i
152
160
  # check to ensure the input is an array given that the attribute
153
161
  # is documented as an array but the input is not
154
162
  if attributes[self.class.attribute_map[key]].is_a?(Array)
@@ -156,7 +164,7 @@ module OryHydraClient
156
164
  end
157
165
  elsif !attributes[self.class.attribute_map[key]].nil?
158
166
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
159
- end # or else data not found in attributes(hash), not an issue as the data can be optional
167
+ end
160
168
  end
161
169
 
162
170
  self
@@ -168,8 +176,8 @@ module OryHydraClient
168
176
  # @return [Object] Deserialized data
169
177
  def _deserialize(type, value)
170
178
  case type.to_sym
171
- when :DateTime
172
- DateTime.parse(value)
179
+ when :Time
180
+ Time.parse(value)
173
181
  when :Date
174
182
  Date.parse(value)
175
183
  when :String
@@ -199,7 +207,9 @@ module OryHydraClient
199
207
  end
200
208
  end
201
209
  else # model
202
- OryHydraClient.const_get(type).build_from_hash(value)
210
+ # models (e.g. Pet) or oneOf
211
+ klass = OryHydraClient.const_get(type)
212
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
203
213
  end
204
214
  end
205
215
 
@@ -225,7 +235,7 @@ module OryHydraClient
225
235
  is_nullable = self.class.openapi_nullable.include?(attr)
226
236
  next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
227
237
  end
228
-
238
+
229
239
  hash[param] = _to_hash(value)
230
240
  end
231
241
  hash
@@ -248,5 +258,7 @@ module OryHydraClient
248
258
  value
249
259
  end
250
260
  end
261
+
251
262
  end
263
+
252
264
  end
@@ -3,14 +3,15 @@
3
3
 
4
4
  #Welcome to the ORY Hydra HTTP API documentation. You will find documentation for all HTTP APIs here.
5
5
 
6
- The version of the OpenAPI document: v1.9.0
6
+ The version of the OpenAPI document: v1.9.1
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.3.1
9
+ OpenAPI Generator version: 5.0.0
10
10
 
11
11
  =end
12
12
 
13
13
  require 'date'
14
+ require 'time'
14
15
 
15
16
  module OryHydraClient
16
17
  class OpenIDConnectContext
@@ -40,6 +41,11 @@ module OryHydraClient
40
41
  }
41
42
  end
42
43
 
44
+ # Returns all the JSON keys this model knows about
45
+ def self.acceptable_attributes
46
+ attribute_map.values
47
+ end
48
+
43
49
  # Attribute type mapping.
44
50
  def self.openapi_types
45
51
  {
@@ -147,7 +153,9 @@ module OryHydraClient
147
153
  def build_from_hash(attributes)
148
154
  return nil unless attributes.is_a?(Hash)
149
155
  self.class.openapi_types.each_pair do |key, type|
150
- if type =~ /\AArray<(.*)>/i
156
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
157
+ self.send("#{key}=", nil)
158
+ elsif type =~ /\AArray<(.*)>/i
151
159
  # check to ensure the input is an array given that the attribute
152
160
  # is documented as an array but the input is not
153
161
  if attributes[self.class.attribute_map[key]].is_a?(Array)
@@ -155,7 +163,7 @@ module OryHydraClient
155
163
  end
156
164
  elsif !attributes[self.class.attribute_map[key]].nil?
157
165
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
158
- end # or else data not found in attributes(hash), not an issue as the data can be optional
166
+ end
159
167
  end
160
168
 
161
169
  self
@@ -167,8 +175,8 @@ module OryHydraClient
167
175
  # @return [Object] Deserialized data
168
176
  def _deserialize(type, value)
169
177
  case type.to_sym
170
- when :DateTime
171
- DateTime.parse(value)
178
+ when :Time
179
+ Time.parse(value)
172
180
  when :Date
173
181
  Date.parse(value)
174
182
  when :String
@@ -198,7 +206,9 @@ module OryHydraClient
198
206
  end
199
207
  end
200
208
  else # model
201
- OryHydraClient.const_get(type).build_from_hash(value)
209
+ # models (e.g. Pet) or oneOf
210
+ klass = OryHydraClient.const_get(type)
211
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
202
212
  end
203
213
  end
204
214
 
@@ -224,7 +234,7 @@ module OryHydraClient
224
234
  is_nullable = self.class.openapi_nullable.include?(attr)
225
235
  next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
226
236
  end
227
-
237
+
228
238
  hash[param] = _to_hash(value)
229
239
  end
230
240
  hash
@@ -247,5 +257,7 @@ module OryHydraClient
247
257
  value
248
258
  end
249
259
  end
260
+
250
261
  end
262
+
251
263
  end