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
@@ -0,0 +1,320 @@
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
+ # Information required to create a RoverEntitlement.
9
+ class Rover::Models::CreateRoverEntitlementDetails
10
+ LIFECYCLE_STATE_ENUM = [
11
+ LIFECYCLE_STATE_CREATING = 'CREATING'.freeze,
12
+ LIFECYCLE_STATE_UPDATING = 'UPDATING'.freeze,
13
+ LIFECYCLE_STATE_ACTIVE = 'ACTIVE'.freeze,
14
+ LIFECYCLE_STATE_DELETING = 'DELETING'.freeze,
15
+ LIFECYCLE_STATE_DELETED = 'DELETED'.freeze,
16
+ LIFECYCLE_STATE_FAILED = 'FAILED'.freeze
17
+ ].freeze
18
+
19
+ # **[Required]** The OCID of the compartment containing the RoverEntitlement.
20
+ # @return [String]
21
+ attr_accessor :compartment_id
22
+
23
+ # A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information.
24
+ # @return [String]
25
+ attr_accessor :display_name
26
+
27
+ # **[Required]** Requestor name for the entitlement.
28
+ # @return [String]
29
+ attr_accessor :requestor_name
30
+
31
+ # **[Required]** Requestor email for the entitlement.
32
+ # @return [String]
33
+ attr_accessor :requestor_email
34
+
35
+ # Details about the entitlement.
36
+ # @return [String]
37
+ attr_accessor :entitlement_details
38
+
39
+ # The current state of the RoverNode.
40
+ # @return [String]
41
+ attr_reader :lifecycle_state
42
+
43
+ # A property that can contain details on the lifecycle.
44
+ # @return [String]
45
+ attr_accessor :lifecycle_state_details
46
+
47
+ # tenant Id.
48
+ # @return [String]
49
+ attr_accessor :tenant_id
50
+
51
+ # The freeform tags associated with this resource, if any. Each tag is a simple key-value pair with no
52
+ # predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).
53
+ # Example: `{\"Department\": \"Finance\"}`
54
+ #
55
+ # @return [Hash<String, String>]
56
+ attr_accessor :freeform_tags
57
+
58
+ # The defined tags associated with this resource, if any. Each key is predefined and scoped to namespaces.
59
+ # For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).
60
+ # Example: `{\"Operations\": {\"CostCenter\": \"42\"}}`
61
+ #
62
+ # @return [Hash<String, Hash<String, Object>>]
63
+ attr_accessor :defined_tags
64
+
65
+ # The system tags associated with this resource, if any. The system tags are set by Oracle cloud infrastructure services. Each key is predefined and scoped to namespaces.
66
+ # For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).
67
+ # Example: `{orcl-cloud: {free-tier-retain: true}}`
68
+ #
69
+ # @return [Hash<String, Hash<String, Object>>]
70
+ attr_accessor :system_tags
71
+
72
+ # Attribute mapping from ruby-style variable name to JSON key.
73
+ def self.attribute_map
74
+ {
75
+ # rubocop:disable Style/SymbolLiteral
76
+ 'compartment_id': :'compartmentId',
77
+ 'display_name': :'displayName',
78
+ 'requestor_name': :'requestorName',
79
+ 'requestor_email': :'requestorEmail',
80
+ 'entitlement_details': :'entitlementDetails',
81
+ 'lifecycle_state': :'lifecycleState',
82
+ 'lifecycle_state_details': :'lifecycleStateDetails',
83
+ 'tenant_id': :'tenantId',
84
+ 'freeform_tags': :'freeformTags',
85
+ 'defined_tags': :'definedTags',
86
+ 'system_tags': :'systemTags'
87
+ # rubocop:enable Style/SymbolLiteral
88
+ }
89
+ end
90
+
91
+ # Attribute type mapping.
92
+ def self.swagger_types
93
+ {
94
+ # rubocop:disable Style/SymbolLiteral
95
+ 'compartment_id': :'String',
96
+ 'display_name': :'String',
97
+ 'requestor_name': :'String',
98
+ 'requestor_email': :'String',
99
+ 'entitlement_details': :'String',
100
+ 'lifecycle_state': :'String',
101
+ 'lifecycle_state_details': :'String',
102
+ 'tenant_id': :'String',
103
+ 'freeform_tags': :'Hash<String, String>',
104
+ 'defined_tags': :'Hash<String, Hash<String, Object>>',
105
+ 'system_tags': :'Hash<String, Hash<String, Object>>'
106
+ # rubocop:enable Style/SymbolLiteral
107
+ }
108
+ end
109
+
110
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
111
+ # rubocop:disable Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
112
+
113
+
114
+ # Initializes the object
115
+ # @param [Hash] attributes Model attributes in the form of hash
116
+ # @option attributes [String] :compartment_id The value to assign to the {#compartment_id} property
117
+ # @option attributes [String] :display_name The value to assign to the {#display_name} property
118
+ # @option attributes [String] :requestor_name The value to assign to the {#requestor_name} property
119
+ # @option attributes [String] :requestor_email The value to assign to the {#requestor_email} property
120
+ # @option attributes [String] :entitlement_details The value to assign to the {#entitlement_details} property
121
+ # @option attributes [String] :lifecycle_state The value to assign to the {#lifecycle_state} property
122
+ # @option attributes [String] :lifecycle_state_details The value to assign to the {#lifecycle_state_details} property
123
+ # @option attributes [String] :tenant_id The value to assign to the {#tenant_id} property
124
+ # @option attributes [Hash<String, String>] :freeform_tags The value to assign to the {#freeform_tags} property
125
+ # @option attributes [Hash<String, Hash<String, Object>>] :defined_tags The value to assign to the {#defined_tags} property
126
+ # @option attributes [Hash<String, Hash<String, Object>>] :system_tags The value to assign to the {#system_tags} property
127
+ def initialize(attributes = {})
128
+ return unless attributes.is_a?(Hash)
129
+
130
+ # convert string to symbol for hash key
131
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
132
+
133
+ self.compartment_id = attributes[:'compartmentId'] if attributes[:'compartmentId']
134
+
135
+ raise 'You cannot provide both :compartmentId and :compartment_id' if attributes.key?(:'compartmentId') && attributes.key?(:'compartment_id')
136
+
137
+ self.compartment_id = attributes[:'compartment_id'] if attributes[:'compartment_id']
138
+
139
+ self.display_name = attributes[:'displayName'] if attributes[:'displayName']
140
+
141
+ raise 'You cannot provide both :displayName and :display_name' if attributes.key?(:'displayName') && attributes.key?(:'display_name')
142
+
143
+ self.display_name = attributes[:'display_name'] if attributes[:'display_name']
144
+
145
+ self.requestor_name = attributes[:'requestorName'] if attributes[:'requestorName']
146
+
147
+ raise 'You cannot provide both :requestorName and :requestor_name' if attributes.key?(:'requestorName') && attributes.key?(:'requestor_name')
148
+
149
+ self.requestor_name = attributes[:'requestor_name'] if attributes[:'requestor_name']
150
+
151
+ self.requestor_email = attributes[:'requestorEmail'] if attributes[:'requestorEmail']
152
+
153
+ raise 'You cannot provide both :requestorEmail and :requestor_email' if attributes.key?(:'requestorEmail') && attributes.key?(:'requestor_email')
154
+
155
+ self.requestor_email = attributes[:'requestor_email'] if attributes[:'requestor_email']
156
+
157
+ self.entitlement_details = attributes[:'entitlementDetails'] if attributes[:'entitlementDetails']
158
+
159
+ raise 'You cannot provide both :entitlementDetails and :entitlement_details' if attributes.key?(:'entitlementDetails') && attributes.key?(:'entitlement_details')
160
+
161
+ self.entitlement_details = attributes[:'entitlement_details'] if attributes[:'entitlement_details']
162
+
163
+ self.lifecycle_state = attributes[:'lifecycleState'] if attributes[:'lifecycleState']
164
+
165
+ raise 'You cannot provide both :lifecycleState and :lifecycle_state' if attributes.key?(:'lifecycleState') && attributes.key?(:'lifecycle_state')
166
+
167
+ self.lifecycle_state = attributes[:'lifecycle_state'] if attributes[:'lifecycle_state']
168
+
169
+ self.lifecycle_state_details = attributes[:'lifecycleStateDetails'] if attributes[:'lifecycleStateDetails']
170
+
171
+ raise 'You cannot provide both :lifecycleStateDetails and :lifecycle_state_details' if attributes.key?(:'lifecycleStateDetails') && attributes.key?(:'lifecycle_state_details')
172
+
173
+ self.lifecycle_state_details = attributes[:'lifecycle_state_details'] if attributes[:'lifecycle_state_details']
174
+
175
+ self.tenant_id = attributes[:'tenantId'] if attributes[:'tenantId']
176
+
177
+ raise 'You cannot provide both :tenantId and :tenant_id' if attributes.key?(:'tenantId') && attributes.key?(:'tenant_id')
178
+
179
+ self.tenant_id = attributes[:'tenant_id'] if attributes[:'tenant_id']
180
+
181
+ self.freeform_tags = attributes[:'freeformTags'] if attributes[:'freeformTags']
182
+
183
+ raise 'You cannot provide both :freeformTags and :freeform_tags' if attributes.key?(:'freeformTags') && attributes.key?(:'freeform_tags')
184
+
185
+ self.freeform_tags = attributes[:'freeform_tags'] if attributes[:'freeform_tags']
186
+
187
+ self.defined_tags = attributes[:'definedTags'] if attributes[:'definedTags']
188
+
189
+ raise 'You cannot provide both :definedTags and :defined_tags' if attributes.key?(:'definedTags') && attributes.key?(:'defined_tags')
190
+
191
+ self.defined_tags = attributes[:'defined_tags'] if attributes[:'defined_tags']
192
+
193
+ self.system_tags = attributes[:'systemTags'] if attributes[:'systemTags']
194
+
195
+ raise 'You cannot provide both :systemTags and :system_tags' if attributes.key?(:'systemTags') && attributes.key?(:'system_tags')
196
+
197
+ self.system_tags = attributes[:'system_tags'] if attributes[:'system_tags']
198
+ end
199
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
200
+ # rubocop:enable Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
201
+
202
+ # Custom attribute writer method checking allowed values (enum).
203
+ # @param [Object] lifecycle_state Object to be assigned
204
+ def lifecycle_state=(lifecycle_state)
205
+ raise "Invalid value for 'lifecycle_state': this must be one of the values in LIFECYCLE_STATE_ENUM." if lifecycle_state && !LIFECYCLE_STATE_ENUM.include?(lifecycle_state)
206
+
207
+ @lifecycle_state = lifecycle_state
208
+ end
209
+
210
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
211
+
212
+
213
+ # Checks equality by comparing each attribute.
214
+ # @param [Object] other the other object to be compared
215
+ def ==(other)
216
+ return true if equal?(other)
217
+
218
+ self.class == other.class &&
219
+ compartment_id == other.compartment_id &&
220
+ display_name == other.display_name &&
221
+ requestor_name == other.requestor_name &&
222
+ requestor_email == other.requestor_email &&
223
+ entitlement_details == other.entitlement_details &&
224
+ lifecycle_state == other.lifecycle_state &&
225
+ lifecycle_state_details == other.lifecycle_state_details &&
226
+ tenant_id == other.tenant_id &&
227
+ freeform_tags == other.freeform_tags &&
228
+ defined_tags == other.defined_tags &&
229
+ system_tags == other.system_tags
230
+ end
231
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
232
+
233
+ # @see the `==` method
234
+ # @param [Object] other the other object to be compared
235
+ def eql?(other)
236
+ self == other
237
+ end
238
+
239
+ # rubocop:disable Metrics/AbcSize, Layout/EmptyLines
240
+
241
+
242
+ # Calculates hash code according to all attributes.
243
+ # @return [Fixnum] Hash code
244
+ def hash
245
+ [compartment_id, display_name, requestor_name, requestor_email, entitlement_details, lifecycle_state, lifecycle_state_details, tenant_id, freeform_tags, defined_tags, system_tags].hash
246
+ end
247
+ # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
248
+
249
+ # rubocop:disable Metrics/AbcSize, Layout/EmptyLines
250
+
251
+
252
+ # Builds the object from hash
253
+ # @param [Hash] attributes Model attributes in the form of hash
254
+ # @return [Object] Returns the model itself
255
+ def build_from_hash(attributes)
256
+ return nil unless attributes.is_a?(Hash)
257
+
258
+ self.class.swagger_types.each_pair do |key, type|
259
+ if type =~ /^Array<(.*)>/i
260
+ # check to ensure the input is an array given that the the attribute
261
+ # is documented as an array but the input is not
262
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
263
+ public_method("#{key}=").call(
264
+ attributes[self.class.attribute_map[key]]
265
+ .map { |v| OCI::Internal::Util.convert_to_type(Regexp.last_match(1), v) }
266
+ )
267
+ end
268
+ elsif !attributes[self.class.attribute_map[key]].nil?
269
+ public_method("#{key}=").call(
270
+ OCI::Internal::Util.convert_to_type(type, attributes[self.class.attribute_map[key]])
271
+ )
272
+ end
273
+ # or else data not found in attributes(hash), not an issue as the data can be optional
274
+ end
275
+
276
+ self
277
+ end
278
+ # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
279
+
280
+ # Returns the string representation of the object
281
+ # @return [String] String presentation of the object
282
+ def to_s
283
+ to_hash.to_s
284
+ end
285
+
286
+ # Returns the object in the form of hash
287
+ # @return [Hash] Returns the object in the form of hash
288
+ def to_hash
289
+ hash = {}
290
+ self.class.attribute_map.each_pair do |attr, param|
291
+ value = public_method(attr).call
292
+ next if value.nil? && !instance_variable_defined?("@#{attr}")
293
+
294
+ hash[param] = _to_hash(value)
295
+ end
296
+ hash
297
+ end
298
+
299
+ private
300
+
301
+ # Outputs non-array value in the form of hash
302
+ # For object, use to_hash. Otherwise, just return the value
303
+ # @param [Object] value Any valid value
304
+ # @return [Hash] Returns the value in the form of hash
305
+ def _to_hash(value)
306
+ if value.is_a?(Array)
307
+ value.compact.map { |v| _to_hash(v) }
308
+ elsif value.is_a?(Hash)
309
+ {}.tap do |hash|
310
+ value.each { |k, v| hash[k] = _to_hash(v) }
311
+ end
312
+ elsif value.respond_to? :to_hash
313
+ value.to_hash
314
+ else
315
+ value
316
+ end
317
+ end
318
+ end
319
+ end
320
+ # rubocop:enable Lint/UnneededCopDisableDirective, Metrics/LineLength
@@ -0,0 +1,501 @@
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
+ # The information requied to create a RoverNode.
9
+ class Rover::Models::CreateRoverNodeDetails
10
+ SHIPPING_PREFERENCE_ENUM = [
11
+ SHIPPING_PREFERENCE_ORACLE_SHIPPED = 'ORACLE_SHIPPED'.freeze,
12
+ SHIPPING_PREFERENCE_CUSTOMER_PICKUP = 'CUSTOMER_PICKUP'.freeze
13
+ ].freeze
14
+
15
+ LIFECYCLE_STATE_ENUM = [
16
+ LIFECYCLE_STATE_CREATING = 'CREATING'.freeze,
17
+ LIFECYCLE_STATE_UPDATING = 'UPDATING'.freeze,
18
+ LIFECYCLE_STATE_ACTIVE = 'ACTIVE'.freeze,
19
+ LIFECYCLE_STATE_DELETING = 'DELETING'.freeze,
20
+ LIFECYCLE_STATE_DELETED = 'DELETED'.freeze,
21
+ LIFECYCLE_STATE_FAILED = 'FAILED'.freeze
22
+ ].freeze
23
+
24
+ ENCLOSURE_TYPE_ENUM = [
25
+ ENCLOSURE_TYPE_RUGGADIZED = 'RUGGADIZED'.freeze,
26
+ ENCLOSURE_TYPE_NON_RUGGADIZED = 'NON_RUGGADIZED'.freeze
27
+ ].freeze
28
+
29
+ # **[Required]** A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information.
30
+ # @return [String]
31
+ attr_accessor :display_name
32
+
33
+ # **[Required]** The OCID of the compartment containing the RoverNode.
34
+ # @return [String]
35
+ attr_accessor :compartment_id
36
+
37
+ # @return [OCI::Rover::Models::ShippingAddress]
38
+ attr_accessor :customer_shipping_address
39
+
40
+ # List of existing workloads that should be provisioned on the node.
41
+ # @return [Array<OCI::Rover::Models::RoverWorkload>]
42
+ attr_accessor :node_workloads
43
+
44
+ # Root password for the rover node.
45
+ # @return [String]
46
+ attr_accessor :super_user_password
47
+
48
+ # Passphrase to unlock the rover node.
49
+ # @return [String]
50
+ attr_accessor :unlock_passphrase
51
+
52
+ # Name of point of contact for this order if customer is picking up.
53
+ # @return [String]
54
+ attr_accessor :point_of_contact
55
+
56
+ # Phone number of point of contact for this order if customer is picking up.
57
+ # @return [String]
58
+ attr_accessor :point_of_contact_phone_number
59
+
60
+ # Preference for device delivery.
61
+ # @return [String]
62
+ attr_reader :shipping_preference
63
+
64
+ # Shipping vendor of choice for orace to customer shipping.
65
+ # @return [String]
66
+ attr_accessor :shipping_vendor
67
+
68
+ # Expected date when customer wants to pickup the device if they chose customer pickup.
69
+ # @return [DateTime]
70
+ attr_accessor :time_pickup_expected
71
+
72
+ # The public key of the resource principal
73
+ # @return [String]
74
+ attr_accessor :public_key
75
+
76
+ # Start time for the window to pickup the device from customer.
77
+ # @return [DateTime]
78
+ attr_accessor :time_return_window_starts
79
+
80
+ # End time for the window to pickup the device from customer.
81
+ # @return [DateTime]
82
+ attr_accessor :time_return_window_ends
83
+
84
+ # The current state of the RoverNode.
85
+ # @return [String]
86
+ attr_reader :lifecycle_state
87
+
88
+ # The type of enclosure rover nodes in this cluster are shipped in.
89
+ # @return [String]
90
+ attr_reader :enclosure_type
91
+
92
+ # A property that can contain details on the lifecycle.
93
+ # @return [String]
94
+ attr_accessor :lifecycle_state_details
95
+
96
+ # Serial number of the node.
97
+ # @return [String]
98
+ attr_accessor :serial_number
99
+
100
+ # Tracking Url for the shipped FmsRoverNode.
101
+ # @return [String]
102
+ attr_accessor :oracle_shipping_tracking_url
103
+
104
+ # The freeform tags associated with this resource, if any. Each tag is a simple key-value pair with no
105
+ # predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).
106
+ # Example: `{\"Department\": \"Finance\"}`
107
+ #
108
+ # @return [Hash<String, String>]
109
+ attr_accessor :freeform_tags
110
+
111
+ # The defined tags associated with this resource, if any. Each key is predefined and scoped to namespaces.
112
+ # For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).
113
+ # Example: `{\"Operations\": {\"CostCenter\": \"42\"}}`
114
+ #
115
+ # @return [Hash<String, Hash<String, Object>>]
116
+ attr_accessor :defined_tags
117
+
118
+ # The system tags associated with this resource, if any. The system tags are set by Oracle cloud infrastructure services. Each key is predefined and scoped to namespaces.
119
+ # For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).
120
+ # Example: `{orcl-cloud: {free-tier-retain: true}}`
121
+ #
122
+ # @return [Hash<String, Hash<String, Object>>]
123
+ attr_accessor :system_tags
124
+
125
+ # Attribute mapping from ruby-style variable name to JSON key.
126
+ def self.attribute_map
127
+ {
128
+ # rubocop:disable Style/SymbolLiteral
129
+ 'display_name': :'displayName',
130
+ 'compartment_id': :'compartmentId',
131
+ 'customer_shipping_address': :'customerShippingAddress',
132
+ 'node_workloads': :'nodeWorkloads',
133
+ 'super_user_password': :'superUserPassword',
134
+ 'unlock_passphrase': :'unlockPassphrase',
135
+ 'point_of_contact': :'pointOfContact',
136
+ 'point_of_contact_phone_number': :'pointOfContactPhoneNumber',
137
+ 'shipping_preference': :'shippingPreference',
138
+ 'shipping_vendor': :'shippingVendor',
139
+ 'time_pickup_expected': :'timePickupExpected',
140
+ 'public_key': :'publicKey',
141
+ 'time_return_window_starts': :'timeReturnWindowStarts',
142
+ 'time_return_window_ends': :'timeReturnWindowEnds',
143
+ 'lifecycle_state': :'lifecycleState',
144
+ 'enclosure_type': :'enclosureType',
145
+ 'lifecycle_state_details': :'lifecycleStateDetails',
146
+ 'serial_number': :'serialNumber',
147
+ 'oracle_shipping_tracking_url': :'oracleShippingTrackingUrl',
148
+ 'freeform_tags': :'freeformTags',
149
+ 'defined_tags': :'definedTags',
150
+ 'system_tags': :'systemTags'
151
+ # rubocop:enable Style/SymbolLiteral
152
+ }
153
+ end
154
+
155
+ # Attribute type mapping.
156
+ def self.swagger_types
157
+ {
158
+ # rubocop:disable Style/SymbolLiteral
159
+ 'display_name': :'String',
160
+ 'compartment_id': :'String',
161
+ 'customer_shipping_address': :'OCI::Rover::Models::ShippingAddress',
162
+ 'node_workloads': :'Array<OCI::Rover::Models::RoverWorkload>',
163
+ 'super_user_password': :'String',
164
+ 'unlock_passphrase': :'String',
165
+ 'point_of_contact': :'String',
166
+ 'point_of_contact_phone_number': :'String',
167
+ 'shipping_preference': :'String',
168
+ 'shipping_vendor': :'String',
169
+ 'time_pickup_expected': :'DateTime',
170
+ 'public_key': :'String',
171
+ 'time_return_window_starts': :'DateTime',
172
+ 'time_return_window_ends': :'DateTime',
173
+ 'lifecycle_state': :'String',
174
+ 'enclosure_type': :'String',
175
+ 'lifecycle_state_details': :'String',
176
+ 'serial_number': :'String',
177
+ 'oracle_shipping_tracking_url': :'String',
178
+ 'freeform_tags': :'Hash<String, String>',
179
+ 'defined_tags': :'Hash<String, Hash<String, Object>>',
180
+ 'system_tags': :'Hash<String, Hash<String, Object>>'
181
+ # rubocop:enable Style/SymbolLiteral
182
+ }
183
+ end
184
+
185
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
186
+ # rubocop:disable Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
187
+
188
+
189
+ # Initializes the object
190
+ # @param [Hash] attributes Model attributes in the form of hash
191
+ # @option attributes [String] :display_name The value to assign to the {#display_name} property
192
+ # @option attributes [String] :compartment_id The value to assign to the {#compartment_id} property
193
+ # @option attributes [OCI::Rover::Models::ShippingAddress] :customer_shipping_address The value to assign to the {#customer_shipping_address} property
194
+ # @option attributes [Array<OCI::Rover::Models::RoverWorkload>] :node_workloads The value to assign to the {#node_workloads} property
195
+ # @option attributes [String] :super_user_password The value to assign to the {#super_user_password} property
196
+ # @option attributes [String] :unlock_passphrase The value to assign to the {#unlock_passphrase} property
197
+ # @option attributes [String] :point_of_contact The value to assign to the {#point_of_contact} property
198
+ # @option attributes [String] :point_of_contact_phone_number The value to assign to the {#point_of_contact_phone_number} property
199
+ # @option attributes [String] :shipping_preference The value to assign to the {#shipping_preference} property
200
+ # @option attributes [String] :shipping_vendor The value to assign to the {#shipping_vendor} property
201
+ # @option attributes [DateTime] :time_pickup_expected The value to assign to the {#time_pickup_expected} property
202
+ # @option attributes [String] :public_key The value to assign to the {#public_key} property
203
+ # @option attributes [DateTime] :time_return_window_starts The value to assign to the {#time_return_window_starts} property
204
+ # @option attributes [DateTime] :time_return_window_ends The value to assign to the {#time_return_window_ends} property
205
+ # @option attributes [String] :lifecycle_state The value to assign to the {#lifecycle_state} property
206
+ # @option attributes [String] :enclosure_type The value to assign to the {#enclosure_type} property
207
+ # @option attributes [String] :lifecycle_state_details The value to assign to the {#lifecycle_state_details} property
208
+ # @option attributes [String] :serial_number The value to assign to the {#serial_number} property
209
+ # @option attributes [String] :oracle_shipping_tracking_url The value to assign to the {#oracle_shipping_tracking_url} property
210
+ # @option attributes [Hash<String, String>] :freeform_tags The value to assign to the {#freeform_tags} property
211
+ # @option attributes [Hash<String, Hash<String, Object>>] :defined_tags The value to assign to the {#defined_tags} property
212
+ # @option attributes [Hash<String, Hash<String, Object>>] :system_tags The value to assign to the {#system_tags} property
213
+ def initialize(attributes = {})
214
+ return unless attributes.is_a?(Hash)
215
+
216
+ # convert string to symbol for hash key
217
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
218
+
219
+ self.display_name = attributes[:'displayName'] if attributes[:'displayName']
220
+
221
+ raise 'You cannot provide both :displayName and :display_name' if attributes.key?(:'displayName') && attributes.key?(:'display_name')
222
+
223
+ self.display_name = attributes[:'display_name'] if attributes[:'display_name']
224
+
225
+ self.compartment_id = attributes[:'compartmentId'] if attributes[:'compartmentId']
226
+
227
+ raise 'You cannot provide both :compartmentId and :compartment_id' if attributes.key?(:'compartmentId') && attributes.key?(:'compartment_id')
228
+
229
+ self.compartment_id = attributes[:'compartment_id'] if attributes[:'compartment_id']
230
+
231
+ self.customer_shipping_address = attributes[:'customerShippingAddress'] if attributes[:'customerShippingAddress']
232
+
233
+ raise 'You cannot provide both :customerShippingAddress and :customer_shipping_address' if attributes.key?(:'customerShippingAddress') && attributes.key?(:'customer_shipping_address')
234
+
235
+ self.customer_shipping_address = attributes[:'customer_shipping_address'] if attributes[:'customer_shipping_address']
236
+
237
+ self.node_workloads = attributes[:'nodeWorkloads'] if attributes[:'nodeWorkloads']
238
+
239
+ raise 'You cannot provide both :nodeWorkloads and :node_workloads' if attributes.key?(:'nodeWorkloads') && attributes.key?(:'node_workloads')
240
+
241
+ self.node_workloads = attributes[:'node_workloads'] if attributes[:'node_workloads']
242
+
243
+ self.super_user_password = attributes[:'superUserPassword'] if attributes[:'superUserPassword']
244
+
245
+ raise 'You cannot provide both :superUserPassword and :super_user_password' if attributes.key?(:'superUserPassword') && attributes.key?(:'super_user_password')
246
+
247
+ self.super_user_password = attributes[:'super_user_password'] if attributes[:'super_user_password']
248
+
249
+ self.unlock_passphrase = attributes[:'unlockPassphrase'] if attributes[:'unlockPassphrase']
250
+
251
+ raise 'You cannot provide both :unlockPassphrase and :unlock_passphrase' if attributes.key?(:'unlockPassphrase') && attributes.key?(:'unlock_passphrase')
252
+
253
+ self.unlock_passphrase = attributes[:'unlock_passphrase'] if attributes[:'unlock_passphrase']
254
+
255
+ self.point_of_contact = attributes[:'pointOfContact'] if attributes[:'pointOfContact']
256
+
257
+ raise 'You cannot provide both :pointOfContact and :point_of_contact' if attributes.key?(:'pointOfContact') && attributes.key?(:'point_of_contact')
258
+
259
+ self.point_of_contact = attributes[:'point_of_contact'] if attributes[:'point_of_contact']
260
+
261
+ self.point_of_contact_phone_number = attributes[:'pointOfContactPhoneNumber'] if attributes[:'pointOfContactPhoneNumber']
262
+
263
+ raise 'You cannot provide both :pointOfContactPhoneNumber and :point_of_contact_phone_number' if attributes.key?(:'pointOfContactPhoneNumber') && attributes.key?(:'point_of_contact_phone_number')
264
+
265
+ self.point_of_contact_phone_number = attributes[:'point_of_contact_phone_number'] if attributes[:'point_of_contact_phone_number']
266
+
267
+ self.shipping_preference = attributes[:'shippingPreference'] if attributes[:'shippingPreference']
268
+ self.shipping_preference = "ORACLE_SHIPPED" if shipping_preference.nil? && !attributes.key?(:'shippingPreference') # rubocop:disable Style/StringLiterals
269
+
270
+ raise 'You cannot provide both :shippingPreference and :shipping_preference' if attributes.key?(:'shippingPreference') && attributes.key?(:'shipping_preference')
271
+
272
+ self.shipping_preference = attributes[:'shipping_preference'] if attributes[:'shipping_preference']
273
+ self.shipping_preference = "ORACLE_SHIPPED" if shipping_preference.nil? && !attributes.key?(:'shippingPreference') && !attributes.key?(:'shipping_preference') # rubocop:disable Style/StringLiterals
274
+
275
+ self.shipping_vendor = attributes[:'shippingVendor'] if attributes[:'shippingVendor']
276
+
277
+ raise 'You cannot provide both :shippingVendor and :shipping_vendor' if attributes.key?(:'shippingVendor') && attributes.key?(:'shipping_vendor')
278
+
279
+ self.shipping_vendor = attributes[:'shipping_vendor'] if attributes[:'shipping_vendor']
280
+
281
+ self.time_pickup_expected = attributes[:'timePickupExpected'] if attributes[:'timePickupExpected']
282
+
283
+ raise 'You cannot provide both :timePickupExpected and :time_pickup_expected' if attributes.key?(:'timePickupExpected') && attributes.key?(:'time_pickup_expected')
284
+
285
+ self.time_pickup_expected = attributes[:'time_pickup_expected'] if attributes[:'time_pickup_expected']
286
+
287
+ self.public_key = attributes[:'publicKey'] if attributes[:'publicKey']
288
+
289
+ raise 'You cannot provide both :publicKey and :public_key' if attributes.key?(:'publicKey') && attributes.key?(:'public_key')
290
+
291
+ self.public_key = attributes[:'public_key'] if attributes[:'public_key']
292
+
293
+ self.time_return_window_starts = attributes[:'timeReturnWindowStarts'] if attributes[:'timeReturnWindowStarts']
294
+
295
+ raise 'You cannot provide both :timeReturnWindowStarts and :time_return_window_starts' if attributes.key?(:'timeReturnWindowStarts') && attributes.key?(:'time_return_window_starts')
296
+
297
+ self.time_return_window_starts = attributes[:'time_return_window_starts'] if attributes[:'time_return_window_starts']
298
+
299
+ self.time_return_window_ends = attributes[:'timeReturnWindowEnds'] if attributes[:'timeReturnWindowEnds']
300
+
301
+ raise 'You cannot provide both :timeReturnWindowEnds and :time_return_window_ends' if attributes.key?(:'timeReturnWindowEnds') && attributes.key?(:'time_return_window_ends')
302
+
303
+ self.time_return_window_ends = attributes[:'time_return_window_ends'] if attributes[:'time_return_window_ends']
304
+
305
+ self.lifecycle_state = attributes[:'lifecycleState'] if attributes[:'lifecycleState']
306
+
307
+ raise 'You cannot provide both :lifecycleState and :lifecycle_state' if attributes.key?(:'lifecycleState') && attributes.key?(:'lifecycle_state')
308
+
309
+ self.lifecycle_state = attributes[:'lifecycle_state'] if attributes[:'lifecycle_state']
310
+
311
+ self.enclosure_type = attributes[:'enclosureType'] if attributes[:'enclosureType']
312
+
313
+ raise 'You cannot provide both :enclosureType and :enclosure_type' if attributes.key?(:'enclosureType') && attributes.key?(:'enclosure_type')
314
+
315
+ self.enclosure_type = attributes[:'enclosure_type'] if attributes[:'enclosure_type']
316
+
317
+ self.lifecycle_state_details = attributes[:'lifecycleStateDetails'] if attributes[:'lifecycleStateDetails']
318
+
319
+ raise 'You cannot provide both :lifecycleStateDetails and :lifecycle_state_details' if attributes.key?(:'lifecycleStateDetails') && attributes.key?(:'lifecycle_state_details')
320
+
321
+ self.lifecycle_state_details = attributes[:'lifecycle_state_details'] if attributes[:'lifecycle_state_details']
322
+
323
+ self.serial_number = attributes[:'serialNumber'] if attributes[:'serialNumber']
324
+
325
+ raise 'You cannot provide both :serialNumber and :serial_number' if attributes.key?(:'serialNumber') && attributes.key?(:'serial_number')
326
+
327
+ self.serial_number = attributes[:'serial_number'] if attributes[:'serial_number']
328
+
329
+ self.oracle_shipping_tracking_url = attributes[:'oracleShippingTrackingUrl'] if attributes[:'oracleShippingTrackingUrl']
330
+
331
+ raise 'You cannot provide both :oracleShippingTrackingUrl and :oracle_shipping_tracking_url' if attributes.key?(:'oracleShippingTrackingUrl') && attributes.key?(:'oracle_shipping_tracking_url')
332
+
333
+ self.oracle_shipping_tracking_url = attributes[:'oracle_shipping_tracking_url'] if attributes[:'oracle_shipping_tracking_url']
334
+
335
+ self.freeform_tags = attributes[:'freeformTags'] if attributes[:'freeformTags']
336
+
337
+ raise 'You cannot provide both :freeformTags and :freeform_tags' if attributes.key?(:'freeformTags') && attributes.key?(:'freeform_tags')
338
+
339
+ self.freeform_tags = attributes[:'freeform_tags'] if attributes[:'freeform_tags']
340
+
341
+ self.defined_tags = attributes[:'definedTags'] if attributes[:'definedTags']
342
+
343
+ raise 'You cannot provide both :definedTags and :defined_tags' if attributes.key?(:'definedTags') && attributes.key?(:'defined_tags')
344
+
345
+ self.defined_tags = attributes[:'defined_tags'] if attributes[:'defined_tags']
346
+
347
+ self.system_tags = attributes[:'systemTags'] if attributes[:'systemTags']
348
+
349
+ raise 'You cannot provide both :systemTags and :system_tags' if attributes.key?(:'systemTags') && attributes.key?(:'system_tags')
350
+
351
+ self.system_tags = attributes[:'system_tags'] if attributes[:'system_tags']
352
+ end
353
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
354
+ # rubocop:enable Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
355
+
356
+ # Custom attribute writer method checking allowed values (enum).
357
+ # @param [Object] shipping_preference Object to be assigned
358
+ def shipping_preference=(shipping_preference)
359
+ raise "Invalid value for 'shipping_preference': this must be one of the values in SHIPPING_PREFERENCE_ENUM." if shipping_preference && !SHIPPING_PREFERENCE_ENUM.include?(shipping_preference)
360
+
361
+ @shipping_preference = shipping_preference
362
+ end
363
+
364
+ # Custom attribute writer method checking allowed values (enum).
365
+ # @param [Object] lifecycle_state Object to be assigned
366
+ def lifecycle_state=(lifecycle_state)
367
+ raise "Invalid value for 'lifecycle_state': this must be one of the values in LIFECYCLE_STATE_ENUM." if lifecycle_state && !LIFECYCLE_STATE_ENUM.include?(lifecycle_state)
368
+
369
+ @lifecycle_state = lifecycle_state
370
+ end
371
+
372
+ # Custom attribute writer method checking allowed values (enum).
373
+ # @param [Object] enclosure_type Object to be assigned
374
+ def enclosure_type=(enclosure_type)
375
+ raise "Invalid value for 'enclosure_type': this must be one of the values in ENCLOSURE_TYPE_ENUM." if enclosure_type && !ENCLOSURE_TYPE_ENUM.include?(enclosure_type)
376
+
377
+ @enclosure_type = enclosure_type
378
+ end
379
+
380
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
381
+
382
+
383
+ # Checks equality by comparing each attribute.
384
+ # @param [Object] other the other object to be compared
385
+ def ==(other)
386
+ return true if equal?(other)
387
+
388
+ self.class == other.class &&
389
+ display_name == other.display_name &&
390
+ compartment_id == other.compartment_id &&
391
+ customer_shipping_address == other.customer_shipping_address &&
392
+ node_workloads == other.node_workloads &&
393
+ super_user_password == other.super_user_password &&
394
+ unlock_passphrase == other.unlock_passphrase &&
395
+ point_of_contact == other.point_of_contact &&
396
+ point_of_contact_phone_number == other.point_of_contact_phone_number &&
397
+ shipping_preference == other.shipping_preference &&
398
+ shipping_vendor == other.shipping_vendor &&
399
+ time_pickup_expected == other.time_pickup_expected &&
400
+ public_key == other.public_key &&
401
+ time_return_window_starts == other.time_return_window_starts &&
402
+ time_return_window_ends == other.time_return_window_ends &&
403
+ lifecycle_state == other.lifecycle_state &&
404
+ enclosure_type == other.enclosure_type &&
405
+ lifecycle_state_details == other.lifecycle_state_details &&
406
+ serial_number == other.serial_number &&
407
+ oracle_shipping_tracking_url == other.oracle_shipping_tracking_url &&
408
+ freeform_tags == other.freeform_tags &&
409
+ defined_tags == other.defined_tags &&
410
+ system_tags == other.system_tags
411
+ end
412
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
413
+
414
+ # @see the `==` method
415
+ # @param [Object] other the other object to be compared
416
+ def eql?(other)
417
+ self == other
418
+ end
419
+
420
+ # rubocop:disable Metrics/AbcSize, Layout/EmptyLines
421
+
422
+
423
+ # Calculates hash code according to all attributes.
424
+ # @return [Fixnum] Hash code
425
+ def hash
426
+ [display_name, compartment_id, customer_shipping_address, node_workloads, super_user_password, unlock_passphrase, point_of_contact, point_of_contact_phone_number, shipping_preference, shipping_vendor, time_pickup_expected, public_key, time_return_window_starts, time_return_window_ends, lifecycle_state, enclosure_type, lifecycle_state_details, serial_number, oracle_shipping_tracking_url, freeform_tags, defined_tags, system_tags].hash
427
+ end
428
+ # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
429
+
430
+ # rubocop:disable Metrics/AbcSize, Layout/EmptyLines
431
+
432
+
433
+ # Builds the object from hash
434
+ # @param [Hash] attributes Model attributes in the form of hash
435
+ # @return [Object] Returns the model itself
436
+ def build_from_hash(attributes)
437
+ return nil unless attributes.is_a?(Hash)
438
+
439
+ self.class.swagger_types.each_pair do |key, type|
440
+ if type =~ /^Array<(.*)>/i
441
+ # check to ensure the input is an array given that the the attribute
442
+ # is documented as an array but the input is not
443
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
444
+ public_method("#{key}=").call(
445
+ attributes[self.class.attribute_map[key]]
446
+ .map { |v| OCI::Internal::Util.convert_to_type(Regexp.last_match(1), v) }
447
+ )
448
+ end
449
+ elsif !attributes[self.class.attribute_map[key]].nil?
450
+ public_method("#{key}=").call(
451
+ OCI::Internal::Util.convert_to_type(type, attributes[self.class.attribute_map[key]])
452
+ )
453
+ end
454
+ # or else data not found in attributes(hash), not an issue as the data can be optional
455
+ end
456
+
457
+ self
458
+ end
459
+ # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
460
+
461
+ # Returns the string representation of the object
462
+ # @return [String] String presentation of the object
463
+ def to_s
464
+ to_hash.to_s
465
+ end
466
+
467
+ # Returns the object in the form of hash
468
+ # @return [Hash] Returns the object in the form of hash
469
+ def to_hash
470
+ hash = {}
471
+ self.class.attribute_map.each_pair do |attr, param|
472
+ value = public_method(attr).call
473
+ next if value.nil? && !instance_variable_defined?("@#{attr}")
474
+
475
+ hash[param] = _to_hash(value)
476
+ end
477
+ hash
478
+ end
479
+
480
+ private
481
+
482
+ # Outputs non-array value in the form of hash
483
+ # For object, use to_hash. Otherwise, just return the value
484
+ # @param [Object] value Any valid value
485
+ # @return [Hash] Returns the value in the form of hash
486
+ def _to_hash(value)
487
+ if value.is_a?(Array)
488
+ value.compact.map { |v| _to_hash(v) }
489
+ elsif value.is_a?(Hash)
490
+ {}.tap do |hash|
491
+ value.each { |k, v| hash[k] = _to_hash(v) }
492
+ end
493
+ elsif value.respond_to? :to_hash
494
+ value.to_hash
495
+ else
496
+ value
497
+ end
498
+ end
499
+ end
500
+ end
501
+ # rubocop:enable Lint/UnneededCopDisableDirective, Metrics/LineLength