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
@@ -83,6 +83,9 @@ module OCI
83
83
  # @return [String]
84
84
  attr_accessor :db_system_id
85
85
 
86
+ # @return [OCI::Mysql::Models::DbSystemSnapshot]
87
+ attr_accessor :db_system_snapshot
88
+
86
89
  # The size of the backup in base-2 (IEC) gibibytes. (GiB).
87
90
  # @return [Integer]
88
91
  attr_accessor :backup_size_in_gbs
@@ -104,13 +107,13 @@ module OCI
104
107
  # @return [String]
105
108
  attr_accessor :shape_name
106
109
 
107
- # Simple key-value pair applied without any predefined name, type or scope. Exists for cross-compatibility only.
110
+ # Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only.
108
111
  # Example: `{\"bar-key\": \"value\"}`
109
112
  #
110
113
  # @return [Hash<String, String>]
111
114
  attr_accessor :freeform_tags
112
115
 
113
- # Usage of predefined tag keys. These predefined keys are scoped to namespaces.
116
+ # Defined tags for this resource. Each key is predefined and scoped to a namespace.
114
117
  # Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}`
115
118
  #
116
119
  # @return [Hash<String, Hash<String, Object>>]
@@ -131,6 +134,7 @@ module OCI
131
134
  'backup_type': :'backupType',
132
135
  'creation_type': :'creationType',
133
136
  'db_system_id': :'dbSystemId',
137
+ 'db_system_snapshot': :'dbSystemSnapshot',
134
138
  'backup_size_in_gbs': :'backupSizeInGBs',
135
139
  'retention_in_days': :'retentionInDays',
136
140
  'data_storage_size_in_gbs': :'dataStorageSizeInGBs',
@@ -157,6 +161,7 @@ module OCI
157
161
  'backup_type': :'String',
158
162
  'creation_type': :'String',
159
163
  'db_system_id': :'String',
164
+ 'db_system_snapshot': :'OCI::Mysql::Models::DbSystemSnapshot',
160
165
  'backup_size_in_gbs': :'Integer',
161
166
  'retention_in_days': :'Integer',
162
167
  'data_storage_size_in_gbs': :'Integer',
@@ -185,6 +190,7 @@ module OCI
185
190
  # @option attributes [String] :backup_type The value to assign to the {#backup_type} property
186
191
  # @option attributes [String] :creation_type The value to assign to the {#creation_type} property
187
192
  # @option attributes [String] :db_system_id The value to assign to the {#db_system_id} property
193
+ # @option attributes [OCI::Mysql::Models::DbSystemSnapshot] :db_system_snapshot The value to assign to the {#db_system_snapshot} property
188
194
  # @option attributes [Integer] :backup_size_in_gbs The value to assign to the {#backup_size_in_gbs} property
189
195
  # @option attributes [Integer] :retention_in_days The value to assign to the {#retention_in_days} property
190
196
  # @option attributes [Integer] :data_storage_size_in_gbs The value to assign to the {#data_storage_size_in_gbs} property
@@ -256,6 +262,12 @@ module OCI
256
262
 
257
263
  self.db_system_id = attributes[:'db_system_id'] if attributes[:'db_system_id']
258
264
 
265
+ self.db_system_snapshot = attributes[:'dbSystemSnapshot'] if attributes[:'dbSystemSnapshot']
266
+
267
+ raise 'You cannot provide both :dbSystemSnapshot and :db_system_snapshot' if attributes.key?(:'dbSystemSnapshot') && attributes.key?(:'db_system_snapshot')
268
+
269
+ self.db_system_snapshot = attributes[:'db_system_snapshot'] if attributes[:'db_system_snapshot']
270
+
259
271
  self.backup_size_in_gbs = attributes[:'backupSizeInGBs'] if attributes[:'backupSizeInGBs']
260
272
 
261
273
  raise 'You cannot provide both :backupSizeInGBs and :backup_size_in_gbs' if attributes.key?(:'backupSizeInGBs') && attributes.key?(:'backup_size_in_gbs')
@@ -360,6 +372,7 @@ module OCI
360
372
  backup_type == other.backup_type &&
361
373
  creation_type == other.creation_type &&
362
374
  db_system_id == other.db_system_id &&
375
+ db_system_snapshot == other.db_system_snapshot &&
363
376
  backup_size_in_gbs == other.backup_size_in_gbs &&
364
377
  retention_in_days == other.retention_in_days &&
365
378
  data_storage_size_in_gbs == other.data_storage_size_in_gbs &&
@@ -382,7 +395,7 @@ module OCI
382
395
  # Calculates hash code according to all attributes.
383
396
  # @return [Fixnum] Hash code
384
397
  def hash
385
- [id, display_name, description, compartment_id, time_created, time_updated, lifecycle_state, lifecycle_details, backup_type, creation_type, db_system_id, backup_size_in_gbs, retention_in_days, data_storage_size_in_gbs, mysql_version, shape_name, freeform_tags, defined_tags].hash
398
+ [id, display_name, description, compartment_id, time_created, time_updated, lifecycle_state, lifecycle_details, backup_type, creation_type, db_system_id, db_system_snapshot, backup_size_in_gbs, retention_in_days, data_storage_size_in_gbs, mysql_version, shape_name, freeform_tags, defined_tags].hash
386
399
  end
387
400
  # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
388
401
 
@@ -38,6 +38,10 @@ module OCI
38
38
  # @return [String]
39
39
  attr_accessor :backup_type
40
40
 
41
+ # **[Required]** If the backup was created automatically, or by a manual request.
42
+ # @return [String]
43
+ attr_accessor :creation_type
44
+
41
45
  # **[Required]** The OCID of the DB System the Backup is associated with.
42
46
  # @return [String]
43
47
  attr_accessor :db_system_id
@@ -62,13 +66,13 @@ module OCI
62
66
  # @return [String]
63
67
  attr_accessor :shape_name
64
68
 
65
- # Simple key-value pair applied without any predefined name, type or scope. Exists for cross-compatibility only.
69
+ # Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only.
66
70
  # Example: `{\"bar-key\": \"value\"}`
67
71
  #
68
72
  # @return [Hash<String, String>]
69
73
  attr_accessor :freeform_tags
70
74
 
71
- # Usage of predefined tag keys. These predefined keys are scoped to namespaces.
75
+ # Defined tags for this resource. Each key is predefined and scoped to a namespace.
72
76
  # Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}`
73
77
  #
74
78
  # @return [Hash<String, Hash<String, Object>>]
@@ -84,6 +88,7 @@ module OCI
84
88
  'time_created': :'timeCreated',
85
89
  'lifecycle_state': :'lifecycleState',
86
90
  'backup_type': :'backupType',
91
+ 'creation_type': :'creationType',
87
92
  'db_system_id': :'dbSystemId',
88
93
  'data_storage_size_in_gbs': :'dataStorageSizeInGBs',
89
94
  'backup_size_in_gbs': :'backupSizeInGBs',
@@ -106,6 +111,7 @@ module OCI
106
111
  'time_created': :'DateTime',
107
112
  'lifecycle_state': :'String',
108
113
  'backup_type': :'String',
114
+ 'creation_type': :'String',
109
115
  'db_system_id': :'String',
110
116
  'data_storage_size_in_gbs': :'Integer',
111
117
  'backup_size_in_gbs': :'Integer',
@@ -130,6 +136,7 @@ module OCI
130
136
  # @option attributes [DateTime] :time_created The value to assign to the {#time_created} property
131
137
  # @option attributes [String] :lifecycle_state The value to assign to the {#lifecycle_state} property
132
138
  # @option attributes [String] :backup_type The value to assign to the {#backup_type} property
139
+ # @option attributes [String] :creation_type The value to assign to the {#creation_type} property
133
140
  # @option attributes [String] :db_system_id The value to assign to the {#db_system_id} property
134
141
  # @option attributes [Integer] :data_storage_size_in_gbs The value to assign to the {#data_storage_size_in_gbs} property
135
142
  # @option attributes [Integer] :backup_size_in_gbs The value to assign to the {#backup_size_in_gbs} property
@@ -172,6 +179,12 @@ module OCI
172
179
 
173
180
  self.backup_type = attributes[:'backup_type'] if attributes[:'backup_type']
174
181
 
182
+ self.creation_type = attributes[:'creationType'] if attributes[:'creationType']
183
+
184
+ raise 'You cannot provide both :creationType and :creation_type' if attributes.key?(:'creationType') && attributes.key?(:'creation_type')
185
+
186
+ self.creation_type = attributes[:'creation_type'] if attributes[:'creation_type']
187
+
175
188
  self.db_system_id = attributes[:'dbSystemId'] if attributes[:'dbSystemId']
176
189
 
177
190
  raise 'You cannot provide both :dbSystemId and :db_system_id' if attributes.key?(:'dbSystemId') && attributes.key?(:'db_system_id')
@@ -238,6 +251,7 @@ module OCI
238
251
  time_created == other.time_created &&
239
252
  lifecycle_state == other.lifecycle_state &&
240
253
  backup_type == other.backup_type &&
254
+ creation_type == other.creation_type &&
241
255
  db_system_id == other.db_system_id &&
242
256
  data_storage_size_in_gbs == other.data_storage_size_in_gbs &&
243
257
  backup_size_in_gbs == other.backup_size_in_gbs &&
@@ -261,7 +275,7 @@ module OCI
261
275
  # Calculates hash code according to all attributes.
262
276
  # @return [Fixnum] Hash code
263
277
  def hash
264
- [id, display_name, description, time_created, lifecycle_state, backup_type, db_system_id, data_storage_size_in_gbs, backup_size_in_gbs, retention_in_days, mysql_version, shape_name, freeform_tags, defined_tags].hash
278
+ [id, display_name, description, time_created, lifecycle_state, backup_type, creation_type, db_system_id, data_storage_size_in_gbs, backup_size_in_gbs, retention_in_days, mysql_version, shape_name, freeform_tags, defined_tags].hash
265
279
  end
266
280
  # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
267
281
 
@@ -0,0 +1,189 @@
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
+ require 'logger'
6
+
7
+ # rubocop:disable Lint/UnneededCopDisableDirective, Metrics/LineLength
8
+ module OCI
9
+ # The CA certificate of the server used for VERIFY_IDENTITY and VERIFY_CA ssl modes.
10
+ # This class has direct subclasses. If you are using this class as input to a service operations then you should favor using a subclass over the base class
11
+ class Mysql::Models::CaCertificate
12
+ CERTIFICATE_TYPE_ENUM = [
13
+ CERTIFICATE_TYPE_PEM = 'PEM'.freeze,
14
+ CERTIFICATE_TYPE_UNKNOWN_ENUM_VALUE = 'UNKNOWN_ENUM_VALUE'.freeze
15
+ ].freeze
16
+
17
+ # **[Required]** The type of CA certificate.
18
+ # @return [String]
19
+ attr_reader :certificate_type
20
+
21
+ # Attribute mapping from ruby-style variable name to JSON key.
22
+ def self.attribute_map
23
+ {
24
+ # rubocop:disable Style/SymbolLiteral
25
+ 'certificate_type': :'certificateType'
26
+ # rubocop:enable Style/SymbolLiteral
27
+ }
28
+ end
29
+
30
+ # Attribute type mapping.
31
+ def self.swagger_types
32
+ {
33
+ # rubocop:disable Style/SymbolLiteral
34
+ 'certificate_type': :'String'
35
+ # rubocop:enable Style/SymbolLiteral
36
+ }
37
+ end
38
+
39
+ # rubocop:disable Metrics/CyclomaticComplexity, Layout/EmptyLines, Metrics/PerceivedComplexity, Metrics/AbcSize
40
+
41
+
42
+ # Given the hash representation of a subtype of this class,
43
+ # use the info in the hash to return the class of the subtype.
44
+ def self.get_subtype(object_hash)
45
+ type = object_hash[:'certificateType'] # rubocop:disable Style/SymbolLiteral
46
+
47
+ return 'OCI::Mysql::Models::PemCaCertificate' if type == 'PEM'
48
+
49
+ # TODO: Log a warning when the subtype is not found.
50
+ 'OCI::Mysql::Models::CaCertificate'
51
+ end
52
+ # rubocop:enable Metrics/CyclomaticComplexity, Layout/EmptyLines, Metrics/PerceivedComplexity, Metrics/AbcSize
53
+
54
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
55
+ # rubocop:disable Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
56
+
57
+
58
+ # Initializes the object
59
+ # @param [Hash] attributes Model attributes in the form of hash
60
+ # @option attributes [String] :certificate_type The value to assign to the {#certificate_type} property
61
+ def initialize(attributes = {})
62
+ return unless attributes.is_a?(Hash)
63
+
64
+ # convert string to symbol for hash key
65
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
66
+
67
+ self.certificate_type = attributes[:'certificateType'] if attributes[:'certificateType']
68
+
69
+ raise 'You cannot provide both :certificateType and :certificate_type' if attributes.key?(:'certificateType') && attributes.key?(:'certificate_type')
70
+
71
+ self.certificate_type = attributes[:'certificate_type'] if attributes[:'certificate_type']
72
+ end
73
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
74
+ # rubocop:enable Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
75
+
76
+ # Custom attribute writer method checking allowed values (enum).
77
+ # @param [Object] certificate_type Object to be assigned
78
+ def certificate_type=(certificate_type)
79
+ # rubocop:disable Style/ConditionalAssignment
80
+ if certificate_type && !CERTIFICATE_TYPE_ENUM.include?(certificate_type)
81
+ OCI.logger.debug("Unknown value for 'certificate_type' [" + certificate_type + "]. Mapping to 'CERTIFICATE_TYPE_UNKNOWN_ENUM_VALUE'") if OCI.logger
82
+ @certificate_type = CERTIFICATE_TYPE_UNKNOWN_ENUM_VALUE
83
+ else
84
+ @certificate_type = certificate_type
85
+ end
86
+ # rubocop:enable Style/ConditionalAssignment
87
+ end
88
+
89
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
90
+
91
+
92
+ # Checks equality by comparing each attribute.
93
+ # @param [Object] other the other object to be compared
94
+ def ==(other)
95
+ return true if equal?(other)
96
+
97
+ self.class == other.class &&
98
+ certificate_type == other.certificate_type
99
+ end
100
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
101
+
102
+ # @see the `==` method
103
+ # @param [Object] other the other object to be compared
104
+ def eql?(other)
105
+ self == other
106
+ end
107
+
108
+ # rubocop:disable Metrics/AbcSize, Layout/EmptyLines
109
+
110
+
111
+ # Calculates hash code according to all attributes.
112
+ # @return [Fixnum] Hash code
113
+ def hash
114
+ [certificate_type].hash
115
+ end
116
+ # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
117
+
118
+ # rubocop:disable Metrics/AbcSize, Layout/EmptyLines
119
+
120
+
121
+ # Builds the object from hash
122
+ # @param [Hash] attributes Model attributes in the form of hash
123
+ # @return [Object] Returns the model itself
124
+ def build_from_hash(attributes)
125
+ return nil unless attributes.is_a?(Hash)
126
+
127
+ self.class.swagger_types.each_pair do |key, type|
128
+ if type =~ /^Array<(.*)>/i
129
+ # check to ensure the input is an array given that the the attribute
130
+ # is documented as an array but the input is not
131
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
132
+ public_method("#{key}=").call(
133
+ attributes[self.class.attribute_map[key]]
134
+ .map { |v| OCI::Internal::Util.convert_to_type(Regexp.last_match(1), v) }
135
+ )
136
+ end
137
+ elsif !attributes[self.class.attribute_map[key]].nil?
138
+ public_method("#{key}=").call(
139
+ OCI::Internal::Util.convert_to_type(type, attributes[self.class.attribute_map[key]])
140
+ )
141
+ end
142
+ # or else data not found in attributes(hash), not an issue as the data can be optional
143
+ end
144
+
145
+ self
146
+ end
147
+ # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
148
+
149
+ # Returns the string representation of the object
150
+ # @return [String] String presentation of the object
151
+ def to_s
152
+ to_hash.to_s
153
+ end
154
+
155
+ # Returns the object in the form of hash
156
+ # @return [Hash] Returns the object in the form of hash
157
+ def to_hash
158
+ hash = {}
159
+ self.class.attribute_map.each_pair do |attr, param|
160
+ value = public_method(attr).call
161
+ next if value.nil? && !instance_variable_defined?("@#{attr}")
162
+
163
+ hash[param] = _to_hash(value)
164
+ end
165
+ hash
166
+ end
167
+
168
+ private
169
+
170
+ # Outputs non-array value in the form of hash
171
+ # For object, use to_hash. Otherwise, just return the value
172
+ # @param [Object] value Any valid value
173
+ # @return [Hash] Returns the value in the form of hash
174
+ def _to_hash(value)
175
+ if value.is_a?(Array)
176
+ value.compact.map { |v| _to_hash(v) }
177
+ elsif value.is_a?(Hash)
178
+ {}.tap do |hash|
179
+ value.each { |k, v| hash[k] = _to_hash(v) }
180
+ end
181
+ elsif value.respond_to? :to_hash
182
+ value.to_hash
183
+ else
184
+ value
185
+ end
186
+ end
187
+ end
188
+ end
189
+ # rubocop:enable Lint/UnneededCopDisableDirective, Metrics/LineLength
@@ -0,0 +1,340 @@
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
+ require 'logger'
6
+
7
+ # rubocop:disable Lint/UnneededCopDisableDirective, Metrics/LineLength
8
+ module OCI
9
+ # A Channel connecting a DB System to an external entity.
10
+ class Mysql::Models::Channel
11
+ LIFECYCLE_STATE_ENUM = [
12
+ LIFECYCLE_STATE_CREATING = 'CREATING'.freeze,
13
+ LIFECYCLE_STATE_ACTIVE = 'ACTIVE'.freeze,
14
+ LIFECYCLE_STATE_NEEDS_ATTENTION = 'NEEDS_ATTENTION'.freeze,
15
+ LIFECYCLE_STATE_INACTIVE = 'INACTIVE'.freeze,
16
+ LIFECYCLE_STATE_UPDATING = 'UPDATING'.freeze,
17
+ LIFECYCLE_STATE_DELETING = 'DELETING'.freeze,
18
+ LIFECYCLE_STATE_DELETED = 'DELETED'.freeze,
19
+ LIFECYCLE_STATE_FAILED = 'FAILED'.freeze,
20
+ LIFECYCLE_STATE_UNKNOWN_ENUM_VALUE = 'UNKNOWN_ENUM_VALUE'.freeze
21
+ ].freeze
22
+
23
+ # **[Required]** The OCID of the Channel.
24
+ # @return [String]
25
+ attr_accessor :id
26
+
27
+ # **[Required]** The OCID of the compartment.
28
+ # @return [String]
29
+ attr_accessor :compartment_id
30
+
31
+ # **[Required]** The user-friendly name for the Channel. It does not have to be unique.
32
+ # @return [String]
33
+ attr_accessor :display_name
34
+
35
+ # **[Required]** Whether the Channel has been enabled by the user.
36
+ # @return [BOOLEAN]
37
+ attr_accessor :is_enabled
38
+
39
+ # This attribute is required.
40
+ # @return [OCI::Mysql::Models::ChannelSource]
41
+ attr_accessor :source
42
+
43
+ # This attribute is required.
44
+ # @return [OCI::Mysql::Models::ChannelTarget]
45
+ attr_accessor :target
46
+
47
+ # User provided description of the Channel.
48
+ # @return [String]
49
+ attr_accessor :description
50
+
51
+ # **[Required]** The state of the Channel.
52
+ # @return [String]
53
+ attr_reader :lifecycle_state
54
+
55
+ # A message describing the state of the Channel.
56
+ # @return [String]
57
+ attr_accessor :lifecycle_details
58
+
59
+ # **[Required]** The date and time the Channel was created, as described by [RFC 3339](https://tools.ietf.org/rfc/rfc3339).
60
+ #
61
+ # @return [DateTime]
62
+ attr_accessor :time_created
63
+
64
+ # **[Required]** The time the Channel was last updated, as described by [RFC 3339](https://tools.ietf.org/rfc/rfc3339).
65
+ #
66
+ # @return [DateTime]
67
+ attr_accessor :time_updated
68
+
69
+ # Simple key-value pair applied without any predefined name, type or scope. Exists for cross-compatibility only.
70
+ # Example: `{\"bar-key\": \"value\"}`
71
+ #
72
+ # @return [Hash<String, String>]
73
+ attr_accessor :freeform_tags
74
+
75
+ # Usage of predefined tag keys. These predefined keys are scoped to namespaces.
76
+ # Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}`
77
+ #
78
+ # @return [Hash<String, Hash<String, Object>>]
79
+ attr_accessor :defined_tags
80
+
81
+ # Attribute mapping from ruby-style variable name to JSON key.
82
+ def self.attribute_map
83
+ {
84
+ # rubocop:disable Style/SymbolLiteral
85
+ 'id': :'id',
86
+ 'compartment_id': :'compartmentId',
87
+ 'display_name': :'displayName',
88
+ 'is_enabled': :'isEnabled',
89
+ 'source': :'source',
90
+ 'target': :'target',
91
+ 'description': :'description',
92
+ 'lifecycle_state': :'lifecycleState',
93
+ 'lifecycle_details': :'lifecycleDetails',
94
+ 'time_created': :'timeCreated',
95
+ 'time_updated': :'timeUpdated',
96
+ 'freeform_tags': :'freeformTags',
97
+ 'defined_tags': :'definedTags'
98
+ # rubocop:enable Style/SymbolLiteral
99
+ }
100
+ end
101
+
102
+ # Attribute type mapping.
103
+ def self.swagger_types
104
+ {
105
+ # rubocop:disable Style/SymbolLiteral
106
+ 'id': :'String',
107
+ 'compartment_id': :'String',
108
+ 'display_name': :'String',
109
+ 'is_enabled': :'BOOLEAN',
110
+ 'source': :'OCI::Mysql::Models::ChannelSource',
111
+ 'target': :'OCI::Mysql::Models::ChannelTarget',
112
+ 'description': :'String',
113
+ 'lifecycle_state': :'String',
114
+ 'lifecycle_details': :'String',
115
+ 'time_created': :'DateTime',
116
+ 'time_updated': :'DateTime',
117
+ 'freeform_tags': :'Hash<String, String>',
118
+ 'defined_tags': :'Hash<String, Hash<String, Object>>'
119
+ # rubocop:enable Style/SymbolLiteral
120
+ }
121
+ end
122
+
123
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
124
+ # rubocop:disable Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
125
+
126
+
127
+ # Initializes the object
128
+ # @param [Hash] attributes Model attributes in the form of hash
129
+ # @option attributes [String] :id The value to assign to the {#id} property
130
+ # @option attributes [String] :compartment_id The value to assign to the {#compartment_id} property
131
+ # @option attributes [String] :display_name The value to assign to the {#display_name} property
132
+ # @option attributes [BOOLEAN] :is_enabled The value to assign to the {#is_enabled} property
133
+ # @option attributes [OCI::Mysql::Models::ChannelSource] :source The value to assign to the {#source} property
134
+ # @option attributes [OCI::Mysql::Models::ChannelTarget] :target The value to assign to the {#target} property
135
+ # @option attributes [String] :description The value to assign to the {#description} property
136
+ # @option attributes [String] :lifecycle_state The value to assign to the {#lifecycle_state} property
137
+ # @option attributes [String] :lifecycle_details The value to assign to the {#lifecycle_details} property
138
+ # @option attributes [DateTime] :time_created The value to assign to the {#time_created} property
139
+ # @option attributes [DateTime] :time_updated The value to assign to the {#time_updated} property
140
+ # @option attributes [Hash<String, String>] :freeform_tags The value to assign to the {#freeform_tags} property
141
+ # @option attributes [Hash<String, Hash<String, Object>>] :defined_tags The value to assign to the {#defined_tags} property
142
+ def initialize(attributes = {})
143
+ return unless attributes.is_a?(Hash)
144
+
145
+ # convert string to symbol for hash key
146
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
147
+
148
+ self.id = attributes[:'id'] if attributes[:'id']
149
+
150
+ self.compartment_id = attributes[:'compartmentId'] if attributes[:'compartmentId']
151
+
152
+ raise 'You cannot provide both :compartmentId and :compartment_id' if attributes.key?(:'compartmentId') && attributes.key?(:'compartment_id')
153
+
154
+ self.compartment_id = attributes[:'compartment_id'] if attributes[:'compartment_id']
155
+
156
+ self.display_name = attributes[:'displayName'] if attributes[:'displayName']
157
+
158
+ raise 'You cannot provide both :displayName and :display_name' if attributes.key?(:'displayName') && attributes.key?(:'display_name')
159
+
160
+ self.display_name = attributes[:'display_name'] if attributes[:'display_name']
161
+
162
+ self.is_enabled = attributes[:'isEnabled'] unless attributes[:'isEnabled'].nil?
163
+ self.is_enabled = true if is_enabled.nil? && !attributes.key?(:'isEnabled') # rubocop:disable Style/StringLiterals
164
+
165
+ raise 'You cannot provide both :isEnabled and :is_enabled' if attributes.key?(:'isEnabled') && attributes.key?(:'is_enabled')
166
+
167
+ self.is_enabled = attributes[:'is_enabled'] unless attributes[:'is_enabled'].nil?
168
+ self.is_enabled = true if is_enabled.nil? && !attributes.key?(:'isEnabled') && !attributes.key?(:'is_enabled') # rubocop:disable Style/StringLiterals
169
+
170
+ self.source = attributes[:'source'] if attributes[:'source']
171
+
172
+ self.target = attributes[:'target'] if attributes[:'target']
173
+
174
+ self.description = attributes[:'description'] if attributes[:'description']
175
+
176
+ self.lifecycle_state = attributes[:'lifecycleState'] if attributes[:'lifecycleState']
177
+
178
+ raise 'You cannot provide both :lifecycleState and :lifecycle_state' if attributes.key?(:'lifecycleState') && attributes.key?(:'lifecycle_state')
179
+
180
+ self.lifecycle_state = attributes[:'lifecycle_state'] if attributes[:'lifecycle_state']
181
+
182
+ self.lifecycle_details = attributes[:'lifecycleDetails'] if attributes[:'lifecycleDetails']
183
+
184
+ raise 'You cannot provide both :lifecycleDetails and :lifecycle_details' if attributes.key?(:'lifecycleDetails') && attributes.key?(:'lifecycle_details')
185
+
186
+ self.lifecycle_details = attributes[:'lifecycle_details'] if attributes[:'lifecycle_details']
187
+
188
+ self.time_created = attributes[:'timeCreated'] if attributes[:'timeCreated']
189
+
190
+ raise 'You cannot provide both :timeCreated and :time_created' if attributes.key?(:'timeCreated') && attributes.key?(:'time_created')
191
+
192
+ self.time_created = attributes[:'time_created'] if attributes[:'time_created']
193
+
194
+ self.time_updated = attributes[:'timeUpdated'] if attributes[:'timeUpdated']
195
+
196
+ raise 'You cannot provide both :timeUpdated and :time_updated' if attributes.key?(:'timeUpdated') && attributes.key?(:'time_updated')
197
+
198
+ self.time_updated = attributes[:'time_updated'] if attributes[:'time_updated']
199
+
200
+ self.freeform_tags = attributes[:'freeformTags'] if attributes[:'freeformTags']
201
+
202
+ raise 'You cannot provide both :freeformTags and :freeform_tags' if attributes.key?(:'freeformTags') && attributes.key?(:'freeform_tags')
203
+
204
+ self.freeform_tags = attributes[:'freeform_tags'] if attributes[:'freeform_tags']
205
+
206
+ self.defined_tags = attributes[:'definedTags'] if attributes[:'definedTags']
207
+
208
+ raise 'You cannot provide both :definedTags and :defined_tags' if attributes.key?(:'definedTags') && attributes.key?(:'defined_tags')
209
+
210
+ self.defined_tags = attributes[:'defined_tags'] if attributes[:'defined_tags']
211
+ end
212
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
213
+ # rubocop:enable Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
214
+
215
+ # Custom attribute writer method checking allowed values (enum).
216
+ # @param [Object] lifecycle_state Object to be assigned
217
+ def lifecycle_state=(lifecycle_state)
218
+ # rubocop:disable Style/ConditionalAssignment
219
+ if lifecycle_state && !LIFECYCLE_STATE_ENUM.include?(lifecycle_state)
220
+ OCI.logger.debug("Unknown value for 'lifecycle_state' [" + lifecycle_state + "]. Mapping to 'LIFECYCLE_STATE_UNKNOWN_ENUM_VALUE'") if OCI.logger
221
+ @lifecycle_state = LIFECYCLE_STATE_UNKNOWN_ENUM_VALUE
222
+ else
223
+ @lifecycle_state = lifecycle_state
224
+ end
225
+ # rubocop:enable Style/ConditionalAssignment
226
+ end
227
+
228
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
229
+
230
+
231
+ # Checks equality by comparing each attribute.
232
+ # @param [Object] other the other object to be compared
233
+ def ==(other)
234
+ return true if equal?(other)
235
+
236
+ self.class == other.class &&
237
+ id == other.id &&
238
+ compartment_id == other.compartment_id &&
239
+ display_name == other.display_name &&
240
+ is_enabled == other.is_enabled &&
241
+ source == other.source &&
242
+ target == other.target &&
243
+ description == other.description &&
244
+ lifecycle_state == other.lifecycle_state &&
245
+ lifecycle_details == other.lifecycle_details &&
246
+ time_created == other.time_created &&
247
+ time_updated == other.time_updated &&
248
+ freeform_tags == other.freeform_tags &&
249
+ defined_tags == other.defined_tags
250
+ end
251
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
252
+
253
+ # @see the `==` method
254
+ # @param [Object] other the other object to be compared
255
+ def eql?(other)
256
+ self == other
257
+ end
258
+
259
+ # rubocop:disable Metrics/AbcSize, Layout/EmptyLines
260
+
261
+
262
+ # Calculates hash code according to all attributes.
263
+ # @return [Fixnum] Hash code
264
+ def hash
265
+ [id, compartment_id, display_name, is_enabled, source, target, description, lifecycle_state, lifecycle_details, time_created, time_updated, freeform_tags, defined_tags].hash
266
+ end
267
+ # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
268
+
269
+ # rubocop:disable Metrics/AbcSize, Layout/EmptyLines
270
+
271
+
272
+ # Builds the object from hash
273
+ # @param [Hash] attributes Model attributes in the form of hash
274
+ # @return [Object] Returns the model itself
275
+ def build_from_hash(attributes)
276
+ return nil unless attributes.is_a?(Hash)
277
+
278
+ self.class.swagger_types.each_pair do |key, type|
279
+ if type =~ /^Array<(.*)>/i
280
+ # check to ensure the input is an array given that the the attribute
281
+ # is documented as an array but the input is not
282
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
283
+ public_method("#{key}=").call(
284
+ attributes[self.class.attribute_map[key]]
285
+ .map { |v| OCI::Internal::Util.convert_to_type(Regexp.last_match(1), v) }
286
+ )
287
+ end
288
+ elsif !attributes[self.class.attribute_map[key]].nil?
289
+ public_method("#{key}=").call(
290
+ OCI::Internal::Util.convert_to_type(type, attributes[self.class.attribute_map[key]])
291
+ )
292
+ end
293
+ # or else data not found in attributes(hash), not an issue as the data can be optional
294
+ end
295
+
296
+ self
297
+ end
298
+ # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
299
+
300
+ # Returns the string representation of the object
301
+ # @return [String] String presentation of the object
302
+ def to_s
303
+ to_hash.to_s
304
+ end
305
+
306
+ # Returns the object in the form of hash
307
+ # @return [Hash] Returns the object in the form of hash
308
+ def to_hash
309
+ hash = {}
310
+ self.class.attribute_map.each_pair do |attr, param|
311
+ value = public_method(attr).call
312
+ next if value.nil? && !instance_variable_defined?("@#{attr}")
313
+
314
+ hash[param] = _to_hash(value)
315
+ end
316
+ hash
317
+ end
318
+
319
+ private
320
+
321
+ # Outputs non-array value in the form of hash
322
+ # For object, use to_hash. Otherwise, just return the value
323
+ # @param [Object] value Any valid value
324
+ # @return [Hash] Returns the value in the form of hash
325
+ def _to_hash(value)
326
+ if value.is_a?(Array)
327
+ value.compact.map { |v| _to_hash(v) }
328
+ elsif value.is_a?(Hash)
329
+ {}.tap do |hash|
330
+ value.each { |k, v| hash[k] = _to_hash(v) }
331
+ end
332
+ elsif value.respond_to? :to_hash
333
+ value.to_hash
334
+ else
335
+ value
336
+ end
337
+ end
338
+ end
339
+ end
340
+ # rubocop:enable Lint/UnneededCopDisableDirective, Metrics/LineLength