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,192 @@
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 PlaygroundEvaluateRequest < ApiModelBase
18
+ attr_accessor :policies
19
+
20
+ attr_accessor :input
21
+
22
+ # Attribute mapping from ruby-style variable name to JSON key.
23
+ def self.attribute_map
24
+ {
25
+ :'policies' => :'policies',
26
+ :'input' => :'input'
27
+ }
28
+ end
29
+
30
+ # Returns attribute mapping this model knows about
31
+ def self.acceptable_attribute_map
32
+ attribute_map
33
+ end
34
+
35
+ # Returns all the JSON keys this model knows about
36
+ def self.acceptable_attributes
37
+ acceptable_attribute_map.values
38
+ end
39
+
40
+ # Attribute type mapping.
41
+ def self.openapi_types
42
+ {
43
+ :'policies' => :'Array<PlaygroundPolicy>',
44
+ :'input' => :'PlaygroundInput'
45
+ }
46
+ end
47
+
48
+ # List of attributes with nullable: true
49
+ def self.openapi_nullable
50
+ Set.new([
51
+ ])
52
+ end
53
+
54
+ # Initializes the object
55
+ # @param [Hash] attributes Model attributes in the form of hash
56
+ def initialize(attributes = {})
57
+ if (!attributes.is_a?(Hash))
58
+ fail ArgumentError, "The input argument (attributes) must be a hash in `KeyNetra::PlaygroundEvaluateRequest` initialize method"
59
+ end
60
+
61
+ # check to see if the attribute exists and convert string to symbol for hash key
62
+ acceptable_attribute_map = self.class.acceptable_attribute_map
63
+ attributes = attributes.each_with_object({}) { |(k, v), h|
64
+ if (!acceptable_attribute_map.key?(k.to_sym))
65
+ fail ArgumentError, "`#{k}` is not a valid attribute in `KeyNetra::PlaygroundEvaluateRequest`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
66
+ end
67
+ h[k.to_sym] = v
68
+ }
69
+
70
+ if attributes.key?(:'policies')
71
+ if (value = attributes[:'policies']).is_a?(Array)
72
+ self.policies = value
73
+ end
74
+ else
75
+ self.policies = nil
76
+ end
77
+
78
+ if attributes.key?(:'input')
79
+ self.input = attributes[:'input']
80
+ else
81
+ self.input = nil
82
+ end
83
+ end
84
+
85
+ # Show invalid properties with the reasons. Usually used together with valid?
86
+ # @return Array for valid properties with the reasons
87
+ def list_invalid_properties
88
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
89
+ invalid_properties = Array.new
90
+ if @policies.nil?
91
+ invalid_properties.push('invalid value for "policies", policies cannot be nil.')
92
+ end
93
+
94
+ if @input.nil?
95
+ invalid_properties.push('invalid value for "input", input cannot be nil.')
96
+ end
97
+
98
+ invalid_properties
99
+ end
100
+
101
+ # Check to see if the all the properties in the model are valid
102
+ # @return true if the model is valid
103
+ def valid?
104
+ warn '[DEPRECATED] the `valid?` method is obsolete'
105
+ return false if @policies.nil?
106
+ return false if @input.nil?
107
+ true
108
+ end
109
+
110
+ # Custom attribute writer method with validation
111
+ # @param [Object] policies Value to be assigned
112
+ def policies=(policies)
113
+ if policies.nil?
114
+ fail ArgumentError, 'policies cannot be nil'
115
+ end
116
+
117
+ @policies = policies
118
+ end
119
+
120
+ # Custom attribute writer method with validation
121
+ # @param [Object] input Value to be assigned
122
+ def input=(input)
123
+ if input.nil?
124
+ fail ArgumentError, 'input cannot be nil'
125
+ end
126
+
127
+ @input = input
128
+ end
129
+
130
+ # Checks equality by comparing each attribute.
131
+ # @param [Object] Object to be compared
132
+ def ==(o)
133
+ return true if self.equal?(o)
134
+ self.class == o.class &&
135
+ policies == o.policies &&
136
+ input == o.input
137
+ end
138
+
139
+ # @see the `==` method
140
+ # @param [Object] Object to be compared
141
+ def eql?(o)
142
+ self == o
143
+ end
144
+
145
+ # Calculates hash code according to all attributes.
146
+ # @return [Integer] Hash code
147
+ def hash
148
+ [policies, input].hash
149
+ end
150
+
151
+ # Builds the object from hash
152
+ # @param [Hash] attributes Model attributes in the form of hash
153
+ # @return [Object] Returns the model itself
154
+ def self.build_from_hash(attributes)
155
+ return nil unless attributes.is_a?(Hash)
156
+ attributes = attributes.transform_keys(&:to_sym)
157
+ transformed_hash = {}
158
+ openapi_types.each_pair do |key, type|
159
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
160
+ transformed_hash["#{key}"] = nil
161
+ elsif type =~ /\AArray<(.*)>/i
162
+ # check to ensure the input is an array given that the attribute
163
+ # is documented as an array but the input is not
164
+ if attributes[attribute_map[key]].is_a?(Array)
165
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
166
+ end
167
+ elsif !attributes[attribute_map[key]].nil?
168
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
169
+ end
170
+ end
171
+ new(transformed_hash)
172
+ end
173
+
174
+ # Returns the object in the form of hash
175
+ # @return [Hash] Returns the object in the form of hash
176
+ def to_hash
177
+ hash = {}
178
+ self.class.attribute_map.each_pair do |attr, param|
179
+ value = self.send(attr)
180
+ if value.nil?
181
+ is_nullable = self.class.openapi_nullable.include?(attr)
182
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
183
+ end
184
+
185
+ hash[param] = _to_hash(value)
186
+ end
187
+ hash
188
+ end
189
+
190
+ end
191
+
192
+ end
@@ -0,0 +1,182 @@
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 PlaygroundInput < ApiModelBase
18
+ attr_accessor :user
19
+
20
+ attr_accessor :resource
21
+
22
+ attr_accessor :action
23
+
24
+ attr_accessor :context
25
+
26
+ # Attribute mapping from ruby-style variable name to JSON key.
27
+ def self.attribute_map
28
+ {
29
+ :'user' => :'user',
30
+ :'resource' => :'resource',
31
+ :'action' => :'action',
32
+ :'context' => :'context'
33
+ }
34
+ end
35
+
36
+ # Returns attribute mapping this model knows about
37
+ def self.acceptable_attribute_map
38
+ attribute_map
39
+ end
40
+
41
+ # Returns all the JSON keys this model knows about
42
+ def self.acceptable_attributes
43
+ acceptable_attribute_map.values
44
+ end
45
+
46
+ # Attribute type mapping.
47
+ def self.openapi_types
48
+ {
49
+ :'user' => :'Hash<String, Object>',
50
+ :'resource' => :'Hash<String, Object>',
51
+ :'action' => :'String',
52
+ :'context' => :'Hash<String, Object>'
53
+ }
54
+ end
55
+
56
+ # List of attributes with nullable: true
57
+ def self.openapi_nullable
58
+ Set.new([
59
+ ])
60
+ end
61
+
62
+ # Initializes the object
63
+ # @param [Hash] attributes Model attributes in the form of hash
64
+ def initialize(attributes = {})
65
+ if (!attributes.is_a?(Hash))
66
+ fail ArgumentError, "The input argument (attributes) must be a hash in `KeyNetra::PlaygroundInput` initialize method"
67
+ end
68
+
69
+ # check to see if the attribute exists and convert string to symbol for hash key
70
+ acceptable_attribute_map = self.class.acceptable_attribute_map
71
+ attributes = attributes.each_with_object({}) { |(k, v), h|
72
+ if (!acceptable_attribute_map.key?(k.to_sym))
73
+ fail ArgumentError, "`#{k}` is not a valid attribute in `KeyNetra::PlaygroundInput`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
74
+ end
75
+ h[k.to_sym] = v
76
+ }
77
+
78
+ if attributes.key?(:'user')
79
+ if (value = attributes[:'user']).is_a?(Hash)
80
+ self.user = value
81
+ end
82
+ end
83
+
84
+ if attributes.key?(:'resource')
85
+ if (value = attributes[:'resource']).is_a?(Hash)
86
+ self.resource = value
87
+ end
88
+ end
89
+
90
+ if attributes.key?(:'action')
91
+ self.action = attributes[:'action']
92
+ else
93
+ self.action = ''
94
+ end
95
+
96
+ if attributes.key?(:'context')
97
+ if (value = attributes[:'context']).is_a?(Hash)
98
+ self.context = value
99
+ end
100
+ end
101
+ end
102
+
103
+ # Show invalid properties with the reasons. Usually used together with valid?
104
+ # @return Array for valid properties with the reasons
105
+ def list_invalid_properties
106
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
107
+ invalid_properties = Array.new
108
+ invalid_properties
109
+ end
110
+
111
+ # Check to see if the all the properties in the model are valid
112
+ # @return true if the model is valid
113
+ def valid?
114
+ warn '[DEPRECATED] the `valid?` method is obsolete'
115
+ true
116
+ end
117
+
118
+ # Checks equality by comparing each attribute.
119
+ # @param [Object] Object to be compared
120
+ def ==(o)
121
+ return true if self.equal?(o)
122
+ self.class == o.class &&
123
+ user == o.user &&
124
+ resource == o.resource &&
125
+ action == o.action &&
126
+ context == o.context
127
+ end
128
+
129
+ # @see the `==` method
130
+ # @param [Object] Object to be compared
131
+ def eql?(o)
132
+ self == o
133
+ end
134
+
135
+ # Calculates hash code according to all attributes.
136
+ # @return [Integer] Hash code
137
+ def hash
138
+ [user, resource, action, context].hash
139
+ end
140
+
141
+ # Builds the object from hash
142
+ # @param [Hash] attributes Model attributes in the form of hash
143
+ # @return [Object] Returns the model itself
144
+ def self.build_from_hash(attributes)
145
+ return nil unless attributes.is_a?(Hash)
146
+ attributes = attributes.transform_keys(&:to_sym)
147
+ transformed_hash = {}
148
+ openapi_types.each_pair do |key, type|
149
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
150
+ transformed_hash["#{key}"] = nil
151
+ elsif type =~ /\AArray<(.*)>/i
152
+ # check to ensure the input is an array given that the attribute
153
+ # is documented as an array but the input is not
154
+ if attributes[attribute_map[key]].is_a?(Array)
155
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
156
+ end
157
+ elsif !attributes[attribute_map[key]].nil?
158
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
159
+ end
160
+ end
161
+ new(transformed_hash)
162
+ end
163
+
164
+ # Returns the object in the form of hash
165
+ # @return [Hash] Returns the object in the form of hash
166
+ def to_hash
167
+ hash = {}
168
+ self.class.attribute_map.each_pair do |attr, param|
169
+ value = self.send(attr)
170
+ if value.nil?
171
+ is_nullable = self.class.openapi_nullable.include?(attr)
172
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
173
+ end
174
+
175
+ hash[param] = _to_hash(value)
176
+ end
177
+ hash
178
+ end
179
+
180
+ end
181
+
182
+ end
@@ -0,0 +1,207 @@
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 PlaygroundPolicy < ApiModelBase
18
+ attr_accessor :action
19
+
20
+ attr_accessor :effect
21
+
22
+ attr_accessor :priority
23
+
24
+ attr_accessor :policy_id
25
+
26
+ attr_accessor :conditions
27
+
28
+ # Attribute mapping from ruby-style variable name to JSON key.
29
+ def self.attribute_map
30
+ {
31
+ :'action' => :'action',
32
+ :'effect' => :'effect',
33
+ :'priority' => :'priority',
34
+ :'policy_id' => :'policy_id',
35
+ :'conditions' => :'conditions'
36
+ }
37
+ end
38
+
39
+ # Returns attribute mapping this model knows about
40
+ def self.acceptable_attribute_map
41
+ attribute_map
42
+ end
43
+
44
+ # Returns all the JSON keys this model knows about
45
+ def self.acceptable_attributes
46
+ acceptable_attribute_map.values
47
+ end
48
+
49
+ # Attribute type mapping.
50
+ def self.openapi_types
51
+ {
52
+ :'action' => :'String',
53
+ :'effect' => :'String',
54
+ :'priority' => :'Integer',
55
+ :'policy_id' => :'String',
56
+ :'conditions' => :'Hash<String, Object>'
57
+ }
58
+ end
59
+
60
+ # List of attributes with nullable: true
61
+ def self.openapi_nullable
62
+ Set.new([
63
+ :'policy_id',
64
+ ])
65
+ end
66
+
67
+ # Initializes the object
68
+ # @param [Hash] attributes Model attributes in the form of hash
69
+ def initialize(attributes = {})
70
+ if (!attributes.is_a?(Hash))
71
+ fail ArgumentError, "The input argument (attributes) must be a hash in `KeyNetra::PlaygroundPolicy` initialize method"
72
+ end
73
+
74
+ # check to see if the attribute exists and convert string to symbol for hash key
75
+ acceptable_attribute_map = self.class.acceptable_attribute_map
76
+ attributes = attributes.each_with_object({}) { |(k, v), h|
77
+ if (!acceptable_attribute_map.key?(k.to_sym))
78
+ fail ArgumentError, "`#{k}` is not a valid attribute in `KeyNetra::PlaygroundPolicy`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
79
+ end
80
+ h[k.to_sym] = v
81
+ }
82
+
83
+ if attributes.key?(:'action')
84
+ self.action = attributes[:'action']
85
+ else
86
+ self.action = nil
87
+ end
88
+
89
+ if attributes.key?(:'effect')
90
+ self.effect = attributes[:'effect']
91
+ else
92
+ self.effect = 'allow'
93
+ end
94
+
95
+ if attributes.key?(:'priority')
96
+ self.priority = attributes[:'priority']
97
+ else
98
+ self.priority = 100
99
+ end
100
+
101
+ if attributes.key?(:'policy_id')
102
+ self.policy_id = attributes[:'policy_id']
103
+ end
104
+
105
+ if attributes.key?(:'conditions')
106
+ if (value = attributes[:'conditions']).is_a?(Hash)
107
+ self.conditions = value
108
+ end
109
+ end
110
+ end
111
+
112
+ # Show invalid properties with the reasons. Usually used together with valid?
113
+ # @return Array for valid properties with the reasons
114
+ def list_invalid_properties
115
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
116
+ invalid_properties = Array.new
117
+ if @action.nil?
118
+ invalid_properties.push('invalid value for "action", action cannot be nil.')
119
+ end
120
+
121
+ invalid_properties
122
+ end
123
+
124
+ # Check to see if the all the properties in the model are valid
125
+ # @return true if the model is valid
126
+ def valid?
127
+ warn '[DEPRECATED] the `valid?` method is obsolete'
128
+ return false if @action.nil?
129
+ true
130
+ end
131
+
132
+ # Custom attribute writer method with validation
133
+ # @param [Object] action Value to be assigned
134
+ def action=(action)
135
+ if action.nil?
136
+ fail ArgumentError, 'action cannot be nil'
137
+ end
138
+
139
+ @action = action
140
+ end
141
+
142
+ # Checks equality by comparing each attribute.
143
+ # @param [Object] Object to be compared
144
+ def ==(o)
145
+ return true if self.equal?(o)
146
+ self.class == o.class &&
147
+ action == o.action &&
148
+ effect == o.effect &&
149
+ priority == o.priority &&
150
+ policy_id == o.policy_id &&
151
+ conditions == o.conditions
152
+ end
153
+
154
+ # @see the `==` method
155
+ # @param [Object] Object to be compared
156
+ def eql?(o)
157
+ self == o
158
+ end
159
+
160
+ # Calculates hash code according to all attributes.
161
+ # @return [Integer] Hash code
162
+ def hash
163
+ [action, effect, priority, policy_id, conditions].hash
164
+ end
165
+
166
+ # Builds the object from hash
167
+ # @param [Hash] attributes Model attributes in the form of hash
168
+ # @return [Object] Returns the model itself
169
+ def self.build_from_hash(attributes)
170
+ return nil unless attributes.is_a?(Hash)
171
+ attributes = attributes.transform_keys(&:to_sym)
172
+ transformed_hash = {}
173
+ openapi_types.each_pair do |key, type|
174
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
175
+ transformed_hash["#{key}"] = nil
176
+ elsif type =~ /\AArray<(.*)>/i
177
+ # check to ensure the input is an array given that the attribute
178
+ # is documented as an array but the input is not
179
+ if attributes[attribute_map[key]].is_a?(Array)
180
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
181
+ end
182
+ elsif !attributes[attribute_map[key]].nil?
183
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
184
+ end
185
+ end
186
+ new(transformed_hash)
187
+ end
188
+
189
+ # Returns the object in the form of hash
190
+ # @return [Hash] Returns the object in the form of hash
191
+ def to_hash
192
+ hash = {}
193
+ self.class.attribute_map.each_pair do |attr, param|
194
+ value = self.send(attr)
195
+ if value.nil?
196
+ is_nullable = self.class.openapi_nullable.include?(attr)
197
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
198
+ end
199
+
200
+ hash[param] = _to_hash(value)
201
+ end
202
+ hash
203
+ end
204
+
205
+ end
206
+
207
+ end