authentik-api 2025.12.4 → 2026.2.1.1

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 (112) hide show
  1. checksums.yaml +4 -4
  2. data/README_API.md +59 -7
  3. data/lib/authentik/api/api/core_api.rb +109 -12
  4. data/lib/authentik/api/api/crypto_api.rb +0 -3
  5. data/lib/authentik/api/api/endpoints_api.rb +459 -0
  6. data/lib/authentik/api/api/events_api.rb +3 -3
  7. data/lib/authentik/api/api/lifecycle_api.rb +681 -0
  8. data/lib/authentik/api/api/policies_api.rb +1 -1
  9. data/lib/authentik/api/api/providers_api.rb +705 -3
  10. data/lib/authentik/api/api/rbac_api.rb +6 -9
  11. data/lib/authentik/api/api/stages_api.rb +1 -1
  12. data/lib/authentik/api/models/alg_enum.rb +3 -1
  13. data/lib/authentik/api/models/app_enum.rb +4 -1
  14. data/lib/authentik/api/models/bulk_delete_session_response.rb +158 -0
  15. data/lib/authentik/api/models/certificate_key_pair.rb +5 -4
  16. data/lib/authentik/api/models/content_type_enum.rb +35 -0
  17. data/lib/authentik/api/models/contextual_flow_info_layout_enum.rb +3 -1
  18. data/lib/authentik/api/models/current_brand_flags.rb +27 -1
  19. data/lib/authentik/api/models/device_access_group.rb +15 -4
  20. data/lib/authentik/api/models/device_access_group_request.rb +15 -4
  21. data/lib/authentik/api/models/device_fact_snapshot.rb +53 -5
  22. data/lib/authentik/api/models/event_actions.rb +6 -1
  23. data/lib/authentik/api/models/fleet_connector.rb +349 -0
  24. data/lib/authentik/api/models/fleet_connector_request.rb +294 -0
  25. data/lib/authentik/api/models/flow_layout_enum.rb +3 -1
  26. data/lib/authentik/api/models/identification_challenge.rb +11 -1
  27. data/lib/authentik/api/models/lifecycle_iteration.rb +525 -0
  28. data/lib/authentik/api/models/lifecycle_iteration_request.rb +181 -0
  29. data/lib/authentik/api/models/lifecycle_iteration_state_enum.rb +36 -0
  30. data/lib/authentik/api/models/lifecycle_rule.rb +440 -0
  31. data/lib/authentik/api/models/lifecycle_rule_request.rb +394 -0
  32. data/lib/authentik/api/models/model_enum.rb +6 -1
  33. data/lib/authentik/api/models/model_request.rb +4 -2
  34. data/lib/authentik/api/models/operating_system.rb +3 -0
  35. data/lib/authentik/api/models/operating_system_request.rb +3 -0
  36. data/lib/authentik/api/models/paginated_fleet_connector_list.rb +214 -0
  37. data/lib/authentik/api/models/paginated_lifecycle_iteration_list.rb +214 -0
  38. data/lib/authentik/api/models/paginated_lifecycle_rule_list.rb +214 -0
  39. data/lib/authentik/api/models/paginated_ws_federation_provider_list.rb +214 -0
  40. data/lib/authentik/api/models/patched_device_access_group_request.rb +15 -4
  41. data/lib/authentik/api/models/patched_fleet_connector_request.rb +273 -0
  42. data/lib/authentik/api/models/patched_lifecycle_rule_request.rb +353 -0
  43. data/lib/authentik/api/models/patched_role_request.rb +0 -9
  44. data/lib/authentik/api/models/patched_saml_provider_request.rb +1 -1
  45. data/lib/authentik/api/models/patched_scim_provider_request.rb +13 -11
  46. data/lib/authentik/api/models/patched_settings_request_flags.rb +27 -1
  47. data/lib/authentik/api/models/patched_ws_federation_provider_request.rb +457 -0
  48. data/lib/authentik/api/models/provider_model_enum.rb +2 -1
  49. data/lib/authentik/api/models/review.rb +247 -0
  50. data/lib/authentik/api/models/review_request.rb +184 -0
  51. data/lib/authentik/api/models/reviewer_group.rb +184 -0
  52. data/lib/authentik/api/models/reviewer_user.rb +258 -0
  53. data/lib/authentik/api/models/role.rb +0 -9
  54. data/lib/authentik/api/models/role_request.rb +0 -9
  55. data/lib/authentik/api/models/{saml_provider_logout_method_enum.rb → saml_logout_methods.rb} +3 -3
  56. data/lib/authentik/api/models/saml_provider.rb +1 -1
  57. data/lib/authentik/api/models/saml_provider_request.rb +1 -1
  58. data/lib/authentik/api/models/scim_provider.rb +13 -11
  59. data/lib/authentik/api/models/scim_provider_request.rb +13 -11
  60. data/lib/authentik/api/models/task.rb +1 -1
  61. data/lib/authentik/api/models/{state_enum.rb → task_state_enum.rb} +3 -3
  62. data/lib/authentik/api/models/user_recovery_email_request.rb +187 -0
  63. data/lib/authentik/api/models/user_recovery_link_request.rb +161 -0
  64. data/lib/authentik/api/models/vendor_enum.rb +35 -0
  65. data/lib/authentik/api/models/ws_federation_provider.rb +668 -0
  66. data/lib/authentik/api/models/ws_federation_provider_request.rb +512 -0
  67. data/lib/authentik/api/version.rb +1 -1
  68. data/spec/api/core_api_spec.rb +21 -1
  69. data/spec/api/crypto_api_spec.rb +0 -1
  70. data/spec/api/endpoints_api_spec.rb +83 -0
  71. data/spec/api/lifecycle_api_spec.rb +144 -0
  72. data/spec/api/providers_api_spec.rb +137 -1
  73. data/spec/api/rbac_api_spec.rb +2 -3
  74. data/spec/models/bulk_delete_session_response_spec.rb +30 -0
  75. data/spec/models/content_type_enum_spec.rb +24 -0
  76. data/spec/models/current_brand_flags_spec.rb +6 -0
  77. data/spec/models/device_access_group_request_spec.rb +6 -0
  78. data/spec/models/device_access_group_spec.rb +6 -0
  79. data/spec/models/device_fact_snapshot_spec.rb +6 -0
  80. data/spec/models/fleet_connector_request_spec.rb +72 -0
  81. data/spec/models/fleet_connector_spec.rb +90 -0
  82. data/spec/models/identification_challenge_spec.rb +6 -0
  83. data/spec/models/lifecycle_iteration_request_spec.rb +30 -0
  84. data/spec/models/lifecycle_iteration_spec.rb +108 -0
  85. data/spec/models/lifecycle_iteration_state_enum_spec.rb +24 -0
  86. data/spec/models/lifecycle_rule_request_spec.rb +84 -0
  87. data/spec/models/lifecycle_rule_spec.rb +108 -0
  88. data/spec/models/paginated_fleet_connector_list_spec.rb +42 -0
  89. data/spec/models/paginated_lifecycle_iteration_list_spec.rb +42 -0
  90. data/spec/models/paginated_lifecycle_rule_list_spec.rb +42 -0
  91. data/spec/models/paginated_ws_federation_provider_list_spec.rb +42 -0
  92. data/spec/models/patched_device_access_group_request_spec.rb +6 -0
  93. data/spec/models/patched_fleet_connector_request_spec.rb +72 -0
  94. data/spec/models/patched_lifecycle_rule_request_spec.rb +84 -0
  95. data/spec/models/patched_scim_provider_request_spec.rb +3 -3
  96. data/spec/models/patched_settings_request_flags_spec.rb +6 -0
  97. data/spec/models/patched_ws_federation_provider_request_spec.rb +138 -0
  98. data/spec/models/review_request_spec.rb +36 -0
  99. data/spec/models/review_spec.rb +54 -0
  100. data/spec/models/reviewer_group_spec.rb +36 -0
  101. data/spec/models/reviewer_user_spec.rb +48 -0
  102. data/spec/models/saml_logout_methods_spec.rb +24 -0
  103. data/spec/models/scim_provider_request_spec.rb +3 -3
  104. data/spec/models/scim_provider_spec.rb +3 -3
  105. data/spec/models/task_state_enum_spec.rb +24 -0
  106. data/spec/models/user_recovery_email_request_spec.rb +36 -0
  107. data/spec/models/user_recovery_link_request_spec.rb +30 -0
  108. data/spec/models/{state_enum_spec.rb → vendor_enum_spec.rb} +6 -6
  109. data/spec/models/ws_federation_provider_request_spec.rb +138 -0
  110. data/spec/models/ws_federation_provider_spec.rb +204 -0
  111. metadata +85 -7
  112. data/spec/models/saml_provider_logout_method_enum_spec.rb +0 -24
@@ -0,0 +1,668 @@
1
+ =begin
2
+ This file is automatically generated by: https://openapi-generator.tech.
3
+ Any manual changes will be lost when the OpenAPI scheme changes.
4
+
5
+ =end
6
+
7
+ require 'date'
8
+ require 'time'
9
+
10
+ module Authentik::Api
11
+ # WSFederationProvider Serializer
12
+ class WSFederationProvider < ApiModelBase
13
+ attr_accessor :pk
14
+
15
+ attr_accessor :name
16
+
17
+ # Flow used for authentication when the associated application is accessed by an un-authenticated user.
18
+ attr_accessor :authentication_flow
19
+
20
+ # Flow used when authorizing this provider.
21
+ attr_accessor :authorization_flow
22
+
23
+ # Flow used ending the session from a provider.
24
+ attr_accessor :invalidation_flow
25
+
26
+ attr_accessor :property_mappings
27
+
28
+ # Get object component so that we know how to edit the object
29
+ attr_accessor :component
30
+
31
+ # Internal application name, used in URLs.
32
+ attr_accessor :assigned_application_slug
33
+
34
+ # Application's display Name.
35
+ attr_accessor :assigned_application_name
36
+
37
+ # Internal application name, used in URLs.
38
+ attr_accessor :assigned_backchannel_application_slug
39
+
40
+ # Application's display Name.
41
+ attr_accessor :assigned_backchannel_application_name
42
+
43
+ # Return object's verbose_name
44
+ attr_accessor :verbose_name
45
+
46
+ # Return object's plural verbose_name
47
+ attr_accessor :verbose_name_plural
48
+
49
+ # Return internal model name
50
+ attr_accessor :meta_model_name
51
+
52
+ attr_accessor :reply_url
53
+
54
+ attr_accessor :wtrealm
55
+
56
+ # Assertion valid not before current time + this value (Format: hours=-1;minutes=-2;seconds=-3).
57
+ attr_accessor :assertion_valid_not_before
58
+
59
+ # Assertion not valid on or after current time + this value (Format: hours=1;minutes=2;seconds=3).
60
+ attr_accessor :assertion_valid_not_on_or_after
61
+
62
+ # Session not valid on or after current time + this value (Format: hours=1;minutes=2;seconds=3).
63
+ attr_accessor :session_valid_not_on_or_after
64
+
65
+ # Configure how the NameID value will be created. When left empty, the NameIDPolicy of the incoming request will be considered
66
+ attr_accessor :name_id_mapping
67
+
68
+ # Configure how the AuthnContextClassRef value will be created. When left empty, the AuthnContextClassRef will be set based on which authentication methods the user used to authenticate.
69
+ attr_accessor :authn_context_class_ref_mapping
70
+
71
+ attr_accessor :digest_algorithm
72
+
73
+ attr_accessor :signature_algorithm
74
+
75
+ # Keypair used to sign outgoing Responses going to the Service Provider.
76
+ attr_accessor :signing_kp
77
+
78
+ # When selected, incoming assertions are encrypted by the IdP using the public key of the encryption keypair. The assertion is decrypted by the SP using the the private key.
79
+ attr_accessor :encryption_kp
80
+
81
+ attr_accessor :sign_assertion
82
+
83
+ attr_accessor :sign_logout_request
84
+
85
+ attr_accessor :default_name_id_policy
86
+
87
+ # Get metadata download URL
88
+ attr_accessor :url_download_metadata
89
+
90
+ # Get WS-Fed url
91
+ attr_accessor :url_wsfed
92
+
93
+ class EnumAttributeValidator
94
+ attr_reader :datatype
95
+ attr_reader :allowable_values
96
+
97
+ def initialize(datatype, allowable_values)
98
+ @allowable_values = allowable_values.map do |value|
99
+ case datatype.to_s
100
+ when /Integer/i
101
+ value.to_i
102
+ when /Float/i
103
+ value.to_f
104
+ else
105
+ value
106
+ end
107
+ end
108
+ end
109
+
110
+ def valid?(value)
111
+ !value || allowable_values.include?(value)
112
+ end
113
+ end
114
+
115
+ # Attribute mapping from ruby-style variable name to JSON key.
116
+ def self.attribute_map
117
+ {
118
+ :'pk' => :'pk',
119
+ :'name' => :'name',
120
+ :'authentication_flow' => :'authentication_flow',
121
+ :'authorization_flow' => :'authorization_flow',
122
+ :'invalidation_flow' => :'invalidation_flow',
123
+ :'property_mappings' => :'property_mappings',
124
+ :'component' => :'component',
125
+ :'assigned_application_slug' => :'assigned_application_slug',
126
+ :'assigned_application_name' => :'assigned_application_name',
127
+ :'assigned_backchannel_application_slug' => :'assigned_backchannel_application_slug',
128
+ :'assigned_backchannel_application_name' => :'assigned_backchannel_application_name',
129
+ :'verbose_name' => :'verbose_name',
130
+ :'verbose_name_plural' => :'verbose_name_plural',
131
+ :'meta_model_name' => :'meta_model_name',
132
+ :'reply_url' => :'reply_url',
133
+ :'wtrealm' => :'wtrealm',
134
+ :'assertion_valid_not_before' => :'assertion_valid_not_before',
135
+ :'assertion_valid_not_on_or_after' => :'assertion_valid_not_on_or_after',
136
+ :'session_valid_not_on_or_after' => :'session_valid_not_on_or_after',
137
+ :'name_id_mapping' => :'name_id_mapping',
138
+ :'authn_context_class_ref_mapping' => :'authn_context_class_ref_mapping',
139
+ :'digest_algorithm' => :'digest_algorithm',
140
+ :'signature_algorithm' => :'signature_algorithm',
141
+ :'signing_kp' => :'signing_kp',
142
+ :'encryption_kp' => :'encryption_kp',
143
+ :'sign_assertion' => :'sign_assertion',
144
+ :'sign_logout_request' => :'sign_logout_request',
145
+ :'default_name_id_policy' => :'default_name_id_policy',
146
+ :'url_download_metadata' => :'url_download_metadata',
147
+ :'url_wsfed' => :'url_wsfed'
148
+ }
149
+ end
150
+
151
+ # Returns attribute mapping this model knows about
152
+ def self.acceptable_attribute_map
153
+ attribute_map
154
+ end
155
+
156
+ # Returns all the JSON keys this model knows about
157
+ def self.acceptable_attributes
158
+ acceptable_attribute_map.values
159
+ end
160
+
161
+ # Attribute type mapping.
162
+ def self.openapi_types
163
+ {
164
+ :'pk' => :'Integer',
165
+ :'name' => :'String',
166
+ :'authentication_flow' => :'String',
167
+ :'authorization_flow' => :'String',
168
+ :'invalidation_flow' => :'String',
169
+ :'property_mappings' => :'Array<String>',
170
+ :'component' => :'String',
171
+ :'assigned_application_slug' => :'String',
172
+ :'assigned_application_name' => :'String',
173
+ :'assigned_backchannel_application_slug' => :'String',
174
+ :'assigned_backchannel_application_name' => :'String',
175
+ :'verbose_name' => :'String',
176
+ :'verbose_name_plural' => :'String',
177
+ :'meta_model_name' => :'String',
178
+ :'reply_url' => :'String',
179
+ :'wtrealm' => :'String',
180
+ :'assertion_valid_not_before' => :'String',
181
+ :'assertion_valid_not_on_or_after' => :'String',
182
+ :'session_valid_not_on_or_after' => :'String',
183
+ :'name_id_mapping' => :'String',
184
+ :'authn_context_class_ref_mapping' => :'String',
185
+ :'digest_algorithm' => :'DigestAlgorithmEnum',
186
+ :'signature_algorithm' => :'SignatureAlgorithmEnum',
187
+ :'signing_kp' => :'String',
188
+ :'encryption_kp' => :'String',
189
+ :'sign_assertion' => :'Boolean',
190
+ :'sign_logout_request' => :'Boolean',
191
+ :'default_name_id_policy' => :'SAMLNameIDPolicyEnum',
192
+ :'url_download_metadata' => :'String',
193
+ :'url_wsfed' => :'String'
194
+ }
195
+ end
196
+
197
+ # List of attributes with nullable: true
198
+ def self.openapi_nullable
199
+ Set.new([
200
+ :'authentication_flow',
201
+ :'assigned_application_slug',
202
+ :'assigned_application_name',
203
+ :'assigned_backchannel_application_slug',
204
+ :'assigned_backchannel_application_name',
205
+ :'name_id_mapping',
206
+ :'authn_context_class_ref_mapping',
207
+ :'signing_kp',
208
+ :'encryption_kp',
209
+ ])
210
+ end
211
+
212
+ # Initializes the object
213
+ # @param [Hash] attributes Model attributes in the form of hash
214
+ def initialize(attributes = {})
215
+ if (!attributes.is_a?(Hash))
216
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Authentik::Api::WSFederationProvider` initialize method"
217
+ end
218
+
219
+ # check to see if the attribute exists and convert string to symbol for hash key
220
+ acceptable_attribute_map = self.class.acceptable_attribute_map
221
+ attributes = attributes.each_with_object({}) { |(k, v), h|
222
+ if (!acceptable_attribute_map.key?(k.to_sym))
223
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Authentik::Api::WSFederationProvider`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
224
+ end
225
+ h[k.to_sym] = v
226
+ }
227
+
228
+ if attributes.key?(:'pk')
229
+ self.pk = attributes[:'pk']
230
+ else
231
+ self.pk = nil
232
+ end
233
+
234
+ if attributes.key?(:'name')
235
+ self.name = attributes[:'name']
236
+ else
237
+ self.name = nil
238
+ end
239
+
240
+ if attributes.key?(:'authentication_flow')
241
+ self.authentication_flow = attributes[:'authentication_flow']
242
+ end
243
+
244
+ if attributes.key?(:'authorization_flow')
245
+ self.authorization_flow = attributes[:'authorization_flow']
246
+ else
247
+ self.authorization_flow = nil
248
+ end
249
+
250
+ if attributes.key?(:'invalidation_flow')
251
+ self.invalidation_flow = attributes[:'invalidation_flow']
252
+ else
253
+ self.invalidation_flow = nil
254
+ end
255
+
256
+ if attributes.key?(:'property_mappings')
257
+ if (value = attributes[:'property_mappings']).is_a?(Array)
258
+ self.property_mappings = value
259
+ end
260
+ end
261
+
262
+ if attributes.key?(:'component')
263
+ self.component = attributes[:'component']
264
+ else
265
+ self.component = nil
266
+ end
267
+
268
+ if attributes.key?(:'assigned_application_slug')
269
+ self.assigned_application_slug = attributes[:'assigned_application_slug']
270
+ else
271
+ self.assigned_application_slug = nil
272
+ end
273
+
274
+ if attributes.key?(:'assigned_application_name')
275
+ self.assigned_application_name = attributes[:'assigned_application_name']
276
+ else
277
+ self.assigned_application_name = nil
278
+ end
279
+
280
+ if attributes.key?(:'assigned_backchannel_application_slug')
281
+ self.assigned_backchannel_application_slug = attributes[:'assigned_backchannel_application_slug']
282
+ else
283
+ self.assigned_backchannel_application_slug = nil
284
+ end
285
+
286
+ if attributes.key?(:'assigned_backchannel_application_name')
287
+ self.assigned_backchannel_application_name = attributes[:'assigned_backchannel_application_name']
288
+ else
289
+ self.assigned_backchannel_application_name = nil
290
+ end
291
+
292
+ if attributes.key?(:'verbose_name')
293
+ self.verbose_name = attributes[:'verbose_name']
294
+ else
295
+ self.verbose_name = nil
296
+ end
297
+
298
+ if attributes.key?(:'verbose_name_plural')
299
+ self.verbose_name_plural = attributes[:'verbose_name_plural']
300
+ else
301
+ self.verbose_name_plural = nil
302
+ end
303
+
304
+ if attributes.key?(:'meta_model_name')
305
+ self.meta_model_name = attributes[:'meta_model_name']
306
+ else
307
+ self.meta_model_name = nil
308
+ end
309
+
310
+ if attributes.key?(:'reply_url')
311
+ self.reply_url = attributes[:'reply_url']
312
+ else
313
+ self.reply_url = nil
314
+ end
315
+
316
+ if attributes.key?(:'wtrealm')
317
+ self.wtrealm = attributes[:'wtrealm']
318
+ else
319
+ self.wtrealm = nil
320
+ end
321
+
322
+ if attributes.key?(:'assertion_valid_not_before')
323
+ self.assertion_valid_not_before = attributes[:'assertion_valid_not_before']
324
+ end
325
+
326
+ if attributes.key?(:'assertion_valid_not_on_or_after')
327
+ self.assertion_valid_not_on_or_after = attributes[:'assertion_valid_not_on_or_after']
328
+ end
329
+
330
+ if attributes.key?(:'session_valid_not_on_or_after')
331
+ self.session_valid_not_on_or_after = attributes[:'session_valid_not_on_or_after']
332
+ end
333
+
334
+ if attributes.key?(:'name_id_mapping')
335
+ self.name_id_mapping = attributes[:'name_id_mapping']
336
+ end
337
+
338
+ if attributes.key?(:'authn_context_class_ref_mapping')
339
+ self.authn_context_class_ref_mapping = attributes[:'authn_context_class_ref_mapping']
340
+ end
341
+
342
+ if attributes.key?(:'digest_algorithm')
343
+ self.digest_algorithm = attributes[:'digest_algorithm']
344
+ end
345
+
346
+ if attributes.key?(:'signature_algorithm')
347
+ self.signature_algorithm = attributes[:'signature_algorithm']
348
+ end
349
+
350
+ if attributes.key?(:'signing_kp')
351
+ self.signing_kp = attributes[:'signing_kp']
352
+ end
353
+
354
+ if attributes.key?(:'encryption_kp')
355
+ self.encryption_kp = attributes[:'encryption_kp']
356
+ end
357
+
358
+ if attributes.key?(:'sign_assertion')
359
+ self.sign_assertion = attributes[:'sign_assertion']
360
+ end
361
+
362
+ if attributes.key?(:'sign_logout_request')
363
+ self.sign_logout_request = attributes[:'sign_logout_request']
364
+ end
365
+
366
+ if attributes.key?(:'default_name_id_policy')
367
+ self.default_name_id_policy = attributes[:'default_name_id_policy']
368
+ end
369
+
370
+ if attributes.key?(:'url_download_metadata')
371
+ self.url_download_metadata = attributes[:'url_download_metadata']
372
+ else
373
+ self.url_download_metadata = nil
374
+ end
375
+
376
+ if attributes.key?(:'url_wsfed')
377
+ self.url_wsfed = attributes[:'url_wsfed']
378
+ else
379
+ self.url_wsfed = nil
380
+ end
381
+ end
382
+
383
+ # Show invalid properties with the reasons. Usually used together with valid?
384
+ # @return Array for valid properties with the reasons
385
+ def list_invalid_properties
386
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
387
+ invalid_properties = Array.new
388
+ if @pk.nil?
389
+ invalid_properties.push('invalid value for "pk", pk cannot be nil.')
390
+ end
391
+
392
+ if @name.nil?
393
+ invalid_properties.push('invalid value for "name", name cannot be nil.')
394
+ end
395
+
396
+ if @authorization_flow.nil?
397
+ invalid_properties.push('invalid value for "authorization_flow", authorization_flow cannot be nil.')
398
+ end
399
+
400
+ if @invalidation_flow.nil?
401
+ invalid_properties.push('invalid value for "invalidation_flow", invalidation_flow cannot be nil.')
402
+ end
403
+
404
+ if @component.nil?
405
+ invalid_properties.push('invalid value for "component", component cannot be nil.')
406
+ end
407
+
408
+ if @verbose_name.nil?
409
+ invalid_properties.push('invalid value for "verbose_name", verbose_name cannot be nil.')
410
+ end
411
+
412
+ if @verbose_name_plural.nil?
413
+ invalid_properties.push('invalid value for "verbose_name_plural", verbose_name_plural cannot be nil.')
414
+ end
415
+
416
+ if @meta_model_name.nil?
417
+ invalid_properties.push('invalid value for "meta_model_name", meta_model_name cannot be nil.')
418
+ end
419
+
420
+ if @reply_url.nil?
421
+ invalid_properties.push('invalid value for "reply_url", reply_url cannot be nil.')
422
+ end
423
+
424
+ if @wtrealm.nil?
425
+ invalid_properties.push('invalid value for "wtrealm", wtrealm cannot be nil.')
426
+ end
427
+
428
+ if @url_download_metadata.nil?
429
+ invalid_properties.push('invalid value for "url_download_metadata", url_download_metadata cannot be nil.')
430
+ end
431
+
432
+ if @url_wsfed.nil?
433
+ invalid_properties.push('invalid value for "url_wsfed", url_wsfed cannot be nil.')
434
+ end
435
+
436
+ invalid_properties
437
+ end
438
+
439
+ # Check to see if the all the properties in the model are valid
440
+ # @return true if the model is valid
441
+ def valid?
442
+ warn '[DEPRECATED] the `valid?` method is obsolete'
443
+ return false if @pk.nil?
444
+ return false if @name.nil?
445
+ return false if @authorization_flow.nil?
446
+ return false if @invalidation_flow.nil?
447
+ return false if @component.nil?
448
+ return false if @verbose_name.nil?
449
+ return false if @verbose_name_plural.nil?
450
+ return false if @meta_model_name.nil?
451
+ return false if @reply_url.nil?
452
+ return false if @wtrealm.nil?
453
+ return false if @url_download_metadata.nil?
454
+ return false if @url_wsfed.nil?
455
+ true
456
+ end
457
+
458
+ # Custom attribute writer method with validation
459
+ # @param [Object] pk Value to be assigned
460
+ def pk=(pk)
461
+ if pk.nil?
462
+ fail ArgumentError, 'pk cannot be nil'
463
+ end
464
+
465
+ @pk = pk
466
+ end
467
+
468
+ # Custom attribute writer method with validation
469
+ # @param [Object] name Value to be assigned
470
+ def name=(name)
471
+ if name.nil?
472
+ fail ArgumentError, 'name cannot be nil'
473
+ end
474
+
475
+ @name = name
476
+ end
477
+
478
+ # Custom attribute writer method with validation
479
+ # @param [Object] authorization_flow Value to be assigned
480
+ def authorization_flow=(authorization_flow)
481
+ if authorization_flow.nil?
482
+ fail ArgumentError, 'authorization_flow cannot be nil'
483
+ end
484
+
485
+ @authorization_flow = authorization_flow
486
+ end
487
+
488
+ # Custom attribute writer method with validation
489
+ # @param [Object] invalidation_flow Value to be assigned
490
+ def invalidation_flow=(invalidation_flow)
491
+ if invalidation_flow.nil?
492
+ fail ArgumentError, 'invalidation_flow cannot be nil'
493
+ end
494
+
495
+ @invalidation_flow = invalidation_flow
496
+ end
497
+
498
+ # Custom attribute writer method with validation
499
+ # @param [Object] component Value to be assigned
500
+ def component=(component)
501
+ if component.nil?
502
+ fail ArgumentError, 'component cannot be nil'
503
+ end
504
+
505
+ @component = component
506
+ end
507
+
508
+ # Custom attribute writer method with validation
509
+ # @param [Object] verbose_name Value to be assigned
510
+ def verbose_name=(verbose_name)
511
+ if verbose_name.nil?
512
+ fail ArgumentError, 'verbose_name cannot be nil'
513
+ end
514
+
515
+ @verbose_name = verbose_name
516
+ end
517
+
518
+ # Custom attribute writer method with validation
519
+ # @param [Object] verbose_name_plural Value to be assigned
520
+ def verbose_name_plural=(verbose_name_plural)
521
+ if verbose_name_plural.nil?
522
+ fail ArgumentError, 'verbose_name_plural cannot be nil'
523
+ end
524
+
525
+ @verbose_name_plural = verbose_name_plural
526
+ end
527
+
528
+ # Custom attribute writer method with validation
529
+ # @param [Object] meta_model_name Value to be assigned
530
+ def meta_model_name=(meta_model_name)
531
+ if meta_model_name.nil?
532
+ fail ArgumentError, 'meta_model_name cannot be nil'
533
+ end
534
+
535
+ @meta_model_name = meta_model_name
536
+ end
537
+
538
+ # Custom attribute writer method with validation
539
+ # @param [Object] reply_url Value to be assigned
540
+ def reply_url=(reply_url)
541
+ if reply_url.nil?
542
+ fail ArgumentError, 'reply_url cannot be nil'
543
+ end
544
+
545
+ @reply_url = reply_url
546
+ end
547
+
548
+ # Custom attribute writer method with validation
549
+ # @param [Object] wtrealm Value to be assigned
550
+ def wtrealm=(wtrealm)
551
+ if wtrealm.nil?
552
+ fail ArgumentError, 'wtrealm cannot be nil'
553
+ end
554
+
555
+ @wtrealm = wtrealm
556
+ end
557
+
558
+ # Custom attribute writer method with validation
559
+ # @param [Object] url_download_metadata Value to be assigned
560
+ def url_download_metadata=(url_download_metadata)
561
+ if url_download_metadata.nil?
562
+ fail ArgumentError, 'url_download_metadata cannot be nil'
563
+ end
564
+
565
+ @url_download_metadata = url_download_metadata
566
+ end
567
+
568
+ # Custom attribute writer method with validation
569
+ # @param [Object] url_wsfed Value to be assigned
570
+ def url_wsfed=(url_wsfed)
571
+ if url_wsfed.nil?
572
+ fail ArgumentError, 'url_wsfed cannot be nil'
573
+ end
574
+
575
+ @url_wsfed = url_wsfed
576
+ end
577
+
578
+ # Checks equality by comparing each attribute.
579
+ # @param [Object] Object to be compared
580
+ def ==(o)
581
+ return true if self.equal?(o)
582
+ self.class == o.class &&
583
+ pk == o.pk &&
584
+ name == o.name &&
585
+ authentication_flow == o.authentication_flow &&
586
+ authorization_flow == o.authorization_flow &&
587
+ invalidation_flow == o.invalidation_flow &&
588
+ property_mappings == o.property_mappings &&
589
+ component == o.component &&
590
+ assigned_application_slug == o.assigned_application_slug &&
591
+ assigned_application_name == o.assigned_application_name &&
592
+ assigned_backchannel_application_slug == o.assigned_backchannel_application_slug &&
593
+ assigned_backchannel_application_name == o.assigned_backchannel_application_name &&
594
+ verbose_name == o.verbose_name &&
595
+ verbose_name_plural == o.verbose_name_plural &&
596
+ meta_model_name == o.meta_model_name &&
597
+ reply_url == o.reply_url &&
598
+ wtrealm == o.wtrealm &&
599
+ assertion_valid_not_before == o.assertion_valid_not_before &&
600
+ assertion_valid_not_on_or_after == o.assertion_valid_not_on_or_after &&
601
+ session_valid_not_on_or_after == o.session_valid_not_on_or_after &&
602
+ name_id_mapping == o.name_id_mapping &&
603
+ authn_context_class_ref_mapping == o.authn_context_class_ref_mapping &&
604
+ digest_algorithm == o.digest_algorithm &&
605
+ signature_algorithm == o.signature_algorithm &&
606
+ signing_kp == o.signing_kp &&
607
+ encryption_kp == o.encryption_kp &&
608
+ sign_assertion == o.sign_assertion &&
609
+ sign_logout_request == o.sign_logout_request &&
610
+ default_name_id_policy == o.default_name_id_policy &&
611
+ url_download_metadata == o.url_download_metadata &&
612
+ url_wsfed == o.url_wsfed
613
+ end
614
+
615
+ # @see the `==` method
616
+ # @param [Object] Object to be compared
617
+ def eql?(o)
618
+ self == o
619
+ end
620
+
621
+ # Calculates hash code according to all attributes.
622
+ # @return [Integer] Hash code
623
+ def hash
624
+ [pk, name, authentication_flow, authorization_flow, invalidation_flow, property_mappings, component, assigned_application_slug, assigned_application_name, assigned_backchannel_application_slug, assigned_backchannel_application_name, verbose_name, verbose_name_plural, meta_model_name, reply_url, wtrealm, assertion_valid_not_before, assertion_valid_not_on_or_after, session_valid_not_on_or_after, name_id_mapping, authn_context_class_ref_mapping, digest_algorithm, signature_algorithm, signing_kp, encryption_kp, sign_assertion, sign_logout_request, default_name_id_policy, url_download_metadata, url_wsfed].hash
625
+ end
626
+
627
+ # Builds the object from hash
628
+ # @param [Hash] attributes Model attributes in the form of hash
629
+ # @return [Object] Returns the model itself
630
+ def self.build_from_hash(attributes)
631
+ return nil unless attributes.is_a?(Hash)
632
+ attributes = attributes.transform_keys(&:to_sym)
633
+ transformed_hash = {}
634
+ openapi_types.each_pair do |key, type|
635
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
636
+ transformed_hash["#{key}"] = nil
637
+ elsif type =~ /\AArray<(.*)>/i
638
+ # check to ensure the input is an array given that the attribute
639
+ # is documented as an array but the input is not
640
+ if attributes[attribute_map[key]].is_a?(Array)
641
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
642
+ end
643
+ elsif !attributes[attribute_map[key]].nil?
644
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
645
+ end
646
+ end
647
+ new(transformed_hash)
648
+ end
649
+
650
+ # Returns the object in the form of hash
651
+ # @return [Hash] Returns the object in the form of hash
652
+ def to_hash
653
+ hash = {}
654
+ self.class.attribute_map.each_pair do |attr, param|
655
+ value = self.send(attr)
656
+ if value.nil?
657
+ is_nullable = self.class.openapi_nullable.include?(attr)
658
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
659
+ end
660
+
661
+ hash[param] = _to_hash(value)
662
+ end
663
+ hash
664
+ end
665
+
666
+ end
667
+
668
+ end