Class: OperatorAccessControl::Models::AccessRequest

Inherits:
Object
  • Object
show all
Defined in:
lib/oci/operator_access_control/models/access_request.rb

Overview

An Oracle operator raises access request when they need access to any infrastructure resource governed by Operator Access Control. The access request identifies the target resource and the set of operator actions. Access request handling depends upon the Operator Control that governs the target resource, and the set of operator actions listed for approval in the access request. If all of the operator actions listed in the access request are in the pre-approved list in the Operator Control that governs the target resource, then the access request is automatically approved. If not, then the access request requires explicit approval from the approver group specified by the Operator Control governing the target resource.

You can approve or reject an access request. You can also revoke the approval of an already approved access request. While creating an access request, the operator specifies the duration of access. You have the option to approve the entire duration or reduce or even increase the time duration. An operator can also request for an extension. The approval for such an extension is processed the same way the original access request was processed.

Constant Summary collapse

RESOURCE_TYPE_ENUM =
[
  RESOURCE_TYPE_EXACC = 'EXACC'.freeze,
  RESOURCE_TYPE_EXADATAINFRASTRUCTURE = 'EXADATAINFRASTRUCTURE'.freeze,
  RESOURCE_TYPE_AUTONOMOUSVMCLUSTER = 'AUTONOMOUSVMCLUSTER'.freeze,
  RESOURCE_TYPE_UNKNOWN_ENUM_VALUE = 'UNKNOWN_ENUM_VALUE'.freeze
].freeze
SEVERITY_ENUM =
[
  SEVERITY_S1 = 'S1'.freeze,
  SEVERITY_S2 = 'S2'.freeze,
  SEVERITY_S3 = 'S3'.freeze,
  SEVERITY_S4 = 'S4'.freeze,
  SEVERITY_UNKNOWN_ENUM_VALUE = 'UNKNOWN_ENUM_VALUE'.freeze
].freeze
LIFECYCLE_STATE_ENUM =
[
  LIFECYCLE_STATE_CREATED = 'CREATED'.freeze,
  LIFECYCLE_STATE_APPROVALWAITING = 'APPROVALWAITING'.freeze,
  LIFECYCLE_STATE_PREAPPROVED = 'PREAPPROVED'.freeze,
  LIFECYCLE_STATE_APPROVED = 'APPROVED'.freeze,
  LIFECYCLE_STATE_MOREINFO = 'MOREINFO'.freeze,
  LIFECYCLE_STATE_REJECTED = 'REJECTED'.freeze,
  LIFECYCLE_STATE_DEPLOYED = 'DEPLOYED'.freeze,
  LIFECYCLE_STATE_DEPLOYFAILED = 'DEPLOYFAILED'.freeze,
  LIFECYCLE_STATE_UNDEPLOYED = 'UNDEPLOYED'.freeze,
  LIFECYCLE_STATE_UNDEPLOYFAILED = 'UNDEPLOYFAILED'.freeze,
  LIFECYCLE_STATE_CLOSEFAILED = 'CLOSEFAILED'.freeze,
  LIFECYCLE_STATE_REVOKEFAILED = 'REVOKEFAILED'.freeze,
  LIFECYCLE_STATE_EXPIRYFAILED = 'EXPIRYFAILED'.freeze,
  LIFECYCLE_STATE_REVOKING = 'REVOKING'.freeze,
  LIFECYCLE_STATE_REVOKED = 'REVOKED'.freeze,
  LIFECYCLE_STATE_EXTENDING = 'EXTENDING'.freeze,
  LIFECYCLE_STATE_EXTENDED = 'EXTENDED'.freeze,
  LIFECYCLE_STATE_EXTENSIONREJECTED = 'EXTENSIONREJECTED'.freeze,
  LIFECYCLE_STATE_COMPLETING = 'COMPLETING'.freeze,
  LIFECYCLE_STATE_COMPLETED = 'COMPLETED'.freeze,
  LIFECYCLE_STATE_EXPIRED = 'EXPIRED'.freeze,
  LIFECYCLE_STATE_APPROVEDFORFUTURE = 'APPROVEDFORFUTURE'.freeze,
  LIFECYCLE_STATE_INREVIEW = 'INREVIEW'.freeze,
  LIFECYCLE_STATE_UNKNOWN_ENUM_VALUE = 'UNKNOWN_ENUM_VALUE'.freeze
].freeze

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(attributes = {}) ⇒ AccessRequest

Initializes the object

Parameters:

  • attributes (Hash) (defaults to: {})

    Model attributes in the form of hash

Options Hash (attributes):

  • :id (String)

    The value to assign to the #id property

  • :request_id (String)

    The value to assign to the #request_id property

  • :access_reason_summary (String)

    The value to assign to the #access_reason_summary property

  • :operator_id (String)

    The value to assign to the #operator_id property

  • :resource_id (String)

    The value to assign to the #resource_id property

  • :resource_name (String)

    The value to assign to the #resource_name property

  • :compartment_id (String)

    The value to assign to the #compartment_id property

  • :resource_type (String)

    The value to assign to the #resource_type property

  • :action_requests_list (Array<String>)

    The value to assign to the #action_requests_list property

  • :reason (String)

    The value to assign to the #reason property

  • :severity (String)

    The value to assign to the #severity property

  • :duration (Integer)

    The value to assign to the #duration property

  • :extend_duration (Integer)

    The value to assign to the #extend_duration property

  • :workflow_id (Array<String>)

    The value to assign to the #workflow_id property

  • :is_auto_approved (BOOLEAN)

    The value to assign to the #is_auto_approved property

  • :lifecycle_state (String)

    The value to assign to the #lifecycle_state property

  • :time_of_creation (DateTime)

    The value to assign to the #time_of_creation property

  • :time_of_modification (DateTime)

    The value to assign to the #time_of_modification property

  • :time_of_user_creation (DateTime)

    The value to assign to the #time_of_user_creation property

  • :user_id (String)

    The value to assign to the #user_id property

  • :approver_comment (String)

    The value to assign to the #approver_comment property

  • :closure_comment (String)

    The value to assign to the #closure_comment property

  • :opctl_id (String)

    The value to assign to the #opctl_id property

  • :opctl_name (String)

    The value to assign to the #opctl_name property

  • :system_message (String)

    The value to assign to the #system_message property

  • :opctl_additional_message (String)

    The value to assign to the #opctl_additional_message property

  • :audit_type (Array<String>)

    The value to assign to the #audit_type property

  • :freeform_tags (Hash<String, String>)

    The value to assign to the #freeform_tags property

  • :defined_tags (Hash<String, Hash<String, Object>>)

    The value to assign to the #defined_tags property



301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
# File 'lib/oci/operator_access_control/models/access_request.rb', line 301

def initialize(attributes = {})
  return unless attributes.is_a?(Hash)

  # convert string to symbol for hash key
  attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }

  self.id = attributes[:'id'] if attributes[:'id']

  self.request_id = attributes[:'requestId'] if attributes[:'requestId']

  raise 'You cannot provide both :requestId and :request_id' if attributes.key?(:'requestId') && attributes.key?(:'request_id')

  self.request_id = attributes[:'request_id'] if attributes[:'request_id']

  self.access_reason_summary = attributes[:'accessReasonSummary'] if attributes[:'accessReasonSummary']

  raise 'You cannot provide both :accessReasonSummary and :access_reason_summary' if attributes.key?(:'accessReasonSummary') && attributes.key?(:'access_reason_summary')

  self.access_reason_summary = attributes[:'access_reason_summary'] if attributes[:'access_reason_summary']

  self.operator_id = attributes[:'operatorId'] if attributes[:'operatorId']

  raise 'You cannot provide both :operatorId and :operator_id' if attributes.key?(:'operatorId') && attributes.key?(:'operator_id')

  self.operator_id = attributes[:'operator_id'] if attributes[:'operator_id']

  self.resource_id = attributes[:'resourceId'] if attributes[:'resourceId']

  raise 'You cannot provide both :resourceId and :resource_id' if attributes.key?(:'resourceId') && attributes.key?(:'resource_id')

  self.resource_id = attributes[:'resource_id'] if attributes[:'resource_id']

  self.resource_name = attributes[:'resourceName'] if attributes[:'resourceName']

  raise 'You cannot provide both :resourceName and :resource_name' if attributes.key?(:'resourceName') && attributes.key?(:'resource_name')

  self.resource_name = attributes[:'resource_name'] if attributes[:'resource_name']

  self.compartment_id = attributes[:'compartmentId'] if attributes[:'compartmentId']

  raise 'You cannot provide both :compartmentId and :compartment_id' if attributes.key?(:'compartmentId') && attributes.key?(:'compartment_id')

  self.compartment_id = attributes[:'compartment_id'] if attributes[:'compartment_id']

  self.resource_type = attributes[:'resourceType'] if attributes[:'resourceType']

  raise 'You cannot provide both :resourceType and :resource_type' if attributes.key?(:'resourceType') && attributes.key?(:'resource_type')

  self.resource_type = attributes[:'resource_type'] if attributes[:'resource_type']

  self.action_requests_list = attributes[:'actionRequestsList'] if attributes[:'actionRequestsList']

  raise 'You cannot provide both :actionRequestsList and :action_requests_list' if attributes.key?(:'actionRequestsList') && attributes.key?(:'action_requests_list')

  self.action_requests_list = attributes[:'action_requests_list'] if attributes[:'action_requests_list']

  self.reason = attributes[:'reason'] if attributes[:'reason']

  self.severity = attributes[:'severity'] if attributes[:'severity']

  self.duration = attributes[:'duration'] if attributes[:'duration']

  self.extend_duration = attributes[:'extendDuration'] if attributes[:'extendDuration']

  raise 'You cannot provide both :extendDuration and :extend_duration' if attributes.key?(:'extendDuration') && attributes.key?(:'extend_duration')

  self.extend_duration = attributes[:'extend_duration'] if attributes[:'extend_duration']

  self.workflow_id = attributes[:'workflowId'] if attributes[:'workflowId']

  raise 'You cannot provide both :workflowId and :workflow_id' if attributes.key?(:'workflowId') && attributes.key?(:'workflow_id')

  self.workflow_id = attributes[:'workflow_id'] if attributes[:'workflow_id']

  self.is_auto_approved = attributes[:'isAutoApproved'] unless attributes[:'isAutoApproved'].nil?

  raise 'You cannot provide both :isAutoApproved and :is_auto_approved' if attributes.key?(:'isAutoApproved') && attributes.key?(:'is_auto_approved')

  self.is_auto_approved = attributes[:'is_auto_approved'] unless attributes[:'is_auto_approved'].nil?

  self.lifecycle_state = attributes[:'lifecycleState'] if attributes[:'lifecycleState']

  raise 'You cannot provide both :lifecycleState and :lifecycle_state' if attributes.key?(:'lifecycleState') && attributes.key?(:'lifecycle_state')

  self.lifecycle_state = attributes[:'lifecycle_state'] if attributes[:'lifecycle_state']

  self.time_of_creation = attributes[:'timeOfCreation'] if attributes[:'timeOfCreation']

  raise 'You cannot provide both :timeOfCreation and :time_of_creation' if attributes.key?(:'timeOfCreation') && attributes.key?(:'time_of_creation')

  self.time_of_creation = attributes[:'time_of_creation'] if attributes[:'time_of_creation']

  self.time_of_modification = attributes[:'timeOfModification'] if attributes[:'timeOfModification']

  raise 'You cannot provide both :timeOfModification and :time_of_modification' if attributes.key?(:'timeOfModification') && attributes.key?(:'time_of_modification')

  self.time_of_modification = attributes[:'time_of_modification'] if attributes[:'time_of_modification']

  self.time_of_user_creation = attributes[:'timeOfUserCreation'] if attributes[:'timeOfUserCreation']

  raise 'You cannot provide both :timeOfUserCreation and :time_of_user_creation' if attributes.key?(:'timeOfUserCreation') && attributes.key?(:'time_of_user_creation')

  self.time_of_user_creation = attributes[:'time_of_user_creation'] if attributes[:'time_of_user_creation']

  self.user_id = attributes[:'userId'] if attributes[:'userId']

  raise 'You cannot provide both :userId and :user_id' if attributes.key?(:'userId') && attributes.key?(:'user_id')

  self.user_id = attributes[:'user_id'] if attributes[:'user_id']

  self.approver_comment = attributes[:'approverComment'] if attributes[:'approverComment']

  raise 'You cannot provide both :approverComment and :approver_comment' if attributes.key?(:'approverComment') && attributes.key?(:'approver_comment')

  self.approver_comment = attributes[:'approver_comment'] if attributes[:'approver_comment']

  self.closure_comment = attributes[:'closureComment'] if attributes[:'closureComment']

  raise 'You cannot provide both :closureComment and :closure_comment' if attributes.key?(:'closureComment') && attributes.key?(:'closure_comment')

  self.closure_comment = attributes[:'closure_comment'] if attributes[:'closure_comment']

  self.opctl_id = attributes[:'opctlId'] if attributes[:'opctlId']

  raise 'You cannot provide both :opctlId and :opctl_id' if attributes.key?(:'opctlId') && attributes.key?(:'opctl_id')

  self.opctl_id = attributes[:'opctl_id'] if attributes[:'opctl_id']

  self.opctl_name = attributes[:'opctlName'] if attributes[:'opctlName']

  raise 'You cannot provide both :opctlName and :opctl_name' if attributes.key?(:'opctlName') && attributes.key?(:'opctl_name')

  self.opctl_name = attributes[:'opctl_name'] if attributes[:'opctl_name']

  self.system_message = attributes[:'systemMessage'] if attributes[:'systemMessage']

  raise 'You cannot provide both :systemMessage and :system_message' if attributes.key?(:'systemMessage') && attributes.key?(:'system_message')

  self.system_message = attributes[:'system_message'] if attributes[:'system_message']

  self.opctl_additional_message = attributes[:'opctlAdditionalMessage'] if attributes[:'opctlAdditionalMessage']

  raise 'You cannot provide both :opctlAdditionalMessage and :opctl_additional_message' if attributes.key?(:'opctlAdditionalMessage') && attributes.key?(:'opctl_additional_message')

  self.opctl_additional_message = attributes[:'opctl_additional_message'] if attributes[:'opctl_additional_message']

  self.audit_type = attributes[:'auditType'] if attributes[:'auditType']

  raise 'You cannot provide both :auditType and :audit_type' if attributes.key?(:'auditType') && attributes.key?(:'audit_type')

  self.audit_type = attributes[:'audit_type'] if attributes[:'audit_type']

  self.freeform_tags = attributes[:'freeformTags'] if attributes[:'freeformTags']

  raise 'You cannot provide both :freeformTags and :freeform_tags' if attributes.key?(:'freeformTags') && attributes.key?(:'freeform_tags')

  self.freeform_tags = attributes[:'freeform_tags'] if attributes[:'freeform_tags']

  self.defined_tags = attributes[:'definedTags'] if attributes[:'definedTags']

  raise 'You cannot provide both :definedTags and :defined_tags' if attributes.key?(:'definedTags') && attributes.key?(:'defined_tags')

  self.defined_tags = attributes[:'defined_tags'] if attributes[:'defined_tags']
end

Instance Attribute Details

#access_reason_summaryString

**[Required]** Summary comment by the operator creating the access request.

Returns:

  • (String)


72
73
74
# File 'lib/oci/operator_access_control/models/access_request.rb', line 72

def access_reason_summary
  @access_reason_summary
end

#action_requests_listArray<String>

List of operator actions for which approval is sought by the operator user.

Returns:

  • (Array<String>)


100
101
102
# File 'lib/oci/operator_access_control/models/access_request.rb', line 100

def action_requests_list
  @action_requests_list
end

#approver_commentString

The last recent Comment entered by the approver of the request.

Returns:

  • (String)


153
154
155
# File 'lib/oci/operator_access_control/models/access_request.rb', line 153

def approver_comment
  @approver_comment
end

#audit_typeArray<String>

Specifies the type of auditing to be enabled. There are two levels of auditing: command-level and keystroke-level. By default, auditing is enabled at the command level i.e., each command issued by the operator is audited. When keystroke-level is chosen, in addition to command level logging, key strokes are also logged.

Returns:

  • (Array<String>)


180
181
182
# File 'lib/oci/operator_access_control/models/access_request.rb', line 180

def audit_type
  @audit_type
end

#closure_commentString

The comment entered by the operator while closing the request.

Returns:

  • (String)


157
158
159
# File 'lib/oci/operator_access_control/models/access_request.rb', line 157

def closure_comment
  @closure_comment
end

#compartment_idString

The OCID of the compartment that contains the access request.

Returns:

  • (String)


92
93
94
# File 'lib/oci/operator_access_control/models/access_request.rb', line 92

def compartment_id
  @compartment_id
end

#defined_tagsHash<String, Hash<String, Object>>

Defined tags for this resource. Each key is predefined and scoped to a namespace.

Returns:

  • (Hash<String, Hash<String, Object>>)


190
191
192
# File 'lib/oci/operator_access_control/models/access_request.rb', line 190

def defined_tags
  @defined_tags
end

#durationInteger

Duration in hours for which access is sought on the target resource.

Returns:

  • (Integer)


112
113
114
# File 'lib/oci/operator_access_control/models/access_request.rb', line 112

def duration
  @duration
end

#extend_durationInteger

Duration in hours for which extension access is sought on the target resource.

Returns:

  • (Integer)


116
117
118
# File 'lib/oci/operator_access_control/models/access_request.rb', line 116

def extend_duration
  @extend_duration
end

#freeform_tagsHash<String, String>

Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only.

Returns:

  • (Hash<String, String>)


185
186
187
# File 'lib/oci/operator_access_control/models/access_request.rb', line 185

def freeform_tags
  @freeform_tags
end

#idString

**[Required]** The OCID of the access request.

Returns:

  • (String)


64
65
66
# File 'lib/oci/operator_access_control/models/access_request.rb', line 64

def id
  @id
end

#is_auto_approvedBOOLEAN

Whether the access request was automatically approved.

Returns:

  • (BOOLEAN)


126
127
128
# File 'lib/oci/operator_access_control/models/access_request.rb', line 126

def is_auto_approved
  @is_auto_approved
end

#lifecycle_stateString

The current state of the AccessRequest.

Returns:

  • (String)


130
131
132
# File 'lib/oci/operator_access_control/models/access_request.rb', line 130

def lifecycle_state
  @lifecycle_state
end

#opctl_additional_messageString

Additional message specific to the access request that can be specified by the approver at the time of approval.

Returns:

  • (String)


173
174
175
# File 'lib/oci/operator_access_control/models/access_request.rb', line 173

def opctl_additional_message
  @opctl_additional_message
end

#opctl_idString

The OCID of the operator control governing the target resource.

Returns:

  • (String)


161
162
163
# File 'lib/oci/operator_access_control/models/access_request.rb', line 161

def opctl_id
  @opctl_id
end

#opctl_nameString

Name of the Operator control governing the target resource.

Returns:

  • (String)


165
166
167
# File 'lib/oci/operator_access_control/models/access_request.rb', line 165

def opctl_name
  @opctl_name
end

#operator_idString

A unique identifier associated with the operator who raised the request. This identifier can not be used directly to identify the operator. You need to provide this identifier if you would like Oracle to provide additional information about the operator action within Oracle tenancy.

Returns:

  • (String)


78
79
80
# File 'lib/oci/operator_access_control/models/access_request.rb', line 78

def operator_id
  @operator_id
end

#reasonString

Summary reason for which the operator is requesting access on the target resource.

Returns:

  • (String)


104
105
106
# File 'lib/oci/operator_access_control/models/access_request.rb', line 104

def reason
  @reason
end

#request_idString

This is an automatic identifier generated by the system which is easier for human comprehension.

Returns:

  • (String)


68
69
70
# File 'lib/oci/operator_access_control/models/access_request.rb', line 68

def request_id
  @request_id
end

#resource_idString

**[Required]** The OCID of the target resource associated with the access request. The operator raises an access request to get approval to access the target resource.

Returns:

  • (String)


84
85
86
# File 'lib/oci/operator_access_control/models/access_request.rb', line 84

def resource_id
  @resource_id
end

#resource_nameString

The name of the target resource.

Returns:

  • (String)


88
89
90
# File 'lib/oci/operator_access_control/models/access_request.rb', line 88

def resource_name
  @resource_name
end

#resource_typeString

resourceType for which the AccessRequest is applicable

Returns:

  • (String)


96
97
98
# File 'lib/oci/operator_access_control/models/access_request.rb', line 96

def resource_type
  @resource_type
end

#severityString

Priority assigned to the access request by the operator

Returns:

  • (String)


108
109
110
# File 'lib/oci/operator_access_control/models/access_request.rb', line 108

def severity
  @severity
end

#system_messageString

System message that will be displayed to the operator at login to the target resource.

Returns:

  • (String)


169
170
171
# File 'lib/oci/operator_access_control/models/access_request.rb', line 169

def system_message
  @system_message
end

#time_of_creationDateTime

Time when the access request was created in [RFC 3339](tools.ietf.org/html/rfc3339)timestamp format. Example: '2020-05-22T21:10:29.600Z'

Returns:

  • (DateTime)


135
136
137
# File 'lib/oci/operator_access_control/models/access_request.rb', line 135

def time_of_creation
  @time_of_creation
end

#time_of_modificationDateTime

Time when the access request was last modified in [RFC 3339](tools.ietf.org/html/rfc3339)timestamp format. Example: '2020-05-22T21:10:29.600Z'

Returns:

  • (DateTime)


140
141
142
# File 'lib/oci/operator_access_control/models/access_request.rb', line 140

def time_of_modification
  @time_of_modification
end

#time_of_user_creationDateTime

The time when access request is scheduled to be approved in [RFC 3339](tools.ietf.org/html/rfc3339) timestamp format.Example: '2020-05-22T21:10:29.600Z'

Returns:

  • (DateTime)


145
146
147
# File 'lib/oci/operator_access_control/models/access_request.rb', line 145

def time_of_user_creation
  @time_of_user_creation
end

#user_idString

The OCID of the user that last modified the access request.

Returns:

  • (String)


149
150
151
# File 'lib/oci/operator_access_control/models/access_request.rb', line 149

def user_id
  @user_id
end

#workflow_idArray<String>

The OCID of the workflow associated with the access request. This is needed if you want to contact Oracle Support for a stuck access request or for an access request that encounters an internal error.

Returns:

  • (Array<String>)


122
123
124
# File 'lib/oci/operator_access_control/models/access_request.rb', line 122

def workflow_id
  @workflow_id
end

Class Method Details

.attribute_mapObject

Attribute mapping from ruby-style variable name to JSON key.



193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
# File 'lib/oci/operator_access_control/models/access_request.rb', line 193

def self.attribute_map
  {
    # rubocop:disable Style/SymbolLiteral
    'id': :'id',
    'request_id': :'requestId',
    'access_reason_summary': :'accessReasonSummary',
    'operator_id': :'operatorId',
    'resource_id': :'resourceId',
    'resource_name': :'resourceName',
    'compartment_id': :'compartmentId',
    'resource_type': :'resourceType',
    'action_requests_list': :'actionRequestsList',
    'reason': :'reason',
    'severity': :'severity',
    'duration': :'duration',
    'extend_duration': :'extendDuration',
    'workflow_id': :'workflowId',
    'is_auto_approved': :'isAutoApproved',
    'lifecycle_state': :'lifecycleState',
    'time_of_creation': :'timeOfCreation',
    'time_of_modification': :'timeOfModification',
    'time_of_user_creation': :'timeOfUserCreation',
    'user_id': :'userId',
    'approver_comment': :'approverComment',
    'closure_comment': :'closureComment',
    'opctl_id': :'opctlId',
    'opctl_name': :'opctlName',
    'system_message': :'systemMessage',
    'opctl_additional_message': :'opctlAdditionalMessage',
    'audit_type': :'auditType',
    'freeform_tags': :'freeformTags',
    'defined_tags': :'definedTags'
    # rubocop:enable Style/SymbolLiteral
  }
end

.swagger_typesObject

Attribute type mapping.



230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
# File 'lib/oci/operator_access_control/models/access_request.rb', line 230

def self.swagger_types
  {
    # rubocop:disable Style/SymbolLiteral
    'id': :'String',
    'request_id': :'String',
    'access_reason_summary': :'String',
    'operator_id': :'String',
    'resource_id': :'String',
    'resource_name': :'String',
    'compartment_id': :'String',
    'resource_type': :'String',
    'action_requests_list': :'Array<String>',
    'reason': :'String',
    'severity': :'String',
    'duration': :'Integer',
    'extend_duration': :'Integer',
    'workflow_id': :'Array<String>',
    'is_auto_approved': :'BOOLEAN',
    'lifecycle_state': :'String',
    'time_of_creation': :'DateTime',
    'time_of_modification': :'DateTime',
    'time_of_user_creation': :'DateTime',
    'user_id': :'String',
    'approver_comment': :'String',
    'closure_comment': :'String',
    'opctl_id': :'String',
    'opctl_name': :'String',
    'system_message': :'String',
    'opctl_additional_message': :'String',
    'audit_type': :'Array<String>',
    'freeform_tags': :'Hash<String, String>',
    'defined_tags': :'Hash<String, Hash<String, Object>>'
    # rubocop:enable Style/SymbolLiteral
  }
end

Instance Method Details

#==(other) ⇒ Object

Checks equality by comparing each attribute.

Parameters:

  • other (Object)

    the other object to be compared



512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
# File 'lib/oci/operator_access_control/models/access_request.rb', line 512

def ==(other)
  return true if equal?(other)

  self.class == other.class &&
    id == other.id &&
    request_id == other.request_id &&
    access_reason_summary == other.access_reason_summary &&
    operator_id == other.operator_id &&
    resource_id == other.resource_id &&
    resource_name == other.resource_name &&
    compartment_id == other.compartment_id &&
    resource_type == other.resource_type &&
    action_requests_list == other.action_requests_list &&
    reason == other.reason &&
    severity == other.severity &&
    duration == other.duration &&
    extend_duration == other.extend_duration &&
    workflow_id == other.workflow_id &&
    is_auto_approved == other.is_auto_approved &&
    lifecycle_state == other.lifecycle_state &&
    time_of_creation == other.time_of_creation &&
    time_of_modification == other.time_of_modification &&
    time_of_user_creation == other.time_of_user_creation &&
    user_id == other.user_id &&
    approver_comment == other.approver_comment &&
    closure_comment == other.closure_comment &&
    opctl_id == other.opctl_id &&
    opctl_name == other.opctl_name &&
    system_message == other.system_message &&
    opctl_additional_message == other.opctl_additional_message &&
    audit_type == other.audit_type &&
    freeform_tags == other.freeform_tags &&
    defined_tags == other.defined_tags
end

#build_from_hash(attributes) ⇒ Object

Builds the object from hash

Parameters:

  • attributes (Hash)

    Model attributes in the form of hash

Returns:

  • (Object)

    Returns the model itself



570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
# File 'lib/oci/operator_access_control/models/access_request.rb', line 570

def build_from_hash(attributes)
  return nil unless attributes.is_a?(Hash)

  self.class.swagger_types.each_pair do |key, type|
    if type =~ /^Array<(.*)>/i
      # check to ensure the input is an array given that the the attribute
      # is documented as an array but the input is not
      if attributes[self.class.attribute_map[key]].is_a?(Array)
        public_method("#{key}=").call(
          attributes[self.class.attribute_map[key]]
            .map { |v| OCI::Internal::Util.convert_to_type(Regexp.last_match(1), v) }
        )
      end
    elsif !attributes[self.class.attribute_map[key]].nil?
      public_method("#{key}=").call(
        OCI::Internal::Util.convert_to_type(type, attributes[self.class.attribute_map[key]])
      )
    end
    # or else data not found in attributes(hash), not an issue as the data can be optional
  end

  self
end

#eql?(other) ⇒ Boolean

Parameters:

  • other (Object)

    the other object to be compared

Returns:

  • (Boolean)

See Also:

  • `==` method


550
551
552
# File 'lib/oci/operator_access_control/models/access_request.rb', line 550

def eql?(other)
  self == other
end

#hashFixnum

Calculates hash code according to all attributes.

Returns:

  • (Fixnum)

    Hash code



559
560
561
# File 'lib/oci/operator_access_control/models/access_request.rb', line 559

def hash
  [id, request_id, access_reason_summary, operator_id, resource_id, resource_name, compartment_id, resource_type, action_requests_list, reason, severity, duration, extend_duration, workflow_id, is_auto_approved, lifecycle_state, time_of_creation, time_of_modification, time_of_user_creation, user_id, approver_comment, closure_comment, opctl_id, opctl_name, system_message, opctl_additional_message, audit_type, freeform_tags, defined_tags].hash
end

#to_hashHash

Returns the object in the form of hash

Returns:

  • (Hash)

    Returns the object in the form of hash



603
604
605
606
607
608
609
610
611
612
# File 'lib/oci/operator_access_control/models/access_request.rb', line 603

def to_hash
  hash = {}
  self.class.attribute_map.each_pair do |attr, param|
    value = public_method(attr).call
    next if value.nil? && !instance_variable_defined?("@#{attr}")

    hash[param] = _to_hash(value)
  end
  hash
end

#to_sString

Returns the string representation of the object

Returns:

  • (String)

    String presentation of the object



597
598
599
# File 'lib/oci/operator_access_control/models/access_request.rb', line 597

def to_s
  to_hash.to_s
end