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
@@ -98,6 +98,25 @@ module OCI
98
98
  # @return [String]
99
99
  attr_accessor :oci_logical_device_name
100
100
 
101
+ # Minimum number of active cross-connects required for the cross-connect group to be considered operational.
102
+ # If the number of active cross-connects falls below this value, the group is not considered operational.
103
+ # If this value was not explicitly set when the group was created or updated, it defaults to 1.
104
+ #
105
+ # @return [Integer]
106
+ attr_accessor :minimum_links
107
+
108
+ # The flag to enable or disable the down timer for the interface.
109
+ # @return [BOOLEAN]
110
+ attr_accessor :is_interface_hold_timer_enabled
111
+
112
+ # The duration of the interface down timer in milliseconds between 0 and 3000 in multiples of 500.
113
+ # @return [Integer]
114
+ attr_accessor :interface_down_timer_value_in_milliseconds
115
+
116
+ # The flag to enable or disable the Qos for the cross-connect-group.
117
+ # @return [BOOLEAN]
118
+ attr_accessor :is_qos_enabled
119
+
101
120
  # Attribute mapping from ruby-style variable name to JSON key.
102
121
  def self.attribute_map
103
122
  {
@@ -113,7 +132,11 @@ module OCI
113
132
  'time_created': :'timeCreated',
114
133
  'macsec_properties': :'macsecProperties',
115
134
  'oci_physical_device_name': :'ociPhysicalDeviceName',
116
- 'oci_logical_device_name': :'ociLogicalDeviceName'
135
+ 'oci_logical_device_name': :'ociLogicalDeviceName',
136
+ 'minimum_links': :'minimumLinks',
137
+ 'is_interface_hold_timer_enabled': :'isInterfaceHoldTimerEnabled',
138
+ 'interface_down_timer_value_in_milliseconds': :'interfaceDownTimerValueInMilliseconds',
139
+ 'is_qos_enabled': :'isQosEnabled'
117
140
  # rubocop:enable Style/SymbolLiteral
118
141
  }
119
142
  end
@@ -133,7 +156,11 @@ module OCI
133
156
  'time_created': :'DateTime',
134
157
  'macsec_properties': :'OCI::Core::Models::MacsecProperties',
135
158
  'oci_physical_device_name': :'String',
136
- 'oci_logical_device_name': :'String'
159
+ 'oci_logical_device_name': :'String',
160
+ 'minimum_links': :'Integer',
161
+ 'is_interface_hold_timer_enabled': :'BOOLEAN',
162
+ 'interface_down_timer_value_in_milliseconds': :'Integer',
163
+ 'is_qos_enabled': :'BOOLEAN'
137
164
  # rubocop:enable Style/SymbolLiteral
138
165
  }
139
166
  end
@@ -156,6 +183,10 @@ module OCI
156
183
  # @option attributes [OCI::Core::Models::MacsecProperties] :macsec_properties The value to assign to the {#macsec_properties} property
157
184
  # @option attributes [String] :oci_physical_device_name The value to assign to the {#oci_physical_device_name} property
158
185
  # @option attributes [String] :oci_logical_device_name The value to assign to the {#oci_logical_device_name} property
186
+ # @option attributes [Integer] :minimum_links The value to assign to the {#minimum_links} property
187
+ # @option attributes [BOOLEAN] :is_interface_hold_timer_enabled The value to assign to the {#is_interface_hold_timer_enabled} property
188
+ # @option attributes [Integer] :interface_down_timer_value_in_milliseconds The value to assign to the {#interface_down_timer_value_in_milliseconds} property
189
+ # @option attributes [BOOLEAN] :is_qos_enabled The value to assign to the {#is_qos_enabled} property
159
190
  def initialize(attributes = {})
160
191
  return unless attributes.is_a?(Hash)
161
192
 
@@ -229,6 +260,30 @@ module OCI
229
260
  raise 'You cannot provide both :ociLogicalDeviceName and :oci_logical_device_name' if attributes.key?(:'ociLogicalDeviceName') && attributes.key?(:'oci_logical_device_name')
230
261
 
231
262
  self.oci_logical_device_name = attributes[:'oci_logical_device_name'] if attributes[:'oci_logical_device_name']
263
+
264
+ self.minimum_links = attributes[:'minimumLinks'] if attributes[:'minimumLinks']
265
+
266
+ raise 'You cannot provide both :minimumLinks and :minimum_links' if attributes.key?(:'minimumLinks') && attributes.key?(:'minimum_links')
267
+
268
+ self.minimum_links = attributes[:'minimum_links'] if attributes[:'minimum_links']
269
+
270
+ self.is_interface_hold_timer_enabled = attributes[:'isInterfaceHoldTimerEnabled'] unless attributes[:'isInterfaceHoldTimerEnabled'].nil?
271
+
272
+ raise 'You cannot provide both :isInterfaceHoldTimerEnabled and :is_interface_hold_timer_enabled' if attributes.key?(:'isInterfaceHoldTimerEnabled') && attributes.key?(:'is_interface_hold_timer_enabled')
273
+
274
+ self.is_interface_hold_timer_enabled = attributes[:'is_interface_hold_timer_enabled'] unless attributes[:'is_interface_hold_timer_enabled'].nil?
275
+
276
+ self.interface_down_timer_value_in_milliseconds = attributes[:'interfaceDownTimerValueInMilliseconds'] if attributes[:'interfaceDownTimerValueInMilliseconds']
277
+
278
+ 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')
279
+
280
+ self.interface_down_timer_value_in_milliseconds = attributes[:'interface_down_timer_value_in_milliseconds'] if attributes[:'interface_down_timer_value_in_milliseconds']
281
+
282
+ self.is_qos_enabled = attributes[:'isQosEnabled'] unless attributes[:'isQosEnabled'].nil?
283
+
284
+ raise 'You cannot provide both :isQosEnabled and :is_qos_enabled' if attributes.key?(:'isQosEnabled') && attributes.key?(:'is_qos_enabled')
285
+
286
+ self.is_qos_enabled = attributes[:'is_qos_enabled'] unless attributes[:'is_qos_enabled'].nil?
232
287
  end
233
288
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
234
289
  # rubocop:enable Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
@@ -266,7 +321,11 @@ module OCI
266
321
  time_created == other.time_created &&
267
322
  macsec_properties == other.macsec_properties &&
268
323
  oci_physical_device_name == other.oci_physical_device_name &&
269
- oci_logical_device_name == other.oci_logical_device_name
324
+ oci_logical_device_name == other.oci_logical_device_name &&
325
+ minimum_links == other.minimum_links &&
326
+ is_interface_hold_timer_enabled == other.is_interface_hold_timer_enabled &&
327
+ interface_down_timer_value_in_milliseconds == other.interface_down_timer_value_in_milliseconds &&
328
+ is_qos_enabled == other.is_qos_enabled
270
329
  end
271
330
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
272
331
 
@@ -282,7 +341,7 @@ module OCI
282
341
  # Calculates hash code according to all attributes.
283
342
  # @return [Fixnum] Hash code
284
343
  def hash
285
- [compartment_id, defined_tags, display_name, freeform_tags, id, system_tags, lifecycle_state, customer_reference_name, time_created, macsec_properties, oci_physical_device_name, oci_logical_device_name].hash
344
+ [compartment_id, defined_tags, display_name, freeform_tags, id, system_tags, lifecycle_state, customer_reference_name, time_created, macsec_properties, oci_physical_device_name, oci_logical_device_name, minimum_links, is_interface_hold_timer_enabled, interface_down_timer_value_in_milliseconds, is_qos_enabled].hash
286
345
  end
287
346
  # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
288
347
 
@@ -91,6 +91,11 @@ module OCI
91
91
  # @return [BOOLEAN]
92
92
  attr_accessor :is_memory_encryption_enabled
93
93
 
94
+ # Specifies if the Dedicated Virtual Machine Host (DVMH) is to running only Burstable VMs. If `true`, only Burstable VMs can be launched. If `false`, Burstable VMs cannot be launched.
95
+ #
96
+ # @return [BOOLEAN]
97
+ attr_accessor :is_burstable
98
+
94
99
  # **[Required]** The current state of the dedicated VM host.
95
100
  #
96
101
  # @return [String]
@@ -158,6 +163,7 @@ module OCI
158
163
  'id': :'id',
159
164
  'capacity_config': :'capacityConfig',
160
165
  'is_memory_encryption_enabled': :'isMemoryEncryptionEnabled',
166
+ 'is_burstable': :'isBurstable',
161
167
  'lifecycle_state': :'lifecycleState',
162
168
  'time_created': :'timeCreated',
163
169
  'total_ocpus': :'totalOcpus',
@@ -187,6 +193,7 @@ module OCI
187
193
  'id': :'String',
188
194
  'capacity_config': :'String',
189
195
  'is_memory_encryption_enabled': :'BOOLEAN',
196
+ 'is_burstable': :'BOOLEAN',
190
197
  'lifecycle_state': :'String',
191
198
  'time_created': :'DateTime',
192
199
  'total_ocpus': :'Float',
@@ -218,6 +225,7 @@ module OCI
218
225
  # @option attributes [String] :id The value to assign to the {#id} property
219
226
  # @option attributes [String] :capacity_config The value to assign to the {#capacity_config} property
220
227
  # @option attributes [BOOLEAN] :is_memory_encryption_enabled The value to assign to the {#is_memory_encryption_enabled} property
228
+ # @option attributes [BOOLEAN] :is_burstable The value to assign to the {#is_burstable} property
221
229
  # @option attributes [String] :lifecycle_state The value to assign to the {#lifecycle_state} property
222
230
  # @option attributes [DateTime] :time_created The value to assign to the {#time_created} property
223
231
  # @option attributes [Float] :total_ocpus The value to assign to the {#total_ocpus} property
@@ -298,6 +306,14 @@ module OCI
298
306
  self.is_memory_encryption_enabled = attributes[:'is_memory_encryption_enabled'] unless attributes[:'is_memory_encryption_enabled'].nil?
299
307
  self.is_memory_encryption_enabled = false if is_memory_encryption_enabled.nil? && !attributes.key?(:'isMemoryEncryptionEnabled') && !attributes.key?(:'is_memory_encryption_enabled') # rubocop:disable Style/StringLiterals
300
308
 
309
+ self.is_burstable = attributes[:'isBurstable'] unless attributes[:'isBurstable'].nil?
310
+ self.is_burstable = false if is_burstable.nil? && !attributes.key?(:'isBurstable') # rubocop:disable Style/StringLiterals
311
+
312
+ raise 'You cannot provide both :isBurstable and :is_burstable' if attributes.key?(:'isBurstable') && attributes.key?(:'is_burstable')
313
+
314
+ self.is_burstable = attributes[:'is_burstable'] unless attributes[:'is_burstable'].nil?
315
+ self.is_burstable = false if is_burstable.nil? && !attributes.key?(:'isBurstable') && !attributes.key?(:'is_burstable') # rubocop:disable Style/StringLiterals
316
+
301
317
  self.lifecycle_state = attributes[:'lifecycleState'] if attributes[:'lifecycleState']
302
318
 
303
319
  raise 'You cannot provide both :lifecycleState and :lifecycle_state' if attributes.key?(:'lifecycleState') && attributes.key?(:'lifecycle_state')
@@ -394,6 +410,7 @@ module OCI
394
410
  id == other.id &&
395
411
  capacity_config == other.capacity_config &&
396
412
  is_memory_encryption_enabled == other.is_memory_encryption_enabled &&
413
+ is_burstable == other.is_burstable &&
397
414
  lifecycle_state == other.lifecycle_state &&
398
415
  time_created == other.time_created &&
399
416
  total_ocpus == other.total_ocpus &&
@@ -419,7 +436,7 @@ module OCI
419
436
  # Calculates hash code according to all attributes.
420
437
  # @return [Fixnum] Hash code
421
438
  def hash
422
- [availability_domain, compartment_id, dedicated_vm_host_shape, defined_tags, display_name, fault_domain, freeform_tags, placement_constraint_details, id, capacity_config, is_memory_encryption_enabled, lifecycle_state, time_created, total_ocpus, remaining_ocpus, total_memory_in_gbs, remaining_memory_in_gbs, total_local_volume_in_gbs, remaining_local_volume_in_gbs, capacity_bins, compute_bare_metal_host_id].hash
439
+ [availability_domain, compartment_id, dedicated_vm_host_shape, defined_tags, display_name, fault_domain, freeform_tags, placement_constraint_details, id, capacity_config, is_memory_encryption_enabled, is_burstable, lifecycle_state, time_created, total_ocpus, remaining_ocpus, total_memory_in_gbs, remaining_memory_in_gbs, total_local_volume_in_gbs, remaining_local_volume_in_gbs, capacity_bins, compute_bare_metal_host_id].hash
423
440
  end
424
441
  # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
425
442
 
@@ -31,6 +31,11 @@ module OCI
31
31
  # @return [BOOLEAN]
32
32
  attr_accessor :is_memory_encryption_enabled
33
33
 
34
+ # Specifies if the Dedicated Virtual Machine Host (DVMH) is to running only Burstable VMs. If `true`, only Burstable VMs can be launched. If `false`, Burstable VMs cannot be launched.
35
+ #
36
+ # @return [BOOLEAN]
37
+ attr_accessor :is_burstable
38
+
34
39
  # **[Required]** The shape of the VM instance.
35
40
  #
36
41
  # @return [String]
@@ -51,6 +56,7 @@ module OCI
51
56
  'compartment_id': :'compartmentId',
52
57
  'instance_id': :'instanceId',
53
58
  'is_memory_encryption_enabled': :'isMemoryEncryptionEnabled',
59
+ 'is_burstable': :'isBurstable',
54
60
  'shape': :'shape',
55
61
  'time_created': :'timeCreated'
56
62
  # rubocop:enable Style/SymbolLiteral
@@ -65,6 +71,7 @@ module OCI
65
71
  'compartment_id': :'String',
66
72
  'instance_id': :'String',
67
73
  'is_memory_encryption_enabled': :'BOOLEAN',
74
+ 'is_burstable': :'BOOLEAN',
68
75
  'shape': :'String',
69
76
  'time_created': :'DateTime'
70
77
  # rubocop:enable Style/SymbolLiteral
@@ -81,6 +88,7 @@ module OCI
81
88
  # @option attributes [String] :compartment_id The value to assign to the {#compartment_id} property
82
89
  # @option attributes [String] :instance_id The value to assign to the {#instance_id} property
83
90
  # @option attributes [BOOLEAN] :is_memory_encryption_enabled The value to assign to the {#is_memory_encryption_enabled} property
91
+ # @option attributes [BOOLEAN] :is_burstable The value to assign to the {#is_burstable} property
84
92
  # @option attributes [String] :shape The value to assign to the {#shape} property
85
93
  # @option attributes [DateTime] :time_created The value to assign to the {#time_created} property
86
94
  def initialize(attributes = {})
@@ -115,6 +123,14 @@ module OCI
115
123
  self.is_memory_encryption_enabled = attributes[:'is_memory_encryption_enabled'] unless attributes[:'is_memory_encryption_enabled'].nil?
116
124
  self.is_memory_encryption_enabled = false if is_memory_encryption_enabled.nil? && !attributes.key?(:'isMemoryEncryptionEnabled') && !attributes.key?(:'is_memory_encryption_enabled') # rubocop:disable Style/StringLiterals
117
125
 
126
+ self.is_burstable = attributes[:'isBurstable'] unless attributes[:'isBurstable'].nil?
127
+ self.is_burstable = false if is_burstable.nil? && !attributes.key?(:'isBurstable') # rubocop:disable Style/StringLiterals
128
+
129
+ raise 'You cannot provide both :isBurstable and :is_burstable' if attributes.key?(:'isBurstable') && attributes.key?(:'is_burstable')
130
+
131
+ self.is_burstable = attributes[:'is_burstable'] unless attributes[:'is_burstable'].nil?
132
+ self.is_burstable = false if is_burstable.nil? && !attributes.key?(:'isBurstable') && !attributes.key?(:'is_burstable') # rubocop:disable Style/StringLiterals
133
+
118
134
  self.shape = attributes[:'shape'] if attributes[:'shape']
119
135
 
120
136
  self.time_created = attributes[:'timeCreated'] if attributes[:'timeCreated']
@@ -139,6 +155,7 @@ module OCI
139
155
  compartment_id == other.compartment_id &&
140
156
  instance_id == other.instance_id &&
141
157
  is_memory_encryption_enabled == other.is_memory_encryption_enabled &&
158
+ is_burstable == other.is_burstable &&
142
159
  shape == other.shape &&
143
160
  time_created == other.time_created
144
161
  end
@@ -156,7 +173,7 @@ module OCI
156
173
  # Calculates hash code according to all attributes.
157
174
  # @return [Fixnum] Hash code
158
175
  def hash
159
- [availability_domain, compartment_id, instance_id, is_memory_encryption_enabled, shape, time_created].hash
176
+ [availability_domain, compartment_id, instance_id, is_memory_encryption_enabled, is_burstable, shape, time_created].hash
160
177
  end
161
178
  # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
162
179
 
@@ -66,6 +66,11 @@ module OCI
66
66
  # @return [BOOLEAN]
67
67
  attr_accessor :is_memory_encryption_enabled
68
68
 
69
+ # Specifies if the Dedicated Virtual Machine Host (DVMH) is to running only Burstable VMs. If `true`, only Burstable VMs can be launched. If `false`, Burstable VMs cannot be launched.
70
+ #
71
+ # @return [BOOLEAN]
72
+ attr_accessor :is_burstable
73
+
69
74
  # **[Required]** The current state of the dedicated VM host.
70
75
  #
71
76
  # @return [String]
@@ -119,6 +124,7 @@ module OCI
119
124
  'fault_domain': :'faultDomain',
120
125
  'id': :'id',
121
126
  'is_memory_encryption_enabled': :'isMemoryEncryptionEnabled',
127
+ 'is_burstable': :'isBurstable',
122
128
  'lifecycle_state': :'lifecycleState',
123
129
  'time_created': :'timeCreated',
124
130
  'remaining_ocpus': :'remainingOcpus',
@@ -142,6 +148,7 @@ module OCI
142
148
  'fault_domain': :'String',
143
149
  'id': :'String',
144
150
  'is_memory_encryption_enabled': :'BOOLEAN',
151
+ 'is_burstable': :'BOOLEAN',
145
152
  'lifecycle_state': :'String',
146
153
  'time_created': :'DateTime',
147
154
  'remaining_ocpus': :'Float',
@@ -167,6 +174,7 @@ module OCI
167
174
  # @option attributes [String] :fault_domain The value to assign to the {#fault_domain} property
168
175
  # @option attributes [String] :id The value to assign to the {#id} property
169
176
  # @option attributes [BOOLEAN] :is_memory_encryption_enabled The value to assign to the {#is_memory_encryption_enabled} property
177
+ # @option attributes [BOOLEAN] :is_burstable The value to assign to the {#is_burstable} property
170
178
  # @option attributes [String] :lifecycle_state The value to assign to the {#lifecycle_state} property
171
179
  # @option attributes [DateTime] :time_created The value to assign to the {#time_created} property
172
180
  # @option attributes [Float] :remaining_ocpus The value to assign to the {#remaining_ocpus} property
@@ -221,6 +229,14 @@ module OCI
221
229
  self.is_memory_encryption_enabled = attributes[:'is_memory_encryption_enabled'] unless attributes[:'is_memory_encryption_enabled'].nil?
222
230
  self.is_memory_encryption_enabled = false if is_memory_encryption_enabled.nil? && !attributes.key?(:'isMemoryEncryptionEnabled') && !attributes.key?(:'is_memory_encryption_enabled') # rubocop:disable Style/StringLiterals
223
231
 
232
+ self.is_burstable = attributes[:'isBurstable'] unless attributes[:'isBurstable'].nil?
233
+ self.is_burstable = false if is_burstable.nil? && !attributes.key?(:'isBurstable') # rubocop:disable Style/StringLiterals
234
+
235
+ raise 'You cannot provide both :isBurstable and :is_burstable' if attributes.key?(:'isBurstable') && attributes.key?(:'is_burstable')
236
+
237
+ self.is_burstable = attributes[:'is_burstable'] unless attributes[:'is_burstable'].nil?
238
+ self.is_burstable = false if is_burstable.nil? && !attributes.key?(:'isBurstable') && !attributes.key?(:'is_burstable') # rubocop:disable Style/StringLiterals
239
+
224
240
  self.lifecycle_state = attributes[:'lifecycleState'] if attributes[:'lifecycleState']
225
241
 
226
242
  raise 'You cannot provide both :lifecycleState and :lifecycle_state' if attributes.key?(:'lifecycleState') && attributes.key?(:'lifecycle_state')
@@ -301,6 +317,7 @@ module OCI
301
317
  fault_domain == other.fault_domain &&
302
318
  id == other.id &&
303
319
  is_memory_encryption_enabled == other.is_memory_encryption_enabled &&
320
+ is_burstable == other.is_burstable &&
304
321
  lifecycle_state == other.lifecycle_state &&
305
322
  time_created == other.time_created &&
306
323
  remaining_ocpus == other.remaining_ocpus &&
@@ -324,7 +341,7 @@ module OCI
324
341
  # Calculates hash code according to all attributes.
325
342
  # @return [Fixnum] Hash code
326
343
  def hash
327
- [availability_domain, compartment_id, dedicated_vm_host_shape, display_name, fault_domain, id, is_memory_encryption_enabled, lifecycle_state, time_created, remaining_ocpus, total_ocpus, total_memory_in_gbs, remaining_memory_in_gbs, total_local_volume_in_gbs, remaining_local_volume_in_gbs].hash
344
+ [availability_domain, compartment_id, dedicated_vm_host_shape, display_name, fault_domain, id, is_memory_encryption_enabled, is_burstable, lifecycle_state, time_created, remaining_ocpus, total_ocpus, total_memory_in_gbs, remaining_memory_in_gbs, total_local_volume_in_gbs, remaining_local_volume_in_gbs].hash
328
345
  end
329
346
  # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
330
347
 
@@ -0,0 +1,140 @@
1
+ # Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved.
2
+ # This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
3
+
4
+ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918
5
+ require 'date'
6
+
7
+ # rubocop:disable Lint/UnneededCopDisableDirective, Metrics/LineLength
8
+ module OCI
9
+ # SPLAT authorization alias for Compute instance operations that use the downstream instances resource kind.
10
+ class Core::Models::Instances
11
+ # Attribute mapping from ruby-style variable name to JSON key.
12
+ def self.attribute_map
13
+ {
14
+ # rubocop:disable Style/SymbolLiteral
15
+
16
+ # rubocop:enable Style/SymbolLiteral
17
+ }
18
+ end
19
+
20
+ # Attribute type mapping.
21
+ def self.swagger_types
22
+ {
23
+ # rubocop:disable Style/SymbolLiteral
24
+
25
+ # rubocop:enable Style/SymbolLiteral
26
+ }
27
+ end
28
+
29
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
30
+ # rubocop:disable Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
31
+
32
+
33
+ # Initializes the object
34
+ # @param [Hash] attributes Model attributes in the form of hash
35
+ def initialize(attributes = {})
36
+ return unless attributes.is_a?(Hash)
37
+ end
38
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
39
+ # rubocop:enable Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
40
+
41
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
42
+
43
+
44
+ # Checks equality by comparing each attribute.
45
+ # @param [Object] other the other object to be compared
46
+ def ==(other)
47
+ return true if equal?(other)
48
+
49
+ self.class == other.class
50
+ end
51
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
52
+
53
+ # @see the `==` method
54
+ # @param [Object] other the other object to be compared
55
+ def eql?(other)
56
+ self == other
57
+ end
58
+
59
+ # rubocop:disable Metrics/AbcSize, Layout/EmptyLines
60
+
61
+
62
+ # Calculates hash code according to all attributes.
63
+ # @return [Fixnum] Hash code
64
+ def hash
65
+ [].hash
66
+ end
67
+ # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
68
+
69
+ # rubocop:disable Metrics/AbcSize, Layout/EmptyLines
70
+
71
+
72
+ # Builds the object from hash
73
+ # @param [Hash] attributes Model attributes in the form of hash
74
+ # @return [Object] Returns the model itself
75
+ def build_from_hash(attributes)
76
+ return nil unless attributes.is_a?(Hash)
77
+
78
+ self.class.swagger_types.each_pair do |key, type|
79
+ if type =~ /^Array<(.*)>/i
80
+ # check to ensure the input is an array given that the the attribute
81
+ # is documented as an array but the input is not
82
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
83
+ public_method("#{key}=").call(
84
+ attributes[self.class.attribute_map[key]]
85
+ .map { |v| OCI::Internal::Util.convert_to_type(Regexp.last_match(1), v) }
86
+ )
87
+ end
88
+ elsif !attributes[self.class.attribute_map[key]].nil?
89
+ public_method("#{key}=").call(
90
+ OCI::Internal::Util.convert_to_type(type, attributes[self.class.attribute_map[key]])
91
+ )
92
+ end
93
+ # or else data not found in attributes(hash), not an issue as the data can be optional
94
+ end
95
+
96
+ self
97
+ end
98
+ # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
99
+
100
+ # Returns the string representation of the object
101
+ # @return [String] String presentation of the object
102
+ def to_s
103
+ to_hash.to_s
104
+ end
105
+
106
+ # Returns the object in the form of hash
107
+ # @return [Hash] Returns the object in the form of hash
108
+ def to_hash
109
+ hash = {}
110
+ self.class.attribute_map.each_pair do |attr, param|
111
+ value = public_method(attr).call
112
+ next if value.nil? && !instance_variable_defined?("@#{attr}")
113
+
114
+ hash[param] = _to_hash(value)
115
+ end
116
+ hash
117
+ end
118
+
119
+ private
120
+
121
+ # Outputs non-array value in the form of hash
122
+ # For object, use to_hash. Otherwise, just return the value
123
+ # @param [Object] value Any valid value
124
+ # @return [Hash] Returns the value in the form of hash
125
+ def _to_hash(value)
126
+ if value.is_a?(Array)
127
+ value.compact.map { |v| _to_hash(v) }
128
+ elsif value.is_a?(Hash)
129
+ {}.tap do |hash|
130
+ value.each { |k, v| hash[k] = _to_hash(v) }
131
+ end
132
+ elsif value.respond_to? :to_hash
133
+ value.to_hash
134
+ else
135
+ value
136
+ end
137
+ end
138
+ end
139
+ end
140
+ # rubocop:enable Lint/UnneededCopDisableDirective, Metrics/LineLength
@@ -49,6 +49,13 @@ module OCI
49
49
  # @return [DateTime]
50
50
  attr_accessor :time_issued
51
51
 
52
+ # Name of a customer authorized agent which will be appended to the LOA as 'Authorized Agent'.
53
+ # @return [String]
54
+ attr_accessor :authorized_agent
55
+
56
+ # @return [OCI::Core::Models::LoaExtensionData]
57
+ attr_accessor :extension_details
58
+
52
59
  # Attribute mapping from ruby-style variable name to JSON key.
53
60
  def self.attribute_map
54
61
  {
@@ -59,7 +66,9 @@ module OCI
59
66
  'facility_location': :'facilityLocation',
60
67
  'port_name': :'portName',
61
68
  'time_expires': :'timeExpires',
62
- 'time_issued': :'timeIssued'
69
+ 'time_issued': :'timeIssued',
70
+ 'authorized_agent': :'authorizedAgent',
71
+ 'extension_details': :'extensionDetails'
63
72
  # rubocop:enable Style/SymbolLiteral
64
73
  }
65
74
  end
@@ -74,7 +83,9 @@ module OCI
74
83
  'facility_location': :'String',
75
84
  'port_name': :'String',
76
85
  'time_expires': :'DateTime',
77
- 'time_issued': :'DateTime'
86
+ 'time_issued': :'DateTime',
87
+ 'authorized_agent': :'String',
88
+ 'extension_details': :'OCI::Core::Models::LoaExtensionData'
78
89
  # rubocop:enable Style/SymbolLiteral
79
90
  }
80
91
  end
@@ -92,6 +103,8 @@ module OCI
92
103
  # @option attributes [String] :port_name The value to assign to the {#port_name} property
93
104
  # @option attributes [DateTime] :time_expires The value to assign to the {#time_expires} property
94
105
  # @option attributes [DateTime] :time_issued The value to assign to the {#time_issued} property
106
+ # @option attributes [String] :authorized_agent The value to assign to the {#authorized_agent} property
107
+ # @option attributes [OCI::Core::Models::LoaExtensionData] :extension_details The value to assign to the {#extension_details} property
95
108
  def initialize(attributes = {})
96
109
  return unless attributes.is_a?(Hash)
97
110
 
@@ -139,6 +152,18 @@ module OCI
139
152
  raise 'You cannot provide both :timeIssued and :time_issued' if attributes.key?(:'timeIssued') && attributes.key?(:'time_issued')
140
153
 
141
154
  self.time_issued = attributes[:'time_issued'] if attributes[:'time_issued']
155
+
156
+ self.authorized_agent = attributes[:'authorizedAgent'] if attributes[:'authorizedAgent']
157
+
158
+ raise 'You cannot provide both :authorizedAgent and :authorized_agent' if attributes.key?(:'authorizedAgent') && attributes.key?(:'authorized_agent')
159
+
160
+ self.authorized_agent = attributes[:'authorized_agent'] if attributes[:'authorized_agent']
161
+
162
+ self.extension_details = attributes[:'extensionDetails'] if attributes[:'extensionDetails']
163
+
164
+ raise 'You cannot provide both :extensionDetails and :extension_details' if attributes.key?(:'extensionDetails') && attributes.key?(:'extension_details')
165
+
166
+ self.extension_details = attributes[:'extension_details'] if attributes[:'extension_details']
142
167
  end
143
168
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
144
169
  # rubocop:enable Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
@@ -171,7 +196,9 @@ module OCI
171
196
  facility_location == other.facility_location &&
172
197
  port_name == other.port_name &&
173
198
  time_expires == other.time_expires &&
174
- time_issued == other.time_issued
199
+ time_issued == other.time_issued &&
200
+ authorized_agent == other.authorized_agent &&
201
+ extension_details == other.extension_details
175
202
  end
176
203
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
177
204
 
@@ -187,7 +214,7 @@ module OCI
187
214
  # Calculates hash code according to all attributes.
188
215
  # @return [Fixnum] Hash code
189
216
  def hash
190
- [authorized_entity_name, circuit_type, cross_connect_id, facility_location, port_name, time_expires, time_issued].hash
217
+ [authorized_entity_name, circuit_type, cross_connect_id, facility_location, port_name, time_expires, time_issued, authorized_agent, extension_details].hash
191
218
  end
192
219
  # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
193
220