oci 2.11.0 → 2.12.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 (333) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +1 -0
  3. data/lib/oci.rb +1 -0
  4. data/lib/oci/analytics/analytics_client.rb +15 -0
  5. data/lib/oci/announcements_service/announcement_client.rb +4 -0
  6. data/lib/oci/apigateway/api_gateway_client.rb +15 -0
  7. data/lib/oci/apigateway/deployment_client.rb +6 -0
  8. data/lib/oci/apigateway/gateway_client.rb +6 -0
  9. data/lib/oci/apigateway/work_requests_client.rb +5 -0
  10. data/lib/oci/application_migration/application_migration_client.rb +19 -0
  11. data/lib/oci/audit/audit_client.rb +4 -1
  12. data/lib/oci/audit/models/audit_event.rb +8 -7
  13. data/lib/oci/audit/models/data.rb +0 -107
  14. data/lib/oci/audit/models/identity.rb +0 -17
  15. data/lib/oci/audit/models/request.rb +0 -46
  16. data/lib/oci/audit/models/response.rb +0 -34
  17. data/lib/oci/audit/models/state_change.rb +0 -9
  18. data/lib/oci/auth/signers/ephemeral_resource_principals_signer.rb +0 -1
  19. data/lib/oci/auth/signers/resource_principals_signer.rb +1 -1
  20. data/lib/oci/autoscaling/auto_scaling_client.rb +11 -0
  21. data/lib/oci/bds/bds_client.rb +16 -0
  22. data/lib/oci/blockchain/blockchain.rb +1 -0
  23. data/lib/oci/blockchain/blockchain_platform_client.rb +57 -0
  24. data/lib/oci/blockchain/models/blockchain_platform.rb +36 -3
  25. data/lib/oci/blockchain/models/blockchain_platform_by_hostname.rb +1 -1
  26. data/lib/oci/blockchain/models/blockchain_platform_summary.rb +1 -1
  27. data/lib/oci/blockchain/models/create_blockchain_platform_details.rb +2 -2
  28. data/lib/oci/blockchain/models/scaled_blockchain_platform_preview.rb +1 -1
  29. data/lib/oci/blockchain/models/work_request.rb +1 -0
  30. data/lib/oci/blockchain/models/work_request_resource.rb +18 -4
  31. data/lib/oci/blockchain/models/work_request_resource_sub_type_detail.rb +206 -0
  32. data/lib/oci/blockchain/models/work_request_summary.rb +1 -0
  33. data/lib/oci/budget/budget_client.rb +10 -0
  34. data/lib/oci/cims/incident_client.rb +7 -0
  35. data/lib/oci/cims/user_client.rb +1 -0
  36. data/lib/oci/cloud_guard/cloud_guard_client.rb +82 -0
  37. data/lib/oci/cloud_guard/models/rule_summary.rb +1 -0
  38. data/lib/oci/compute_instance_agent/compute_instance_agent_client.rb +6 -0
  39. data/lib/oci/container_engine/container_engine_client.rb +18 -0
  40. data/lib/oci/core/blockstorage_client.rb +53 -0
  41. data/lib/oci/core/compute_client.rb +71 -0
  42. data/lib/oci/core/compute_management_client.rb +28 -0
  43. data/lib/oci/core/virtual_network_client.rb +194 -0
  44. data/lib/oci/data_catalog/data_catalog.rb +5 -0
  45. data/lib/oci/data_catalog/data_catalog_client.rb +307 -4
  46. data/lib/oci/data_catalog/models/attribute.rb +45 -4
  47. data/lib/oci/data_catalog/models/attribute_summary.rb +45 -4
  48. data/lib/oci/data_catalog/models/faceted_search_aggregation.rb +55 -4
  49. data/lib/oci/{database/models/create_autonomous_data_warehouse_backup_details.rb → data_catalog/models/rule_attribute.rb} +25 -18
  50. data/lib/oci/data_catalog/models/rule_collection.rb +161 -0
  51. data/lib/oci/data_catalog/models/rule_origin_type.rb +12 -0
  52. data/lib/oci/data_catalog/models/rule_summary.rb +439 -0
  53. data/lib/oci/data_catalog/models/rule_type.rb +12 -0
  54. data/lib/oci/data_catalog/models/search_result_collection.rb +18 -4
  55. data/lib/oci/data_flow/data_flow_client.rb +24 -0
  56. data/lib/oci/data_integration/data_integration_client.rb +92 -0
  57. data/lib/oci/data_safe/data_safe.rb +8 -0
  58. data/lib/oci/data_safe/data_safe_client.rb +606 -13
  59. data/lib/oci/data_safe/data_safe_client_composite_operations.rb +198 -0
  60. data/lib/oci/data_safe/models/change_on_prem_connector_compartment_details.rb +154 -0
  61. data/lib/oci/data_safe/models/create_data_safe_private_endpoint_details.rb +1 -1
  62. data/lib/oci/{database/models/update_autonomous_data_warehouse_details.rb → data_safe/models/create_on_prem_connector_details.rb} +27 -49
  63. data/lib/oci/data_safe/models/data_safe_configuration.rb +5 -5
  64. data/lib/oci/data_safe/models/data_safe_private_endpoint.rb +2 -2
  65. data/lib/oci/data_safe/models/data_safe_private_endpoint_summary.rb +1 -1
  66. data/lib/oci/data_safe/models/enable_data_safe_configuration_details.rb +6 -40
  67. data/lib/oci/{database/models/generate_autonomous_data_warehouse_wallet_details.rb → data_safe/models/generate_on_prem_connector_configuration_details.rb} +3 -4
  68. data/lib/oci/{database/models/autonomous_data_warehouse_backup_summary.rb → data_safe/models/on_prem_connector.rb} +98 -98
  69. data/lib/oci/data_safe/models/on_prem_connector_lifecycle_state.rb +16 -0
  70. data/lib/oci/{database/models/autonomous_data_warehouse_backup.rb → data_safe/models/on_prem_connector_summary.rb} +90 -99
  71. data/lib/oci/data_safe/models/service_list.rb +1 -0
  72. data/lib/oci/data_safe/models/update_data_safe_private_endpoint_details.rb +1 -1
  73. data/lib/oci/data_safe/models/update_on_prem_connector_details.rb +198 -0
  74. data/lib/oci/data_safe/models/update_on_prem_connector_wallet_details.rb +156 -0
  75. data/lib/oci/data_safe/models/work_request.rb +11 -6
  76. data/lib/oci/data_safe/models/work_request_error.rb +3 -4
  77. data/lib/oci/data_safe/models/work_request_log_entry.rb +3 -3
  78. data/lib/oci/data_safe/models/work_request_summary.rb +13 -8
  79. data/lib/oci/data_science/data_science_client.rb +34 -0
  80. data/lib/oci/database/database.rb +4 -8
  81. data/lib/oci/database/database_client.rb +523 -766
  82. data/lib/oci/database/database_client_composite_operations.rb +1299 -330
  83. data/lib/oci/database/models/activate_exadata_infrastructure_details.rb +2 -1
  84. data/lib/oci/database/models/autonomous_container_database.rb +3 -3
  85. data/lib/oci/database/models/autonomous_container_database_dataguard_association.rb +2 -2
  86. data/lib/oci/database/models/autonomous_container_database_summary.rb +3 -3
  87. data/lib/oci/database/models/autonomous_data_warehouse.rb +8 -21
  88. data/lib/oci/database/models/autonomous_data_warehouse_summary.rb +8 -21
  89. data/lib/oci/database/models/autonomous_database.rb +35 -3
  90. data/lib/oci/database/models/autonomous_database_apex.rb +169 -0
  91. data/lib/oci/database/models/autonomous_database_dataguard_association.rb +2 -2
  92. data/lib/oci/database/models/autonomous_database_summary.rb +35 -3
  93. data/lib/oci/database/models/autonomous_db_preview_version_summary.rb +2 -0
  94. data/lib/oci/database/models/autonomous_db_version_summary.rb +2 -0
  95. data/lib/oci/database/models/backup.rb +19 -5
  96. data/lib/oci/database/models/backup_summary.rb +19 -5
  97. data/lib/oci/database/models/change_cloud_exadata_infrastructure_compartment_details.rb +1 -1
  98. data/lib/oci/database/models/change_cloud_vm_cluster_compartment_details.rb +1 -1
  99. data/lib/oci/database/models/cloud_exadata_infrastructure.rb +2 -1
  100. data/lib/oci/database/models/cloud_exadata_infrastructure_summary.rb +2 -1
  101. data/lib/oci/database/models/cloud_vm_cluster.rb +1 -1
  102. data/lib/oci/database/models/cloud_vm_cluster_summary.rb +1 -1
  103. data/lib/oci/database/models/create_autonomous_container_database_details.rb +1 -1
  104. data/lib/oci/database/models/create_autonomous_database_base.rb +7 -3
  105. data/lib/oci/database/models/create_cloud_exadata_infrastructure_details.rb +1 -1
  106. data/lib/oci/database/models/create_cloud_vm_cluster_details.rb +2 -1
  107. data/lib/oci/database/models/create_database_base.rb +33 -4
  108. data/lib/oci/database/models/create_database_from_backup.rb +9 -1
  109. data/lib/oci/database/models/create_db_home_base.rb +30 -1
  110. data/lib/oci/database/models/create_db_home_with_db_system_id_details.rb +9 -1
  111. data/lib/oci/database/models/create_db_home_with_db_system_id_from_backup_details.rb +9 -1
  112. data/lib/oci/database/models/create_db_home_with_db_system_id_from_database_details.rb +9 -1
  113. data/lib/oci/database/models/create_db_home_with_vm_cluster_id_details.rb +9 -1
  114. data/lib/oci/database/models/create_db_home_with_vm_cluster_id_from_backup_details.rb +9 -1
  115. data/lib/oci/database/models/create_exadata_infrastructure_details.rb +16 -2
  116. data/lib/oci/database/models/create_new_database_details.rb +9 -1
  117. data/lib/oci/database/models/create_vm_cluster_details.rb +2 -1
  118. data/lib/oci/database/models/database.rb +16 -2
  119. data/lib/oci/database/models/database_summary.rb +16 -2
  120. data/lib/oci/database/models/db_home.rb +16 -2
  121. data/lib/oci/database/models/db_home_summary.rb +16 -2
  122. data/lib/oci/database/models/db_system.rb +16 -2
  123. data/lib/oci/database/models/db_system_summary.rb +16 -2
  124. data/lib/oci/database/models/exadata_db_system_migration.rb +1 -1
  125. data/lib/oci/database/models/exadata_db_system_migration_summary.rb +1 -1
  126. data/lib/oci/database/models/exadata_infrastructure.rb +15 -1
  127. data/lib/oci/database/models/exadata_infrastructure_summary.rb +18 -2
  128. data/lib/oci/database/models/flex_component_collection.rb +150 -0
  129. data/lib/oci/database/models/flex_component_summary.rb +197 -0
  130. data/lib/oci/database/models/generate_recommended_network_details.rb +1 -1
  131. data/lib/oci/database/models/launch_db_system_base.rb +30 -1
  132. data/lib/oci/database/models/launch_db_system_details.rb +9 -1
  133. data/lib/oci/database/models/launch_db_system_from_backup_details.rb +9 -1
  134. data/lib/oci/database/models/launch_db_system_from_database_details.rb +9 -1
  135. data/lib/oci/database/models/launch_db_system_from_db_system_details.rb +9 -1
  136. data/lib/oci/database/models/maintenance_run.rb +2 -1
  137. data/lib/oci/database/models/maintenance_run_summary.rb +2 -1
  138. data/lib/oci/database/models/migrate_vault_key_details.rb +170 -0
  139. data/lib/oci/database/models/update_autonomous_container_database_details.rb +1 -1
  140. data/lib/oci/database/models/update_autonomous_database_details.rb +6 -2
  141. data/lib/oci/database/models/update_cloud_exadata_infrastructure_details.rb +1 -1
  142. data/lib/oci/database/models/update_cloud_vm_cluster_details.rb +3 -2
  143. data/lib/oci/database/models/update_database_details.rb +1 -1
  144. data/lib/oci/database/models/update_details.rb +1 -1
  145. data/lib/oci/database/models/update_exadata_infrastructure_details.rb +16 -2
  146. data/lib/oci/database/models/update_history_entry_summary.rb +2 -1
  147. data/lib/oci/database/models/update_summary.rb +1 -1
  148. data/lib/oci/database/models/update_vm_cluster_details.rb +3 -1
  149. data/lib/oci/database/models/update_vm_cluster_network_details.rb +1 -1
  150. data/lib/oci/database/models/vm_cluster.rb +2 -1
  151. data/lib/oci/database/models/vm_cluster_network_details.rb +1 -1
  152. data/lib/oci/database/models/vm_cluster_network_summary.rb +2 -1
  153. data/lib/oci/database/models/vm_cluster_summary.rb +1 -0
  154. data/lib/oci/database/models/vm_network_details.rb +2 -1
  155. data/lib/oci/dns/dns_client.rb +49 -0
  156. data/lib/oci/dts/appliance_export_job_client.rb +6 -0
  157. data/lib/oci/dts/shipping_vendors_client.rb +1 -0
  158. data/lib/oci/dts/transfer_appliance_client.rb +8 -0
  159. data/lib/oci/dts/transfer_appliance_entitlement_client.rb +3 -0
  160. data/lib/oci/dts/transfer_device_client.rb +5 -0
  161. data/lib/oci/dts/transfer_job_client.rb +6 -0
  162. data/lib/oci/dts/transfer_package_client.rb +7 -0
  163. data/lib/oci/email/email_client.rb +10 -0
  164. data/lib/oci/events/events_client.rb +6 -0
  165. data/lib/oci/file_storage/file_storage_client.rb +25 -0
  166. data/lib/oci/functions/functions_invoke_client.rb +1 -0
  167. data/lib/oci/functions/functions_management_client.rb +11 -0
  168. data/lib/oci/healthchecks/health_checks_client.rb +17 -0
  169. data/lib/oci/identity/identity_client.rb +120 -0
  170. data/lib/oci/identity/models/saml2_identity_provider.rb +12 -1
  171. data/lib/oci/integration/integration.rb +3 -0
  172. data/lib/oci/integration/integration_instance_client.rb +12 -0
  173. data/lib/oci/integration/models/create_custom_endpoint_details.rb +167 -0
  174. data/lib/oci/integration/models/create_integration_instance_details.rb +44 -1
  175. data/lib/oci/integration/models/custom_endpoint_details.rb +180 -0
  176. data/lib/oci/integration/models/integration_instance.rb +43 -1
  177. data/lib/oci/integration/models/integration_instance_summary.rb +43 -1
  178. data/lib/oci/integration/models/update_custom_endpoint_details.rb +167 -0
  179. data/lib/oci/integration/models/update_integration_instance_details.rb +47 -4
  180. data/lib/oci/key_management/kms_crypto_client.rb +4 -0
  181. data/lib/oci/key_management/kms_management_client.rb +31 -0
  182. data/lib/oci/key_management/kms_vault_client.rb +11 -0
  183. data/lib/oci/limits/limits_client.rb +4 -0
  184. data/lib/oci/limits/quotas_client.rb +5 -0
  185. data/lib/oci/load_balancer/load_balancer.rb +1 -0
  186. data/lib/oci/load_balancer/load_balancer_client.rb +56 -0
  187. data/lib/oci/load_balancer/models/create_load_balancer_details.rb +16 -1
  188. data/lib/oci/load_balancer/models/load_balancer.rb +14 -1
  189. data/lib/oci/load_balancer/models/shape_details.rb +180 -0
  190. data/lib/oci/load_balancer/models/ssl_configuration.rb +1 -1
  191. data/lib/oci/load_balancer/models/ssl_configuration_details.rb +1 -1
  192. data/lib/oci/load_balancer/models/update_load_balancer_shape_details.rb +22 -4
  193. data/lib/oci/log_analytics/log_analytics_client.rb +126 -0
  194. data/lib/oci/logging/logging_management_client.rb +32 -0
  195. data/lib/oci/loggingingestion/logging_client.rb +1 -0
  196. data/lib/oci/loggingsearch/log_search_client.rb +1 -0
  197. data/lib/oci/management_agent/management_agent.rb +2 -0
  198. data/lib/oci/management_agent/management_agent_client.rb +101 -0
  199. data/lib/oci/management_agent/models/availability_history_summary.rb +217 -0
  200. data/lib/oci/management_agent/models/availability_status.rb +12 -0
  201. data/lib/oci/management_agent/models/management_agent.rb +35 -1
  202. data/lib/oci/management_agent/models/management_agent_summary.rb +49 -1
  203. data/lib/oci/management_dashboard/dashx_apis_client.rb +14 -0
  204. data/lib/oci/marketplace/marketplace_client.rb +16 -0
  205. data/lib/oci/monitoring/monitoring_client.rb +12 -0
  206. data/lib/oci/mysql/channels_client.rb +625 -0
  207. data/lib/oci/mysql/channels_client_composite_operations.rb +271 -0
  208. data/lib/oci/mysql/db_backups_client.rb +11 -0
  209. data/lib/oci/mysql/db_system_client.rb +17 -0
  210. data/lib/oci/mysql/models/backup.rb +16 -3
  211. data/lib/oci/mysql/models/backup_summary.rb +17 -3
  212. data/lib/oci/mysql/models/ca_certificate.rb +189 -0
  213. data/lib/oci/mysql/models/channel.rb +340 -0
  214. data/lib/oci/mysql/models/channel_source.rb +189 -0
  215. data/lib/oci/mysql/models/channel_source_mysql.rb +230 -0
  216. data/lib/oci/mysql/models/channel_summary.rb +304 -0
  217. data/lib/oci/mysql/models/channel_target.rb +189 -0
  218. data/lib/oci/mysql/models/channel_target_db_system.rb +193 -0
  219. data/lib/oci/mysql/models/configuration.rb +2 -2
  220. data/lib/oci/mysql/models/configuration_summary.rb +2 -2
  221. data/lib/oci/mysql/models/configuration_variables.rb +30 -15
  222. data/lib/oci/mysql/models/create_backup_details.rb +2 -2
  223. data/lib/oci/mysql/models/create_backup_policy_details.rb +3 -0
  224. data/lib/oci/mysql/models/create_channel_details.rb +248 -0
  225. data/lib/oci/mysql/models/create_channel_source_details.rb +170 -0
  226. data/lib/oci/mysql/models/create_channel_source_from_mysql_details.rb +224 -0
  227. data/lib/oci/mysql/models/create_channel_target_details.rb +170 -0
  228. data/lib/oci/mysql/models/create_channel_target_from_db_system_details.rb +193 -0
  229. data/lib/oci/mysql/models/create_configuration_details.rb +2 -3
  230. data/lib/oci/mysql/models/create_db_system_details.rb +1 -1
  231. data/lib/oci/mysql/models/create_db_system_source_details.rb +1 -0
  232. data/lib/oci/mysql/models/create_db_system_source_from_none_details.rb +146 -0
  233. data/lib/oci/mysql/models/db_system.rb +15 -3
  234. data/lib/oci/mysql/models/db_system_snapshot.rb +437 -0
  235. data/lib/oci/mysql/models/db_system_source.rb +1 -0
  236. data/lib/oci/mysql/models/db_system_source_from_none.rb +146 -0
  237. data/lib/oci/mysql/models/db_system_summary.rb +2 -2
  238. data/lib/oci/mysql/models/pem_ca_certificate.rb +158 -0
  239. data/lib/oci/mysql/models/update_backup_details.rb +2 -2
  240. data/lib/oci/mysql/models/update_backup_policy_details.rb +3 -0
  241. data/lib/oci/mysql/models/update_channel_details.rb +234 -0
  242. data/lib/oci/mysql/models/update_channel_source_details.rb +171 -0
  243. data/lib/oci/mysql/models/update_channel_source_from_mysql_details.rb +224 -0
  244. data/lib/oci/mysql/models/update_channel_target_details.rb +170 -0
  245. data/lib/oci/mysql/models/update_channel_target_from_db_system_details.rb +179 -0
  246. data/lib/oci/mysql/models/update_configuration_details.rb +2 -2
  247. data/lib/oci/mysql/mysql.rb +23 -0
  248. data/lib/oci/mysql/mysqlaas_client.rb +7 -0
  249. data/lib/oci/mysql/work_requests_client.rb +4 -0
  250. data/lib/oci/nosql/nosql_client.rb +22 -0
  251. data/lib/oci/object_storage/models/object_lifecycle_rule.rb +11 -9
  252. data/lib/oci/object_storage/object_storage_client.rb +55 -6
  253. data/lib/oci/oce/oce_instance_client.rb +10 -0
  254. data/lib/oci/ocvp/esxi_host_client.rb +5 -0
  255. data/lib/oci/ocvp/sddc_client.rb +7 -0
  256. data/lib/oci/ocvp/work_request_client.rb +4 -0
  257. data/lib/oci/oda/oda_client.rb +12 -0
  258. data/lib/oci/ons/notification_control_plane_client.rb +6 -0
  259. data/lib/oci/ons/notification_data_plane_client.rb +10 -0
  260. data/lib/oci/opsi/models/sql_insight_aggregation.rb +2 -1
  261. data/lib/oci/opsi/models/sql_insight_thresholds.rb +21 -4
  262. data/lib/oci/opsi/operations_insights_client.rb +22 -3
  263. data/lib/oci/optimizer/optimizer_client.rb +22 -0
  264. data/lib/oci/os_management/os_management_client.rb +53 -0
  265. data/lib/oci/regions.rb +3 -0
  266. data/lib/oci/resource_manager/models/configuration_source_provider.rb +5 -1
  267. data/lib/oci/resource_manager/models/configuration_source_provider_summary.rb +3 -1
  268. data/lib/oci/resource_manager/models/create_configuration_source_provider_details.rb +4 -1
  269. data/lib/oci/resource_manager/models/create_github_access_token_configuration_source_provider_details.rb +200 -0
  270. data/lib/oci/resource_manager/models/create_gitlab_access_token_configuration_source_provider_details.rb +3 -3
  271. data/lib/oci/resource_manager/models/github_access_token_configuration_source_provider.rb +198 -0
  272. data/lib/oci/resource_manager/models/github_access_token_configuration_source_provider_summary.rb +198 -0
  273. data/lib/oci/resource_manager/models/gitlab_access_token_configuration_source_provider.rb +2 -2
  274. data/lib/oci/resource_manager/models/gitlab_access_token_configuration_source_provider_summary.rb +2 -2
  275. data/lib/oci/resource_manager/models/update_configuration_source_provider_details.rb +4 -1
  276. data/lib/oci/resource_manager/models/update_github_access_token_configuration_source_provider_details.rb +196 -0
  277. data/lib/oci/resource_manager/models/update_gitlab_access_token_configuration_source_provider_details.rb +3 -3
  278. data/lib/oci/resource_manager/resource_manager.rb +4 -0
  279. data/lib/oci/resource_manager/resource_manager_client.rb +36 -2
  280. data/lib/oci/resource_search/resource_search_client.rb +3 -0
  281. data/lib/oci/rover/models/change_rover_cluster_compartment_details.rb +155 -0
  282. data/lib/oci/{database/models/autonomous_data_warehouse_console_token_details.rb → rover/models/change_rover_entitlement_compartment_details.rb} +13 -23
  283. data/lib/oci/rover/models/change_rover_node_compartment_details.rb +155 -0
  284. data/lib/oci/rover/models/create_rover_cluster_details.rb +459 -0
  285. data/lib/oci/rover/models/create_rover_entitlement_details.rb +320 -0
  286. data/lib/oci/rover/models/create_rover_node_details.rb +501 -0
  287. data/lib/oci/rover/models/enclosure_type.rb +11 -0
  288. data/lib/oci/rover/models/lifecycle_state.rb +15 -0
  289. data/lib/oci/rover/models/node_type.rb +11 -0
  290. data/lib/oci/rover/models/rover_cluster.rb +610 -0
  291. data/lib/oci/rover/models/rover_cluster_certificate.rb +150 -0
  292. data/lib/oci/{database/models/restore_autonomous_data_warehouse_details.rb → rover/models/rover_cluster_collection.rb} +11 -12
  293. data/lib/oci/{database/models/create_autonomous_data_warehouse_details.rb → rover/models/rover_cluster_summary.rb} +99 -84
  294. data/lib/oci/rover/models/rover_entitlement.rb +363 -0
  295. data/lib/oci/rover/models/rover_entitlement_collection.rb +150 -0
  296. data/lib/oci/rover/models/rover_entitlement_summary.rb +285 -0
  297. data/lib/oci/rover/models/rover_node.rb +661 -0
  298. data/lib/oci/rover/models/rover_node_action_set_key_details.rb +154 -0
  299. data/lib/oci/rover/models/rover_node_certificate.rb +150 -0
  300. data/lib/oci/rover/models/rover_node_collection.rb +150 -0
  301. data/lib/oci/rover/models/rover_node_encryption_key.rb +154 -0
  302. data/lib/oci/rover/models/rover_node_get_rpt.rb +168 -0
  303. data/lib/oci/rover/models/rover_node_set_key.rb +154 -0
  304. data/lib/oci/rover/models/rover_node_summary.rb +323 -0
  305. data/lib/oci/rover/models/rover_workload.rb +264 -0
  306. data/lib/oci/rover/models/shipping_address.rb +276 -0
  307. data/lib/oci/rover/models/sort_orders.rb +11 -0
  308. data/lib/oci/rover/models/update_rover_cluster_details.rb +445 -0
  309. data/lib/oci/rover/models/update_rover_entitlement_details.rb +306 -0
  310. data/lib/oci/rover/models/update_rover_node_details.rb +487 -0
  311. data/lib/oci/rover/rover.rb +54 -0
  312. data/lib/oci/rover/rover_cluster_client.rb +549 -0
  313. data/lib/oci/rover/rover_cluster_client_composite_operations.rb +144 -0
  314. data/lib/oci/rover/rover_entitlement_client.rb +514 -0
  315. data/lib/oci/rover/rover_entitlement_client_composite_operations.rb +144 -0
  316. data/lib/oci/rover/rover_node_client.rb +738 -0
  317. data/lib/oci/rover/rover_node_client_composite_operations.rb +144 -0
  318. data/lib/oci/rover/util.rb +3 -0
  319. data/lib/oci/sch/service_connector_client.rb +12 -0
  320. data/lib/oci/secrets/secrets_client.rb +2 -0
  321. data/lib/oci/streaming/stream_admin_client.rb +18 -0
  322. data/lib/oci/streaming/stream_client.rb +8 -0
  323. data/lib/oci/tenant_manager_control_plane/link_client.rb +3 -0
  324. data/lib/oci/tenant_manager_control_plane/recipient_invitation_client.rb +5 -0
  325. data/lib/oci/tenant_manager_control_plane/sender_invitation_client.rb +5 -0
  326. data/lib/oci/tenant_manager_control_plane/work_request_client.rb +4 -0
  327. data/lib/oci/usage_api/usageapi_client.rb +2 -0
  328. data/lib/oci/vault/vaults_client.rb +11 -0
  329. data/lib/oci/version.rb +1 -1
  330. data/lib/oci/waas/redirect_client.rb +6 -0
  331. data/lib/oci/waas/waas_client.rb +66 -0
  332. data/lib/oci/work_requests/work_request_client.rb +4 -0
  333. metadata +91 -10
@@ -7,6 +7,8 @@ require 'logger'
7
7
  # rubocop:disable Lint/UnneededCopDisableDirective, Metrics/LineLength
8
8
  module OCI
9
9
  # A DB System is the core logical unit of MySQL Database Service.
10
+ # # NOTE: definitions/DbSystemSnapshot is a snapshot version of DbSystem which is stored during backup. Any
11
+ # # addition/deletion of properties should also consider snapshot's definition
10
12
  #
11
13
  class Mysql::Models::DbSystem
12
14
  LIFECYCLE_STATE_ENUM = [
@@ -117,6 +119,10 @@ module OCI
117
119
  # @return [Array<OCI::Mysql::Models::DbSystemEndpoint>]
118
120
  attr_accessor :endpoints
119
121
 
122
+ # A list with a summary of all the Channels attached to the DB System.
123
+ # @return [Array<OCI::Mysql::Models::ChannelSummary>]
124
+ attr_accessor :channels
125
+
120
126
  # **[Required]** The current state of the DB System.
121
127
  # @return [String]
122
128
  attr_reader :lifecycle_state
@@ -137,13 +143,13 @@ module OCI
137
143
  # @return [DateTime]
138
144
  attr_accessor :time_updated
139
145
 
140
- # Simple key-value pair applied without any predefined name, type or scope. Exists for cross-compatibility only.
146
+ # Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only.
141
147
  # Example: `{\"bar-key\": \"value\"}`
142
148
  #
143
149
  # @return [Hash<String, String>]
144
150
  attr_accessor :freeform_tags
145
151
 
146
- # Usage of predefined tag keys. These predefined keys are scoped to namespaces.
152
+ # Defined tags for this resource. Each key is predefined and scoped to a namespace.
147
153
  # Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}`
148
154
  #
149
155
  # @return [Hash<String, Hash<String, Object>>]
@@ -173,6 +179,7 @@ module OCI
173
179
  'port': :'port',
174
180
  'port_x': :'portX',
175
181
  'endpoints': :'endpoints',
182
+ 'channels': :'channels',
176
183
  'lifecycle_state': :'lifecycleState',
177
184
  'lifecycle_details': :'lifecycleDetails',
178
185
  'maintenance': :'maintenance',
@@ -208,6 +215,7 @@ module OCI
208
215
  'port': :'Integer',
209
216
  'port_x': :'Integer',
210
217
  'endpoints': :'Array<OCI::Mysql::Models::DbSystemEndpoint>',
218
+ 'channels': :'Array<OCI::Mysql::Models::ChannelSummary>',
211
219
  'lifecycle_state': :'String',
212
220
  'lifecycle_details': :'String',
213
221
  'maintenance': :'OCI::Mysql::Models::MaintenanceDetails',
@@ -245,6 +253,7 @@ module OCI
245
253
  # @option attributes [Integer] :port The value to assign to the {#port} property
246
254
  # @option attributes [Integer] :port_x The value to assign to the {#port_x} property
247
255
  # @option attributes [Array<OCI::Mysql::Models::DbSystemEndpoint>] :endpoints The value to assign to the {#endpoints} property
256
+ # @option attributes [Array<OCI::Mysql::Models::ChannelSummary>] :channels The value to assign to the {#channels} property
248
257
  # @option attributes [String] :lifecycle_state The value to assign to the {#lifecycle_state} property
249
258
  # @option attributes [String] :lifecycle_details The value to assign to the {#lifecycle_details} property
250
259
  # @option attributes [OCI::Mysql::Models::MaintenanceDetails] :maintenance The value to assign to the {#maintenance} property
@@ -360,6 +369,8 @@ module OCI
360
369
 
361
370
  self.endpoints = attributes[:'endpoints'] if attributes[:'endpoints']
362
371
 
372
+ self.channels = attributes[:'channels'] if attributes[:'channels']
373
+
363
374
  self.lifecycle_state = attributes[:'lifecycleState'] if attributes[:'lifecycleState']
364
375
 
365
376
  raise 'You cannot provide both :lifecycleState and :lifecycle_state' if attributes.key?(:'lifecycleState') && attributes.key?(:'lifecycle_state')
@@ -443,6 +454,7 @@ module OCI
443
454
  port == other.port &&
444
455
  port_x == other.port_x &&
445
456
  endpoints == other.endpoints &&
457
+ channels == other.channels &&
446
458
  lifecycle_state == other.lifecycle_state &&
447
459
  lifecycle_details == other.lifecycle_details &&
448
460
  maintenance == other.maintenance &&
@@ -465,7 +477,7 @@ module OCI
465
477
  # Calculates hash code according to all attributes.
466
478
  # @return [Fixnum] Hash code
467
479
  def hash
468
- [id, display_name, description, compartment_id, subnet_id, is_analytics_cluster_attached, analytics_cluster, availability_domain, fault_domain, shape_name, mysql_version, backup_policy, source, configuration_id, data_storage_size_in_gbs, hostname_label, ip_address, port, port_x, endpoints, lifecycle_state, lifecycle_details, maintenance, time_created, time_updated, freeform_tags, defined_tags].hash
480
+ [id, display_name, description, compartment_id, subnet_id, is_analytics_cluster_attached, analytics_cluster, availability_domain, fault_domain, shape_name, mysql_version, backup_policy, source, configuration_id, data_storage_size_in_gbs, hostname_label, ip_address, port, port_x, endpoints, channels, lifecycle_state, lifecycle_details, maintenance, time_created, time_updated, freeform_tags, defined_tags].hash
469
481
  end
470
482
  # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
471
483
 
@@ -0,0 +1,437 @@
1
+ # Copyright (c) 2016, 2020, 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
+ require 'date'
5
+
6
+ # rubocop:disable Lint/UnneededCopDisableDirective, Metrics/LineLength
7
+ module OCI
8
+ # Snapshot of the DbSystem details at the time of the backup
9
+ #
10
+ class Mysql::Models::DbSystemSnapshot
11
+ # **[Required]** The OCID of the DB System.
12
+ # @return [String]
13
+ attr_accessor :id
14
+
15
+ # **[Required]** The user-friendly name for the DB System. It does not have to be unique.
16
+ # @return [String]
17
+ attr_accessor :display_name
18
+
19
+ # User-provided data about the DB System.
20
+ # @return [String]
21
+ attr_accessor :description
22
+
23
+ # **[Required]** The OCID of the compartment the DB System belongs in.
24
+ # @return [String]
25
+ attr_accessor :compartment_id
26
+
27
+ # **[Required]** The OCID of the subnet the DB System is associated with.
28
+ #
29
+ # @return [String]
30
+ attr_accessor :subnet_id
31
+
32
+ # The Availability Domain where the primary DB System should be located.
33
+ #
34
+ # @return [String]
35
+ attr_accessor :availability_domain
36
+
37
+ # The name of the Fault Domain the DB System is located in.
38
+ #
39
+ # @return [String]
40
+ attr_accessor :fault_domain
41
+
42
+ # The shape of the primary instances of the DB System. The shape
43
+ # determines resources allocated to a DB System - CPU cores
44
+ # and memory for VM shapes; CPU cores, memory and storage for non-VM
45
+ # (or bare metal) shapes. To get a list of shapes, use (the
46
+ # {#list_shapes list_shapes} operation.
47
+ #
48
+ # @return [String]
49
+ attr_accessor :shape_name
50
+
51
+ # **[Required]** Name of the MySQL Version in use for the DB System.
52
+ # @return [String]
53
+ attr_accessor :mysql_version
54
+
55
+ # The username for the administrative user.
56
+ # @return [String]
57
+ attr_accessor :admin_username
58
+
59
+ # @return [OCI::Mysql::Models::BackupPolicy]
60
+ attr_accessor :backup_policy
61
+
62
+ # The OCID of the Configuration to be used for Instances in this DB System.
63
+ # @return [String]
64
+ attr_accessor :configuration_id
65
+
66
+ # **[Required]** Initial size of the data volume in GiBs that will be created and attached.
67
+ #
68
+ # @return [Integer]
69
+ attr_accessor :data_storage_size_in_gbs
70
+
71
+ # The hostname for the primary endpoint of the DB System. Used for DNS.
72
+ # The value is the hostname portion of the primary private IP's fully qualified domain name (FQDN)
73
+ # (for example, \"dbsystem-1\" in FQDN \"dbsystem-1.subnet123.vcn1.oraclevcn.com\").
74
+ # Must be unique across all VNICs in the subnet and comply with RFC 952 and RFC 1123.
75
+ #
76
+ # @return [String]
77
+ attr_accessor :hostname_label
78
+
79
+ # The IP address the DB System is configured to listen on. A private
80
+ # IP address of the primary endpoint of the DB System. Must be an
81
+ # available IP address within the subnet's CIDR. This will be a
82
+ # \"dotted-quad\" style IPv4 address.
83
+ #
84
+ # @return [String]
85
+ attr_accessor :ip_address
86
+
87
+ # The port for primary endpoint of the DB System to listen on.
88
+ # @return [Integer]
89
+ attr_accessor :port
90
+
91
+ # The network port on which X Plugin listens for TCP/IP connections. This is the X Plugin equivalent of port.
92
+ #
93
+ # @return [Integer]
94
+ attr_accessor :port_x
95
+
96
+ # The network endpoints available for this DB System.
97
+ #
98
+ # @return [Array<OCI::Mysql::Models::DbSystemEndpoint>]
99
+ attr_accessor :endpoints
100
+
101
+ # This attribute is required.
102
+ # @return [OCI::Mysql::Models::MaintenanceDetails]
103
+ attr_accessor :maintenance
104
+
105
+ # Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only.
106
+ # Example: `{\"bar-key\": \"value\"}`
107
+ #
108
+ # @return [Hash<String, String>]
109
+ attr_accessor :freeform_tags
110
+
111
+ # Defined tags for this resource. Each key is predefined and scoped to a namespace.
112
+ # Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}`
113
+ #
114
+ # @return [Hash<String, Hash<String, Object>>]
115
+ attr_accessor :defined_tags
116
+
117
+ # Attribute mapping from ruby-style variable name to JSON key.
118
+ def self.attribute_map
119
+ {
120
+ # rubocop:disable Style/SymbolLiteral
121
+ 'id': :'id',
122
+ 'display_name': :'displayName',
123
+ 'description': :'description',
124
+ 'compartment_id': :'compartmentId',
125
+ 'subnet_id': :'subnetId',
126
+ 'availability_domain': :'availabilityDomain',
127
+ 'fault_domain': :'faultDomain',
128
+ 'shape_name': :'shapeName',
129
+ 'mysql_version': :'mysqlVersion',
130
+ 'admin_username': :'adminUsername',
131
+ 'backup_policy': :'backupPolicy',
132
+ 'configuration_id': :'configurationId',
133
+ 'data_storage_size_in_gbs': :'dataStorageSizeInGBs',
134
+ 'hostname_label': :'hostnameLabel',
135
+ 'ip_address': :'ipAddress',
136
+ 'port': :'port',
137
+ 'port_x': :'portX',
138
+ 'endpoints': :'endpoints',
139
+ 'maintenance': :'maintenance',
140
+ 'freeform_tags': :'freeformTags',
141
+ 'defined_tags': :'definedTags'
142
+ # rubocop:enable Style/SymbolLiteral
143
+ }
144
+ end
145
+
146
+ # Attribute type mapping.
147
+ def self.swagger_types
148
+ {
149
+ # rubocop:disable Style/SymbolLiteral
150
+ 'id': :'String',
151
+ 'display_name': :'String',
152
+ 'description': :'String',
153
+ 'compartment_id': :'String',
154
+ 'subnet_id': :'String',
155
+ 'availability_domain': :'String',
156
+ 'fault_domain': :'String',
157
+ 'shape_name': :'String',
158
+ 'mysql_version': :'String',
159
+ 'admin_username': :'String',
160
+ 'backup_policy': :'OCI::Mysql::Models::BackupPolicy',
161
+ 'configuration_id': :'String',
162
+ 'data_storage_size_in_gbs': :'Integer',
163
+ 'hostname_label': :'String',
164
+ 'ip_address': :'String',
165
+ 'port': :'Integer',
166
+ 'port_x': :'Integer',
167
+ 'endpoints': :'Array<OCI::Mysql::Models::DbSystemEndpoint>',
168
+ 'maintenance': :'OCI::Mysql::Models::MaintenanceDetails',
169
+ 'freeform_tags': :'Hash<String, String>',
170
+ 'defined_tags': :'Hash<String, Hash<String, Object>>'
171
+ # rubocop:enable Style/SymbolLiteral
172
+ }
173
+ end
174
+
175
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
176
+ # rubocop:disable Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
177
+
178
+
179
+ # Initializes the object
180
+ # @param [Hash] attributes Model attributes in the form of hash
181
+ # @option attributes [String] :id The value to assign to the {#id} property
182
+ # @option attributes [String] :display_name The value to assign to the {#display_name} property
183
+ # @option attributes [String] :description The value to assign to the {#description} property
184
+ # @option attributes [String] :compartment_id The value to assign to the {#compartment_id} property
185
+ # @option attributes [String] :subnet_id The value to assign to the {#subnet_id} property
186
+ # @option attributes [String] :availability_domain The value to assign to the {#availability_domain} property
187
+ # @option attributes [String] :fault_domain The value to assign to the {#fault_domain} property
188
+ # @option attributes [String] :shape_name The value to assign to the {#shape_name} property
189
+ # @option attributes [String] :mysql_version The value to assign to the {#mysql_version} property
190
+ # @option attributes [String] :admin_username The value to assign to the {#admin_username} property
191
+ # @option attributes [OCI::Mysql::Models::BackupPolicy] :backup_policy The value to assign to the {#backup_policy} property
192
+ # @option attributes [String] :configuration_id The value to assign to the {#configuration_id} property
193
+ # @option attributes [Integer] :data_storage_size_in_gbs The value to assign to the {#data_storage_size_in_gbs} property
194
+ # @option attributes [String] :hostname_label The value to assign to the {#hostname_label} property
195
+ # @option attributes [String] :ip_address The value to assign to the {#ip_address} property
196
+ # @option attributes [Integer] :port The value to assign to the {#port} property
197
+ # @option attributes [Integer] :port_x The value to assign to the {#port_x} property
198
+ # @option attributes [Array<OCI::Mysql::Models::DbSystemEndpoint>] :endpoints The value to assign to the {#endpoints} property
199
+ # @option attributes [OCI::Mysql::Models::MaintenanceDetails] :maintenance The value to assign to the {#maintenance} property
200
+ # @option attributes [Hash<String, String>] :freeform_tags The value to assign to the {#freeform_tags} property
201
+ # @option attributes [Hash<String, Hash<String, Object>>] :defined_tags The value to assign to the {#defined_tags} property
202
+ def initialize(attributes = {})
203
+ return unless attributes.is_a?(Hash)
204
+
205
+ # convert string to symbol for hash key
206
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
207
+
208
+ self.id = attributes[:'id'] if attributes[:'id']
209
+
210
+ self.display_name = attributes[:'displayName'] if attributes[:'displayName']
211
+
212
+ raise 'You cannot provide both :displayName and :display_name' if attributes.key?(:'displayName') && attributes.key?(:'display_name')
213
+
214
+ self.display_name = attributes[:'display_name'] if attributes[:'display_name']
215
+
216
+ self.description = attributes[:'description'] if attributes[:'description']
217
+
218
+ self.compartment_id = attributes[:'compartmentId'] if attributes[:'compartmentId']
219
+
220
+ raise 'You cannot provide both :compartmentId and :compartment_id' if attributes.key?(:'compartmentId') && attributes.key?(:'compartment_id')
221
+
222
+ self.compartment_id = attributes[:'compartment_id'] if attributes[:'compartment_id']
223
+
224
+ self.subnet_id = attributes[:'subnetId'] if attributes[:'subnetId']
225
+
226
+ raise 'You cannot provide both :subnetId and :subnet_id' if attributes.key?(:'subnetId') && attributes.key?(:'subnet_id')
227
+
228
+ self.subnet_id = attributes[:'subnet_id'] if attributes[:'subnet_id']
229
+
230
+ self.availability_domain = attributes[:'availabilityDomain'] if attributes[:'availabilityDomain']
231
+
232
+ raise 'You cannot provide both :availabilityDomain and :availability_domain' if attributes.key?(:'availabilityDomain') && attributes.key?(:'availability_domain')
233
+
234
+ self.availability_domain = attributes[:'availability_domain'] if attributes[:'availability_domain']
235
+
236
+ self.fault_domain = attributes[:'faultDomain'] if attributes[:'faultDomain']
237
+
238
+ raise 'You cannot provide both :faultDomain and :fault_domain' if attributes.key?(:'faultDomain') && attributes.key?(:'fault_domain')
239
+
240
+ self.fault_domain = attributes[:'fault_domain'] if attributes[:'fault_domain']
241
+
242
+ self.shape_name = attributes[:'shapeName'] if attributes[:'shapeName']
243
+
244
+ raise 'You cannot provide both :shapeName and :shape_name' if attributes.key?(:'shapeName') && attributes.key?(:'shape_name')
245
+
246
+ self.shape_name = attributes[:'shape_name'] if attributes[:'shape_name']
247
+
248
+ self.mysql_version = attributes[:'mysqlVersion'] if attributes[:'mysqlVersion']
249
+
250
+ raise 'You cannot provide both :mysqlVersion and :mysql_version' if attributes.key?(:'mysqlVersion') && attributes.key?(:'mysql_version')
251
+
252
+ self.mysql_version = attributes[:'mysql_version'] if attributes[:'mysql_version']
253
+
254
+ self.admin_username = attributes[:'adminUsername'] if attributes[:'adminUsername']
255
+
256
+ raise 'You cannot provide both :adminUsername and :admin_username' if attributes.key?(:'adminUsername') && attributes.key?(:'admin_username')
257
+
258
+ self.admin_username = attributes[:'admin_username'] if attributes[:'admin_username']
259
+
260
+ self.backup_policy = attributes[:'backupPolicy'] if attributes[:'backupPolicy']
261
+
262
+ raise 'You cannot provide both :backupPolicy and :backup_policy' if attributes.key?(:'backupPolicy') && attributes.key?(:'backup_policy')
263
+
264
+ self.backup_policy = attributes[:'backup_policy'] if attributes[:'backup_policy']
265
+
266
+ self.configuration_id = attributes[:'configurationId'] if attributes[:'configurationId']
267
+
268
+ raise 'You cannot provide both :configurationId and :configuration_id' if attributes.key?(:'configurationId') && attributes.key?(:'configuration_id')
269
+
270
+ self.configuration_id = attributes[:'configuration_id'] if attributes[:'configuration_id']
271
+
272
+ self.data_storage_size_in_gbs = attributes[:'dataStorageSizeInGBs'] if attributes[:'dataStorageSizeInGBs']
273
+
274
+ raise 'You cannot provide both :dataStorageSizeInGBs and :data_storage_size_in_gbs' if attributes.key?(:'dataStorageSizeInGBs') && attributes.key?(:'data_storage_size_in_gbs')
275
+
276
+ self.data_storage_size_in_gbs = attributes[:'data_storage_size_in_gbs'] if attributes[:'data_storage_size_in_gbs']
277
+
278
+ self.hostname_label = attributes[:'hostnameLabel'] if attributes[:'hostnameLabel']
279
+
280
+ raise 'You cannot provide both :hostnameLabel and :hostname_label' if attributes.key?(:'hostnameLabel') && attributes.key?(:'hostname_label')
281
+
282
+ self.hostname_label = attributes[:'hostname_label'] if attributes[:'hostname_label']
283
+
284
+ self.ip_address = attributes[:'ipAddress'] if attributes[:'ipAddress']
285
+
286
+ raise 'You cannot provide both :ipAddress and :ip_address' if attributes.key?(:'ipAddress') && attributes.key?(:'ip_address')
287
+
288
+ self.ip_address = attributes[:'ip_address'] if attributes[:'ip_address']
289
+
290
+ self.port = attributes[:'port'] if attributes[:'port']
291
+
292
+ self.port_x = attributes[:'portX'] if attributes[:'portX']
293
+
294
+ raise 'You cannot provide both :portX and :port_x' if attributes.key?(:'portX') && attributes.key?(:'port_x')
295
+
296
+ self.port_x = attributes[:'port_x'] if attributes[:'port_x']
297
+
298
+ self.endpoints = attributes[:'endpoints'] if attributes[:'endpoints']
299
+
300
+ self.maintenance = attributes[:'maintenance'] if attributes[:'maintenance']
301
+
302
+ self.freeform_tags = attributes[:'freeformTags'] if attributes[:'freeformTags']
303
+
304
+ raise 'You cannot provide both :freeformTags and :freeform_tags' if attributes.key?(:'freeformTags') && attributes.key?(:'freeform_tags')
305
+
306
+ self.freeform_tags = attributes[:'freeform_tags'] if attributes[:'freeform_tags']
307
+
308
+ self.defined_tags = attributes[:'definedTags'] if attributes[:'definedTags']
309
+
310
+ raise 'You cannot provide both :definedTags and :defined_tags' if attributes.key?(:'definedTags') && attributes.key?(:'defined_tags')
311
+
312
+ self.defined_tags = attributes[:'defined_tags'] if attributes[:'defined_tags']
313
+ end
314
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
315
+ # rubocop:enable Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
316
+
317
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
318
+
319
+
320
+ # Checks equality by comparing each attribute.
321
+ # @param [Object] other the other object to be compared
322
+ def ==(other)
323
+ return true if equal?(other)
324
+
325
+ self.class == other.class &&
326
+ id == other.id &&
327
+ display_name == other.display_name &&
328
+ description == other.description &&
329
+ compartment_id == other.compartment_id &&
330
+ subnet_id == other.subnet_id &&
331
+ availability_domain == other.availability_domain &&
332
+ fault_domain == other.fault_domain &&
333
+ shape_name == other.shape_name &&
334
+ mysql_version == other.mysql_version &&
335
+ admin_username == other.admin_username &&
336
+ backup_policy == other.backup_policy &&
337
+ configuration_id == other.configuration_id &&
338
+ data_storage_size_in_gbs == other.data_storage_size_in_gbs &&
339
+ hostname_label == other.hostname_label &&
340
+ ip_address == other.ip_address &&
341
+ port == other.port &&
342
+ port_x == other.port_x &&
343
+ endpoints == other.endpoints &&
344
+ maintenance == other.maintenance &&
345
+ freeform_tags == other.freeform_tags &&
346
+ defined_tags == other.defined_tags
347
+ end
348
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
349
+
350
+ # @see the `==` method
351
+ # @param [Object] other the other object to be compared
352
+ def eql?(other)
353
+ self == other
354
+ end
355
+
356
+ # rubocop:disable Metrics/AbcSize, Layout/EmptyLines
357
+
358
+
359
+ # Calculates hash code according to all attributes.
360
+ # @return [Fixnum] Hash code
361
+ def hash
362
+ [id, display_name, description, compartment_id, subnet_id, availability_domain, fault_domain, shape_name, mysql_version, admin_username, backup_policy, configuration_id, data_storage_size_in_gbs, hostname_label, ip_address, port, port_x, endpoints, maintenance, freeform_tags, defined_tags].hash
363
+ end
364
+ # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
365
+
366
+ # rubocop:disable Metrics/AbcSize, Layout/EmptyLines
367
+
368
+
369
+ # Builds the object from hash
370
+ # @param [Hash] attributes Model attributes in the form of hash
371
+ # @return [Object] Returns the model itself
372
+ def build_from_hash(attributes)
373
+ return nil unless attributes.is_a?(Hash)
374
+
375
+ self.class.swagger_types.each_pair do |key, type|
376
+ if type =~ /^Array<(.*)>/i
377
+ # check to ensure the input is an array given that the the attribute
378
+ # is documented as an array but the input is not
379
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
380
+ public_method("#{key}=").call(
381
+ attributes[self.class.attribute_map[key]]
382
+ .map { |v| OCI::Internal::Util.convert_to_type(Regexp.last_match(1), v) }
383
+ )
384
+ end
385
+ elsif !attributes[self.class.attribute_map[key]].nil?
386
+ public_method("#{key}=").call(
387
+ OCI::Internal::Util.convert_to_type(type, attributes[self.class.attribute_map[key]])
388
+ )
389
+ end
390
+ # or else data not found in attributes(hash), not an issue as the data can be optional
391
+ end
392
+
393
+ self
394
+ end
395
+ # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
396
+
397
+ # Returns the string representation of the object
398
+ # @return [String] String presentation of the object
399
+ def to_s
400
+ to_hash.to_s
401
+ end
402
+
403
+ # Returns the object in the form of hash
404
+ # @return [Hash] Returns the object in the form of hash
405
+ def to_hash
406
+ hash = {}
407
+ self.class.attribute_map.each_pair do |attr, param|
408
+ value = public_method(attr).call
409
+ next if value.nil? && !instance_variable_defined?("@#{attr}")
410
+
411
+ hash[param] = _to_hash(value)
412
+ end
413
+ hash
414
+ end
415
+
416
+ private
417
+
418
+ # Outputs non-array value in the form of hash
419
+ # For object, use to_hash. Otherwise, just return the value
420
+ # @param [Object] value Any valid value
421
+ # @return [Hash] Returns the value in the form of hash
422
+ def _to_hash(value)
423
+ if value.is_a?(Array)
424
+ value.compact.map { |v| _to_hash(v) }
425
+ elsif value.is_a?(Hash)
426
+ {}.tap do |hash|
427
+ value.each { |k, v| hash[k] = _to_hash(v) }
428
+ end
429
+ elsif value.respond_to? :to_hash
430
+ value.to_hash
431
+ else
432
+ value
433
+ end
434
+ end
435
+ end
436
+ end
437
+ # rubocop:enable Lint/UnneededCopDisableDirective, Metrics/LineLength