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
@@ -6,6 +6,9 @@ module OCI
6
6
  WORK_REQUEST_OPERATION_TYPES_CREATE_WAAS_POLICY = 'CREATE_WAAS_POLICY'.freeze,
7
7
  WORK_REQUEST_OPERATION_TYPES_UPDATE_WAAS_POLICY = 'UPDATE_WAAS_POLICY'.freeze,
8
8
  WORK_REQUEST_OPERATION_TYPES_DELETE_WAAS_POLICY = 'DELETE_WAAS_POLICY'.freeze,
9
+ WORK_REQUEST_OPERATION_TYPES_CREATE_HTTP_REDIRECT = 'CREATE_HTTP_REDIRECT'.freeze,
10
+ WORK_REQUEST_OPERATION_TYPES_UPDATE_HTTP_REDIRECT = 'UPDATE_HTTP_REDIRECT'.freeze,
11
+ WORK_REQUEST_OPERATION_TYPES_DELETE_HTTP_REDIRECT = 'DELETE_HTTP_REDIRECT'.freeze,
9
12
  WORK_REQUEST_OPERATION_TYPES_PURGE_WAAS_POLICY_CACHE = 'PURGE_WAAS_POLICY_CACHE'.freeze,
10
13
  WORK_REQUEST_OPERATION_TYPES_CREATE_CUSTOM_PROTECTION_RULE = 'CREATE_CUSTOM_PROTECTION_RULE'.freeze,
11
14
  WORK_REQUEST_OPERATION_TYPES_UPDATE_CUSTOM_PROTECTION_RULE = 'UPDATE_CUSTOM_PROTECTION_RULE'.freeze,
@@ -11,6 +11,9 @@ module OCI
11
11
  OPERATION_TYPE_CREATE_WAAS_POLICY = 'CREATE_WAAS_POLICY'.freeze,
12
12
  OPERATION_TYPE_UPDATE_WAAS_POLICY = 'UPDATE_WAAS_POLICY'.freeze,
13
13
  OPERATION_TYPE_DELETE_WAAS_POLICY = 'DELETE_WAAS_POLICY'.freeze,
14
+ OPERATION_TYPE_CREATE_HTTP_REDIRECT = 'CREATE_HTTP_REDIRECT'.freeze,
15
+ OPERATION_TYPE_UPDATE_HTTP_REDIRECT = 'UPDATE_HTTP_REDIRECT'.freeze,
16
+ OPERATION_TYPE_DELETE_HTTP_REDIRECT = 'DELETE_HTTP_REDIRECT'.freeze,
14
17
  OPERATION_TYPE_PURGE_WAAS_POLICY_CACHE = 'PURGE_WAAS_POLICY_CACHE'.freeze,
15
18
  OPERATION_TYPE_CREATE_CUSTOM_PROTECTION_RULE = 'CREATE_CUSTOM_PROTECTION_RULE'.freeze,
16
19
  OPERATION_TYPE_UPDATE_CUSTOM_PROTECTION_RULE = 'UPDATE_CUSTOM_PROTECTION_RULE'.freeze,
@@ -0,0 +1,493 @@
1
+ # Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.
2
+
3
+ require 'uri'
4
+ require 'logger'
5
+
6
+ # rubocop:disable Lint/UnneededCopDisableDirective, Metrics/LineLength
7
+ module OCI
8
+ # OCI Web Application Acceleration and Security Services
9
+ class Waas::RedirectClient
10
+ # Client used to make HTTP requests.
11
+ # @return [OCI::ApiClient]
12
+ attr_reader :api_client
13
+
14
+ # Fully qualified endpoint URL
15
+ # @return [String]
16
+ attr_reader :endpoint
17
+
18
+ # The default retry configuration to apply to all operations in this service client. This can be overridden
19
+ # on a per-operation basis. The default retry configuration value is `nil`, which means that an operation
20
+ # will not perform any retries
21
+ # @return [OCI::Retry::RetryConfig]
22
+ attr_reader :retry_config
23
+
24
+ # The region, which will usually correspond to a value in {OCI::Regions::REGION_ENUM}.
25
+ # @return [String]
26
+ attr_reader :region
27
+
28
+ # rubocop:disable Metrics/AbcSize, Metrics/CyclomaticComplexity, Layout/EmptyLines, Metrics/PerceivedComplexity
29
+
30
+
31
+ # Creates a new RedirectClient.
32
+ # Notes:
33
+ # If a config is not specified, then the global OCI.config will be used.
34
+ #
35
+ # This client is not thread-safe
36
+ #
37
+ # Either a region or an endpoint must be specified. If an endpoint is specified, it will be used instead of the
38
+ # region. A region may be specified in the config or via or the region parameter. If specified in both, then the
39
+ # region parameter will be used.
40
+ # @param [Config] config A Config object.
41
+ # @param [String] region A region used to determine the service endpoint. This will usually
42
+ # correspond to a value in {OCI::Regions::REGION_ENUM}, but may be an arbitrary string.
43
+ # @param [String] endpoint The fully qualified endpoint URL
44
+ # @param [OCI::BaseSigner] signer A signer implementation which can be used by this client. If this is not provided then
45
+ # a signer will be constructed via the provided config. One use case of this parameter is instance principals authentication,
46
+ # so that the instance principals signer can be provided to the client
47
+ # @param [OCI::ApiClientProxySettings] proxy_settings If your environment requires you to use a proxy server for outgoing HTTP requests
48
+ # the details for the proxy can be provided in this parameter
49
+ # @param [OCI::Retry::RetryConfig] retry_config The retry configuration for this service client. This represents the default retry configuration to
50
+ # apply across all operations. This can be overridden on a per-operation basis. The default retry configuration value is `nil`, which means that an operation
51
+ # will not perform any retries
52
+ def initialize(config: nil, region: nil, endpoint: nil, signer: nil, proxy_settings: nil, retry_config: nil)
53
+ # If the signer is an InstancePrincipalsSecurityTokenSigner and no config was supplied (which is valid for instance principals)
54
+ # then create a dummy config to pass to the ApiClient constructor. If customers wish to create a client which uses instance principals
55
+ # and has config (either populated programmatically or loaded from a file), they must construct that config themselves and then
56
+ # pass it to this constructor.
57
+ #
58
+ # If there is no signer (or the signer is not an instance principals signer) and no config was supplied, this is not valid
59
+ # so try and load the config from the default file.
60
+ config ||= OCI.config unless signer.is_a?(OCI::Auth::Signers::InstancePrincipalsSecurityTokenSigner)
61
+ config ||= OCI::Config.new if signer.is_a?(OCI::Auth::Signers::InstancePrincipalsSecurityTokenSigner)
62
+ config.validate unless signer.is_a?(OCI::Auth::Signers::InstancePrincipalsSecurityTokenSigner)
63
+
64
+ if signer.nil?
65
+ signer = OCI::Signer.new(
66
+ config.user,
67
+ config.fingerprint,
68
+ config.tenancy,
69
+ config.key_file,
70
+ pass_phrase: config.pass_phrase,
71
+ private_key_content: config.key_content
72
+ )
73
+ end
74
+
75
+ @api_client = OCI::ApiClient.new(config, signer, proxy_settings: proxy_settings)
76
+ @retry_config = retry_config
77
+
78
+ if endpoint
79
+ @endpoint = endpoint + '/20181116'
80
+ else
81
+ region ||= config.region
82
+ region ||= signer.region if signer.respond_to?(:region)
83
+ self.region = region
84
+ end
85
+ logger.info "RedirectClient endpoint set to '#{@endpoint}'." if logger
86
+ end
87
+ # rubocop:enable Metrics/AbcSize, Metrics/CyclomaticComplexity, Layout/EmptyLines, Metrics/PerceivedComplexity
88
+
89
+ # Set the region that will be used to determine the service endpoint.
90
+ # This will usually correspond to a value in {OCI::Regions::REGION_ENUM},
91
+ # but may be an arbitrary string.
92
+ def region=(new_region)
93
+ @region = new_region
94
+
95
+ raise 'A region must be specified.' unless @region
96
+
97
+ @endpoint = OCI::Regions.get_service_endpoint_for_template(@region, 'https://waas.{region}.{secondLevelDomain}') + '/20181116'
98
+ logger.info "RedirectClient endpoint set to '#{@endpoint} from region #{@region}'." if logger
99
+ end
100
+
101
+ # @return [Logger] The logger for this client. May be nil.
102
+ def logger
103
+ @api_client.config.logger
104
+ end
105
+
106
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
107
+ # rubocop:disable Style/IfUnlessModifier, Metrics/ParameterLists
108
+ # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
109
+
110
+
111
+ # Moves HTTP Redirect into a different compartment. When provided, If-Match is checked against ETag values of the WAAS policy.
112
+ # @param [String] http_redirect_id The [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) of the HTTP Redirect.
113
+ # @param [OCI::Waas::Models::ChangeHttpRedirectCompartmentDetails] change_http_redirect_compartment_details
114
+ # @param [Hash] opts the optional parameters
115
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
116
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
117
+ # @option opts [String] :if_match For optimistic concurrency control. In the `PUT` or `DELETE` call for a resource, set the `if-match` parameter to the value of the etag from a previous `GET` or `POST` response for that resource. The resource will be updated or deleted only if the etag provided matches the resource's current etag value.
118
+ # @option opts [String] :opc_request_id The unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID.
119
+ # @option opts [String] :opc_retry_token A token that uniquely identifies a request so it can be retried in case of a timeout or server error without risk of executing that same action again. Retry tokens expire after 24 hours, but can be invalidated before then due to conflicting operations
120
+ # *Example:* If a resource has been deleted and purged from the system, then a retry of the original delete request may be rejected.
121
+ # @return [Response] A Response object with data of type nil
122
+ def change_http_redirect_compartment(http_redirect_id, change_http_redirect_compartment_details, opts = {})
123
+ logger.debug 'Calling operation RedirectClient#change_http_redirect_compartment.' if logger
124
+
125
+ raise "Missing the required parameter 'http_redirect_id' when calling change_http_redirect_compartment." if http_redirect_id.nil?
126
+ raise "Missing the required parameter 'change_http_redirect_compartment_details' when calling change_http_redirect_compartment." if change_http_redirect_compartment_details.nil?
127
+ raise "Parameter value for 'http_redirect_id' must not be blank" if OCI::Internal::Util.blank_string?(http_redirect_id)
128
+
129
+ path = '/httpRedirects/{httpRedirectId}/actions/changeCompartment'.sub('{httpRedirectId}', http_redirect_id.to_s)
130
+ operation_signing_strategy = :standard
131
+
132
+ # rubocop:disable Style/NegatedIf
133
+ # Query Params
134
+ query_params = {}
135
+
136
+ # Header Params
137
+ header_params = {}
138
+ header_params[:accept] = 'application/json'
139
+ header_params[:'content-type'] = 'application/json'
140
+ header_params[:'if-match'] = opts[:if_match] if opts[:if_match]
141
+ header_params[:'opc-request-id'] = opts[:opc_request_id] if opts[:opc_request_id]
142
+ header_params[:'opc-retry-token'] = opts[:opc_retry_token] if opts[:opc_retry_token]
143
+ # rubocop:enable Style/NegatedIf
144
+ header_params[:'opc-retry-token'] ||= OCI::Retry.generate_opc_retry_token
145
+
146
+ post_body = @api_client.object_to_http_body(change_http_redirect_compartment_details)
147
+
148
+ # rubocop:disable Metrics/BlockLength
149
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'RedirectClient#change_http_redirect_compartment') do
150
+ @api_client.call_api(
151
+ :POST,
152
+ path,
153
+ endpoint,
154
+ header_params: header_params,
155
+ query_params: query_params,
156
+ operation_signing_strategy: operation_signing_strategy,
157
+ body: post_body
158
+ )
159
+ end
160
+ # rubocop:enable Metrics/BlockLength
161
+ end
162
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
163
+ # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
164
+ # rubocop:enable Metrics/MethodLength, Layout/EmptyLines
165
+
166
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
167
+ # rubocop:disable Style/IfUnlessModifier, Metrics/ParameterLists
168
+ # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
169
+
170
+
171
+ # Creates a new HTTP Redirect on the WAF edge.
172
+ # @param [OCI::Waas::Models::CreateHttpRedirectDetails] create_http_redirect_details The details of the HTTP Redirect.
173
+ # @param [Hash] opts the optional parameters
174
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
175
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
176
+ # @option opts [String] :opc_request_id The unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID.
177
+ # @option opts [String] :opc_retry_token A token that uniquely identifies a request so it can be retried in case of a timeout or server error without risk of executing that same action again. Retry tokens expire after 24 hours, but can be invalidated before then due to conflicting operations
178
+ # *Example:* If a resource has been deleted and purged from the system, then a retry of the original delete request may be rejected.
179
+ # @return [Response] A Response object with data of type nil
180
+ def create_http_redirect(create_http_redirect_details, opts = {})
181
+ logger.debug 'Calling operation RedirectClient#create_http_redirect.' if logger
182
+
183
+ raise "Missing the required parameter 'create_http_redirect_details' when calling create_http_redirect." if create_http_redirect_details.nil?
184
+
185
+ path = '/httpRedirects'
186
+ operation_signing_strategy = :standard
187
+
188
+ # rubocop:disable Style/NegatedIf
189
+ # Query Params
190
+ query_params = {}
191
+
192
+ # Header Params
193
+ header_params = {}
194
+ header_params[:accept] = 'application/json'
195
+ header_params[:'content-type'] = 'application/json'
196
+ header_params[:'opc-request-id'] = opts[:opc_request_id] if opts[:opc_request_id]
197
+ header_params[:'opc-retry-token'] = opts[:opc_retry_token] if opts[:opc_retry_token]
198
+ # rubocop:enable Style/NegatedIf
199
+ header_params[:'opc-retry-token'] ||= OCI::Retry.generate_opc_retry_token
200
+
201
+ post_body = @api_client.object_to_http_body(create_http_redirect_details)
202
+
203
+ # rubocop:disable Metrics/BlockLength
204
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'RedirectClient#create_http_redirect') do
205
+ @api_client.call_api(
206
+ :POST,
207
+ path,
208
+ endpoint,
209
+ header_params: header_params,
210
+ query_params: query_params,
211
+ operation_signing_strategy: operation_signing_strategy,
212
+ body: post_body
213
+ )
214
+ end
215
+ # rubocop:enable Metrics/BlockLength
216
+ end
217
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
218
+ # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
219
+ # rubocop:enable Metrics/MethodLength, Layout/EmptyLines
220
+
221
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
222
+ # rubocop:disable Style/IfUnlessModifier, Metrics/ParameterLists
223
+ # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
224
+
225
+
226
+ # Deletes a redirect.
227
+ # @param [String] http_redirect_id The [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) of the HTTP Redirect.
228
+ # @param [Hash] opts the optional parameters
229
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
230
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
231
+ # @option opts [String] :opc_request_id The unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID.
232
+ # @option opts [String] :opc_retry_token A token that uniquely identifies a request so it can be retried in case of a timeout or server error without risk of executing that same action again. Retry tokens expire after 24 hours, but can be invalidated before then due to conflicting operations
233
+ # *Example:* If a resource has been deleted and purged from the system, then a retry of the original delete request may be rejected.
234
+ # @option opts [String] :if_match For optimistic concurrency control. In the `PUT` or `DELETE` call for a resource, set the `if-match` parameter to the value of the etag from a previous `GET` or `POST` response for that resource. The resource will be updated or deleted only if the etag provided matches the resource's current etag value.
235
+ # @return [Response] A Response object with data of type nil
236
+ def delete_http_redirect(http_redirect_id, opts = {})
237
+ logger.debug 'Calling operation RedirectClient#delete_http_redirect.' if logger
238
+
239
+ raise "Missing the required parameter 'http_redirect_id' when calling delete_http_redirect." if http_redirect_id.nil?
240
+ raise "Parameter value for 'http_redirect_id' must not be blank" if OCI::Internal::Util.blank_string?(http_redirect_id)
241
+
242
+ path = '/httpRedirects/{httpRedirectId}'.sub('{httpRedirectId}', http_redirect_id.to_s)
243
+ operation_signing_strategy = :standard
244
+
245
+ # rubocop:disable Style/NegatedIf
246
+ # Query Params
247
+ query_params = {}
248
+
249
+ # Header Params
250
+ header_params = {}
251
+ header_params[:accept] = 'application/json'
252
+ header_params[:'content-type'] = 'application/json'
253
+ header_params[:'opc-request-id'] = opts[:opc_request_id] if opts[:opc_request_id]
254
+ header_params[:'opc-retry-token'] = opts[:opc_retry_token] if opts[:opc_retry_token]
255
+ header_params[:'if-match'] = opts[:if_match] if opts[:if_match]
256
+ # rubocop:enable Style/NegatedIf
257
+ header_params[:'opc-retry-token'] ||= OCI::Retry.generate_opc_retry_token
258
+
259
+ post_body = nil
260
+
261
+ # rubocop:disable Metrics/BlockLength
262
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'RedirectClient#delete_http_redirect') do
263
+ @api_client.call_api(
264
+ :DELETE,
265
+ path,
266
+ endpoint,
267
+ header_params: header_params,
268
+ query_params: query_params,
269
+ operation_signing_strategy: operation_signing_strategy,
270
+ body: post_body
271
+ )
272
+ end
273
+ # rubocop:enable Metrics/BlockLength
274
+ end
275
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
276
+ # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
277
+ # rubocop:enable Metrics/MethodLength, Layout/EmptyLines
278
+
279
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
280
+ # rubocop:disable Style/IfUnlessModifier, Metrics/ParameterLists
281
+ # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
282
+
283
+
284
+ # Gets the details of a HTTP Redirect.
285
+ # @param [String] http_redirect_id The [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) of the HTTP Redirect.
286
+ # @param [Hash] opts the optional parameters
287
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
288
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
289
+ # @option opts [String] :opc_request_id The unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID.
290
+ # @return [Response] A Response object with data of type {OCI::Waas::Models::HttpRedirect HttpRedirect}
291
+ def get_http_redirect(http_redirect_id, opts = {})
292
+ logger.debug 'Calling operation RedirectClient#get_http_redirect.' if logger
293
+
294
+ raise "Missing the required parameter 'http_redirect_id' when calling get_http_redirect." if http_redirect_id.nil?
295
+ raise "Parameter value for 'http_redirect_id' must not be blank" if OCI::Internal::Util.blank_string?(http_redirect_id)
296
+
297
+ path = '/httpRedirects/{httpRedirectId}'.sub('{httpRedirectId}', http_redirect_id.to_s)
298
+ operation_signing_strategy = :standard
299
+
300
+ # rubocop:disable Style/NegatedIf
301
+ # Query Params
302
+ query_params = {}
303
+
304
+ # Header Params
305
+ header_params = {}
306
+ header_params[:accept] = 'application/json'
307
+ header_params[:'content-type'] = 'application/json'
308
+ header_params[:'opc-request-id'] = opts[:opc_request_id] if opts[:opc_request_id]
309
+ # rubocop:enable Style/NegatedIf
310
+
311
+ post_body = nil
312
+
313
+ # rubocop:disable Metrics/BlockLength
314
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'RedirectClient#get_http_redirect') do
315
+ @api_client.call_api(
316
+ :GET,
317
+ path,
318
+ endpoint,
319
+ header_params: header_params,
320
+ query_params: query_params,
321
+ operation_signing_strategy: operation_signing_strategy,
322
+ body: post_body,
323
+ return_type: 'OCI::Waas::Models::HttpRedirect'
324
+ )
325
+ end
326
+ # rubocop:enable Metrics/BlockLength
327
+ end
328
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
329
+ # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
330
+ # rubocop:enable Metrics/MethodLength, Layout/EmptyLines
331
+
332
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
333
+ # rubocop:disable Style/IfUnlessModifier, Metrics/ParameterLists
334
+ # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
335
+
336
+
337
+ # Gets a list of HTTP Redirects.
338
+ # @param [String] compartment_id The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. This number is generated when the compartment is created.
339
+ # @param [Hash] opts the optional parameters
340
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
341
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
342
+ # @option opts [String] :opc_request_id The unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID.
343
+ # @option opts [Integer] :limit The maximum number of items to return in a paginated call. In unspecified, defaults to `10`. (default to 10)
344
+ # @option opts [String] :page The value of the `opc-next-page` response header from the previous paginated call.
345
+ # @option opts [String] :sort_order The value of the sorting direction of resources in a paginated 'List' call. If unspecified, defaults to `DESC`.
346
+ # Allowed values are: ASC, DESC
347
+ # @option opts [String] :sort_by The field to sort the results of the List query.
348
+ # Allowed values are: id, domain, target, displayName
349
+ # @option opts [Array<String>] :id Filter redirects using a list of redirect OCIDs.
350
+ # @option opts [Array<String>] :display_name Filter redirects using a display name.
351
+ # @option opts [Array<String>] :lifecycle_state Filter redirects using a list of lifecycle states. (default to [ACTIVE])
352
+ # Allowed values are: CREATING, ACTIVE, FAILED, UPDATING, DELETING, DELETED
353
+ # @option opts [DateTime] :time_created_greater_than_or_equal_to A filter that matches redirects created on or after the specified date and time.
354
+ # @option opts [DateTime] :time_created_less_than A filter that matches redirects created before the specified date-time. Default to 1 day before now.
355
+ # @return [Response] A Response object with data of type Array<{OCI::Waas::Models::HttpRedirectSummary HttpRedirectSummary}>
356
+ def list_http_redirects(compartment_id, opts = {})
357
+ logger.debug 'Calling operation RedirectClient#list_http_redirects.' if logger
358
+
359
+ raise "Missing the required parameter 'compartment_id' when calling list_http_redirects." if compartment_id.nil?
360
+
361
+ if opts[:sort_order] && !%w[ASC DESC].include?(opts[:sort_order])
362
+ raise 'Invalid value for "sort_order", must be one of ASC, DESC.'
363
+ end
364
+
365
+ if opts[:sort_by] && !%w[id domain target displayName].include?(opts[:sort_by])
366
+ raise 'Invalid value for "sort_by", must be one of id, domain, target, displayName.'
367
+ end
368
+
369
+
370
+ lifecycle_state_allowable_values = %w[CREATING ACTIVE FAILED UPDATING DELETING DELETED]
371
+ if opts[:lifecycle_state] && !opts[:lifecycle_state].empty?
372
+ opts[:lifecycle_state].each do |val_to_check|
373
+ unless lifecycle_state_allowable_values.include?(val_to_check)
374
+ raise 'Invalid value for "lifecycle_state", must be one of CREATING, ACTIVE, FAILED, UPDATING, DELETING, DELETED.'
375
+ end
376
+ end
377
+ end
378
+
379
+ path = '/httpRedirects'
380
+ operation_signing_strategy = :standard
381
+
382
+ # rubocop:disable Style/NegatedIf
383
+ # Query Params
384
+ query_params = {}
385
+ query_params[:compartmentId] = compartment_id
386
+ query_params[:limit] = opts[:limit] if opts[:limit]
387
+ query_params[:page] = opts[:page] if opts[:page]
388
+ query_params[:sortOrder] = opts[:sort_order] if opts[:sort_order]
389
+ query_params[:sortBy] = opts[:sort_by] if opts[:sort_by]
390
+ query_params[:id] = OCI::ApiClient.build_collection_params(opts[:id], :multi) if opts[:id] && !opts[:id].empty?
391
+ query_params[:displayName] = OCI::ApiClient.build_collection_params(opts[:display_name], :multi) if opts[:display_name] && !opts[:display_name].empty?
392
+ query_params[:lifecycleState] = OCI::ApiClient.build_collection_params(opts[:lifecycle_state], :multi) if opts[:lifecycle_state] && !opts[:lifecycle_state].empty?
393
+ query_params[:timeCreatedGreaterThanOrEqualTo] = opts[:time_created_greater_than_or_equal_to] if opts[:time_created_greater_than_or_equal_to]
394
+ query_params[:timeCreatedLessThan] = opts[:time_created_less_than] if opts[:time_created_less_than]
395
+
396
+ # Header Params
397
+ header_params = {}
398
+ header_params[:accept] = 'application/json'
399
+ header_params[:'content-type'] = 'application/json'
400
+ header_params[:'opc-request-id'] = opts[:opc_request_id] if opts[:opc_request_id]
401
+ # rubocop:enable Style/NegatedIf
402
+
403
+ post_body = nil
404
+
405
+ # rubocop:disable Metrics/BlockLength
406
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'RedirectClient#list_http_redirects') do
407
+ @api_client.call_api(
408
+ :GET,
409
+ path,
410
+ endpoint,
411
+ header_params: header_params,
412
+ query_params: query_params,
413
+ operation_signing_strategy: operation_signing_strategy,
414
+ body: post_body,
415
+ return_type: 'Array<OCI::Waas::Models::HttpRedirectSummary>'
416
+ )
417
+ end
418
+ # rubocop:enable Metrics/BlockLength
419
+ end
420
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
421
+ # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
422
+ # rubocop:enable Metrics/MethodLength, Layout/EmptyLines
423
+
424
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
425
+ # rubocop:disable Style/IfUnlessModifier, Metrics/ParameterLists
426
+ # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
427
+
428
+
429
+ # Updates the details of a HTTP Redirect, including target and tags. Only the fields specified in the request body will be updated; all other properties will remain unchanged.
430
+ # @param [String] http_redirect_id The [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) of the HTTP Redirect.
431
+ # @param [OCI::Waas::Models::UpdateHttpRedirectDetails] update_http_redirect_details The details of the HTTP Redirect to update.
432
+ # @param [Hash] opts the optional parameters
433
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
434
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
435
+ # @option opts [String] :opc_request_id The unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID.
436
+ # @option opts [String] :opc_retry_token A token that uniquely identifies a request so it can be retried in case of a timeout or server error without risk of executing that same action again. Retry tokens expire after 24 hours, but can be invalidated before then due to conflicting operations
437
+ # *Example:* If a resource has been deleted and purged from the system, then a retry of the original delete request may be rejected.
438
+ # @option opts [String] :if_match For optimistic concurrency control. In the `PUT` or `DELETE` call for a resource, set the `if-match` parameter to the value of the etag from a previous `GET` or `POST` response for that resource. The resource will be updated or deleted only if the etag provided matches the resource's current etag value.
439
+ # @return [Response] A Response object with data of type nil
440
+ def update_http_redirect(http_redirect_id, update_http_redirect_details, opts = {})
441
+ logger.debug 'Calling operation RedirectClient#update_http_redirect.' if logger
442
+
443
+ raise "Missing the required parameter 'http_redirect_id' when calling update_http_redirect." if http_redirect_id.nil?
444
+ raise "Missing the required parameter 'update_http_redirect_details' when calling update_http_redirect." if update_http_redirect_details.nil?
445
+ raise "Parameter value for 'http_redirect_id' must not be blank" if OCI::Internal::Util.blank_string?(http_redirect_id)
446
+
447
+ path = '/httpRedirects/{httpRedirectId}'.sub('{httpRedirectId}', http_redirect_id.to_s)
448
+ operation_signing_strategy = :standard
449
+
450
+ # rubocop:disable Style/NegatedIf
451
+ # Query Params
452
+ query_params = {}
453
+
454
+ # Header Params
455
+ header_params = {}
456
+ header_params[:accept] = 'application/json'
457
+ header_params[:'content-type'] = 'application/json'
458
+ header_params[:'opc-request-id'] = opts[:opc_request_id] if opts[:opc_request_id]
459
+ header_params[:'opc-retry-token'] = opts[:opc_retry_token] if opts[:opc_retry_token]
460
+ header_params[:'if-match'] = opts[:if_match] if opts[:if_match]
461
+ # rubocop:enable Style/NegatedIf
462
+ header_params[:'opc-retry-token'] ||= OCI::Retry.generate_opc_retry_token
463
+
464
+ post_body = @api_client.object_to_http_body(update_http_redirect_details)
465
+
466
+ # rubocop:disable Metrics/BlockLength
467
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'RedirectClient#update_http_redirect') do
468
+ @api_client.call_api(
469
+ :PUT,
470
+ path,
471
+ endpoint,
472
+ header_params: header_params,
473
+ query_params: query_params,
474
+ operation_signing_strategy: operation_signing_strategy,
475
+ body: post_body
476
+ )
477
+ end
478
+ # rubocop:enable Metrics/BlockLength
479
+ end
480
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
481
+ # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
482
+ # rubocop:enable Metrics/MethodLength, Layout/EmptyLines
483
+
484
+ private
485
+
486
+ def applicable_retry_config(opts = {})
487
+ return @retry_config unless opts.key?(:retry_config)
488
+
489
+ opts[:retry_config]
490
+ end
491
+ end
492
+ end
493
+ # rubocop:enable Lint/UnneededCopDisableDirective, Metrics/LineLength