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,12 @@
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
+ module OCI
5
+ module DataCatalog::Models
6
+ RULE_ORIGIN_TYPE_ENUM = [
7
+ RULE_ORIGIN_TYPE_SOURCE = 'SOURCE'.freeze,
8
+ RULE_ORIGIN_TYPE_USER = 'USER'.freeze,
9
+ RULE_ORIGIN_TYPE_PROFILING = 'PROFILING'.freeze
10
+ ].freeze
11
+ end
12
+ end
@@ -0,0 +1,439 @@
1
+ # Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
2
+ # This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
3
+
4
+ require 'date'
5
+ require 'logger'
6
+
7
+ # rubocop:disable Lint/UnneededCopDisableDirective, Metrics/LineLength
8
+ module OCI
9
+ # A list of rule resources. One or more rules can be defined for a data entity.
10
+ # Each rule can be defined on one or more attributes of the data entity.
11
+ #
12
+ class DataCatalog::Models::RuleSummary
13
+ RULE_TYPE_ENUM = [
14
+ RULE_TYPE_PRIMARYKEY = 'PRIMARYKEY'.freeze,
15
+ RULE_TYPE_FOREIGNKEY = 'FOREIGNKEY'.freeze,
16
+ RULE_TYPE_UNIQUEKEY = 'UNIQUEKEY'.freeze,
17
+ RULE_TYPE_UNKNOWN_ENUM_VALUE = 'UNKNOWN_ENUM_VALUE'.freeze
18
+ ].freeze
19
+
20
+ ORIGIN_TYPE_ENUM = [
21
+ ORIGIN_TYPE_SOURCE = 'SOURCE'.freeze,
22
+ ORIGIN_TYPE_USER = 'USER'.freeze,
23
+ ORIGIN_TYPE_PROFILING = 'PROFILING'.freeze,
24
+ ORIGIN_TYPE_UNKNOWN_ENUM_VALUE = 'UNKNOWN_ENUM_VALUE'.freeze
25
+ ].freeze
26
+
27
+ LIFECYCLE_STATE_ENUM = [
28
+ LIFECYCLE_STATE_CREATING = 'CREATING'.freeze,
29
+ LIFECYCLE_STATE_ACTIVE = 'ACTIVE'.freeze,
30
+ LIFECYCLE_STATE_INACTIVE = 'INACTIVE'.freeze,
31
+ LIFECYCLE_STATE_UPDATING = 'UPDATING'.freeze,
32
+ LIFECYCLE_STATE_DELETING = 'DELETING'.freeze,
33
+ LIFECYCLE_STATE_DELETED = 'DELETED'.freeze,
34
+ LIFECYCLE_STATE_FAILED = 'FAILED'.freeze,
35
+ LIFECYCLE_STATE_MOVING = 'MOVING'.freeze,
36
+ LIFECYCLE_STATE_UNKNOWN_ENUM_VALUE = 'UNKNOWN_ENUM_VALUE'.freeze
37
+ ].freeze
38
+
39
+ # **[Required]** Immutable unique key of a rule.
40
+ # @return [String]
41
+ attr_accessor :key
42
+
43
+ # A user-friendly display name. Does not have to be unique, and it's changeable.
44
+ # Avoid entering confidential information.
45
+ #
46
+ # @return [String]
47
+ attr_accessor :display_name
48
+
49
+ # Detailed description of a rule.
50
+ # @return [String]
51
+ attr_accessor :description
52
+
53
+ # Type of a rule.
54
+ # @return [String]
55
+ attr_reader :rule_type
56
+
57
+ # External URI that can be used to reference the object. Format will differ based on the type of object.
58
+ #
59
+ # @return [String]
60
+ attr_accessor :external_key
61
+
62
+ # Attributes associated with a rule.
63
+ # A UNIQUEKEY rule would contain (at least) one attribute, for the local table column(s) on which uniqueness is defined.
64
+ #
65
+ # @return [Array<OCI::DataCatalog::Models::RuleAttribute>]
66
+ attr_accessor :attributes
67
+
68
+ # Folder key that represents the referenced folder, applicable only when rule type FOREIGNKEY.
69
+ # @return [String]
70
+ attr_accessor :referenced_folder_key
71
+
72
+ # Folder name that represents the referenced folder, applicable only when rule type FOREIGNKEY.
73
+ # @return [String]
74
+ attr_accessor :referenced_folder_name
75
+
76
+ # Entity key that represents the referenced entity, applicable only when rule type is FOREIGNKEY.
77
+ # @return [String]
78
+ attr_accessor :referenced_entity_key
79
+
80
+ # Entity name that represents the referenced entity, applicable only when rule type is FOREIGNKEY.
81
+ # @return [String]
82
+ attr_accessor :referenced_entity_name
83
+
84
+ # Rule key that represents the referenced rule, applicable only when rule type is FOREIGNKEY.
85
+ # @return [String]
86
+ attr_accessor :referenced_rule_key
87
+
88
+ # Rule name that represents the referenced rule, applicable only when rule type is FOREIGNKEY.
89
+ # @return [String]
90
+ attr_accessor :referenced_rule_name
91
+
92
+ # Attributes associated with referenced rule, applicable only when rule type is FOREIGNKEY.
93
+ # A FOREIGNKEY rule would contain (at least) one attribute, for the local table column(s), and (at least) one referencedAttribute for referenced table column(s).
94
+ #
95
+ # @return [Array<OCI::DataCatalog::Models::RuleAttribute>]
96
+ attr_accessor :referenced_attributes
97
+
98
+ # Origin type of the rule.
99
+ # @return [String]
100
+ attr_reader :origin_type
101
+
102
+ # URI to the rule instance in the API.
103
+ # @return [String]
104
+ attr_accessor :uri
105
+
106
+ # The date and time the rule was created, in the format defined by [RFC3339](https://tools.ietf.org/html/rfc3339).
107
+ # Example: `2019-03-25T21:10:29.600Z`
108
+ #
109
+ # @return [DateTime]
110
+ attr_accessor :time_created
111
+
112
+ # State of the rule.
113
+ # @return [String]
114
+ attr_reader :lifecycle_state
115
+
116
+ # Attribute mapping from ruby-style variable name to JSON key.
117
+ def self.attribute_map
118
+ {
119
+ # rubocop:disable Style/SymbolLiteral
120
+ 'key': :'key',
121
+ 'display_name': :'displayName',
122
+ 'description': :'description',
123
+ 'rule_type': :'ruleType',
124
+ 'external_key': :'externalKey',
125
+ 'attributes': :'attributes',
126
+ 'referenced_folder_key': :'referencedFolderKey',
127
+ 'referenced_folder_name': :'referencedFolderName',
128
+ 'referenced_entity_key': :'referencedEntityKey',
129
+ 'referenced_entity_name': :'referencedEntityName',
130
+ 'referenced_rule_key': :'referencedRuleKey',
131
+ 'referenced_rule_name': :'referencedRuleName',
132
+ 'referenced_attributes': :'referencedAttributes',
133
+ 'origin_type': :'originType',
134
+ 'uri': :'uri',
135
+ 'time_created': :'timeCreated',
136
+ 'lifecycle_state': :'lifecycleState'
137
+ # rubocop:enable Style/SymbolLiteral
138
+ }
139
+ end
140
+
141
+ # Attribute type mapping.
142
+ def self.swagger_types
143
+ {
144
+ # rubocop:disable Style/SymbolLiteral
145
+ 'key': :'String',
146
+ 'display_name': :'String',
147
+ 'description': :'String',
148
+ 'rule_type': :'String',
149
+ 'external_key': :'String',
150
+ 'attributes': :'Array<OCI::DataCatalog::Models::RuleAttribute>',
151
+ 'referenced_folder_key': :'String',
152
+ 'referenced_folder_name': :'String',
153
+ 'referenced_entity_key': :'String',
154
+ 'referenced_entity_name': :'String',
155
+ 'referenced_rule_key': :'String',
156
+ 'referenced_rule_name': :'String',
157
+ 'referenced_attributes': :'Array<OCI::DataCatalog::Models::RuleAttribute>',
158
+ 'origin_type': :'String',
159
+ 'uri': :'String',
160
+ 'time_created': :'DateTime',
161
+ 'lifecycle_state': :'String'
162
+ # rubocop:enable Style/SymbolLiteral
163
+ }
164
+ end
165
+
166
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
167
+ # rubocop:disable Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
168
+
169
+
170
+ # Initializes the object
171
+ # @param [Hash] attributes Model attributes in the form of hash
172
+ # @option attributes [String] :key The value to assign to the {#key} property
173
+ # @option attributes [String] :display_name The value to assign to the {#display_name} property
174
+ # @option attributes [String] :description The value to assign to the {#description} property
175
+ # @option attributes [String] :rule_type The value to assign to the {#rule_type} property
176
+ # @option attributes [String] :external_key The value to assign to the {#external_key} property
177
+ # @option attributes [Array<OCI::DataCatalog::Models::RuleAttribute>] :attributes The value to assign to the {#attributes} property
178
+ # @option attributes [String] :referenced_folder_key The value to assign to the {#referenced_folder_key} property
179
+ # @option attributes [String] :referenced_folder_name The value to assign to the {#referenced_folder_name} property
180
+ # @option attributes [String] :referenced_entity_key The value to assign to the {#referenced_entity_key} property
181
+ # @option attributes [String] :referenced_entity_name The value to assign to the {#referenced_entity_name} property
182
+ # @option attributes [String] :referenced_rule_key The value to assign to the {#referenced_rule_key} property
183
+ # @option attributes [String] :referenced_rule_name The value to assign to the {#referenced_rule_name} property
184
+ # @option attributes [Array<OCI::DataCatalog::Models::RuleAttribute>] :referenced_attributes The value to assign to the {#referenced_attributes} property
185
+ # @option attributes [String] :origin_type The value to assign to the {#origin_type} property
186
+ # @option attributes [String] :uri The value to assign to the {#uri} property
187
+ # @option attributes [DateTime] :time_created The value to assign to the {#time_created} property
188
+ # @option attributes [String] :lifecycle_state The value to assign to the {#lifecycle_state} property
189
+ def initialize(attributes = {})
190
+ return unless attributes.is_a?(Hash)
191
+
192
+ # convert string to symbol for hash key
193
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
194
+
195
+ self.key = attributes[:'key'] if attributes[:'key']
196
+
197
+ self.display_name = attributes[:'displayName'] if attributes[:'displayName']
198
+
199
+ raise 'You cannot provide both :displayName and :display_name' if attributes.key?(:'displayName') && attributes.key?(:'display_name')
200
+
201
+ self.display_name = attributes[:'display_name'] if attributes[:'display_name']
202
+
203
+ self.description = attributes[:'description'] if attributes[:'description']
204
+
205
+ self.rule_type = attributes[:'ruleType'] if attributes[:'ruleType']
206
+
207
+ raise 'You cannot provide both :ruleType and :rule_type' if attributes.key?(:'ruleType') && attributes.key?(:'rule_type')
208
+
209
+ self.rule_type = attributes[:'rule_type'] if attributes[:'rule_type']
210
+
211
+ self.external_key = attributes[:'externalKey'] if attributes[:'externalKey']
212
+
213
+ raise 'You cannot provide both :externalKey and :external_key' if attributes.key?(:'externalKey') && attributes.key?(:'external_key')
214
+
215
+ self.external_key = attributes[:'external_key'] if attributes[:'external_key']
216
+
217
+ self.attributes = attributes[:'attributes'] if attributes[:'attributes']
218
+
219
+ self.referenced_folder_key = attributes[:'referencedFolderKey'] if attributes[:'referencedFolderKey']
220
+
221
+ raise 'You cannot provide both :referencedFolderKey and :referenced_folder_key' if attributes.key?(:'referencedFolderKey') && attributes.key?(:'referenced_folder_key')
222
+
223
+ self.referenced_folder_key = attributes[:'referenced_folder_key'] if attributes[:'referenced_folder_key']
224
+
225
+ self.referenced_folder_name = attributes[:'referencedFolderName'] if attributes[:'referencedFolderName']
226
+
227
+ raise 'You cannot provide both :referencedFolderName and :referenced_folder_name' if attributes.key?(:'referencedFolderName') && attributes.key?(:'referenced_folder_name')
228
+
229
+ self.referenced_folder_name = attributes[:'referenced_folder_name'] if attributes[:'referenced_folder_name']
230
+
231
+ self.referenced_entity_key = attributes[:'referencedEntityKey'] if attributes[:'referencedEntityKey']
232
+
233
+ raise 'You cannot provide both :referencedEntityKey and :referenced_entity_key' if attributes.key?(:'referencedEntityKey') && attributes.key?(:'referenced_entity_key')
234
+
235
+ self.referenced_entity_key = attributes[:'referenced_entity_key'] if attributes[:'referenced_entity_key']
236
+
237
+ self.referenced_entity_name = attributes[:'referencedEntityName'] if attributes[:'referencedEntityName']
238
+
239
+ raise 'You cannot provide both :referencedEntityName and :referenced_entity_name' if attributes.key?(:'referencedEntityName') && attributes.key?(:'referenced_entity_name')
240
+
241
+ self.referenced_entity_name = attributes[:'referenced_entity_name'] if attributes[:'referenced_entity_name']
242
+
243
+ self.referenced_rule_key = attributes[:'referencedRuleKey'] if attributes[:'referencedRuleKey']
244
+
245
+ raise 'You cannot provide both :referencedRuleKey and :referenced_rule_key' if attributes.key?(:'referencedRuleKey') && attributes.key?(:'referenced_rule_key')
246
+
247
+ self.referenced_rule_key = attributes[:'referenced_rule_key'] if attributes[:'referenced_rule_key']
248
+
249
+ self.referenced_rule_name = attributes[:'referencedRuleName'] if attributes[:'referencedRuleName']
250
+
251
+ raise 'You cannot provide both :referencedRuleName and :referenced_rule_name' if attributes.key?(:'referencedRuleName') && attributes.key?(:'referenced_rule_name')
252
+
253
+ self.referenced_rule_name = attributes[:'referenced_rule_name'] if attributes[:'referenced_rule_name']
254
+
255
+ self.referenced_attributes = attributes[:'referencedAttributes'] if attributes[:'referencedAttributes']
256
+
257
+ raise 'You cannot provide both :referencedAttributes and :referenced_attributes' if attributes.key?(:'referencedAttributes') && attributes.key?(:'referenced_attributes')
258
+
259
+ self.referenced_attributes = attributes[:'referenced_attributes'] if attributes[:'referenced_attributes']
260
+
261
+ self.origin_type = attributes[:'originType'] if attributes[:'originType']
262
+
263
+ raise 'You cannot provide both :originType and :origin_type' if attributes.key?(:'originType') && attributes.key?(:'origin_type')
264
+
265
+ self.origin_type = attributes[:'origin_type'] if attributes[:'origin_type']
266
+
267
+ self.uri = attributes[:'uri'] if attributes[:'uri']
268
+
269
+ self.time_created = attributes[:'timeCreated'] if attributes[:'timeCreated']
270
+
271
+ raise 'You cannot provide both :timeCreated and :time_created' if attributes.key?(:'timeCreated') && attributes.key?(:'time_created')
272
+
273
+ self.time_created = attributes[:'time_created'] if attributes[:'time_created']
274
+
275
+ self.lifecycle_state = attributes[:'lifecycleState'] if attributes[:'lifecycleState']
276
+
277
+ raise 'You cannot provide both :lifecycleState and :lifecycle_state' if attributes.key?(:'lifecycleState') && attributes.key?(:'lifecycle_state')
278
+
279
+ self.lifecycle_state = attributes[:'lifecycle_state'] if attributes[:'lifecycle_state']
280
+ end
281
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
282
+ # rubocop:enable Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
283
+
284
+ # Custom attribute writer method checking allowed values (enum).
285
+ # @param [Object] rule_type Object to be assigned
286
+ def rule_type=(rule_type)
287
+ # rubocop:disable Style/ConditionalAssignment
288
+ if rule_type && !RULE_TYPE_ENUM.include?(rule_type)
289
+ OCI.logger.debug("Unknown value for 'rule_type' [" + rule_type + "]. Mapping to 'RULE_TYPE_UNKNOWN_ENUM_VALUE'") if OCI.logger
290
+ @rule_type = RULE_TYPE_UNKNOWN_ENUM_VALUE
291
+ else
292
+ @rule_type = rule_type
293
+ end
294
+ # rubocop:enable Style/ConditionalAssignment
295
+ end
296
+
297
+ # Custom attribute writer method checking allowed values (enum).
298
+ # @param [Object] origin_type Object to be assigned
299
+ def origin_type=(origin_type)
300
+ # rubocop:disable Style/ConditionalAssignment
301
+ if origin_type && !ORIGIN_TYPE_ENUM.include?(origin_type)
302
+ OCI.logger.debug("Unknown value for 'origin_type' [" + origin_type + "]. Mapping to 'ORIGIN_TYPE_UNKNOWN_ENUM_VALUE'") if OCI.logger
303
+ @origin_type = ORIGIN_TYPE_UNKNOWN_ENUM_VALUE
304
+ else
305
+ @origin_type = origin_type
306
+ end
307
+ # rubocop:enable Style/ConditionalAssignment
308
+ end
309
+
310
+ # Custom attribute writer method checking allowed values (enum).
311
+ # @param [Object] lifecycle_state Object to be assigned
312
+ def lifecycle_state=(lifecycle_state)
313
+ # rubocop:disable Style/ConditionalAssignment
314
+ if lifecycle_state && !LIFECYCLE_STATE_ENUM.include?(lifecycle_state)
315
+ OCI.logger.debug("Unknown value for 'lifecycle_state' [" + lifecycle_state + "]. Mapping to 'LIFECYCLE_STATE_UNKNOWN_ENUM_VALUE'") if OCI.logger
316
+ @lifecycle_state = LIFECYCLE_STATE_UNKNOWN_ENUM_VALUE
317
+ else
318
+ @lifecycle_state = lifecycle_state
319
+ end
320
+ # rubocop:enable Style/ConditionalAssignment
321
+ end
322
+
323
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
324
+
325
+
326
+ # Checks equality by comparing each attribute.
327
+ # @param [Object] other the other object to be compared
328
+ def ==(other)
329
+ return true if equal?(other)
330
+
331
+ self.class == other.class &&
332
+ key == other.key &&
333
+ display_name == other.display_name &&
334
+ description == other.description &&
335
+ rule_type == other.rule_type &&
336
+ external_key == other.external_key &&
337
+ attributes == other.attributes &&
338
+ referenced_folder_key == other.referenced_folder_key &&
339
+ referenced_folder_name == other.referenced_folder_name &&
340
+ referenced_entity_key == other.referenced_entity_key &&
341
+ referenced_entity_name == other.referenced_entity_name &&
342
+ referenced_rule_key == other.referenced_rule_key &&
343
+ referenced_rule_name == other.referenced_rule_name &&
344
+ referenced_attributes == other.referenced_attributes &&
345
+ origin_type == other.origin_type &&
346
+ uri == other.uri &&
347
+ time_created == other.time_created &&
348
+ lifecycle_state == other.lifecycle_state
349
+ end
350
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
351
+
352
+ # @see the `==` method
353
+ # @param [Object] other the other object to be compared
354
+ def eql?(other)
355
+ self == other
356
+ end
357
+
358
+ # rubocop:disable Metrics/AbcSize, Layout/EmptyLines
359
+
360
+
361
+ # Calculates hash code according to all attributes.
362
+ # @return [Fixnum] Hash code
363
+ def hash
364
+ [key, display_name, description, rule_type, external_key, attributes, referenced_folder_key, referenced_folder_name, referenced_entity_key, referenced_entity_name, referenced_rule_key, referenced_rule_name, referenced_attributes, origin_type, uri, time_created, lifecycle_state].hash
365
+ end
366
+ # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
367
+
368
+ # rubocop:disable Metrics/AbcSize, Layout/EmptyLines
369
+
370
+
371
+ # Builds the object from hash
372
+ # @param [Hash] attributes Model attributes in the form of hash
373
+ # @return [Object] Returns the model itself
374
+ def build_from_hash(attributes)
375
+ return nil unless attributes.is_a?(Hash)
376
+
377
+ self.class.swagger_types.each_pair do |key, type|
378
+ if type =~ /^Array<(.*)>/i
379
+ # check to ensure the input is an array given that the the attribute
380
+ # is documented as an array but the input is not
381
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
382
+ public_method("#{key}=").call(
383
+ attributes[self.class.attribute_map[key]]
384
+ .map { |v| OCI::Internal::Util.convert_to_type(Regexp.last_match(1), v) }
385
+ )
386
+ end
387
+ elsif !attributes[self.class.attribute_map[key]].nil?
388
+ public_method("#{key}=").call(
389
+ OCI::Internal::Util.convert_to_type(type, attributes[self.class.attribute_map[key]])
390
+ )
391
+ end
392
+ # or else data not found in attributes(hash), not an issue as the data can be optional
393
+ end
394
+
395
+ self
396
+ end
397
+ # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
398
+
399
+ # Returns the string representation of the object
400
+ # @return [String] String presentation of the object
401
+ def to_s
402
+ to_hash.to_s
403
+ end
404
+
405
+ # Returns the object in the form of hash
406
+ # @return [Hash] Returns the object in the form of hash
407
+ def to_hash
408
+ hash = {}
409
+ self.class.attribute_map.each_pair do |attr, param|
410
+ value = public_method(attr).call
411
+ next if value.nil? && !instance_variable_defined?("@#{attr}")
412
+
413
+ hash[param] = _to_hash(value)
414
+ end
415
+ hash
416
+ end
417
+
418
+ private
419
+
420
+ # Outputs non-array value in the form of hash
421
+ # For object, use to_hash. Otherwise, just return the value
422
+ # @param [Object] value Any valid value
423
+ # @return [Hash] Returns the value in the form of hash
424
+ def _to_hash(value)
425
+ if value.is_a?(Array)
426
+ value.compact.map { |v| _to_hash(v) }
427
+ elsif value.is_a?(Hash)
428
+ {}.tap do |hash|
429
+ value.each { |k, v| hash[k] = _to_hash(v) }
430
+ end
431
+ elsif value.respond_to? :to_hash
432
+ value.to_hash
433
+ else
434
+ value
435
+ end
436
+ end
437
+ end
438
+ end
439
+ # rubocop:enable Lint/UnneededCopDisableDirective, Metrics/LineLength