oci 2.6.0 → 2.7.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 (385) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +6 -1
  3. data/lib/oci.rb +4 -0
  4. data/lib/oci/analytics/analytics.rb +42 -0
  5. data/lib/oci/analytics/analytics_client.rb +1134 -0
  6. data/lib/oci/analytics/analytics_client_composite_operations.rb +371 -0
  7. data/lib/oci/analytics/models/analytics_instance.rb +406 -0
  8. data/lib/oci/analytics/models/analytics_instance_lifecycle_state.rb +15 -0
  9. data/lib/oci/analytics/models/analytics_instance_summary.rb +370 -0
  10. data/lib/oci/analytics/models/capacity.rb +191 -0
  11. data/lib/oci/analytics/models/capacity_type.rb +10 -0
  12. data/lib/oci/analytics/models/change_compartment_details.rb +155 -0
  13. data/lib/oci/analytics/models/create_analytics_instance_details.rb +309 -0
  14. data/lib/oci/analytics/models/feature_set.rb +10 -0
  15. data/lib/oci/analytics/models/license_type.rb +10 -0
  16. data/lib/oci/analytics/models/scale_analytics_instance_details.rb +150 -0
  17. data/lib/oci/analytics/models/sort_by.rb +13 -0
  18. data/lib/oci/analytics/models/sort_order.rb +10 -0
  19. data/lib/oci/analytics/models/update_analytics_instance_details.rb +231 -0
  20. data/lib/oci/analytics/models/work_request.rb +316 -0
  21. data/lib/oci/analytics/models/work_request_action_result.rb +15 -0
  22. data/lib/oci/analytics/models/work_request_error.rb +176 -0
  23. data/lib/oci/analytics/models/work_request_log.rb +164 -0
  24. data/lib/oci/analytics/models/work_request_operation_type.rb +14 -0
  25. data/lib/oci/analytics/models/work_request_resource.rb +248 -0
  26. data/lib/oci/analytics/models/work_request_resource_type.rb +9 -0
  27. data/lib/oci/analytics/models/work_request_sort_by.rb +14 -0
  28. data/lib/oci/analytics/models/work_request_status.rb +14 -0
  29. data/lib/oci/analytics/models/work_request_summary.rb +300 -0
  30. data/lib/oci/analytics/util.rb +2 -0
  31. data/lib/oci/audit/audit.rb +5 -0
  32. data/lib/oci/audit/audit_client.rb +30 -14
  33. data/lib/oci/audit/models/audit_event.rb +81 -261
  34. data/lib/oci/audit/models/configuration.rb +7 -2
  35. data/lib/oci/audit/models/data.rb +464 -0
  36. data/lib/oci/audit/models/identity.rb +313 -0
  37. data/lib/oci/audit/models/request.rb +285 -0
  38. data/lib/oci/audit/models/response.rb +273 -0
  39. data/lib/oci/audit/models/state_change.rb +175 -0
  40. data/lib/oci/audit/models/update_configuration_details.rb +7 -2
  41. data/lib/oci/container_engine/container_engine.rb +4 -0
  42. data/lib/oci/container_engine/models/cluster.rb +15 -1
  43. data/lib/oci/container_engine/models/create_cluster_details.rb +17 -1
  44. data/lib/oci/container_engine/models/create_cluster_kubeconfig_content_details.rb +4 -1
  45. data/lib/oci/container_engine/models/create_node_pool_details.rb +29 -6
  46. data/lib/oci/container_engine/models/create_node_pool_node_config_details.rb +170 -0
  47. data/lib/oci/container_engine/models/node_pool.rb +18 -4
  48. data/lib/oci/container_engine/models/node_pool_node_config_details.rb +170 -0
  49. data/lib/oci/container_engine/models/node_pool_options.rb +1 -1
  50. data/lib/oci/container_engine/models/node_pool_placement_config_details.rb +169 -0
  51. data/lib/oci/container_engine/models/node_pool_summary.rb +18 -4
  52. data/lib/oci/container_engine/models/update_node_pool_details.rb +45 -19
  53. data/lib/oci/container_engine/models/update_node_pool_node_config_details.rb +170 -0
  54. data/lib/oci/core/blockstorage_client.rb +197 -0
  55. data/lib/oci/core/compute_client.rb +132 -17
  56. data/lib/oci/core/compute_client_composite_operations.rb +1 -1
  57. data/lib/oci/core/compute_management_client.rb +493 -0
  58. data/lib/oci/core/compute_management_client_composite_operations.rb +119 -0
  59. data/lib/oci/core/core.rb +11 -0
  60. data/lib/oci/core/models/boot_volume.rb +17 -1
  61. data/lib/oci/core/models/boot_volume_backup.rb +17 -1
  62. data/lib/oci/core/models/change_cluster_network_compartment_details.rb +155 -0
  63. data/lib/oci/core/models/change_dedicated_vm_host_compartment_details.rb +2 -2
  64. data/lib/oci/core/models/change_drg_compartment_details.rb +155 -0
  65. data/lib/oci/core/models/cluster_network.rb +313 -0
  66. data/lib/oci/core/models/cluster_network_placement_configuration_details.rb +183 -0
  67. data/lib/oci/core/models/cluster_network_summary.rb +299 -0
  68. data/lib/oci/core/models/create_cluster_network_details.rb +231 -0
  69. data/lib/oci/core/models/create_cluster_network_instance_pool_details.rb +213 -0
  70. data/lib/oci/core/models/create_dedicated_vm_host_details.rb +10 -8
  71. data/lib/oci/core/models/create_ip_sec_connection_details.rb +4 -0
  72. data/lib/oci/core/models/create_ip_sec_connection_tunnel_details.rb +29 -1
  73. data/lib/oci/core/models/create_volume_backup_policy_details.rb +215 -0
  74. data/lib/oci/core/models/dedicated_vm_host.rb +10 -8
  75. data/lib/oci/core/models/image_shape_compatibility_entry.rb +163 -0
  76. data/lib/oci/core/models/instance.rb +17 -1
  77. data/lib/oci/core/models/ip_sec_connection.rb +4 -0
  78. data/lib/oci/core/models/ip_sec_connection_tunnel.rb +35 -1
  79. data/lib/oci/core/models/launch_instance_details.rb +14 -1
  80. data/lib/oci/core/models/launch_options.rb +4 -4
  81. data/lib/oci/core/models/service_gateway.rb +0 -1
  82. data/lib/oci/core/models/update_cluster_network_details.rb +189 -0
  83. data/lib/oci/core/models/update_dedicated_vm_host_details.rb +1 -1
  84. data/lib/oci/core/models/update_ip_sec_connection_details.rb +4 -0
  85. data/lib/oci/core/models/update_ip_sec_connection_tunnel_details.rb +29 -1
  86. data/lib/oci/core/models/update_service_gateway_details.rb +0 -1
  87. data/lib/oci/core/models/update_volume_backup_policy_details.rb +201 -0
  88. data/lib/oci/core/models/volume.rb +17 -1
  89. data/lib/oci/core/models/volume_backup.rb +17 -1
  90. data/lib/oci/core/models/volume_backup_policy.rb +54 -4
  91. data/lib/oci/core/models/volume_backup_schedule.rb +177 -4
  92. data/lib/oci/core/virtual_network_client.rb +67 -0
  93. data/lib/oci/database/database.rb +35 -1
  94. data/lib/oci/database/database_client.rb +3351 -1159
  95. data/lib/oci/database/database_client_composite_operations.rb +522 -1
  96. data/lib/oci/database/models/activate_exadata_infrastructure_details.rb +153 -0
  97. data/lib/oci/database/models/associated_database_details.rb +163 -0
  98. data/lib/oci/database/models/autonomous_container_database.rb +0 -2
  99. data/lib/oci/database/models/autonomous_container_database_summary.rb +0 -2
  100. data/lib/oci/database/models/autonomous_data_warehouse.rb +0 -2
  101. data/lib/oci/database/models/autonomous_data_warehouse_summary.rb +0 -2
  102. data/lib/oci/database/models/autonomous_database.rb +65 -4
  103. data/lib/oci/database/models/autonomous_database_summary.rb +65 -4
  104. data/lib/oci/database/models/autonomous_database_wallet.rb +188 -0
  105. data/lib/oci/database/models/autonomous_exadata_infrastructure.rb +16 -3
  106. data/lib/oci/database/models/autonomous_exadata_infrastructure_summary.rb +16 -3
  107. data/lib/oci/database/models/backup_destination.rb +359 -0
  108. data/lib/oci/database/models/backup_destination_details.rb +243 -0
  109. data/lib/oci/database/models/backup_destination_summary.rb +362 -0
  110. data/lib/oci/database/models/change_exadata_infrastructure_compartment_details.rb +155 -0
  111. data/lib/oci/database/models/change_vm_cluster_compartment_details.rb +155 -0
  112. data/lib/oci/database/models/create_autonomous_container_database_details.rb +0 -2
  113. data/lib/oci/database/models/create_autonomous_data_warehouse_details.rb +0 -2
  114. data/lib/oci/database/models/create_autonomous_database_base.rb +19 -4
  115. data/lib/oci/database/models/create_autonomous_database_clone_details.rb +6 -2
  116. data/lib/oci/database/models/create_autonomous_database_details.rb +5 -1
  117. data/lib/oci/database/models/create_backup_destination_details.rb +241 -0
  118. data/lib/oci/database/models/create_database_details.rb +15 -3
  119. data/lib/oci/database/models/create_database_from_backup_details.rb +15 -1
  120. data/lib/oci/database/models/{create_db_home_with_db_system_id_base.rb → create_db_home_base.rb} +8 -18
  121. data/lib/oci/database/models/create_db_home_with_db_system_id_details.rb +18 -8
  122. data/lib/oci/database/models/create_db_home_with_db_system_id_from_backup_details.rb +18 -8
  123. data/lib/oci/database/models/create_db_home_with_vm_cluster_id_details.rb +190 -0
  124. data/lib/oci/database/models/create_db_home_with_vm_cluster_id_from_backup_details.rb +176 -0
  125. data/lib/oci/database/models/create_exadata_infrastructure_details.rb +348 -0
  126. data/lib/oci/database/models/create_nfs_backup_destination_details.rb +178 -0
  127. data/lib/oci/database/models/create_recovery_appliance_backup_destination_details.rb +191 -0
  128. data/lib/oci/database/models/create_vm_cluster_details.rb +344 -0
  129. data/lib/oci/database/models/database.rb +0 -2
  130. data/lib/oci/database/models/database_summary.rb +0 -2
  131. data/lib/oci/database/models/db_backup_config.rb +65 -4
  132. data/lib/oci/database/models/db_home.rb +15 -1
  133. data/lib/oci/database/models/db_home_summary.rb +15 -1
  134. data/lib/oci/database/models/db_system.rb +14 -3
  135. data/lib/oci/database/models/db_system_options.rb +173 -0
  136. data/lib/oci/database/models/db_system_shape_summary.rb +15 -1
  137. data/lib/oci/database/models/db_system_summary.rb +14 -3
  138. data/lib/oci/database/models/exadata_infrastructure.rb +450 -0
  139. data/lib/oci/database/models/exadata_infrastructure_summary.rb +453 -0
  140. data/lib/oci/database/models/generate_autonomous_database_wallet_details.rb +31 -1
  141. data/lib/oci/database/models/generate_recommended_network_details.rb +232 -0
  142. data/lib/oci/database/models/gi_version_summary.rb +152 -0
  143. data/lib/oci/database/models/info_for_network_gen_details.rb +231 -0
  144. data/lib/oci/database/models/launch_autonomous_exadata_infrastructure_details.rb +16 -3
  145. data/lib/oci/database/models/launch_db_system_base.rb +14 -3
  146. data/lib/oci/database/models/launch_db_system_details.rb +5 -1
  147. data/lib/oci/database/models/launch_db_system_from_backup_details.rb +5 -1
  148. data/lib/oci/database/models/node_details.rb +183 -0
  149. data/lib/oci/database/models/scan_details.rb +170 -0
  150. data/lib/oci/database/models/update_autonomous_container_database_details.rb +0 -2
  151. data/lib/oci/database/models/update_autonomous_data_warehouse_details.rb +0 -2
  152. data/lib/oci/database/models/update_autonomous_database_details.rb +19 -4
  153. data/lib/oci/database/models/update_autonomous_database_wallet_details.rb +156 -0
  154. data/lib/oci/database/models/update_autonomous_exadata_infrastructure_details.rb +16 -3
  155. data/lib/oci/database/models/update_backup_destination_details.rb +218 -0
  156. data/lib/oci/database/models/update_database_details.rb +0 -2
  157. data/lib/oci/database/models/update_db_system_details.rb +0 -2
  158. data/lib/oci/database/models/update_exadata_infrastructure_details.rb +307 -0
  159. data/lib/oci/database/models/update_vm_cluster_details.rb +229 -0
  160. data/lib/oci/database/models/update_vm_cluster_network_details.rb +218 -0
  161. data/lib/oci/database/models/vm_cluster.rb +449 -0
  162. data/lib/oci/database/models/vm_cluster_network.rb +350 -0
  163. data/lib/oci/database/models/vm_cluster_network_details.rb +246 -0
  164. data/lib/oci/database/models/vm_cluster_network_summary.rb +353 -0
  165. data/lib/oci/database/models/vm_cluster_summary.rb +452 -0
  166. data/lib/oci/database/models/vm_network_details.rb +231 -0
  167. data/lib/oci/dns/dns.rb +4 -0
  168. data/lib/oci/dns/dns_client.rb +103 -103
  169. data/lib/oci/dns/dns_client_composite_operations.rb +1 -1
  170. data/lib/oci/dns/models/create_migrated_dynect_zone_details.rb +179 -0
  171. data/lib/oci/dns/models/create_zone_base_details.rb +252 -0
  172. data/lib/oci/dns/models/create_zone_details.rb +18 -56
  173. data/lib/oci/dns/models/dynect_migration_details.rb +192 -0
  174. data/lib/oci/dns/models/migration_replacement.rb +187 -0
  175. data/lib/oci/dts/dts.rb +2 -0
  176. data/lib/oci/dts/models/create_transfer_appliance_entitlement_details.rb +49 -4
  177. data/lib/oci/dts/models/transfer_appliance.rb +2 -0
  178. data/lib/oci/dts/models/transfer_appliance_entitlement.rb +102 -33
  179. data/lib/oci/dts/models/transfer_appliance_entitlement_summary.rb +261 -0
  180. data/lib/oci/dts/models/transfer_appliance_summary.rb +2 -0
  181. data/lib/oci/dts/models/transfer_job.rb +0 -4
  182. data/lib/oci/dts/models/update_transfer_appliance_details.rb +1 -0
  183. data/lib/oci/dts/shipping_vendors_client.rb +1 -1
  184. data/lib/oci/dts/transfer_appliance_client.rb +4 -4
  185. data/lib/oci/dts/transfer_appliance_entitlement_client.rb +86 -10
  186. data/lib/oci/dts/transfer_appliance_entitlement_client_composite_operations.rb +39 -0
  187. data/lib/oci/dts/transfer_device_client.rb +1 -1
  188. data/lib/oci/dts/transfer_job_client.rb +1 -1
  189. data/lib/oci/dts/transfer_package_client.rb +1 -1
  190. data/lib/oci/functions/functions_invoke_client.rb +1 -1
  191. data/lib/oci/functions/functions_management_client.rb +1 -1
  192. data/lib/oci/healthchecks/health_checks_client.rb +18 -14
  193. data/lib/oci/healthchecks/models/http_monitor.rb +31 -1
  194. data/lib/oci/healthchecks/models/http_monitor_summary.rb +31 -1
  195. data/lib/oci/healthchecks/models/http_probe.rb +31 -1
  196. data/lib/oci/healthchecks/models/ping_monitor.rb +31 -1
  197. data/lib/oci/healthchecks/models/ping_monitor_summary.rb +31 -1
  198. data/lib/oci/healthchecks/models/ping_probe.rb +31 -1
  199. data/lib/oci/identity/identity.rb +7 -0
  200. data/lib/oci/identity/identity_client.rb +348 -9
  201. data/lib/oci/identity/models/base_tag_definition_validator.rb +200 -0
  202. data/lib/oci/identity/models/compartment.rb +3 -0
  203. data/lib/oci/identity/models/create_region_subscription_details.rb +3 -0
  204. data/lib/oci/identity/models/create_tag_default_details.rb +26 -4
  205. data/lib/oci/identity/models/create_tag_details.rb +21 -5
  206. data/lib/oci/identity/models/default_tag_definition_validator.rb +146 -0
  207. data/lib/oci/identity/models/dynamic_group.rb +3 -0
  208. data/lib/oci/identity/models/enum_tag_definition_validator.rb +161 -0
  209. data/lib/oci/identity/models/group.rb +3 -0
  210. data/lib/oci/identity/models/identity_provider.rb +3 -0
  211. data/lib/oci/identity/models/move_compartment_details.rb +2 -2
  212. data/lib/oci/identity/models/policy.rb +3 -0
  213. data/lib/oci/identity/models/region.rb +9 -3
  214. data/lib/oci/identity/models/region_subscription.rb +8 -2
  215. data/lib/oci/identity/models/tag.rb +25 -6
  216. data/lib/oci/identity/models/tag_default.rb +26 -4
  217. data/lib/oci/identity/models/tag_default_summary.rb +26 -4
  218. data/lib/oci/identity/models/tag_namespace.rb +5 -2
  219. data/lib/oci/identity/models/tag_summary.rb +3 -2
  220. data/lib/oci/identity/models/tagging_work_request.rb +305 -0
  221. data/lib/oci/identity/models/tagging_work_request_error_summary.rb +172 -0
  222. data/lib/oci/identity/models/tagging_work_request_log_summary.rb +162 -0
  223. data/lib/oci/identity/models/tagging_work_request_summary.rb +304 -0
  224. data/lib/oci/identity/models/tenancy.rb +3 -0
  225. data/lib/oci/identity/models/update_tag_default_details.rb +26 -4
  226. data/lib/oci/identity/models/update_tag_details.rb +19 -4
  227. data/lib/oci/identity/models/user.rb +3 -0
  228. data/lib/oci/integration/integration.rb +29 -0
  229. data/lib/oci/integration/integration_instance_client.rb +731 -0
  230. data/lib/oci/integration/integration_instance_client_composite_operations.rb +222 -0
  231. data/lib/oci/integration/models/change_integration_instance_compartment_details.rb +153 -0
  232. data/lib/oci/integration/models/create_integration_instance_details.rb +270 -0
  233. data/lib/oci/integration/models/integration_instance.rb +366 -0
  234. data/lib/oci/integration/models/integration_instance_summary.rb +332 -0
  235. data/lib/oci/integration/models/update_integration_instance_details.rb +242 -0
  236. data/lib/oci/integration/models/work_request.rb +310 -0
  237. data/lib/oci/integration/models/work_request_error.rb +170 -0
  238. data/lib/oci/integration/models/work_request_log_entry.rb +159 -0
  239. data/lib/oci/integration/models/work_request_resource.rb +218 -0
  240. data/lib/oci/integration/models/work_request_summary.rb +310 -0
  241. data/lib/oci/integration/util.rb +2 -0
  242. data/lib/oci/load_balancer/load_balancer_client.rb +3 -3
  243. data/lib/oci/load_balancer/load_balancer_client_composite_operations.rb +2 -2
  244. data/lib/oci/load_balancer/models/backend.rb +2 -0
  245. data/lib/oci/load_balancer/models/backend_details.rb +2 -0
  246. data/lib/oci/load_balancer/models/create_backend_details.rb +2 -0
  247. data/lib/oci/load_balancer/models/create_load_balancer_details.rb +12 -1
  248. data/lib/oci/load_balancer/models/health_checker.rb +2 -1
  249. data/lib/oci/load_balancer/models/health_checker_details.rb +2 -1
  250. data/lib/oci/load_balancer/models/lb_cookie_session_persistence_configuration_details.rb +2 -2
  251. data/lib/oci/load_balancer/models/load_balancer.rb +33 -2
  252. data/lib/oci/load_balancer/models/update_backend_details.rb +2 -0
  253. data/lib/oci/load_balancer/models/update_health_checker_details.rb +2 -1
  254. data/lib/oci/load_balancer/models/update_network_security_groups_details.rb +15 -2
  255. data/lib/oci/monitoring/models/alarm.rb +6 -5
  256. data/lib/oci/monitoring/models/create_alarm_details.rb +6 -5
  257. data/lib/oci/monitoring/models/update_alarm_details.rb +6 -5
  258. data/lib/oci/monitoring/monitoring_client.rb +25 -9
  259. data/lib/oci/object_storage/models/bucket.rb +17 -1
  260. data/lib/oci/object_storage/models/create_bucket_details.rb +17 -1
  261. data/lib/oci/object_storage/models/update_bucket_details.rb +18 -2
  262. data/lib/oci/object_storage/models/update_namespace_metadata_details.rb +1 -1
  263. data/lib/oci/object_storage/models/work_request.rb +7 -4
  264. data/lib/oci/object_storage/models/work_request_summary.rb +7 -4
  265. data/lib/oci/object_storage/object_storage_client.rb +75 -4
  266. data/lib/oci/object_storage/object_storage_client_composite_operations.rb +52 -0
  267. data/lib/oci/oce/models/change_oce_instance_compartment_details.rb +155 -0
  268. data/lib/oci/oce/models/create_oce_instance_details.rb +275 -0
  269. data/lib/oci/oce/models/delete_oce_instance_details.rb +153 -0
  270. data/lib/oci/oce/models/oce_instance.rb +387 -0
  271. data/lib/oci/oce/models/oce_instance_summary.rb +387 -0
  272. data/lib/oci/oce/models/update_oce_instance_details.rb +181 -0
  273. data/lib/oci/oce/models/work_request.rb +319 -0
  274. data/lib/oci/oce/models/work_request_error.rb +172 -0
  275. data/lib/oci/oce/models/work_request_log_entry.rb +159 -0
  276. data/lib/oci/oce/models/work_request_resource.rb +217 -0
  277. data/lib/oci/oce/models/workflow_monitor.rb +181 -0
  278. data/lib/oci/oce/models/workflow_step.rb +163 -0
  279. data/lib/oci/oce/oce.rb +31 -0
  280. data/lib/oci/oce/oce_instance_client.rb +733 -0
  281. data/lib/oci/oce/oce_instance_client_composite_operations.rb +223 -0
  282. data/lib/oci/oce/util.rb +2 -0
  283. data/lib/oci/oda/models/change_oda_instance_compartment_details.rb +153 -0
  284. data/lib/oci/oda/models/create_oda_instance_details.rb +237 -0
  285. data/lib/oci/oda/models/error_body.rb +159 -0
  286. data/lib/oci/oda/models/oda_instance.rb +399 -0
  287. data/lib/oci/oda/models/oda_instance_summary.rb +369 -0
  288. data/lib/oci/oda/models/update_oda_instance_details.rb +196 -0
  289. data/lib/oci/oda/models/work_request.rb +340 -0
  290. data/lib/oci/oda/models/work_request_error.rb +176 -0
  291. data/lib/oci/oda/models/work_request_log_entry.rb +163 -0
  292. data/lib/oci/oda/models/work_request_resource.rb +272 -0
  293. data/lib/oci/oda/models/work_request_summary.rb +262 -0
  294. data/lib/oci/oda/oda.rb +30 -0
  295. data/lib/oci/oda/oda_client.rb +842 -0
  296. data/lib/oci/oda/oda_client_composite_operations.rb +212 -0
  297. data/lib/oci/oda/util.rb +2 -0
  298. data/lib/oci/ons/models/backoff_retry_policy.rb +2 -1
  299. data/lib/oci/ons/models/confirmation_result.rb +5 -3
  300. data/lib/oci/ons/models/create_subscription_details.rb +19 -4
  301. data/lib/oci/ons/models/notification_topic.rb +2 -1
  302. data/lib/oci/ons/models/subscription.rb +8 -3
  303. data/lib/oci/ons/models/subscription_summary.rb +5 -3
  304. data/lib/oci/ons/notification_control_plane_client.rb +4 -3
  305. data/lib/oci/ons/notification_data_plane_client.rb +28 -4
  306. data/lib/oci/regions.rb +3 -0
  307. data/lib/oci/resource_manager/models/apply_job_operation_details.rb +201 -0
  308. data/lib/oci/resource_manager/models/apply_job_operation_details_summary.rb +180 -0
  309. data/lib/oci/resource_manager/models/apply_job_plan_resolution.rb +4 -5
  310. data/lib/oci/resource_manager/models/config_source.rb +3 -2
  311. data/lib/oci/resource_manager/models/create_apply_job_operation_details.rb +179 -0
  312. data/lib/oci/resource_manager/models/create_config_source_details.rb +2 -1
  313. data/lib/oci/resource_manager/models/create_destroy_job_operation_details.rb +165 -0
  314. data/lib/oci/resource_manager/models/create_import_tf_state_job_operation_details.rb +163 -0
  315. data/lib/oci/resource_manager/models/create_job_details.rb +16 -3
  316. data/lib/oci/resource_manager/models/create_job_operation_details.rb +169 -0
  317. data/lib/oci/resource_manager/models/create_plan_job_operation_details.rb +145 -0
  318. data/lib/oci/resource_manager/models/create_stack_details.rb +17 -2
  319. data/lib/oci/resource_manager/models/destroy_job_operation_details.rb +184 -0
  320. data/lib/oci/resource_manager/models/destroy_job_operation_details_summary.rb +165 -0
  321. data/lib/oci/resource_manager/models/import_tf_state_job_operation_details.rb +145 -0
  322. data/lib/oci/resource_manager/models/import_tf_state_job_operation_details_summary.rb +145 -0
  323. data/lib/oci/resource_manager/models/job.rb +23 -5
  324. data/lib/oci/resource_manager/models/job_operation_details.rb +169 -0
  325. data/lib/oci/resource_manager/models/job_operation_details_summary.rb +169 -0
  326. data/lib/oci/resource_manager/models/job_summary.rb +20 -5
  327. data/lib/oci/resource_manager/models/plan_job_operation_details.rb +145 -0
  328. data/lib/oci/resource_manager/models/plan_job_operation_details_summary.rb +145 -0
  329. data/lib/oci/resource_manager/models/stack.rb +18 -6
  330. data/lib/oci/resource_manager/models/stack_summary.rb +16 -1
  331. data/lib/oci/resource_manager/models/terraform_version_collection.rb +150 -0
  332. data/lib/oci/resource_manager/models/terraform_version_summary.rb +151 -0
  333. data/lib/oci/resource_manager/models/update_config_source_details.rb +3 -1
  334. data/lib/oci/resource_manager/models/update_stack_details.rb +16 -1
  335. data/lib/oci/resource_manager/models/work_request.rb +2 -2
  336. data/lib/oci/resource_manager/models/work_request_resource.rb +1 -1
  337. data/lib/oci/resource_manager/models/work_request_summary.rb +2 -2
  338. data/lib/oci/resource_manager/resource_manager.rb +17 -0
  339. data/lib/oci/resource_manager/resource_manager_client.rb +187 -29
  340. data/lib/oci/resource_manager/resource_manager_client_composite_operations.rb +6 -6
  341. data/lib/oci/version.rb +1 -1
  342. data/lib/oci/waas/models/access_rule.rb +2 -2
  343. data/lib/oci/waas/models/access_rule_criteria.rb +1 -1
  344. data/lib/oci/waas/models/address_list.rb +1 -0
  345. data/lib/oci/waas/models/address_rate_limiting.rb +1 -1
  346. data/lib/oci/waas/models/block_challenge_settings.rb +1 -1
  347. data/lib/oci/waas/models/caching_rule.rb +9 -8
  348. data/lib/oci/waas/models/caching_rule_criteria.rb +1 -5
  349. data/lib/oci/waas/models/caching_rule_summary.rb +9 -8
  350. data/lib/oci/waas/models/change_address_list_compartment_details.rb +1 -1
  351. data/lib/oci/waas/models/change_certificate_compartment_details.rb +1 -0
  352. data/lib/oci/waas/models/change_custom_protection_rule_compartment_details.rb +1 -1
  353. data/lib/oci/waas/models/change_http_redirect_compartment_details.rb +154 -0
  354. data/lib/oci/waas/models/change_waas_policy_compartment_details.rb +1 -0
  355. data/lib/oci/waas/models/create_address_list_details.rb +1 -1
  356. data/lib/oci/waas/models/create_custom_protection_rule_details.rb +17 -12
  357. data/lib/oci/waas/models/create_http_redirect_details.rb +238 -0
  358. data/lib/oci/waas/models/create_waas_policy_details.rb +2 -1
  359. data/lib/oci/waas/models/custom_protection_rule.rb +20 -16
  360. data/lib/oci/waas/models/custom_protection_rule_setting.rb +4 -3
  361. data/lib/oci/waas/models/custom_protection_rule_summary.rb +6 -6
  362. data/lib/oci/waas/models/http_redirect.rb +301 -0
  363. data/lib/oci/waas/models/http_redirect_summary.rb +301 -0
  364. data/lib/oci/waas/models/http_redirect_target.rb +209 -0
  365. data/lib/oci/waas/models/origin_group_origins.rb +2 -2
  366. data/lib/oci/waas/models/policy_config.rb +14 -7
  367. data/lib/oci/waas/models/protection_settings.rb +1 -1
  368. data/lib/oci/waas/models/purge_cache.rb +2 -2
  369. data/lib/oci/waas/models/update_address_list_details.rb +1 -1
  370. data/lib/oci/waas/models/update_custom_protection_rule_details.rb +16 -12
  371. data/lib/oci/waas/models/update_http_redirect_details.rb +215 -0
  372. data/lib/oci/waas/models/update_waas_policy_details.rb +2 -1
  373. data/lib/oci/waas/models/waas_policy.rb +1 -1
  374. data/lib/oci/waas/models/waas_policy_custom_protection_rule_summary.rb +5 -4
  375. data/lib/oci/waas/models/waf_config.rb +2 -1
  376. data/lib/oci/waas/models/waf_config_details.rb +2 -1
  377. data/lib/oci/waas/models/work_request.rb +3 -0
  378. data/lib/oci/waas/models/work_request_operation_types.rb +3 -0
  379. data/lib/oci/waas/models/work_request_summary.rb +3 -0
  380. data/lib/oci/waas/redirect_client.rb +493 -0
  381. data/lib/oci/waas/redirect_client_composite_operations.rb +172 -0
  382. data/lib/oci/waas/waas.rb +8 -0
  383. data/lib/oci/waas/waas_client.rb +35 -23
  384. data/lib/oci/waas/waas_client_composite_operations.rb +4 -4
  385. metadata +166 -3
@@ -0,0 +1,369 @@
1
+ # Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.
2
+
3
+ require 'date'
4
+ require 'logger'
5
+
6
+ # rubocop:disable Lint/UnneededCopDisableDirective, Metrics/LineLength
7
+ module OCI
8
+ # Summary of the Digital Assistant instance.
9
+ class Oda::Models::OdaInstanceSummary
10
+ SHAPE_NAME_ENUM = [
11
+ SHAPE_NAME_DEVELOPMENT = 'DEVELOPMENT'.freeze,
12
+ SHAPE_NAME_PRODUCTION = 'PRODUCTION'.freeze,
13
+ SHAPE_NAME_UNKNOWN_ENUM_VALUE = 'UNKNOWN_ENUM_VALUE'.freeze
14
+ ].freeze
15
+
16
+ LIFECYCLE_STATE_ENUM = [
17
+ LIFECYCLE_STATE_CREATING = 'CREATING'.freeze,
18
+ LIFECYCLE_STATE_UPDATING = 'UPDATING'.freeze,
19
+ LIFECYCLE_STATE_ACTIVE = 'ACTIVE'.freeze,
20
+ LIFECYCLE_STATE_INACTIVE = 'INACTIVE'.freeze,
21
+ LIFECYCLE_STATE_DELETING = 'DELETING'.freeze,
22
+ LIFECYCLE_STATE_DELETED = 'DELETED'.freeze,
23
+ LIFECYCLE_STATE_FAILED = 'FAILED'.freeze,
24
+ LIFECYCLE_STATE_UNKNOWN_ENUM_VALUE = 'UNKNOWN_ENUM_VALUE'.freeze
25
+ ].freeze
26
+
27
+ LIFECYCLE_SUB_STATE_ENUM = [
28
+ LIFECYCLE_SUB_STATE_DELETE_PENDING = 'DELETE_PENDING'.freeze,
29
+ LIFECYCLE_SUB_STATE_PURGING = 'PURGING'.freeze,
30
+ LIFECYCLE_SUB_STATE_QUEUED = 'QUEUED'.freeze,
31
+ LIFECYCLE_SUB_STATE_UNKNOWN_ENUM_VALUE = 'UNKNOWN_ENUM_VALUE'.freeze
32
+ ].freeze
33
+
34
+ # **[Required]** Unique identifier of the Digital Assistant instance.
35
+ # @return [String]
36
+ attr_accessor :id
37
+
38
+ # User-defined name for the Digital Assistant instance. You can change this value.
39
+ # @return [String]
40
+ attr_accessor :display_name
41
+
42
+ # Description of the Digital Assistant instance.
43
+ # @return [String]
44
+ attr_accessor :description
45
+
46
+ # **[Required]** Identifier of the compartment that the instance belongs to.
47
+ # @return [String]
48
+ attr_accessor :compartment_id
49
+
50
+ # Shape or size of the instance.
51
+ # @return [String]
52
+ attr_reader :shape_name
53
+
54
+ # When the Digital Assistant instance was created. A date-time string as described in [RFC 3339](https://tools.ietf.org/rfc/rfc3339), section 14.29.
55
+ # @return [DateTime]
56
+ attr_accessor :time_created
57
+
58
+ # When the Digital Assistant instance was last updated. A date-time string as described in [RFC 3339](https://tools.ietf.org/rfc/rfc3339), section 14.29.
59
+ # @return [DateTime]
60
+ attr_accessor :time_updated
61
+
62
+ # **[Required]** The current state of the instance.
63
+ # @return [String]
64
+ attr_reader :lifecycle_state
65
+
66
+ # The current sub-state of the Digital Assistant instance.
67
+ # @return [String]
68
+ attr_reader :lifecycle_sub_state
69
+
70
+ # A message describing the current state in more detail. For example, actionable
71
+ # information about an instance that's in the `FAILED` state.
72
+ #
73
+ # @return [String]
74
+ attr_accessor :state_message
75
+
76
+ # Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only.
77
+ # Example: `{\"bar-key\": \"value\"}`
78
+ #
79
+ # @return [Hash<String, String>]
80
+ attr_accessor :freeform_tags
81
+
82
+ # Usage of predefined tag keys. These predefined keys are scoped to namespaces.
83
+ # Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}`
84
+ #
85
+ # @return [Hash<String, Hash<String, Object>>]
86
+ attr_accessor :defined_tags
87
+
88
+ # Attribute mapping from ruby-style variable name to JSON key.
89
+ def self.attribute_map
90
+ {
91
+ # rubocop:disable Style/SymbolLiteral
92
+ 'id': :'id',
93
+ 'display_name': :'displayName',
94
+ 'description': :'description',
95
+ 'compartment_id': :'compartmentId',
96
+ 'shape_name': :'shapeName',
97
+ 'time_created': :'timeCreated',
98
+ 'time_updated': :'timeUpdated',
99
+ 'lifecycle_state': :'lifecycleState',
100
+ 'lifecycle_sub_state': :'lifecycleSubState',
101
+ 'state_message': :'stateMessage',
102
+ 'freeform_tags': :'freeformTags',
103
+ 'defined_tags': :'definedTags'
104
+ # rubocop:enable Style/SymbolLiteral
105
+ }
106
+ end
107
+
108
+ # Attribute type mapping.
109
+ def self.swagger_types
110
+ {
111
+ # rubocop:disable Style/SymbolLiteral
112
+ 'id': :'String',
113
+ 'display_name': :'String',
114
+ 'description': :'String',
115
+ 'compartment_id': :'String',
116
+ 'shape_name': :'String',
117
+ 'time_created': :'DateTime',
118
+ 'time_updated': :'DateTime',
119
+ 'lifecycle_state': :'String',
120
+ 'lifecycle_sub_state': :'String',
121
+ 'state_message': :'String',
122
+ 'freeform_tags': :'Hash<String, String>',
123
+ 'defined_tags': :'Hash<String, Hash<String, Object>>'
124
+ # rubocop:enable Style/SymbolLiteral
125
+ }
126
+ end
127
+
128
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
129
+ # rubocop:disable Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
130
+
131
+
132
+ # Initializes the object
133
+ # @param [Hash] attributes Model attributes in the form of hash
134
+ # @option attributes [String] :id The value to assign to the {#id} property
135
+ # @option attributes [String] :display_name The value to assign to the {#display_name} property
136
+ # @option attributes [String] :description The value to assign to the {#description} property
137
+ # @option attributes [String] :compartment_id The value to assign to the {#compartment_id} property
138
+ # @option attributes [String] :shape_name The value to assign to the {#shape_name} property
139
+ # @option attributes [DateTime] :time_created The value to assign to the {#time_created} property
140
+ # @option attributes [DateTime] :time_updated The value to assign to the {#time_updated} property
141
+ # @option attributes [String] :lifecycle_state The value to assign to the {#lifecycle_state} property
142
+ # @option attributes [String] :lifecycle_sub_state The value to assign to the {#lifecycle_sub_state} property
143
+ # @option attributes [String] :state_message The value to assign to the {#state_message} property
144
+ # @option attributes [Hash<String, String>] :freeform_tags The value to assign to the {#freeform_tags} property
145
+ # @option attributes [Hash<String, Hash<String, Object>>] :defined_tags The value to assign to the {#defined_tags} property
146
+ def initialize(attributes = {})
147
+ return unless attributes.is_a?(Hash)
148
+
149
+ # convert string to symbol for hash key
150
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
151
+
152
+ self.id = attributes[:'id'] if attributes[:'id']
153
+
154
+ self.display_name = attributes[:'displayName'] if attributes[:'displayName']
155
+
156
+ raise 'You cannot provide both :displayName and :display_name' if attributes.key?(:'displayName') && attributes.key?(:'display_name')
157
+
158
+ self.display_name = attributes[:'display_name'] if attributes[:'display_name']
159
+
160
+ self.description = attributes[:'description'] if attributes[:'description']
161
+
162
+ self.compartment_id = attributes[:'compartmentId'] if attributes[:'compartmentId']
163
+
164
+ raise 'You cannot provide both :compartmentId and :compartment_id' if attributes.key?(:'compartmentId') && attributes.key?(:'compartment_id')
165
+
166
+ self.compartment_id = attributes[:'compartment_id'] if attributes[:'compartment_id']
167
+
168
+ self.shape_name = attributes[:'shapeName'] if attributes[:'shapeName']
169
+
170
+ raise 'You cannot provide both :shapeName and :shape_name' if attributes.key?(:'shapeName') && attributes.key?(:'shape_name')
171
+
172
+ self.shape_name = attributes[:'shape_name'] if attributes[:'shape_name']
173
+
174
+ self.time_created = attributes[:'timeCreated'] if attributes[:'timeCreated']
175
+
176
+ raise 'You cannot provide both :timeCreated and :time_created' if attributes.key?(:'timeCreated') && attributes.key?(:'time_created')
177
+
178
+ self.time_created = attributes[:'time_created'] if attributes[:'time_created']
179
+
180
+ self.time_updated = attributes[:'timeUpdated'] if attributes[:'timeUpdated']
181
+
182
+ raise 'You cannot provide both :timeUpdated and :time_updated' if attributes.key?(:'timeUpdated') && attributes.key?(:'time_updated')
183
+
184
+ self.time_updated = attributes[:'time_updated'] if attributes[:'time_updated']
185
+
186
+ self.lifecycle_state = attributes[:'lifecycleState'] if attributes[:'lifecycleState']
187
+
188
+ raise 'You cannot provide both :lifecycleState and :lifecycle_state' if attributes.key?(:'lifecycleState') && attributes.key?(:'lifecycle_state')
189
+
190
+ self.lifecycle_state = attributes[:'lifecycle_state'] if attributes[:'lifecycle_state']
191
+
192
+ self.lifecycle_sub_state = attributes[:'lifecycleSubState'] if attributes[:'lifecycleSubState']
193
+
194
+ raise 'You cannot provide both :lifecycleSubState and :lifecycle_sub_state' if attributes.key?(:'lifecycleSubState') && attributes.key?(:'lifecycle_sub_state')
195
+
196
+ self.lifecycle_sub_state = attributes[:'lifecycle_sub_state'] if attributes[:'lifecycle_sub_state']
197
+
198
+ self.state_message = attributes[:'stateMessage'] if attributes[:'stateMessage']
199
+
200
+ raise 'You cannot provide both :stateMessage and :state_message' if attributes.key?(:'stateMessage') && attributes.key?(:'state_message')
201
+
202
+ self.state_message = attributes[:'state_message'] if attributes[:'state_message']
203
+
204
+ self.freeform_tags = attributes[:'freeformTags'] if attributes[:'freeformTags']
205
+
206
+ raise 'You cannot provide both :freeformTags and :freeform_tags' if attributes.key?(:'freeformTags') && attributes.key?(:'freeform_tags')
207
+
208
+ self.freeform_tags = attributes[:'freeform_tags'] if attributes[:'freeform_tags']
209
+
210
+ self.defined_tags = attributes[:'definedTags'] if attributes[:'definedTags']
211
+
212
+ raise 'You cannot provide both :definedTags and :defined_tags' if attributes.key?(:'definedTags') && attributes.key?(:'defined_tags')
213
+
214
+ self.defined_tags = attributes[:'defined_tags'] if attributes[:'defined_tags']
215
+ end
216
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
217
+ # rubocop:enable Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
218
+
219
+ # Custom attribute writer method checking allowed values (enum).
220
+ # @param [Object] shape_name Object to be assigned
221
+ def shape_name=(shape_name)
222
+ # rubocop:disable Style/ConditionalAssignment
223
+ if shape_name && !SHAPE_NAME_ENUM.include?(shape_name)
224
+ OCI.logger.debug("Unknown value for 'shape_name' [" + shape_name + "]. Mapping to 'SHAPE_NAME_UNKNOWN_ENUM_VALUE'") if OCI.logger
225
+ @shape_name = SHAPE_NAME_UNKNOWN_ENUM_VALUE
226
+ else
227
+ @shape_name = shape_name
228
+ end
229
+ # rubocop:enable Style/ConditionalAssignment
230
+ end
231
+
232
+ # Custom attribute writer method checking allowed values (enum).
233
+ # @param [Object] lifecycle_state Object to be assigned
234
+ def lifecycle_state=(lifecycle_state)
235
+ # rubocop:disable Style/ConditionalAssignment
236
+ if lifecycle_state && !LIFECYCLE_STATE_ENUM.include?(lifecycle_state)
237
+ OCI.logger.debug("Unknown value for 'lifecycle_state' [" + lifecycle_state + "]. Mapping to 'LIFECYCLE_STATE_UNKNOWN_ENUM_VALUE'") if OCI.logger
238
+ @lifecycle_state = LIFECYCLE_STATE_UNKNOWN_ENUM_VALUE
239
+ else
240
+ @lifecycle_state = lifecycle_state
241
+ end
242
+ # rubocop:enable Style/ConditionalAssignment
243
+ end
244
+
245
+ # Custom attribute writer method checking allowed values (enum).
246
+ # @param [Object] lifecycle_sub_state Object to be assigned
247
+ def lifecycle_sub_state=(lifecycle_sub_state)
248
+ # rubocop:disable Style/ConditionalAssignment
249
+ if lifecycle_sub_state && !LIFECYCLE_SUB_STATE_ENUM.include?(lifecycle_sub_state)
250
+ OCI.logger.debug("Unknown value for 'lifecycle_sub_state' [" + lifecycle_sub_state + "]. Mapping to 'LIFECYCLE_SUB_STATE_UNKNOWN_ENUM_VALUE'") if OCI.logger
251
+ @lifecycle_sub_state = LIFECYCLE_SUB_STATE_UNKNOWN_ENUM_VALUE
252
+ else
253
+ @lifecycle_sub_state = lifecycle_sub_state
254
+ end
255
+ # rubocop:enable Style/ConditionalAssignment
256
+ end
257
+
258
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
259
+
260
+
261
+ # Checks equality by comparing each attribute.
262
+ # @param [Object] other the other object to be compared
263
+ def ==(other)
264
+ return true if equal?(other)
265
+
266
+ self.class == other.class &&
267
+ id == other.id &&
268
+ display_name == other.display_name &&
269
+ description == other.description &&
270
+ compartment_id == other.compartment_id &&
271
+ shape_name == other.shape_name &&
272
+ time_created == other.time_created &&
273
+ time_updated == other.time_updated &&
274
+ lifecycle_state == other.lifecycle_state &&
275
+ lifecycle_sub_state == other.lifecycle_sub_state &&
276
+ state_message == other.state_message &&
277
+ freeform_tags == other.freeform_tags &&
278
+ defined_tags == other.defined_tags
279
+ end
280
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
281
+
282
+ # @see the `==` method
283
+ # @param [Object] other the other object to be compared
284
+ def eql?(other)
285
+ self == other
286
+ end
287
+
288
+ # rubocop:disable Metrics/AbcSize, Layout/EmptyLines
289
+
290
+
291
+ # Calculates hash code according to all attributes.
292
+ # @return [Fixnum] Hash code
293
+ def hash
294
+ [id, display_name, description, compartment_id, shape_name, time_created, time_updated, lifecycle_state, lifecycle_sub_state, state_message, freeform_tags, defined_tags].hash
295
+ end
296
+ # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
297
+
298
+ # rubocop:disable Metrics/AbcSize, Layout/EmptyLines
299
+
300
+
301
+ # Builds the object from hash
302
+ # @param [Hash] attributes Model attributes in the form of hash
303
+ # @return [Object] Returns the model itself
304
+ def build_from_hash(attributes)
305
+ return nil unless attributes.is_a?(Hash)
306
+
307
+ self.class.swagger_types.each_pair do |key, type|
308
+ if type =~ /^Array<(.*)>/i
309
+ # check to ensure the input is an array given that the the attribute
310
+ # is documented as an array but the input is not
311
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
312
+ public_method("#{key}=").call(
313
+ attributes[self.class.attribute_map[key]]
314
+ .map { |v| OCI::Internal::Util.convert_to_type(Regexp.last_match(1), v) }
315
+ )
316
+ end
317
+ elsif !attributes[self.class.attribute_map[key]].nil?
318
+ public_method("#{key}=").call(
319
+ OCI::Internal::Util.convert_to_type(type, attributes[self.class.attribute_map[key]])
320
+ )
321
+ end
322
+ # or else data not found in attributes(hash), not an issue as the data can be optional
323
+ end
324
+
325
+ self
326
+ end
327
+ # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
328
+
329
+ # Returns the string representation of the object
330
+ # @return [String] String presentation of the object
331
+ def to_s
332
+ to_hash.to_s
333
+ end
334
+
335
+ # Returns the object in the form of hash
336
+ # @return [Hash] Returns the object in the form of hash
337
+ def to_hash
338
+ hash = {}
339
+ self.class.attribute_map.each_pair do |attr, param|
340
+ value = public_method(attr).call
341
+ next if value.nil? && !instance_variable_defined?("@#{attr}")
342
+
343
+ hash[param] = _to_hash(value)
344
+ end
345
+ hash
346
+ end
347
+
348
+ private
349
+
350
+ # Outputs non-array value in the form of hash
351
+ # For object, use to_hash. Otherwise, just return the value
352
+ # @param [Object] value Any valid value
353
+ # @return [Hash] Returns the value in the form of hash
354
+ def _to_hash(value)
355
+ if value.is_a?(Array)
356
+ value.compact.map { |v| _to_hash(v) }
357
+ elsif value.is_a?(Hash)
358
+ {}.tap do |hash|
359
+ value.each { |k, v| hash[k] = _to_hash(v) }
360
+ end
361
+ elsif value.respond_to? :to_hash
362
+ value.to_hash
363
+ else
364
+ value
365
+ end
366
+ end
367
+ end
368
+ end
369
+ # rubocop:enable Lint/UnneededCopDisableDirective, Metrics/LineLength
@@ -0,0 +1,196 @@
1
+ # Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.
2
+
3
+ require 'date'
4
+
5
+ # rubocop:disable Lint/UnneededCopDisableDirective, Metrics/LineLength
6
+ module OCI
7
+ # The Digital Assistant instance information to be updated.
8
+ class Oda::Models::UpdateOdaInstanceDetails
9
+ # User-friendly name for the Digital Assistant instance.
10
+ # @return [String]
11
+ attr_accessor :display_name
12
+
13
+ # Description of the Digital Assistant instance.
14
+ # @return [String]
15
+ attr_accessor :description
16
+
17
+ # Simple key-value pair that is applied without any predefined name, type or scope. Exists for
18
+ # cross-compatibility only.
19
+ # Example: `{\"bar-key\": \"value\"}`
20
+ #
21
+ # @return [Hash<String, String>]
22
+ attr_accessor :freeform_tags
23
+
24
+ # Usage of predefined tag keys. These predefined keys are scoped to namespaces.
25
+ # Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}`
26
+ #
27
+ # @return [Hash<String, Hash<String, Object>>]
28
+ attr_accessor :defined_tags
29
+
30
+ # Attribute mapping from ruby-style variable name to JSON key.
31
+ def self.attribute_map
32
+ {
33
+ # rubocop:disable Style/SymbolLiteral
34
+ 'display_name': :'displayName',
35
+ 'description': :'description',
36
+ 'freeform_tags': :'freeformTags',
37
+ 'defined_tags': :'definedTags'
38
+ # rubocop:enable Style/SymbolLiteral
39
+ }
40
+ end
41
+
42
+ # Attribute type mapping.
43
+ def self.swagger_types
44
+ {
45
+ # rubocop:disable Style/SymbolLiteral
46
+ 'display_name': :'String',
47
+ 'description': :'String',
48
+ 'freeform_tags': :'Hash<String, String>',
49
+ 'defined_tags': :'Hash<String, Hash<String, Object>>'
50
+ # rubocop:enable Style/SymbolLiteral
51
+ }
52
+ end
53
+
54
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
55
+ # rubocop:disable Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
56
+
57
+
58
+ # Initializes the object
59
+ # @param [Hash] attributes Model attributes in the form of hash
60
+ # @option attributes [String] :display_name The value to assign to the {#display_name} property
61
+ # @option attributes [String] :description The value to assign to the {#description} property
62
+ # @option attributes [Hash<String, String>] :freeform_tags The value to assign to the {#freeform_tags} property
63
+ # @option attributes [Hash<String, Hash<String, Object>>] :defined_tags The value to assign to the {#defined_tags} property
64
+ def initialize(attributes = {})
65
+ return unless attributes.is_a?(Hash)
66
+
67
+ # convert string to symbol for hash key
68
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
69
+
70
+ self.display_name = attributes[:'displayName'] if attributes[:'displayName']
71
+
72
+ raise 'You cannot provide both :displayName and :display_name' if attributes.key?(:'displayName') && attributes.key?(:'display_name')
73
+
74
+ self.display_name = attributes[:'display_name'] if attributes[:'display_name']
75
+
76
+ self.description = attributes[:'description'] if attributes[:'description']
77
+
78
+ self.freeform_tags = attributes[:'freeformTags'] if attributes[:'freeformTags']
79
+
80
+ raise 'You cannot provide both :freeformTags and :freeform_tags' if attributes.key?(:'freeformTags') && attributes.key?(:'freeform_tags')
81
+
82
+ self.freeform_tags = attributes[:'freeform_tags'] if attributes[:'freeform_tags']
83
+
84
+ self.defined_tags = attributes[:'definedTags'] if attributes[:'definedTags']
85
+
86
+ raise 'You cannot provide both :definedTags and :defined_tags' if attributes.key?(:'definedTags') && attributes.key?(:'defined_tags')
87
+
88
+ self.defined_tags = attributes[:'defined_tags'] if attributes[:'defined_tags']
89
+ end
90
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
91
+ # rubocop:enable Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
92
+
93
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
94
+
95
+
96
+ # Checks equality by comparing each attribute.
97
+ # @param [Object] other the other object to be compared
98
+ def ==(other)
99
+ return true if equal?(other)
100
+
101
+ self.class == other.class &&
102
+ display_name == other.display_name &&
103
+ description == other.description &&
104
+ freeform_tags == other.freeform_tags &&
105
+ defined_tags == other.defined_tags
106
+ end
107
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
108
+
109
+ # @see the `==` method
110
+ # @param [Object] other the other object to be compared
111
+ def eql?(other)
112
+ self == other
113
+ end
114
+
115
+ # rubocop:disable Metrics/AbcSize, Layout/EmptyLines
116
+
117
+
118
+ # Calculates hash code according to all attributes.
119
+ # @return [Fixnum] Hash code
120
+ def hash
121
+ [display_name, description, freeform_tags, defined_tags].hash
122
+ end
123
+ # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
124
+
125
+ # rubocop:disable Metrics/AbcSize, Layout/EmptyLines
126
+
127
+
128
+ # Builds the object from hash
129
+ # @param [Hash] attributes Model attributes in the form of hash
130
+ # @return [Object] Returns the model itself
131
+ def build_from_hash(attributes)
132
+ return nil unless attributes.is_a?(Hash)
133
+
134
+ self.class.swagger_types.each_pair do |key, type|
135
+ if type =~ /^Array<(.*)>/i
136
+ # check to ensure the input is an array given that the the attribute
137
+ # is documented as an array but the input is not
138
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
139
+ public_method("#{key}=").call(
140
+ attributes[self.class.attribute_map[key]]
141
+ .map { |v| OCI::Internal::Util.convert_to_type(Regexp.last_match(1), v) }
142
+ )
143
+ end
144
+ elsif !attributes[self.class.attribute_map[key]].nil?
145
+ public_method("#{key}=").call(
146
+ OCI::Internal::Util.convert_to_type(type, attributes[self.class.attribute_map[key]])
147
+ )
148
+ end
149
+ # or else data not found in attributes(hash), not an issue as the data can be optional
150
+ end
151
+
152
+ self
153
+ end
154
+ # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
155
+
156
+ # Returns the string representation of the object
157
+ # @return [String] String presentation of the object
158
+ def to_s
159
+ to_hash.to_s
160
+ end
161
+
162
+ # Returns the object in the form of hash
163
+ # @return [Hash] Returns the object in the form of hash
164
+ def to_hash
165
+ hash = {}
166
+ self.class.attribute_map.each_pair do |attr, param|
167
+ value = public_method(attr).call
168
+ next if value.nil? && !instance_variable_defined?("@#{attr}")
169
+
170
+ hash[param] = _to_hash(value)
171
+ end
172
+ hash
173
+ end
174
+
175
+ private
176
+
177
+ # Outputs non-array value in the form of hash
178
+ # For object, use to_hash. Otherwise, just return the value
179
+ # @param [Object] value Any valid value
180
+ # @return [Hash] Returns the value in the form of hash
181
+ def _to_hash(value)
182
+ if value.is_a?(Array)
183
+ value.compact.map { |v| _to_hash(v) }
184
+ elsif value.is_a?(Hash)
185
+ {}.tap do |hash|
186
+ value.each { |k, v| hash[k] = _to_hash(v) }
187
+ end
188
+ elsif value.respond_to? :to_hash
189
+ value.to_hash
190
+ else
191
+ value
192
+ end
193
+ end
194
+ end
195
+ end
196
+ # rubocop:enable Lint/UnneededCopDisableDirective, Metrics/LineLength