oci 2.23.0 → 2.24.0

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 (243) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +9 -1
  3. data/lib/oci/analytics/analytics.rb +5 -0
  4. data/lib/oci/analytics/analytics_client.rb +422 -52
  5. data/lib/oci/analytics/analytics_client_composite_operations.rb +188 -27
  6. data/lib/oci/analytics/models/analytics_instance.rb +32 -15
  7. data/lib/oci/analytics/models/analytics_instance_summary.rb +9 -8
  8. data/lib/oci/analytics/models/capacity.rb +2 -2
  9. data/lib/oci/analytics/models/change_analytics_instance_network_endpoint_details.rb +1 -1
  10. data/lib/oci/analytics/models/create_analytics_instance_details.rb +8 -6
  11. data/lib/oci/analytics/models/create_private_access_channel_details.rb +9 -9
  12. data/lib/oci/analytics/models/create_resource_group_details.rb +190 -0
  13. data/lib/oci/analytics/models/create_vanity_url_details.rb +5 -5
  14. data/lib/oci/analytics/models/feature_bundle.rb +1 -0
  15. data/lib/oci/analytics/models/instance_resource_group.rb +200 -0
  16. data/lib/oci/analytics/models/instance_resource_group_summary.rb +200 -0
  17. data/lib/oci/analytics/models/private_access_channel.rb +13 -13
  18. data/lib/oci/analytics/models/private_endpoint_details.rb +1 -1
  19. data/lib/oci/analytics/models/private_source_dns_zone.rb +3 -3
  20. data/lib/oci/analytics/models/private_source_scan_host.rb +4 -4
  21. data/lib/oci/analytics/models/public_endpoint_details.rb +1 -1
  22. data/lib/oci/analytics/models/resource_group_sort_by.rb +17 -0
  23. data/lib/oci/analytics/models/set_feature_bundle_details.rb +1 -0
  24. data/lib/oci/analytics/models/set_kms_key_details.rb +2 -2
  25. data/lib/oci/analytics/models/update_analytics_instance_details.rb +3 -3
  26. data/lib/oci/analytics/models/update_private_access_channel_details.rb +9 -9
  27. data/lib/oci/analytics/models/update_resource_group_details.rb +190 -0
  28. data/lib/oci/analytics/models/update_vanity_url_details.rb +4 -4
  29. data/lib/oci/analytics/models/vanity_url_details.rb +5 -5
  30. data/lib/oci/analytics/models/work_request.rb +4 -0
  31. data/lib/oci/analytics/models/work_request_action_result.rb +4 -1
  32. data/lib/oci/analytics/models/work_request_error.rb +2 -2
  33. data/lib/oci/analytics/models/work_request_log.rb +1 -1
  34. data/lib/oci/analytics/models/work_request_operation_type.rb +5 -1
  35. data/lib/oci/analytics/models/work_request_resource.rb +4 -1
  36. data/lib/oci/analytics/models/work_request_summary.rb +4 -0
  37. data/lib/oci/apiaccesscontrol/api_metadata_client.rb +8 -6
  38. data/lib/oci/apiaccesscontrol/apiaccesscontrol.rb +1 -0
  39. data/lib/oci/apiaccesscontrol/models/api_metadata.rb +12 -2
  40. data/lib/oci/apiaccesscontrol/models/api_metadata_by_entity_type_summary.rb +15 -1
  41. data/lib/oci/apiaccesscontrol/models/approver_detail.rb +15 -1
  42. data/lib/oci/apiaccesscontrol/models/approver_group_level.rb +169 -0
  43. data/lib/oci/apiaccesscontrol/models/create_privileged_api_control_details.rb +17 -3
  44. data/lib/oci/apiaccesscontrol/models/create_privileged_api_request_details.rb +1 -1
  45. data/lib/oci/apiaccesscontrol/models/privileged_api_control.rb +15 -2
  46. data/lib/oci/apiaccesscontrol/models/privileged_api_control_summary.rb +0 -1
  47. data/lib/oci/apiaccesscontrol/models/update_privileged_api_control_details.rb +16 -2
  48. data/lib/oci/apiaccesscontrol/privileged_api_control_client.rb +4 -3
  49. data/lib/oci/apiaccesscontrol/privileged_api_requests_client.rb +4 -3
  50. data/lib/oci/apiaccesscontrol/privileged_api_work_request_client.rb +4 -3
  51. data/lib/oci/core/core.rb +5 -0
  52. data/lib/oci/core/models/boot_volume_backup.rb +87 -4
  53. data/lib/oci/core/models/create_boot_volume_backup_details.rb +59 -4
  54. data/lib/oci/core/models/create_cross_connect_details.rb +50 -1
  55. data/lib/oci/core/models/create_cross_connect_group_details.rb +71 -4
  56. data/lib/oci/core/models/create_dedicated_vm_host_details.rb +21 -4
  57. data/lib/oci/core/models/create_virtual_circuit_details.rb +63 -4
  58. data/lib/oci/core/models/create_volume_backup_details.rb +59 -4
  59. data/lib/oci/core/models/create_volume_group_backup_details.rb +59 -4
  60. data/lib/oci/core/models/cross_connect.rb +43 -1
  61. data/lib/oci/core/models/cross_connect_group.rb +63 -4
  62. data/lib/oci/core/models/dedicated_vm_host.rb +18 -1
  63. data/lib/oci/core/models/dedicated_vm_host_instance_summary.rb +18 -1
  64. data/lib/oci/core/models/dedicated_vm_host_summary.rb +18 -1
  65. data/lib/oci/core/models/instances.rb +140 -0
  66. data/lib/oci/core/models/letter_of_authority.rb +31 -4
  67. data/lib/oci/core/models/loa_extension_data.rb +170 -0
  68. data/lib/oci/core/models/provider_remote_region_name.rb +174 -0
  69. data/lib/oci/core/models/retention_duration.rb +189 -0
  70. data/lib/oci/core/models/supported_capabilities.rb +21 -4
  71. data/lib/oci/core/models/update_boot_volume_backup_details.rb +59 -4
  72. data/lib/oci/core/models/update_cross_connect_details.rb +32 -4
  73. data/lib/oci/core/models/update_cross_connect_group_details.rb +49 -4
  74. data/lib/oci/core/models/update_cross_connect_letter_of_authority_details.rb +195 -0
  75. data/lib/oci/core/models/update_virtual_circuit_details.rb +30 -1
  76. data/lib/oci/core/models/update_volume_backup_details.rb +59 -4
  77. data/lib/oci/core/models/update_volume_group_backup_details.rb +59 -4
  78. data/lib/oci/core/models/virtual_circuit.rb +80 -1
  79. data/lib/oci/core/models/volume_backup.rb +87 -4
  80. data/lib/oci/core/models/volume_backup_schedule.rb +45 -4
  81. data/lib/oci/core/models/volume_group_backup.rb +73 -4
  82. data/lib/oci/core/virtual_network_client.rb +136 -2
  83. data/lib/oci/database/database.rb +13 -0
  84. data/lib/oci/database/database_client.rb +923 -111
  85. data/lib/oci/database/database_client_composite_operations.rb +283 -0
  86. data/lib/oci/database/models/basecc_vm_cluster.rb +713 -0
  87. data/lib/oci/database/models/basecc_vm_cluster_summary.rb +716 -0
  88. data/lib/oci/database/models/basecc_vm_cluster_update.rb +342 -0
  89. data/lib/oci/database/models/basecc_vm_cluster_update_details.rb +198 -0
  90. data/lib/oci/database/models/basecc_vm_cluster_update_history_entry.rb +318 -0
  91. data/lib/oci/database/models/basecc_vm_cluster_update_history_entry_summary.rb +321 -0
  92. data/lib/oci/database/models/basecc_vm_cluster_update_summary.rb +349 -0
  93. data/lib/oci/database/models/change_basecc_vm_cluster_compartment_details.rb +156 -0
  94. data/lib/oci/database/models/cloud_vm_cluster.rb +28 -1
  95. data/lib/oci/database/models/cloud_vm_cluster_summary.rb +28 -1
  96. data/lib/oci/database/models/create_basecc_vm_cluster_details.rb +506 -0
  97. data/lib/oci/database/models/create_database_software_image_details.rb +2 -1
  98. data/lib/oci/database/models/database_software_image.rb +1 -0
  99. data/lib/oci/database/models/database_software_image_summary.rb +1 -0
  100. data/lib/oci/database/models/exadata_live_image_version_details.rb +216 -0
  101. data/lib/oci/database/models/exadb_vm_cluster.rb +53 -4
  102. data/lib/oci/database/models/exadb_vm_cluster_summary.rb +53 -4
  103. data/lib/oci/database/models/register_exadb_vm_cluster_pkcs_details.rb +171 -0
  104. data/lib/oci/database/models/unregister_exadb_vm_cluster_pkcs_details.rb +171 -0
  105. data/lib/oci/database/models/update.rb +94 -1
  106. data/lib/oci/database/models/update_basecc_vm_cluster_details.rb +345 -0
  107. data/lib/oci/database/models/update_details.rb +33 -1
  108. data/lib/oci/database/models/update_history_entry.rb +39 -1
  109. data/lib/oci/database/models/update_history_entry_summary.rb +39 -1
  110. data/lib/oci/database/models/update_summary.rb +94 -1
  111. data/lib/oci/database/models/vm_cluster.rb +28 -1
  112. data/lib/oci/database/models/vm_cluster_summary.rb +28 -1
  113. data/lib/oci/database/models/vm_cluster_update.rb +94 -1
  114. data/lib/oci/database/models/vm_cluster_update_details.rb +33 -1
  115. data/lib/oci/database/models/vm_cluster_update_history_entry.rb +39 -1
  116. data/lib/oci/database/models/vm_cluster_update_history_entry_summary.rb +39 -1
  117. data/lib/oci/database/models/vm_cluster_update_summary.rb +94 -1
  118. data/lib/oci/file_storage/models/file_system.rb +37 -4
  119. data/lib/oci/file_storage/models/file_system_summary.rb +37 -4
  120. data/lib/oci/file_storage/models/snapshot.rb +19 -4
  121. data/lib/oci/file_storage/models/snapshot_summary.rb +19 -4
  122. data/lib/oci/generative_ai/models/create_dedicated_ai_cluster_details.rb +3 -0
  123. data/lib/oci/generative_ai/models/dedicated_ai_cluster.rb +2 -0
  124. data/lib/oci/golden_gate/golden_gate.rb +29 -0
  125. data/lib/oci/golden_gate/golden_gate_client.rb +185 -6
  126. data/lib/oci/golden_gate/models/ai_model_auth_details.rb +194 -0
  127. data/lib/oci/golden_gate/models/ai_model_auth_details_summary.rb +194 -0
  128. data/lib/oci/golden_gate/models/ai_model_auth_type.rb +13 -0
  129. data/lib/oci/golden_gate/models/ai_model_collection.rb +153 -0
  130. data/lib/oci/golden_gate/models/ai_model_connection.rb +350 -0
  131. data/lib/oci/golden_gate/models/ai_model_connection_summary.rb +333 -0
  132. data/lib/oci/golden_gate/models/ai_model_summary.rb +216 -0
  133. data/lib/oci/golden_gate/models/ai_provider_collection.rb +153 -0
  134. data/lib/oci/golden_gate/models/ai_provider_summary.rb +249 -0
  135. data/lib/oci/golden_gate/models/amazon_kinesis_connection.rb +1 -0
  136. data/lib/oci/golden_gate/models/amazon_kinesis_connection_summary.rb +1 -0
  137. data/lib/oci/golden_gate/models/amazon_s3_connection.rb +1 -1
  138. data/lib/oci/golden_gate/models/amazon_s3_connection_summary.rb +1 -1
  139. data/lib/oci/golden_gate/models/amazon_s3_iceberg_storage.rb +1 -0
  140. data/lib/oci/golden_gate/models/amazon_s3_iceberg_storage_summary.rb +1 -0
  141. data/lib/oci/golden_gate/models/api_key_ai_model_auth_details.rb +199 -0
  142. data/lib/oci/golden_gate/models/api_key_ai_model_auth_details_summary.rb +181 -0
  143. data/lib/oci/golden_gate/models/connection.rb +43 -6
  144. data/lib/oci/golden_gate/models/connection_assignment.rb +63 -1
  145. data/lib/oci/golden_gate/models/connection_assignment_summary.rb +64 -1
  146. data/lib/oci/golden_gate/models/connection_summary.rb +42 -6
  147. data/lib/oci/golden_gate/models/connection_type.rb +2 -1
  148. data/lib/oci/golden_gate/models/create_ai_model_auth_details.rb +187 -0
  149. data/lib/oci/golden_gate/models/create_ai_model_connection_details.rb +298 -0
  150. data/lib/oci/golden_gate/models/create_amazon_kinesis_connection_details.rb +4 -1
  151. data/lib/oci/golden_gate/models/create_amazon_redshift_connection_details.rb +3 -1
  152. data/lib/oci/golden_gate/models/create_amazon_s3_connection_details.rb +5 -3
  153. data/lib/oci/golden_gate/models/create_amazon_s3_iceberg_storage_details.rb +5 -2
  154. data/lib/oci/golden_gate/models/create_api_key_ai_model_auth_details.rb +199 -0
  155. data/lib/oci/golden_gate/models/create_azure_data_lake_storage_connection_details.rb +9 -3
  156. data/lib/oci/golden_gate/models/create_azure_data_lake_storage_iceberg_storage_details.rb +3 -1
  157. data/lib/oci/golden_gate/models/create_azure_synapse_connection_details.rb +3 -1
  158. data/lib/oci/golden_gate/models/create_connection_details.rb +43 -7
  159. data/lib/oci/golden_gate/models/create_database_registration_details.rb +6 -2
  160. data/lib/oci/golden_gate/models/create_databricks_connection_details.rb +6 -2
  161. data/lib/oci/golden_gate/models/create_db2_connection_details.rb +9 -3
  162. data/lib/oci/golden_gate/models/create_elasticsearch_connection_details.rb +3 -1
  163. data/lib/oci/golden_gate/models/create_golden_gate_connection_details.rb +3 -1
  164. data/lib/oci/golden_gate/models/create_google_big_query_connection_details.rb +3 -1
  165. data/lib/oci/golden_gate/models/create_google_cloud_storage_connection_details.rb +3 -1
  166. data/lib/oci/golden_gate/models/create_google_cloud_storage_iceberg_storage_details.rb +3 -1
  167. data/lib/oci/golden_gate/models/create_google_pub_sub_connection_details.rb +3 -1
  168. data/lib/oci/golden_gate/models/create_iceberg_connection_details.rb +1 -0
  169. data/lib/oci/golden_gate/models/create_iceberg_storage_details.rb +5 -1
  170. data/lib/oci/golden_gate/models/create_java_message_service_connection_details.rb +21 -7
  171. data/lib/oci/golden_gate/models/create_kafka_connection_details.rb +18 -6
  172. data/lib/oci/golden_gate/models/create_kafka_schema_registry_connection_details.rb +18 -6
  173. data/lib/oci/golden_gate/models/create_microsoft_fabric_connection_details.rb +3 -1
  174. data/lib/oci/golden_gate/models/create_microsoft_sqlserver_connection_details.rb +3 -1
  175. data/lib/oci/golden_gate/models/create_mongo_db_connection_details.rb +9 -3
  176. data/lib/oci/golden_gate/models/create_mysql_connection_details.rb +6 -2
  177. data/lib/oci/golden_gate/models/create_no_iceberg_storage_details.rb +148 -0
  178. data/lib/oci/golden_gate/models/create_oci_gen_ai_model_auth_details.rb +242 -0
  179. data/lib/oci/golden_gate/models/create_oci_object_storage_connection_details.rb +6 -2
  180. data/lib/oci/golden_gate/models/create_oci_object_storage_s3_api_iceberg_storage_details.rb +228 -0
  181. data/lib/oci/golden_gate/models/create_oracle_ai_data_platform_connection_details.rb +6 -2
  182. data/lib/oci/golden_gate/models/create_oracle_connection_details.rb +7 -3
  183. data/lib/oci/golden_gate/models/create_oracle_nosql_connection_details.rb +6 -2
  184. data/lib/oci/golden_gate/models/create_postgresql_connection_details.rb +6 -2
  185. data/lib/oci/golden_gate/models/create_redis_connection_details.rb +15 -5
  186. data/lib/oci/golden_gate/models/create_snowflake_connection_details.rb +9 -3
  187. data/lib/oci/golden_gate/models/deployment_type_summary.rb +1 -0
  188. data/lib/oci/golden_gate/models/iceberg_connection.rb +1 -0
  189. data/lib/oci/golden_gate/models/iceberg_connection_summary.rb +1 -0
  190. data/lib/oci/golden_gate/models/iceberg_storage.rb +4 -0
  191. data/lib/oci/golden_gate/models/iceberg_storage_summary.rb +4 -0
  192. data/lib/oci/golden_gate/models/iceberg_storage_type.rb +3 -1
  193. data/lib/oci/golden_gate/models/kafka_connection.rb +1 -0
  194. data/lib/oci/golden_gate/models/no_iceberg_storage.rb +148 -0
  195. data/lib/oci/golden_gate/models/no_iceberg_storage_summary.rb +148 -0
  196. data/lib/oci/golden_gate/models/oci_gen_ai_model_auth_details.rb +242 -0
  197. data/lib/oci/golden_gate/models/oci_gen_ai_model_auth_details_summary.rb +224 -0
  198. data/lib/oci/golden_gate/models/oci_object_storage_s3_api_iceberg_storage.rb +209 -0
  199. data/lib/oci/golden_gate/models/oci_object_storage_s3_api_iceberg_storage_summary.rb +209 -0
  200. data/lib/oci/golden_gate/models/oracle_connection.rb +4 -1
  201. data/lib/oci/golden_gate/models/oracle_connection_summary.rb +1 -1
  202. data/lib/oci/golden_gate/models/technology_type.rb +6 -1
  203. data/lib/oci/golden_gate/models/update_ai_model_auth_details.rb +187 -0
  204. data/lib/oci/golden_gate/models/update_ai_model_connection_details.rb +237 -0
  205. data/lib/oci/golden_gate/models/update_amazon_kinesis_connection_details.rb +4 -1
  206. data/lib/oci/golden_gate/models/update_amazon_redshift_connection_details.rb +3 -1
  207. data/lib/oci/golden_gate/models/update_amazon_s3_connection_details.rb +5 -3
  208. data/lib/oci/golden_gate/models/update_amazon_s3_iceberg_storage_details.rb +5 -2
  209. data/lib/oci/golden_gate/models/update_api_key_ai_model_auth_details.rb +199 -0
  210. data/lib/oci/golden_gate/models/update_azure_data_lake_storage_connection_details.rb +9 -3
  211. data/lib/oci/golden_gate/models/update_azure_data_lake_storage_iceberg_storage_details.rb +3 -1
  212. data/lib/oci/golden_gate/models/update_azure_synapse_connection_details.rb +3 -1
  213. data/lib/oci/golden_gate/models/update_connection_details.rb +43 -7
  214. data/lib/oci/golden_gate/models/update_database_registration_details.rb +6 -2
  215. data/lib/oci/golden_gate/models/update_databricks_connection_details.rb +6 -2
  216. data/lib/oci/golden_gate/models/update_db2_connection_details.rb +9 -3
  217. data/lib/oci/golden_gate/models/update_elasticsearch_connection_details.rb +3 -1
  218. data/lib/oci/golden_gate/models/update_golden_gate_connection_details.rb +3 -1
  219. data/lib/oci/golden_gate/models/update_google_big_query_connection_details.rb +3 -1
  220. data/lib/oci/golden_gate/models/update_google_cloud_storage_connection_details.rb +3 -1
  221. data/lib/oci/golden_gate/models/update_google_cloud_storage_iceberg_storage_details.rb +3 -1
  222. data/lib/oci/golden_gate/models/update_google_pub_sub_connection_details.rb +3 -1
  223. data/lib/oci/golden_gate/models/update_iceberg_storage_details.rb +5 -1
  224. data/lib/oci/golden_gate/models/update_java_message_service_connection_details.rb +21 -7
  225. data/lib/oci/golden_gate/models/update_kafka_connection_details.rb +18 -6
  226. data/lib/oci/golden_gate/models/update_kafka_schema_registry_connection_details.rb +18 -6
  227. data/lib/oci/golden_gate/models/update_microsoft_fabric_connection_details.rb +3 -1
  228. data/lib/oci/golden_gate/models/update_microsoft_sqlserver_connection_details.rb +3 -1
  229. data/lib/oci/golden_gate/models/update_mongo_db_connection_details.rb +9 -3
  230. data/lib/oci/golden_gate/models/update_mysql_connection_details.rb +6 -2
  231. data/lib/oci/golden_gate/models/update_no_iceberg_storage_details.rb +148 -0
  232. data/lib/oci/golden_gate/models/update_oci_gen_ai_model_auth_details.rb +242 -0
  233. data/lib/oci/golden_gate/models/update_oci_object_storage_connection_details.rb +6 -2
  234. data/lib/oci/golden_gate/models/update_oci_object_storage_s3_api_iceberg_storage_details.rb +228 -0
  235. data/lib/oci/golden_gate/models/update_oracle_ai_data_platform_connection_details.rb +6 -2
  236. data/lib/oci/golden_gate/models/update_oracle_connection_details.rb +7 -3
  237. data/lib/oci/golden_gate/models/update_oracle_nosql_connection_details.rb +6 -2
  238. data/lib/oci/golden_gate/models/update_postgresql_connection_details.rb +6 -2
  239. data/lib/oci/golden_gate/models/update_redis_connection_details.rb +15 -5
  240. data/lib/oci/golden_gate/models/update_snowflake_connection_details.rb +9 -3
  241. data/lib/oci/regions.rb +8 -1
  242. data/lib/oci/version.rb +1 -1
  243. metadata +55 -2
@@ -24,7 +24,7 @@ module OCI
24
24
  # @return [Array<String>]
25
25
  attr_accessor :resources
26
26
 
27
- # The OCID of the OCI Notification topic to publish messages related to this Delegation Control.
27
+ # The OCID of the OCI Notification topic to publish messages related to this Privileged Api Control.
28
28
  # @return [String]
29
29
  attr_accessor :notification_topic_id
30
30
 
@@ -32,6 +32,10 @@ module OCI
32
32
  # @return [Array<String>]
33
33
  attr_accessor :approver_group_id_list
34
34
 
35
+ # List of Group containing the levels at which the users belonging to the group can authorize.
36
+ # @return [Array<OCI::Apiaccesscontrol::Models::ApproverGroupLevel>]
37
+ attr_accessor :approver_group_level_list
38
+
35
39
  # List of privileged operator operations. If Privileged API Managment is enabled for a resource it will be validated whether the operation done by the operator is a part of privileged operation.
36
40
  #
37
41
  # @return [Array<OCI::Apiaccesscontrol::Models::PrivilegedApiDetails>]
@@ -67,6 +71,7 @@ module OCI
67
71
  'resources': :'resources',
68
72
  'notification_topic_id': :'notificationTopicId',
69
73
  'approver_group_id_list': :'approverGroupIdList',
74
+ 'approver_group_level_list': :'approverGroupLevelList',
70
75
  'privileged_operation_list': :'privilegedOperationList',
71
76
  'number_of_approvers': :'numberOfApprovers',
72
77
  'freeform_tags': :'freeformTags',
@@ -85,6 +90,7 @@ module OCI
85
90
  'resources': :'Array<String>',
86
91
  'notification_topic_id': :'String',
87
92
  'approver_group_id_list': :'Array<String>',
93
+ 'approver_group_level_list': :'Array<OCI::Apiaccesscontrol::Models::ApproverGroupLevel>',
88
94
  'privileged_operation_list': :'Array<OCI::Apiaccesscontrol::Models::PrivilegedApiDetails>',
89
95
  'number_of_approvers': :'Integer',
90
96
  'freeform_tags': :'Hash<String, String>',
@@ -105,6 +111,7 @@ module OCI
105
111
  # @option attributes [Array<String>] :resources The value to assign to the {#resources} property
106
112
  # @option attributes [String] :notification_topic_id The value to assign to the {#notification_topic_id} property
107
113
  # @option attributes [Array<String>] :approver_group_id_list The value to assign to the {#approver_group_id_list} property
114
+ # @option attributes [Array<OCI::Apiaccesscontrol::Models::ApproverGroupLevel>] :approver_group_level_list The value to assign to the {#approver_group_level_list} property
108
115
  # @option attributes [Array<OCI::Apiaccesscontrol::Models::PrivilegedApiDetails>] :privileged_operation_list The value to assign to the {#privileged_operation_list} property
109
116
  # @option attributes [Integer] :number_of_approvers The value to assign to the {#number_of_approvers} property
110
117
  # @option attributes [Hash<String, String>] :freeform_tags The value to assign to the {#freeform_tags} property
@@ -143,6 +150,12 @@ module OCI
143
150
 
144
151
  self.approver_group_id_list = attributes[:'approver_group_id_list'] if attributes[:'approver_group_id_list']
145
152
 
153
+ self.approver_group_level_list = attributes[:'approverGroupLevelList'] if attributes[:'approverGroupLevelList']
154
+
155
+ raise 'You cannot provide both :approverGroupLevelList and :approver_group_level_list' if attributes.key?(:'approverGroupLevelList') && attributes.key?(:'approver_group_level_list')
156
+
157
+ self.approver_group_level_list = attributes[:'approver_group_level_list'] if attributes[:'approver_group_level_list']
158
+
146
159
  self.privileged_operation_list = attributes[:'privilegedOperationList'] if attributes[:'privilegedOperationList']
147
160
 
148
161
  raise 'You cannot provide both :privilegedOperationList and :privileged_operation_list' if attributes.key?(:'privilegedOperationList') && attributes.key?(:'privileged_operation_list')
@@ -185,6 +198,7 @@ module OCI
185
198
  resources == other.resources &&
186
199
  notification_topic_id == other.notification_topic_id &&
187
200
  approver_group_id_list == other.approver_group_id_list &&
201
+ approver_group_level_list == other.approver_group_level_list &&
188
202
  privileged_operation_list == other.privileged_operation_list &&
189
203
  number_of_approvers == other.number_of_approvers &&
190
204
  freeform_tags == other.freeform_tags &&
@@ -204,7 +218,7 @@ module OCI
204
218
  # Calculates hash code according to all attributes.
205
219
  # @return [Fixnum] Hash code
206
220
  def hash
207
- [display_name, description, resource_type, resources, notification_topic_id, approver_group_id_list, privileged_operation_list, number_of_approvers, freeform_tags, defined_tags].hash
221
+ [display_name, description, resource_type, resources, notification_topic_id, approver_group_id_list, approver_group_level_list, privileged_operation_list, number_of_approvers, freeform_tags, defined_tags].hash
208
222
  end
209
223
  # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
210
224
 
@@ -371,10 +371,10 @@ module OCI
371
371
 
372
372
  # Gets a list of PrivilegedApiControls.
373
373
  #
374
+ # @param [String] compartment_id The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment in which to list resources.
374
375
  # @param [Hash] opts the optional parameters
375
376
  # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
376
377
  # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
377
- # @option opts [String] :compartment_id The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment in which to list resources.
378
378
  # @option opts [String] :id The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the PrivilegedApiControl.
379
379
  # @option opts [String] :lifecycle_state A filter to return only resources that match the given lifecycle state. The
380
380
  # state value is case-insensitive.
@@ -401,9 +401,10 @@ module OCI
401
401
  #
402
402
  # @return [Response] A Response object with data of type {OCI::Apiaccesscontrol::Models::PrivilegedApiControlCollection PrivilegedApiControlCollection}
403
403
  # @note Click [here](https://docs.cloud.oracle.com/en-us/iaas/tools/ruby-sdk-examples/latest/apiaccesscontrol/list_privileged_api_controls.rb.html) to see an example of how to use list_privileged_api_controls API.
404
- def list_privileged_api_controls(opts = {})
404
+ def list_privileged_api_controls(compartment_id, opts = {})
405
405
  logger.debug 'Calling operation PrivilegedApiControlClient#list_privileged_api_controls.' if logger
406
406
 
407
+ raise "Missing the required parameter 'compartment_id' when calling list_privileged_api_controls." if compartment_id.nil?
407
408
 
408
409
  if opts[:lifecycle_state] && !OCI::Apiaccesscontrol::Models::PrivilegedApiControl::LIFECYCLE_STATE_ENUM.include?(opts[:lifecycle_state])
409
410
  raise 'Invalid value for "lifecycle_state", must be one of the values in OCI::Apiaccesscontrol::Models::PrivilegedApiControl::LIFECYCLE_STATE_ENUM.'
@@ -423,7 +424,7 @@ module OCI
423
424
  # rubocop:disable Style/NegatedIf
424
425
  # Query Params
425
426
  query_params = {}
426
- query_params[:compartmentId] = opts[:compartment_id] if opts[:compartment_id]
427
+ query_params[:compartmentId] = compartment_id
427
428
  query_params[:id] = opts[:id] if opts[:id]
428
429
  query_params[:lifecycleState] = opts[:lifecycle_state] if opts[:lifecycle_state]
429
430
  query_params[:displayName] = opts[:display_name] if opts[:display_name]
@@ -379,10 +379,10 @@ module OCI
379
379
 
380
380
  # Lists all privilegedApi requests in the compartment.
381
381
  #
382
+ # @param [String] compartment_id The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment in which to list resources.
382
383
  # @param [Hash] opts the optional parameters
383
384
  # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
384
385
  # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
385
- # @option opts [String] :compartment_id The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment in which to list resources.
386
386
  # @option opts [String] :id The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the PrivilegedApiRequest.
387
387
  # @option opts [String] :display_name A filter to return only resources that match the given display name exactly.
388
388
  # @option opts [String] :resource_id The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the resource .
@@ -413,9 +413,10 @@ module OCI
413
413
  #
414
414
  # @return [Response] A Response object with data of type {OCI::Apiaccesscontrol::Models::PrivilegedApiRequestCollection PrivilegedApiRequestCollection}
415
415
  # @note Click [here](https://docs.cloud.oracle.com/en-us/iaas/tools/ruby-sdk-examples/latest/apiaccesscontrol/list_privileged_api_requests.rb.html) to see an example of how to use list_privileged_api_requests API.
416
- def list_privileged_api_requests(opts = {})
416
+ def list_privileged_api_requests(compartment_id, opts = {})
417
417
  logger.debug 'Calling operation PrivilegedApiRequestsClient#list_privileged_api_requests.' if logger
418
418
 
419
+ raise "Missing the required parameter 'compartment_id' when calling list_privileged_api_requests." if compartment_id.nil?
419
420
 
420
421
  if opts[:lifecycle_state] && !OCI::Apiaccesscontrol::Models::PrivilegedApiRequest::LIFECYCLE_STATE_ENUM.include?(opts[:lifecycle_state])
421
422
  raise 'Invalid value for "lifecycle_state", must be one of the values in OCI::Apiaccesscontrol::Models::PrivilegedApiRequest::LIFECYCLE_STATE_ENUM.'
@@ -439,7 +440,7 @@ module OCI
439
440
  # rubocop:disable Style/NegatedIf
440
441
  # Query Params
441
442
  query_params = {}
442
- query_params[:compartmentId] = opts[:compartment_id] if opts[:compartment_id]
443
+ query_params[:compartmentId] = compartment_id
443
444
  query_params[:id] = opts[:id] if opts[:id]
444
445
  query_params[:displayName] = opts[:display_name] if opts[:display_name]
445
446
  query_params[:resourceId] = opts[:resource_id] if opts[:resource_id]
@@ -394,10 +394,10 @@ module OCI
394
394
 
395
395
  # Lists the work requests in a compartment.
396
396
  #
397
+ # @param [String] compartment_id The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment in which to list resources.
397
398
  # @param [Hash] opts the optional parameters
398
399
  # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
399
400
  # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
400
- # @option opts [String] :compartment_id The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment in which to list resources.
401
401
  # @option opts [String] :work_request_id The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the asynchronous work request.
402
402
  # @option opts [String] :status A filter to return only the resources that match the given lifecycle state.
403
403
  # @option opts [String] :resource_id The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the resource affected by the work request.
@@ -420,9 +420,10 @@ module OCI
420
420
  # Allowed values are: timeAccepted
421
421
  # @return [Response] A Response object with data of type {OCI::Apiaccesscontrol::Models::WorkRequestSummaryCollection WorkRequestSummaryCollection}
422
422
  # @note Click [here](https://docs.cloud.oracle.com/en-us/iaas/tools/ruby-sdk-examples/latest/apiaccesscontrol/list_work_requests.rb.html) to see an example of how to use list_work_requests API.
423
- def list_work_requests(opts = {})
423
+ def list_work_requests(compartment_id, opts = {})
424
424
  logger.debug 'Calling operation PrivilegedApiWorkRequestClient#list_work_requests.' if logger
425
425
 
426
+ raise "Missing the required parameter 'compartment_id' when calling list_work_requests." if compartment_id.nil?
426
427
 
427
428
  if opts[:status] && !OCI::Apiaccesscontrol::Models::OPERATION_STATUS_ENUM.include?(opts[:status])
428
429
  raise 'Invalid value for "status", must be one of the values in OCI::Apiaccesscontrol::Models::OPERATION_STATUS_ENUM.'
@@ -442,7 +443,7 @@ module OCI
442
443
  # rubocop:disable Style/NegatedIf
443
444
  # Query Params
444
445
  query_params = {}
445
- query_params[:compartmentId] = opts[:compartment_id] if opts[:compartment_id]
446
+ query_params[:compartmentId] = compartment_id
446
447
  query_params[:workRequestId] = opts[:work_request_id] if opts[:work_request_id]
447
448
  query_params[:status] = opts[:status] if opts[:status]
448
449
  query_params[:resourceId] = opts[:resource_id] if opts[:resource_id]
data/lib/oci/core/core.rb CHANGED
@@ -458,6 +458,7 @@ require 'oci/core/models/instance_source_image_filter_details'
458
458
  require 'oci/core/models/instance_source_via_boot_volume_details'
459
459
  require 'oci/core/models/instance_source_via_image_details'
460
460
  require 'oci/core/models/instance_summary'
461
+ require 'oci/core/models/instances'
461
462
  require 'oci/core/models/intel_icelake_bm_launch_instance_platform_config'
462
463
  require 'oci/core/models/intel_icelake_bm_platform_config'
463
464
  require 'oci/core/models/intel_skylake_bm_launch_instance_platform_config'
@@ -499,6 +500,7 @@ require 'oci/core/models/launch_options'
499
500
  require 'oci/core/models/letter_of_authority'
500
501
  require 'oci/core/models/licensing_config'
501
502
  require 'oci/core/models/list_ip_inventory_details'
503
+ require 'oci/core/models/loa_extension_data'
502
504
  require 'oci/core/models/local_peering_gateway'
503
505
  require 'oci/core/models/loop_back_drg_attachment_network_details'
504
506
  require 'oci/core/models/macsec_encryption_cipher'
@@ -536,6 +538,7 @@ require 'oci/core/models/port_range'
536
538
  require 'oci/core/models/preemptible_instance_config_details'
537
539
  require 'oci/core/models/preemption_action'
538
540
  require 'oci/core/models/private_ip'
541
+ require 'oci/core/models/provider_remote_region_name'
539
542
  require 'oci/core/models/public_ip'
540
543
  require 'oci/core/models/public_ip_pool'
541
544
  require 'oci/core/models/public_ip_pool_collection'
@@ -553,6 +556,7 @@ require 'oci/core/models/remove_subnet_ipv6_cidr_details'
553
556
  require 'oci/core/models/remove_vcn_cidr_details'
554
557
  require 'oci/core/models/remove_vcn_ipv6_cidr_details'
555
558
  require 'oci/core/models/reset_action_details'
559
+ require 'oci/core/models/retention_duration'
556
560
  require 'oci/core/models/route_rule'
557
561
  require 'oci/core/models/route_table'
558
562
  require 'oci/core/models/security_list'
@@ -622,6 +626,7 @@ require 'oci/core/models/update_console_history_details'
622
626
  require 'oci/core/models/update_cpe_details'
623
627
  require 'oci/core/models/update_cross_connect_details'
624
628
  require 'oci/core/models/update_cross_connect_group_details'
629
+ require 'oci/core/models/update_cross_connect_letter_of_authority_details'
625
630
  require 'oci/core/models/update_dedicated_capacity_source_details'
626
631
  require 'oci/core/models/update_dedicated_vm_host_details'
627
632
  require 'oci/core/models/update_dhcp_details'
@@ -142,6 +142,29 @@ module OCI
142
142
  # @return [Integer]
143
143
  attr_accessor :unique_size_in_gbs
144
144
 
145
+ # The date and time when a backup\u2019s retention period ends and it is set to expire. This is an optional field. If it is not specified, it is set to null, no retention period will be applied to the backups.
146
+ # @return [DateTime]
147
+ attr_accessor :time_retention_expires_at
148
+
149
+ # @return [OCI::Core::Models::RetentionDuration]
150
+ attr_accessor :retention_period
151
+
152
+ # Prevent backups from being deleted during the configured retention period. This is an optional field. If it is not specified, it is set to null, prevent deletion will not be applied to the backups.
153
+ # @return [BOOLEAN]
154
+ attr_accessor :is_prevent_deletion_enabled
155
+
156
+ # feature that prevents deletion or alteration of backup data for a specified period to ensure data protection and regulatory compliance. This is an optional field. If it is not specified, it is set to null, no retention lock will be applied to the backups. This feature should be used in conjunction with the retention-period field.
157
+ # @return [BOOLEAN]
158
+ attr_accessor :is_retention_lock_enabled
159
+
160
+ # feature that preserves backup data from modification or deletion to ensure it remains available for legal or regulatory investigations or litigation, regardless of standard retention policies. This is an optional field. If it is not specified, it is set to null, no legal hold will be applied to the backups.
161
+ # @return [BOOLEAN]
162
+ attr_accessor :is_indefinite_retention_enabled
163
+
164
+ # The OCID of the volume group backup associated with the backup. This is an optional field. If it is not present in the response, the backup does not belong to a volume group.
165
+ # @return [String]
166
+ attr_accessor :volume_group_backup_id
167
+
145
168
  # Attribute mapping from ruby-style variable name to JSON key.
146
169
  def self.attribute_map
147
170
  {
@@ -163,7 +186,13 @@ module OCI
163
186
  'time_created': :'timeCreated',
164
187
  'time_request_received': :'timeRequestReceived',
165
188
  'type': :'type',
166
- 'unique_size_in_gbs': :'uniqueSizeInGBs'
189
+ 'unique_size_in_gbs': :'uniqueSizeInGBs',
190
+ 'time_retention_expires_at': :'timeRetentionExpiresAt',
191
+ 'retention_period': :'retentionPeriod',
192
+ 'is_prevent_deletion_enabled': :'isPreventDeletionEnabled',
193
+ 'is_retention_lock_enabled': :'isRetentionLockEnabled',
194
+ 'is_indefinite_retention_enabled': :'isIndefiniteRetentionEnabled',
195
+ 'volume_group_backup_id': :'volumeGroupBackupId'
167
196
  # rubocop:enable Style/SymbolLiteral
168
197
  }
169
198
  end
@@ -189,7 +218,13 @@ module OCI
189
218
  'time_created': :'DateTime',
190
219
  'time_request_received': :'DateTime',
191
220
  'type': :'String',
192
- 'unique_size_in_gbs': :'Integer'
221
+ 'unique_size_in_gbs': :'Integer',
222
+ 'time_retention_expires_at': :'DateTime',
223
+ 'retention_period': :'OCI::Core::Models::RetentionDuration',
224
+ 'is_prevent_deletion_enabled': :'BOOLEAN',
225
+ 'is_retention_lock_enabled': :'BOOLEAN',
226
+ 'is_indefinite_retention_enabled': :'BOOLEAN',
227
+ 'volume_group_backup_id': :'String'
193
228
  # rubocop:enable Style/SymbolLiteral
194
229
  }
195
230
  end
@@ -218,6 +253,12 @@ module OCI
218
253
  # @option attributes [DateTime] :time_request_received The value to assign to the {#time_request_received} property
219
254
  # @option attributes [String] :type The value to assign to the {#type} property
220
255
  # @option attributes [Integer] :unique_size_in_gbs The value to assign to the {#unique_size_in_gbs} property
256
+ # @option attributes [DateTime] :time_retention_expires_at The value to assign to the {#time_retention_expires_at} property
257
+ # @option attributes [OCI::Core::Models::RetentionDuration] :retention_period The value to assign to the {#retention_period} property
258
+ # @option attributes [BOOLEAN] :is_prevent_deletion_enabled The value to assign to the {#is_prevent_deletion_enabled} property
259
+ # @option attributes [BOOLEAN] :is_retention_lock_enabled The value to assign to the {#is_retention_lock_enabled} property
260
+ # @option attributes [BOOLEAN] :is_indefinite_retention_enabled The value to assign to the {#is_indefinite_retention_enabled} property
261
+ # @option attributes [String] :volume_group_backup_id The value to assign to the {#volume_group_backup_id} property
221
262
  def initialize(attributes = {})
222
263
  return unless attributes.is_a?(Hash)
223
264
 
@@ -323,6 +364,42 @@ module OCI
323
364
  raise 'You cannot provide both :uniqueSizeInGBs and :unique_size_in_gbs' if attributes.key?(:'uniqueSizeInGBs') && attributes.key?(:'unique_size_in_gbs')
324
365
 
325
366
  self.unique_size_in_gbs = attributes[:'unique_size_in_gbs'] if attributes[:'unique_size_in_gbs']
367
+
368
+ self.time_retention_expires_at = attributes[:'timeRetentionExpiresAt'] if attributes[:'timeRetentionExpiresAt']
369
+
370
+ raise 'You cannot provide both :timeRetentionExpiresAt and :time_retention_expires_at' if attributes.key?(:'timeRetentionExpiresAt') && attributes.key?(:'time_retention_expires_at')
371
+
372
+ self.time_retention_expires_at = attributes[:'time_retention_expires_at'] if attributes[:'time_retention_expires_at']
373
+
374
+ self.retention_period = attributes[:'retentionPeriod'] if attributes[:'retentionPeriod']
375
+
376
+ raise 'You cannot provide both :retentionPeriod and :retention_period' if attributes.key?(:'retentionPeriod') && attributes.key?(:'retention_period')
377
+
378
+ self.retention_period = attributes[:'retention_period'] if attributes[:'retention_period']
379
+
380
+ self.is_prevent_deletion_enabled = attributes[:'isPreventDeletionEnabled'] unless attributes[:'isPreventDeletionEnabled'].nil?
381
+
382
+ raise 'You cannot provide both :isPreventDeletionEnabled and :is_prevent_deletion_enabled' if attributes.key?(:'isPreventDeletionEnabled') && attributes.key?(:'is_prevent_deletion_enabled')
383
+
384
+ self.is_prevent_deletion_enabled = attributes[:'is_prevent_deletion_enabled'] unless attributes[:'is_prevent_deletion_enabled'].nil?
385
+
386
+ self.is_retention_lock_enabled = attributes[:'isRetentionLockEnabled'] unless attributes[:'isRetentionLockEnabled'].nil?
387
+
388
+ raise 'You cannot provide both :isRetentionLockEnabled and :is_retention_lock_enabled' if attributes.key?(:'isRetentionLockEnabled') && attributes.key?(:'is_retention_lock_enabled')
389
+
390
+ self.is_retention_lock_enabled = attributes[:'is_retention_lock_enabled'] unless attributes[:'is_retention_lock_enabled'].nil?
391
+
392
+ self.is_indefinite_retention_enabled = attributes[:'isIndefiniteRetentionEnabled'] unless attributes[:'isIndefiniteRetentionEnabled'].nil?
393
+
394
+ raise 'You cannot provide both :isIndefiniteRetentionEnabled and :is_indefinite_retention_enabled' if attributes.key?(:'isIndefiniteRetentionEnabled') && attributes.key?(:'is_indefinite_retention_enabled')
395
+
396
+ self.is_indefinite_retention_enabled = attributes[:'is_indefinite_retention_enabled'] unless attributes[:'is_indefinite_retention_enabled'].nil?
397
+
398
+ self.volume_group_backup_id = attributes[:'volumeGroupBackupId'] if attributes[:'volumeGroupBackupId']
399
+
400
+ raise 'You cannot provide both :volumeGroupBackupId and :volume_group_backup_id' if attributes.key?(:'volumeGroupBackupId') && attributes.key?(:'volume_group_backup_id')
401
+
402
+ self.volume_group_backup_id = attributes[:'volume_group_backup_id'] if attributes[:'volume_group_backup_id']
326
403
  end
327
404
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
328
405
  # rubocop:enable Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
@@ -392,7 +469,13 @@ module OCI
392
469
  time_created == other.time_created &&
393
470
  time_request_received == other.time_request_received &&
394
471
  type == other.type &&
395
- unique_size_in_gbs == other.unique_size_in_gbs
472
+ unique_size_in_gbs == other.unique_size_in_gbs &&
473
+ time_retention_expires_at == other.time_retention_expires_at &&
474
+ retention_period == other.retention_period &&
475
+ is_prevent_deletion_enabled == other.is_prevent_deletion_enabled &&
476
+ is_retention_lock_enabled == other.is_retention_lock_enabled &&
477
+ is_indefinite_retention_enabled == other.is_indefinite_retention_enabled &&
478
+ volume_group_backup_id == other.volume_group_backup_id
396
479
  end
397
480
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
398
481
 
@@ -408,7 +491,7 @@ module OCI
408
491
  # Calculates hash code according to all attributes.
409
492
  # @return [Fixnum] Hash code
410
493
  def hash
411
- [boot_volume_id, compartment_id, defined_tags, system_tags, display_name, expiration_time, freeform_tags, id, image_id, kms_key_id, lifecycle_state, size_in_gbs, source_boot_volume_backup_id, source_type, time_created, time_request_received, type, unique_size_in_gbs].hash
494
+ [boot_volume_id, compartment_id, defined_tags, system_tags, display_name, expiration_time, freeform_tags, id, image_id, kms_key_id, lifecycle_state, size_in_gbs, source_boot_volume_backup_id, source_type, time_created, time_request_received, type, unique_size_in_gbs, time_retention_expires_at, retention_period, is_prevent_deletion_enabled, is_retention_lock_enabled, is_indefinite_retention_enabled, volume_group_backup_id].hash
412
495
  end
413
496
  # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
414
497
 
@@ -51,6 +51,21 @@ module OCI
51
51
  # @return [String]
52
52
  attr_accessor :kms_key_id
53
53
 
54
+ # @return [OCI::Core::Models::RetentionDuration]
55
+ attr_accessor :retention_period
56
+
57
+ # Prevent backups from being deleted during the configured retention period. This is an optional field. If it is not specified, it is set to null, prevent deletion will not be applied to the backups.
58
+ # @return [BOOLEAN]
59
+ attr_accessor :is_prevent_deletion_enabled
60
+
61
+ # feature that prevents deletion or alteration of backup data for a specified period to ensure data protection and regulatory compliance. This is an optional field. If it is not specified, it is set to null, no retention lock will be applied to the backups. This feature should be used in conjunction with the retention-period field.
62
+ # @return [BOOLEAN]
63
+ attr_accessor :is_retention_lock_enabled
64
+
65
+ # feature that preserves backup data from modification or deletion to ensure it remains available for legal or regulatory investigations or litigation, regardless of standard retention policies. This is an optional field. If it is not specified, it is set to null, no legal hold will be applied to the backups.
66
+ # @return [BOOLEAN]
67
+ attr_accessor :is_indefinite_retention_enabled
68
+
54
69
  # Attribute mapping from ruby-style variable name to JSON key.
55
70
  def self.attribute_map
56
71
  {
@@ -60,7 +75,11 @@ module OCI
60
75
  'display_name': :'displayName',
61
76
  'freeform_tags': :'freeformTags',
62
77
  'type': :'type',
63
- 'kms_key_id': :'kmsKeyId'
78
+ 'kms_key_id': :'kmsKeyId',
79
+ 'retention_period': :'retentionPeriod',
80
+ 'is_prevent_deletion_enabled': :'isPreventDeletionEnabled',
81
+ 'is_retention_lock_enabled': :'isRetentionLockEnabled',
82
+ 'is_indefinite_retention_enabled': :'isIndefiniteRetentionEnabled'
64
83
  # rubocop:enable Style/SymbolLiteral
65
84
  }
66
85
  end
@@ -74,7 +93,11 @@ module OCI
74
93
  'display_name': :'String',
75
94
  'freeform_tags': :'Hash<String, String>',
76
95
  'type': :'String',
77
- 'kms_key_id': :'String'
96
+ 'kms_key_id': :'String',
97
+ 'retention_period': :'OCI::Core::Models::RetentionDuration',
98
+ 'is_prevent_deletion_enabled': :'BOOLEAN',
99
+ 'is_retention_lock_enabled': :'BOOLEAN',
100
+ 'is_indefinite_retention_enabled': :'BOOLEAN'
78
101
  # rubocop:enable Style/SymbolLiteral
79
102
  }
80
103
  end
@@ -91,6 +114,10 @@ module OCI
91
114
  # @option attributes [Hash<String, String>] :freeform_tags The value to assign to the {#freeform_tags} property
92
115
  # @option attributes [String] :type The value to assign to the {#type} property
93
116
  # @option attributes [String] :kms_key_id The value to assign to the {#kms_key_id} property
117
+ # @option attributes [OCI::Core::Models::RetentionDuration] :retention_period The value to assign to the {#retention_period} property
118
+ # @option attributes [BOOLEAN] :is_prevent_deletion_enabled The value to assign to the {#is_prevent_deletion_enabled} property
119
+ # @option attributes [BOOLEAN] :is_retention_lock_enabled The value to assign to the {#is_retention_lock_enabled} property
120
+ # @option attributes [BOOLEAN] :is_indefinite_retention_enabled The value to assign to the {#is_indefinite_retention_enabled} property
94
121
  def initialize(attributes = {})
95
122
  return unless attributes.is_a?(Hash)
96
123
 
@@ -128,6 +155,30 @@ module OCI
128
155
  raise 'You cannot provide both :kmsKeyId and :kms_key_id' if attributes.key?(:'kmsKeyId') && attributes.key?(:'kms_key_id')
129
156
 
130
157
  self.kms_key_id = attributes[:'kms_key_id'] if attributes[:'kms_key_id']
158
+
159
+ self.retention_period = attributes[:'retentionPeriod'] if attributes[:'retentionPeriod']
160
+
161
+ raise 'You cannot provide both :retentionPeriod and :retention_period' if attributes.key?(:'retentionPeriod') && attributes.key?(:'retention_period')
162
+
163
+ self.retention_period = attributes[:'retention_period'] if attributes[:'retention_period']
164
+
165
+ self.is_prevent_deletion_enabled = attributes[:'isPreventDeletionEnabled'] unless attributes[:'isPreventDeletionEnabled'].nil?
166
+
167
+ raise 'You cannot provide both :isPreventDeletionEnabled and :is_prevent_deletion_enabled' if attributes.key?(:'isPreventDeletionEnabled') && attributes.key?(:'is_prevent_deletion_enabled')
168
+
169
+ self.is_prevent_deletion_enabled = attributes[:'is_prevent_deletion_enabled'] unless attributes[:'is_prevent_deletion_enabled'].nil?
170
+
171
+ self.is_retention_lock_enabled = attributes[:'isRetentionLockEnabled'] unless attributes[:'isRetentionLockEnabled'].nil?
172
+
173
+ raise 'You cannot provide both :isRetentionLockEnabled and :is_retention_lock_enabled' if attributes.key?(:'isRetentionLockEnabled') && attributes.key?(:'is_retention_lock_enabled')
174
+
175
+ self.is_retention_lock_enabled = attributes[:'is_retention_lock_enabled'] unless attributes[:'is_retention_lock_enabled'].nil?
176
+
177
+ self.is_indefinite_retention_enabled = attributes[:'isIndefiniteRetentionEnabled'] unless attributes[:'isIndefiniteRetentionEnabled'].nil?
178
+
179
+ raise 'You cannot provide both :isIndefiniteRetentionEnabled and :is_indefinite_retention_enabled' if attributes.key?(:'isIndefiniteRetentionEnabled') && attributes.key?(:'is_indefinite_retention_enabled')
180
+
181
+ self.is_indefinite_retention_enabled = attributes[:'is_indefinite_retention_enabled'] unless attributes[:'is_indefinite_retention_enabled'].nil?
131
182
  end
132
183
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
133
184
  # rubocop:enable Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
@@ -154,7 +205,11 @@ module OCI
154
205
  display_name == other.display_name &&
155
206
  freeform_tags == other.freeform_tags &&
156
207
  type == other.type &&
157
- kms_key_id == other.kms_key_id
208
+ kms_key_id == other.kms_key_id &&
209
+ retention_period == other.retention_period &&
210
+ is_prevent_deletion_enabled == other.is_prevent_deletion_enabled &&
211
+ is_retention_lock_enabled == other.is_retention_lock_enabled &&
212
+ is_indefinite_retention_enabled == other.is_indefinite_retention_enabled
158
213
  end
159
214
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
160
215
 
@@ -170,7 +225,7 @@ module OCI
170
225
  # Calculates hash code according to all attributes.
171
226
  # @return [Fixnum] Hash code
172
227
  def hash
173
- [boot_volume_id, defined_tags, display_name, freeform_tags, type, kms_key_id].hash
228
+ [boot_volume_id, defined_tags, display_name, freeform_tags, type, kms_key_id, retention_period, is_prevent_deletion_enabled, is_retention_lock_enabled, is_indefinite_retention_enabled].hash
174
229
  end
175
230
  # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
176
231
 
@@ -80,6 +80,21 @@ module OCI
80
80
  # @return [OCI::Core::Models::CreateMacsecProperties]
81
81
  attr_accessor :macsec_properties
82
82
 
83
+ # The flag to enable or disable the down timer for the interface.
84
+ # @return [BOOLEAN]
85
+ attr_accessor :is_interface_hold_timer_enabled
86
+
87
+ # The duration of the interface down timer in milliseconds between 0 and 3000 in multiples of 500.
88
+ # @return [Integer]
89
+ attr_accessor :interface_down_timer_value_in_milliseconds
90
+
91
+ # When true, restricts placement so cross-connects lands only on QoS-capable devices.
92
+ # When false (default), placement may use any supported device. If no QoS-capable devices are available
93
+ # in the selected location, the request fails.
94
+ #
95
+ # @return [BOOLEAN]
96
+ attr_accessor :is_qos_enabled
97
+
83
98
  # The name of the FastConnect device where this cross-connect is installed.
84
99
  #
85
100
  # @return [String]
@@ -105,6 +120,9 @@ module OCI
105
120
  'port_speed_shape_name': :'portSpeedShapeName',
106
121
  'customer_reference_name': :'customerReferenceName',
107
122
  'macsec_properties': :'macsecProperties',
123
+ 'is_interface_hold_timer_enabled': :'isInterfaceHoldTimerEnabled',
124
+ 'interface_down_timer_value_in_milliseconds': :'interfaceDownTimerValueInMilliseconds',
125
+ 'is_qos_enabled': :'isQosEnabled',
108
126
  'oci_physical_device_name': :'ociPhysicalDeviceName',
109
127
  'interface_name': :'interfaceName'
110
128
  # rubocop:enable Style/SymbolLiteral
@@ -126,6 +144,9 @@ module OCI
126
144
  'port_speed_shape_name': :'String',
127
145
  'customer_reference_name': :'String',
128
146
  'macsec_properties': :'OCI::Core::Models::CreateMacsecProperties',
147
+ 'is_interface_hold_timer_enabled': :'BOOLEAN',
148
+ 'interface_down_timer_value_in_milliseconds': :'Integer',
149
+ 'is_qos_enabled': :'BOOLEAN',
129
150
  'oci_physical_device_name': :'String',
130
151
  'interface_name': :'String'
131
152
  # rubocop:enable Style/SymbolLiteral
@@ -149,6 +170,9 @@ module OCI
149
170
  # @option attributes [String] :port_speed_shape_name The value to assign to the {#port_speed_shape_name} property
150
171
  # @option attributes [String] :customer_reference_name The value to assign to the {#customer_reference_name} property
151
172
  # @option attributes [OCI::Core::Models::CreateMacsecProperties] :macsec_properties The value to assign to the {#macsec_properties} property
173
+ # @option attributes [BOOLEAN] :is_interface_hold_timer_enabled The value to assign to the {#is_interface_hold_timer_enabled} property
174
+ # @option attributes [Integer] :interface_down_timer_value_in_milliseconds The value to assign to the {#interface_down_timer_value_in_milliseconds} property
175
+ # @option attributes [BOOLEAN] :is_qos_enabled The value to assign to the {#is_qos_enabled} property
152
176
  # @option attributes [String] :oci_physical_device_name The value to assign to the {#oci_physical_device_name} property
153
177
  # @option attributes [String] :interface_name The value to assign to the {#interface_name} property
154
178
  def initialize(attributes = {})
@@ -223,6 +247,28 @@ module OCI
223
247
 
224
248
  self.macsec_properties = attributes[:'macsec_properties'] if attributes[:'macsec_properties']
225
249
 
250
+ self.is_interface_hold_timer_enabled = attributes[:'isInterfaceHoldTimerEnabled'] unless attributes[:'isInterfaceHoldTimerEnabled'].nil?
251
+ self.is_interface_hold_timer_enabled = false if is_interface_hold_timer_enabled.nil? && !attributes.key?(:'isInterfaceHoldTimerEnabled') # rubocop:disable Style/StringLiterals
252
+
253
+ raise 'You cannot provide both :isInterfaceHoldTimerEnabled and :is_interface_hold_timer_enabled' if attributes.key?(:'isInterfaceHoldTimerEnabled') && attributes.key?(:'is_interface_hold_timer_enabled')
254
+
255
+ self.is_interface_hold_timer_enabled = attributes[:'is_interface_hold_timer_enabled'] unless attributes[:'is_interface_hold_timer_enabled'].nil?
256
+ self.is_interface_hold_timer_enabled = false if is_interface_hold_timer_enabled.nil? && !attributes.key?(:'isInterfaceHoldTimerEnabled') && !attributes.key?(:'is_interface_hold_timer_enabled') # rubocop:disable Style/StringLiterals
257
+
258
+ self.interface_down_timer_value_in_milliseconds = attributes[:'interfaceDownTimerValueInMilliseconds'] if attributes[:'interfaceDownTimerValueInMilliseconds']
259
+
260
+ raise 'You cannot provide both :interfaceDownTimerValueInMilliseconds and :interface_down_timer_value_in_milliseconds' if attributes.key?(:'interfaceDownTimerValueInMilliseconds') && attributes.key?(:'interface_down_timer_value_in_milliseconds')
261
+
262
+ self.interface_down_timer_value_in_milliseconds = attributes[:'interface_down_timer_value_in_milliseconds'] if attributes[:'interface_down_timer_value_in_milliseconds']
263
+
264
+ self.is_qos_enabled = attributes[:'isQosEnabled'] unless attributes[:'isQosEnabled'].nil?
265
+ self.is_qos_enabled = false if is_qos_enabled.nil? && !attributes.key?(:'isQosEnabled') # rubocop:disable Style/StringLiterals
266
+
267
+ raise 'You cannot provide both :isQosEnabled and :is_qos_enabled' if attributes.key?(:'isQosEnabled') && attributes.key?(:'is_qos_enabled')
268
+
269
+ self.is_qos_enabled = attributes[:'is_qos_enabled'] unless attributes[:'is_qos_enabled'].nil?
270
+ self.is_qos_enabled = false if is_qos_enabled.nil? && !attributes.key?(:'isQosEnabled') && !attributes.key?(:'is_qos_enabled') # rubocop:disable Style/StringLiterals
271
+
226
272
  self.oci_physical_device_name = attributes[:'ociPhysicalDeviceName'] if attributes[:'ociPhysicalDeviceName']
227
273
 
228
274
  raise 'You cannot provide both :ociPhysicalDeviceName and :oci_physical_device_name' if attributes.key?(:'ociPhysicalDeviceName') && attributes.key?(:'oci_physical_device_name')
@@ -258,6 +304,9 @@ module OCI
258
304
  port_speed_shape_name == other.port_speed_shape_name &&
259
305
  customer_reference_name == other.customer_reference_name &&
260
306
  macsec_properties == other.macsec_properties &&
307
+ is_interface_hold_timer_enabled == other.is_interface_hold_timer_enabled &&
308
+ interface_down_timer_value_in_milliseconds == other.interface_down_timer_value_in_milliseconds &&
309
+ is_qos_enabled == other.is_qos_enabled &&
261
310
  oci_physical_device_name == other.oci_physical_device_name &&
262
311
  interface_name == other.interface_name
263
312
  end
@@ -275,7 +324,7 @@ module OCI
275
324
  # Calculates hash code according to all attributes.
276
325
  # @return [Fixnum] Hash code
277
326
  def hash
278
- [compartment_id, cross_connect_group_id, defined_tags, display_name, far_cross_connect_or_cross_connect_group_id, freeform_tags, location_name, near_cross_connect_or_cross_connect_group_id, port_speed_shape_name, customer_reference_name, macsec_properties, oci_physical_device_name, interface_name].hash
327
+ [compartment_id, cross_connect_group_id, defined_tags, display_name, far_cross_connect_or_cross_connect_group_id, freeform_tags, location_name, near_cross_connect_or_cross_connect_group_id, port_speed_shape_name, customer_reference_name, macsec_properties, is_interface_hold_timer_enabled, interface_down_timer_value_in_milliseconds, is_qos_enabled, oci_physical_device_name, interface_name].hash
279
328
  end
280
329
  # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
281
330