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