keynetra-client 0.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 (209) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +9 -0
  3. data/README.md +49 -0
  4. data/Rakefile +10 -0
  5. data/docs/ACLCreate.md +28 -0
  6. data/docs/ACLOut.md +34 -0
  7. data/docs/AccessApi.md +234 -0
  8. data/docs/AccessDecisionResponse.md +30 -0
  9. data/docs/AccessRequest.md +28 -0
  10. data/docs/AdminLoginRequest.md +20 -0
  11. data/docs/AdminLoginResponse.md +26 -0
  12. data/docs/AuditRecordOut.md +42 -0
  13. data/docs/AuthApi.md +133 -0
  14. data/docs/AuthModelCreate.md +18 -0
  15. data/docs/AuthModelOut.md +26 -0
  16. data/docs/BatchAccessItem.md +20 -0
  17. data/docs/BatchAccessRequest.md +24 -0
  18. data/docs/BatchAccessResponse.md +20 -0
  19. data/docs/BatchAccessResult.md +22 -0
  20. data/docs/DataValue.md +15 -0
  21. data/docs/DevApi.md +132 -0
  22. data/docs/HTTPValidationError.md +18 -0
  23. data/docs/HealthApi.md +187 -0
  24. data/docs/ImpactAnalysisRequest.md +18 -0
  25. data/docs/ImpactAnalysisResponse.md +20 -0
  26. data/docs/LocationInner.md +15 -0
  27. data/docs/ManagementApi.md +2096 -0
  28. data/docs/MetaBody.md +24 -0
  29. data/docs/PermissionCreate.md +18 -0
  30. data/docs/PermissionOut.md +20 -0
  31. data/docs/PermissionUpdate.md +18 -0
  32. data/docs/PlaygroundApi.md +80 -0
  33. data/docs/PlaygroundEvaluateRequest.md +20 -0
  34. data/docs/PlaygroundInput.md +24 -0
  35. data/docs/PlaygroundPolicy.md +26 -0
  36. data/docs/PolicyCreate.md +26 -0
  37. data/docs/PolicyOut.md +28 -0
  38. data/docs/PolicySimulationInput.md +22 -0
  39. data/docs/PolicySimulationRequest.md +20 -0
  40. data/docs/PolicySimulationResponse.md +20 -0
  41. data/docs/RelationshipCreate.md +26 -0
  42. data/docs/RelationshipOut.md +28 -0
  43. data/docs/RoleCreate.md +18 -0
  44. data/docs/RoleOut.md +20 -0
  45. data/docs/RoleUpdate.md +18 -0
  46. data/docs/SimulationResponse.md +30 -0
  47. data/docs/SuccessResponseACLOut.md +22 -0
  48. data/docs/SuccessResponseAccessDecisionResponse.md +22 -0
  49. data/docs/SuccessResponseAdminLoginResponse.md +22 -0
  50. data/docs/SuccessResponseAuthModelOut.md +22 -0
  51. data/docs/SuccessResponseBatchAccessResponse.md +22 -0
  52. data/docs/SuccessResponseDictStrAny.md +22 -0
  53. data/docs/SuccessResponseDictStrInt.md +22 -0
  54. data/docs/SuccessResponseDictStrObject.md +22 -0
  55. data/docs/SuccessResponseDictStrStr.md +22 -0
  56. data/docs/SuccessResponseDictStrUnionIntStr.md +22 -0
  57. data/docs/SuccessResponseImpactAnalysisResponse.md +22 -0
  58. data/docs/SuccessResponseListACLOut.md +22 -0
  59. data/docs/SuccessResponseListAuditRecordOut.md +22 -0
  60. data/docs/SuccessResponseListDictStrStr.md +22 -0
  61. data/docs/SuccessResponseListPermissionOut.md +22 -0
  62. data/docs/SuccessResponseListPolicyOut.md +22 -0
  63. data/docs/SuccessResponseListRoleOut.md +22 -0
  64. data/docs/SuccessResponsePermissionOut.md +22 -0
  65. data/docs/SuccessResponsePolicyOut.md +22 -0
  66. data/docs/SuccessResponsePolicySimulationResponse.md +22 -0
  67. data/docs/SuccessResponseRelationshipOut.md +22 -0
  68. data/docs/SuccessResponseSimulationResponse.md +22 -0
  69. data/docs/ValidationError.md +26 -0
  70. data/git_push.sh +57 -0
  71. data/keynetra-client.gemspec +39 -0
  72. data/lib/keynetra-client/api/access_api.rb +226 -0
  73. data/lib/keynetra-client/api/auth_api.rb +154 -0
  74. data/lib/keynetra-client/api/dev_api.rb +135 -0
  75. data/lib/keynetra-client/api/health_api.rb +187 -0
  76. data/lib/keynetra-client/api/management_api.rb +1851 -0
  77. data/lib/keynetra-client/api/playground_api.rb +88 -0
  78. data/lib/keynetra-client/api_client.rb +397 -0
  79. data/lib/keynetra-client/api_error.rb +58 -0
  80. data/lib/keynetra-client/api_model_base.rb +88 -0
  81. data/lib/keynetra-client/configuration.rb +315 -0
  82. data/lib/keynetra-client/models/access_decision_response.rb +242 -0
  83. data/lib/keynetra-client/models/access_request.rb +219 -0
  84. data/lib/keynetra-client/models/acl_create.rb +294 -0
  85. data/lib/keynetra-client/models/acl_out.rb +356 -0
  86. data/lib/keynetra-client/models/admin_login_request.rb +190 -0
  87. data/lib/keynetra-client/models/admin_login_response.rb +238 -0
  88. data/lib/keynetra-client/models/audit_record_out.rb +454 -0
  89. data/lib/keynetra-client/models/auth_model_create.rb +164 -0
  90. data/lib/keynetra-client/models/auth_model_out.rb +272 -0
  91. data/lib/keynetra-client/models/batch_access_item.rb +175 -0
  92. data/lib/keynetra-client/models/batch_access_request.rb +198 -0
  93. data/lib/keynetra-client/models/batch_access_response.rb +176 -0
  94. data/lib/keynetra-client/models/batch_access_result.rb +200 -0
  95. data/lib/keynetra-client/models/data_value.rb +103 -0
  96. data/lib/keynetra-client/models/http_validation_error.rb +149 -0
  97. data/lib/keynetra-client/models/impact_analysis_request.rb +164 -0
  98. data/lib/keynetra-client/models/impact_analysis_response.rb +160 -0
  99. data/lib/keynetra-client/models/location_inner.rb +103 -0
  100. data/lib/keynetra-client/models/meta_body.rb +179 -0
  101. data/lib/keynetra-client/models/permission_create.rb +164 -0
  102. data/lib/keynetra-client/models/permission_out.rb +190 -0
  103. data/lib/keynetra-client/models/permission_update.rb +164 -0
  104. data/lib/keynetra-client/models/playground_evaluate_request.rb +192 -0
  105. data/lib/keynetra-client/models/playground_input.rb +182 -0
  106. data/lib/keynetra-client/models/playground_policy.rb +207 -0
  107. data/lib/keynetra-client/models/policy_create.rb +208 -0
  108. data/lib/keynetra-client/models/policy_out.rb +281 -0
  109. data/lib/keynetra-client/models/policy_simulation_input.rb +172 -0
  110. data/lib/keynetra-client/models/policy_simulation_request.rb +158 -0
  111. data/lib/keynetra-client/models/policy_simulation_response.rb +194 -0
  112. data/lib/keynetra-client/models/relationship_create.rb +268 -0
  113. data/lib/keynetra-client/models/relationship_out.rb +294 -0
  114. data/lib/keynetra-client/models/role_create.rb +164 -0
  115. data/lib/keynetra-client/models/role_out.rb +190 -0
  116. data/lib/keynetra-client/models/role_update.rb +164 -0
  117. data/lib/keynetra-client/models/simulation_response.rb +244 -0
  118. data/lib/keynetra-client/models/success_response_access_decision_response.rb +182 -0
  119. data/lib/keynetra-client/models/success_response_acl_out.rb +182 -0
  120. data/lib/keynetra-client/models/success_response_admin_login_response.rb +182 -0
  121. data/lib/keynetra-client/models/success_response_auth_model_out.rb +182 -0
  122. data/lib/keynetra-client/models/success_response_batch_access_response.rb +182 -0
  123. data/lib/keynetra-client/models/success_response_dict_str_any.rb +184 -0
  124. data/lib/keynetra-client/models/success_response_dict_str_int.rb +184 -0
  125. data/lib/keynetra-client/models/success_response_dict_str_object.rb +184 -0
  126. data/lib/keynetra-client/models/success_response_dict_str_str.rb +184 -0
  127. data/lib/keynetra-client/models/success_response_dict_str_union_int_str.rb +184 -0
  128. data/lib/keynetra-client/models/success_response_impact_analysis_response.rb +182 -0
  129. data/lib/keynetra-client/models/success_response_list_acl_out.rb +184 -0
  130. data/lib/keynetra-client/models/success_response_list_audit_record_out.rb +184 -0
  131. data/lib/keynetra-client/models/success_response_list_dict_str_str.rb +184 -0
  132. data/lib/keynetra-client/models/success_response_list_permission_out.rb +184 -0
  133. data/lib/keynetra-client/models/success_response_list_policy_out.rb +184 -0
  134. data/lib/keynetra-client/models/success_response_list_role_out.rb +184 -0
  135. data/lib/keynetra-client/models/success_response_permission_out.rb +182 -0
  136. data/lib/keynetra-client/models/success_response_policy_out.rb +182 -0
  137. data/lib/keynetra-client/models/success_response_policy_simulation_response.rb +182 -0
  138. data/lib/keynetra-client/models/success_response_relationship_out.rb +182 -0
  139. data/lib/keynetra-client/models/success_response_simulation_response.rb +182 -0
  140. data/lib/keynetra-client/models/validation_error.rb +237 -0
  141. data/lib/keynetra-client/version.rb +15 -0
  142. data/lib/keynetra-client.rb +105 -0
  143. data/spec/api/access_api_spec.rb +70 -0
  144. data/spec/api/auth_api_spec.rb +57 -0
  145. data/spec/api/dev_api_spec.rb +56 -0
  146. data/spec/api/health_api_spec.rb +65 -0
  147. data/spec/api/management_api_spec.rb +361 -0
  148. data/spec/api/playground_api_spec.rb +46 -0
  149. data/spec/models/access_decision_response_spec.rb +72 -0
  150. data/spec/models/access_request_spec.rb +66 -0
  151. data/spec/models/acl_create_spec.rb +66 -0
  152. data/spec/models/acl_out_spec.rb +84 -0
  153. data/spec/models/admin_login_request_spec.rb +42 -0
  154. data/spec/models/admin_login_response_spec.rb +60 -0
  155. data/spec/models/audit_record_out_spec.rb +108 -0
  156. data/spec/models/auth_model_create_spec.rb +36 -0
  157. data/spec/models/auth_model_out_spec.rb +60 -0
  158. data/spec/models/batch_access_item_spec.rb +42 -0
  159. data/spec/models/batch_access_request_spec.rb +54 -0
  160. data/spec/models/batch_access_response_spec.rb +42 -0
  161. data/spec/models/batch_access_result_spec.rb +48 -0
  162. data/spec/models/data_value_spec.rb +21 -0
  163. data/spec/models/http_validation_error_spec.rb +36 -0
  164. data/spec/models/impact_analysis_request_spec.rb +36 -0
  165. data/spec/models/impact_analysis_response_spec.rb +42 -0
  166. data/spec/models/location_inner_spec.rb +21 -0
  167. data/spec/models/meta_body_spec.rb +54 -0
  168. data/spec/models/permission_create_spec.rb +36 -0
  169. data/spec/models/permission_out_spec.rb +42 -0
  170. data/spec/models/permission_update_spec.rb +36 -0
  171. data/spec/models/playground_evaluate_request_spec.rb +42 -0
  172. data/spec/models/playground_input_spec.rb +54 -0
  173. data/spec/models/playground_policy_spec.rb +60 -0
  174. data/spec/models/policy_create_spec.rb +60 -0
  175. data/spec/models/policy_out_spec.rb +66 -0
  176. data/spec/models/policy_simulation_input_spec.rb +48 -0
  177. data/spec/models/policy_simulation_request_spec.rb +42 -0
  178. data/spec/models/policy_simulation_response_spec.rb +42 -0
  179. data/spec/models/relationship_create_spec.rb +60 -0
  180. data/spec/models/relationship_out_spec.rb +66 -0
  181. data/spec/models/role_create_spec.rb +36 -0
  182. data/spec/models/role_out_spec.rb +42 -0
  183. data/spec/models/role_update_spec.rb +36 -0
  184. data/spec/models/simulation_response_spec.rb +72 -0
  185. data/spec/models/success_response_access_decision_response_spec.rb +48 -0
  186. data/spec/models/success_response_acl_out_spec.rb +48 -0
  187. data/spec/models/success_response_admin_login_response_spec.rb +48 -0
  188. data/spec/models/success_response_auth_model_out_spec.rb +48 -0
  189. data/spec/models/success_response_batch_access_response_spec.rb +48 -0
  190. data/spec/models/success_response_dict_str_any_spec.rb +48 -0
  191. data/spec/models/success_response_dict_str_int_spec.rb +48 -0
  192. data/spec/models/success_response_dict_str_object_spec.rb +48 -0
  193. data/spec/models/success_response_dict_str_str_spec.rb +48 -0
  194. data/spec/models/success_response_dict_str_union_int_str_spec.rb +48 -0
  195. data/spec/models/success_response_impact_analysis_response_spec.rb +48 -0
  196. data/spec/models/success_response_list_acl_out_spec.rb +48 -0
  197. data/spec/models/success_response_list_audit_record_out_spec.rb +48 -0
  198. data/spec/models/success_response_list_dict_str_str_spec.rb +48 -0
  199. data/spec/models/success_response_list_permission_out_spec.rb +48 -0
  200. data/spec/models/success_response_list_policy_out_spec.rb +48 -0
  201. data/spec/models/success_response_list_role_out_spec.rb +48 -0
  202. data/spec/models/success_response_permission_out_spec.rb +48 -0
  203. data/spec/models/success_response_policy_out_spec.rb +48 -0
  204. data/spec/models/success_response_policy_simulation_response_spec.rb +48 -0
  205. data/spec/models/success_response_relationship_out_spec.rb +48 -0
  206. data/spec/models/success_response_simulation_response_spec.rb +48 -0
  207. data/spec/models/validation_error_spec.rb +60 -0
  208. data/spec/spec_helper.rb +111 -0
  209. metadata +356 -0
@@ -0,0 +1,219 @@
1
+ =begin
2
+ #KeyNetra
3
+
4
+ #No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5
+
6
+ The version of the OpenAPI document: 0.1.1
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.21.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module KeyNetra
17
+ # Explicit authorization request passed through the API boundary.
18
+ class AccessRequest < ApiModelBase
19
+ attr_accessor :user
20
+
21
+ attr_accessor :action
22
+
23
+ attr_accessor :resource
24
+
25
+ attr_accessor :context
26
+
27
+ attr_accessor :consistency
28
+
29
+ attr_accessor :revision
30
+
31
+ # Attribute mapping from ruby-style variable name to JSON key.
32
+ def self.attribute_map
33
+ {
34
+ :'user' => :'user',
35
+ :'action' => :'action',
36
+ :'resource' => :'resource',
37
+ :'context' => :'context',
38
+ :'consistency' => :'consistency',
39
+ :'revision' => :'revision'
40
+ }
41
+ end
42
+
43
+ # Returns attribute mapping this model knows about
44
+ def self.acceptable_attribute_map
45
+ attribute_map
46
+ end
47
+
48
+ # Returns all the JSON keys this model knows about
49
+ def self.acceptable_attributes
50
+ acceptable_attribute_map.values
51
+ end
52
+
53
+ # Attribute type mapping.
54
+ def self.openapi_types
55
+ {
56
+ :'user' => :'Hash<String, Object>',
57
+ :'action' => :'String',
58
+ :'resource' => :'Hash<String, Object>',
59
+ :'context' => :'Hash<String, Object>',
60
+ :'consistency' => :'String',
61
+ :'revision' => :'Integer'
62
+ }
63
+ end
64
+
65
+ # List of attributes with nullable: true
66
+ def self.openapi_nullable
67
+ Set.new([
68
+ :'revision'
69
+ ])
70
+ end
71
+
72
+ # Initializes the object
73
+ # @param [Hash] attributes Model attributes in the form of hash
74
+ def initialize(attributes = {})
75
+ if (!attributes.is_a?(Hash))
76
+ fail ArgumentError, "The input argument (attributes) must be a hash in `KeyNetra::AccessRequest` initialize method"
77
+ end
78
+
79
+ # check to see if the attribute exists and convert string to symbol for hash key
80
+ acceptable_attribute_map = self.class.acceptable_attribute_map
81
+ attributes = attributes.each_with_object({}) { |(k, v), h|
82
+ if (!acceptable_attribute_map.key?(k.to_sym))
83
+ fail ArgumentError, "`#{k}` is not a valid attribute in `KeyNetra::AccessRequest`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
84
+ end
85
+ h[k.to_sym] = v
86
+ }
87
+
88
+ if attributes.key?(:'user')
89
+ if (value = attributes[:'user']).is_a?(Hash)
90
+ self.user = value
91
+ end
92
+ end
93
+
94
+ if attributes.key?(:'action')
95
+ self.action = attributes[:'action']
96
+ else
97
+ self.action = nil
98
+ end
99
+
100
+ if attributes.key?(:'resource')
101
+ if (value = attributes[:'resource']).is_a?(Hash)
102
+ self.resource = value
103
+ end
104
+ end
105
+
106
+ if attributes.key?(:'context')
107
+ if (value = attributes[:'context']).is_a?(Hash)
108
+ self.context = value
109
+ end
110
+ end
111
+
112
+ if attributes.key?(:'consistency')
113
+ self.consistency = attributes[:'consistency']
114
+ else
115
+ self.consistency = 'eventual'
116
+ end
117
+
118
+ if attributes.key?(:'revision')
119
+ self.revision = attributes[:'revision']
120
+ end
121
+ end
122
+
123
+ # Show invalid properties with the reasons. Usually used together with valid?
124
+ # @return Array for valid properties with the reasons
125
+ def list_invalid_properties
126
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
127
+ invalid_properties = Array.new
128
+ if @action.nil?
129
+ invalid_properties.push('invalid value for "action", action cannot be nil.')
130
+ end
131
+
132
+ invalid_properties
133
+ end
134
+
135
+ # Check to see if the all the properties in the model are valid
136
+ # @return true if the model is valid
137
+ def valid?
138
+ warn '[DEPRECATED] the `valid?` method is obsolete'
139
+ return false if @action.nil?
140
+ true
141
+ end
142
+
143
+ # Custom attribute writer method with validation
144
+ # @param [Object] action Value to be assigned
145
+ def action=(action)
146
+ if action.nil?
147
+ fail ArgumentError, 'action cannot be nil'
148
+ end
149
+
150
+ @action = action
151
+ end
152
+
153
+ # Checks equality by comparing each attribute.
154
+ # @param [Object] Object to be compared
155
+ def ==(o)
156
+ return true if self.equal?(o)
157
+ self.class == o.class &&
158
+ user == o.user &&
159
+ action == o.action &&
160
+ resource == o.resource &&
161
+ context == o.context &&
162
+ consistency == o.consistency &&
163
+ revision == o.revision
164
+ end
165
+
166
+ # @see the `==` method
167
+ # @param [Object] Object to be compared
168
+ def eql?(o)
169
+ self == o
170
+ end
171
+
172
+ # Calculates hash code according to all attributes.
173
+ # @return [Integer] Hash code
174
+ def hash
175
+ [user, action, resource, context, consistency, revision].hash
176
+ end
177
+
178
+ # Builds the object from hash
179
+ # @param [Hash] attributes Model attributes in the form of hash
180
+ # @return [Object] Returns the model itself
181
+ def self.build_from_hash(attributes)
182
+ return nil unless attributes.is_a?(Hash)
183
+ attributes = attributes.transform_keys(&:to_sym)
184
+ transformed_hash = {}
185
+ openapi_types.each_pair do |key, type|
186
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
187
+ transformed_hash["#{key}"] = nil
188
+ elsif type =~ /\AArray<(.*)>/i
189
+ # check to ensure the input is an array given that the attribute
190
+ # is documented as an array but the input is not
191
+ if attributes[attribute_map[key]].is_a?(Array)
192
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
193
+ end
194
+ elsif !attributes[attribute_map[key]].nil?
195
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
196
+ end
197
+ end
198
+ new(transformed_hash)
199
+ end
200
+
201
+ # Returns the object in the form of hash
202
+ # @return [Hash] Returns the object in the form of hash
203
+ def to_hash
204
+ hash = {}
205
+ self.class.attribute_map.each_pair do |attr, param|
206
+ value = self.send(attr)
207
+ if value.nil?
208
+ is_nullable = self.class.openapi_nullable.include?(attr)
209
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
210
+ end
211
+
212
+ hash[param] = _to_hash(value)
213
+ end
214
+ hash
215
+ end
216
+
217
+ end
218
+
219
+ end
@@ -0,0 +1,294 @@
1
+ =begin
2
+ #KeyNetra
3
+
4
+ #No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5
+
6
+ The version of the OpenAPI document: 0.1.1
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.21.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module KeyNetra
17
+ class ACLCreate < ApiModelBase
18
+ attr_accessor :subject_type
19
+
20
+ attr_accessor :subject_id
21
+
22
+ attr_accessor :resource_type
23
+
24
+ attr_accessor :resource_id
25
+
26
+ attr_accessor :action
27
+
28
+ attr_accessor :effect
29
+
30
+ # Attribute mapping from ruby-style variable name to JSON key.
31
+ def self.attribute_map
32
+ {
33
+ :'subject_type' => :'subject_type',
34
+ :'subject_id' => :'subject_id',
35
+ :'resource_type' => :'resource_type',
36
+ :'resource_id' => :'resource_id',
37
+ :'action' => :'action',
38
+ :'effect' => :'effect'
39
+ }
40
+ end
41
+
42
+ # Returns attribute mapping this model knows about
43
+ def self.acceptable_attribute_map
44
+ attribute_map
45
+ end
46
+
47
+ # Returns all the JSON keys this model knows about
48
+ def self.acceptable_attributes
49
+ acceptable_attribute_map.values
50
+ end
51
+
52
+ # Attribute type mapping.
53
+ def self.openapi_types
54
+ {
55
+ :'subject_type' => :'String',
56
+ :'subject_id' => :'String',
57
+ :'resource_type' => :'String',
58
+ :'resource_id' => :'String',
59
+ :'action' => :'String',
60
+ :'effect' => :'String'
61
+ }
62
+ end
63
+
64
+ # List of attributes with nullable: true
65
+ def self.openapi_nullable
66
+ Set.new([
67
+ ])
68
+ end
69
+
70
+ # Initializes the object
71
+ # @param [Hash] attributes Model attributes in the form of hash
72
+ def initialize(attributes = {})
73
+ if (!attributes.is_a?(Hash))
74
+ fail ArgumentError, "The input argument (attributes) must be a hash in `KeyNetra::ACLCreate` initialize method"
75
+ end
76
+
77
+ # check to see if the attribute exists and convert string to symbol for hash key
78
+ acceptable_attribute_map = self.class.acceptable_attribute_map
79
+ attributes = attributes.each_with_object({}) { |(k, v), h|
80
+ if (!acceptable_attribute_map.key?(k.to_sym))
81
+ fail ArgumentError, "`#{k}` is not a valid attribute in `KeyNetra::ACLCreate`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
82
+ end
83
+ h[k.to_sym] = v
84
+ }
85
+
86
+ if attributes.key?(:'subject_type')
87
+ self.subject_type = attributes[:'subject_type']
88
+ else
89
+ self.subject_type = nil
90
+ end
91
+
92
+ if attributes.key?(:'subject_id')
93
+ self.subject_id = attributes[:'subject_id']
94
+ else
95
+ self.subject_id = nil
96
+ end
97
+
98
+ if attributes.key?(:'resource_type')
99
+ self.resource_type = attributes[:'resource_type']
100
+ else
101
+ self.resource_type = nil
102
+ end
103
+
104
+ if attributes.key?(:'resource_id')
105
+ self.resource_id = attributes[:'resource_id']
106
+ else
107
+ self.resource_id = nil
108
+ end
109
+
110
+ if attributes.key?(:'action')
111
+ self.action = attributes[:'action']
112
+ else
113
+ self.action = nil
114
+ end
115
+
116
+ if attributes.key?(:'effect')
117
+ self.effect = attributes[:'effect']
118
+ else
119
+ self.effect = nil
120
+ end
121
+ end
122
+
123
+ # Show invalid properties with the reasons. Usually used together with valid?
124
+ # @return Array for valid properties with the reasons
125
+ def list_invalid_properties
126
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
127
+ invalid_properties = Array.new
128
+ if @subject_type.nil?
129
+ invalid_properties.push('invalid value for "subject_type", subject_type cannot be nil.')
130
+ end
131
+
132
+ if @subject_id.nil?
133
+ invalid_properties.push('invalid value for "subject_id", subject_id cannot be nil.')
134
+ end
135
+
136
+ if @resource_type.nil?
137
+ invalid_properties.push('invalid value for "resource_type", resource_type cannot be nil.')
138
+ end
139
+
140
+ if @resource_id.nil?
141
+ invalid_properties.push('invalid value for "resource_id", resource_id cannot be nil.')
142
+ end
143
+
144
+ if @action.nil?
145
+ invalid_properties.push('invalid value for "action", action cannot be nil.')
146
+ end
147
+
148
+ if @effect.nil?
149
+ invalid_properties.push('invalid value for "effect", effect cannot be nil.')
150
+ end
151
+
152
+ invalid_properties
153
+ end
154
+
155
+ # Check to see if the all the properties in the model are valid
156
+ # @return true if the model is valid
157
+ def valid?
158
+ warn '[DEPRECATED] the `valid?` method is obsolete'
159
+ return false if @subject_type.nil?
160
+ return false if @subject_id.nil?
161
+ return false if @resource_type.nil?
162
+ return false if @resource_id.nil?
163
+ return false if @action.nil?
164
+ return false if @effect.nil?
165
+ true
166
+ end
167
+
168
+ # Custom attribute writer method with validation
169
+ # @param [Object] subject_type Value to be assigned
170
+ def subject_type=(subject_type)
171
+ if subject_type.nil?
172
+ fail ArgumentError, 'subject_type cannot be nil'
173
+ end
174
+
175
+ @subject_type = subject_type
176
+ end
177
+
178
+ # Custom attribute writer method with validation
179
+ # @param [Object] subject_id Value to be assigned
180
+ def subject_id=(subject_id)
181
+ if subject_id.nil?
182
+ fail ArgumentError, 'subject_id cannot be nil'
183
+ end
184
+
185
+ @subject_id = subject_id
186
+ end
187
+
188
+ # Custom attribute writer method with validation
189
+ # @param [Object] resource_type Value to be assigned
190
+ def resource_type=(resource_type)
191
+ if resource_type.nil?
192
+ fail ArgumentError, 'resource_type cannot be nil'
193
+ end
194
+
195
+ @resource_type = resource_type
196
+ end
197
+
198
+ # Custom attribute writer method with validation
199
+ # @param [Object] resource_id Value to be assigned
200
+ def resource_id=(resource_id)
201
+ if resource_id.nil?
202
+ fail ArgumentError, 'resource_id cannot be nil'
203
+ end
204
+
205
+ @resource_id = resource_id
206
+ end
207
+
208
+ # Custom attribute writer method with validation
209
+ # @param [Object] action Value to be assigned
210
+ def action=(action)
211
+ if action.nil?
212
+ fail ArgumentError, 'action cannot be nil'
213
+ end
214
+
215
+ @action = action
216
+ end
217
+
218
+ # Custom attribute writer method with validation
219
+ # @param [Object] effect Value to be assigned
220
+ def effect=(effect)
221
+ if effect.nil?
222
+ fail ArgumentError, 'effect cannot be nil'
223
+ end
224
+
225
+ @effect = effect
226
+ end
227
+
228
+ # Checks equality by comparing each attribute.
229
+ # @param [Object] Object to be compared
230
+ def ==(o)
231
+ return true if self.equal?(o)
232
+ self.class == o.class &&
233
+ subject_type == o.subject_type &&
234
+ subject_id == o.subject_id &&
235
+ resource_type == o.resource_type &&
236
+ resource_id == o.resource_id &&
237
+ action == o.action &&
238
+ effect == o.effect
239
+ end
240
+
241
+ # @see the `==` method
242
+ # @param [Object] Object to be compared
243
+ def eql?(o)
244
+ self == o
245
+ end
246
+
247
+ # Calculates hash code according to all attributes.
248
+ # @return [Integer] Hash code
249
+ def hash
250
+ [subject_type, subject_id, resource_type, resource_id, action, effect].hash
251
+ end
252
+
253
+ # Builds the object from hash
254
+ # @param [Hash] attributes Model attributes in the form of hash
255
+ # @return [Object] Returns the model itself
256
+ def self.build_from_hash(attributes)
257
+ return nil unless attributes.is_a?(Hash)
258
+ attributes = attributes.transform_keys(&:to_sym)
259
+ transformed_hash = {}
260
+ openapi_types.each_pair do |key, type|
261
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
262
+ transformed_hash["#{key}"] = nil
263
+ elsif type =~ /\AArray<(.*)>/i
264
+ # check to ensure the input is an array given that the attribute
265
+ # is documented as an array but the input is not
266
+ if attributes[attribute_map[key]].is_a?(Array)
267
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
268
+ end
269
+ elsif !attributes[attribute_map[key]].nil?
270
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
271
+ end
272
+ end
273
+ new(transformed_hash)
274
+ end
275
+
276
+ # Returns the object in the form of hash
277
+ # @return [Hash] Returns the object in the form of hash
278
+ def to_hash
279
+ hash = {}
280
+ self.class.attribute_map.each_pair do |attr, param|
281
+ value = self.send(attr)
282
+ if value.nil?
283
+ is_nullable = self.class.openapi_nullable.include?(attr)
284
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
285
+ end
286
+
287
+ hash[param] = _to_hash(value)
288
+ end
289
+ hash
290
+ end
291
+
292
+ end
293
+
294
+ end