oci 2.4.3 → 2.4.4

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 (623) hide show
  1. checksums.yaml +4 -4
  2. data/LICENSE.txt +3 -3
  3. data/README.md +2 -2
  4. data/lib/oci.rb +1 -1
  5. data/lib/oci/api_client.rb +1 -1
  6. data/lib/oci/api_client_proxy_settings.rb +1 -1
  7. data/lib/oci/audit/audit.rb +1 -1
  8. data/lib/oci/audit/audit_client.rb +1 -1
  9. data/lib/oci/audit/audit_client_composite_operations.rb +1 -1
  10. data/lib/oci/audit/models/audit_event.rb +1 -1
  11. data/lib/oci/audit/models/configuration.rb +1 -1
  12. data/lib/oci/audit/models/update_configuration_details.rb +1 -1
  13. data/lib/oci/audit/util.rb +1 -1
  14. data/lib/oci/auth/auth.rb +1 -1
  15. data/lib/oci/auth/federation_client.rb +1 -1
  16. data/lib/oci/auth/internal/auth_token_request_signer.rb +1 -1
  17. data/lib/oci/auth/security_token_container.rb +1 -1
  18. data/lib/oci/auth/session_key_supplier.rb +1 -1
  19. data/lib/oci/auth/signers/instance_principals_security_token_signer.rb +1 -1
  20. data/lib/oci/auth/signers/security_token_signer.rb +1 -1
  21. data/lib/oci/auth/signers/x509_federation_client_based_security_token_signer.rb +1 -1
  22. data/lib/oci/auth/url_based_certificate_retriever.rb +1 -1
  23. data/lib/oci/auth/util.rb +1 -1
  24. data/lib/oci/base_signer.rb +1 -1
  25. data/lib/oci/config.rb +1 -1
  26. data/lib/oci/config_file_loader.rb +1 -1
  27. data/lib/oci/container_engine/container_engine.rb +1 -1
  28. data/lib/oci/container_engine/container_engine_client.rb +1 -1
  29. data/lib/oci/container_engine/container_engine_client_composite_operations.rb +1 -1
  30. data/lib/oci/container_engine/models/add_on_options.rb +1 -1
  31. data/lib/oci/container_engine/models/cluster.rb +1 -1
  32. data/lib/oci/container_engine/models/cluster_create_options.rb +1 -1
  33. data/lib/oci/container_engine/models/cluster_endpoints.rb +1 -1
  34. data/lib/oci/container_engine/models/cluster_lifecycle_state.rb +1 -1
  35. data/lib/oci/container_engine/models/cluster_metadata.rb +1 -1
  36. data/lib/oci/container_engine/models/cluster_options.rb +1 -1
  37. data/lib/oci/container_engine/models/cluster_summary.rb +1 -1
  38. data/lib/oci/container_engine/models/create_cluster_details.rb +1 -1
  39. data/lib/oci/container_engine/models/create_cluster_kubeconfig_content_details.rb +1 -1
  40. data/lib/oci/container_engine/models/create_node_pool_details.rb +1 -1
  41. data/lib/oci/container_engine/models/key_value.rb +1 -1
  42. data/lib/oci/container_engine/models/kubernetes_network_config.rb +1 -1
  43. data/lib/oci/container_engine/models/node.rb +1 -1
  44. data/lib/oci/container_engine/models/node_error.rb +1 -1
  45. data/lib/oci/container_engine/models/node_pool.rb +1 -1
  46. data/lib/oci/container_engine/models/node_pool_options.rb +1 -1
  47. data/lib/oci/container_engine/models/node_pool_summary.rb +1 -1
  48. data/lib/oci/container_engine/models/sort_order.rb +1 -1
  49. data/lib/oci/container_engine/models/update_cluster_details.rb +1 -1
  50. data/lib/oci/container_engine/models/update_node_pool_details.rb +1 -1
  51. data/lib/oci/container_engine/models/work_request.rb +1 -1
  52. data/lib/oci/container_engine/models/work_request_error.rb +1 -1
  53. data/lib/oci/container_engine/models/work_request_log_entry.rb +1 -1
  54. data/lib/oci/container_engine/models/work_request_operation_type.rb +1 -1
  55. data/lib/oci/container_engine/models/work_request_resource.rb +1 -1
  56. data/lib/oci/container_engine/models/work_request_status.rb +1 -1
  57. data/lib/oci/container_engine/models/work_request_summary.rb +1 -1
  58. data/lib/oci/container_engine/util.rb +1 -1
  59. data/lib/oci/core/blockstorage_client.rb +1 -1
  60. data/lib/oci/core/blockstorage_client_composite_operations.rb +1 -1
  61. data/lib/oci/core/compute_client.rb +98 -1
  62. data/lib/oci/core/compute_client_composite_operations.rb +1 -1
  63. data/lib/oci/core/compute_management_client.rb +1 -1
  64. data/lib/oci/core/compute_management_client_composite_operations.rb +1 -1
  65. data/lib/oci/core/core.rb +2 -1
  66. data/lib/oci/core/models/app_catalog_listing.rb +1 -1
  67. data/lib/oci/core/models/app_catalog_listing_resource_version.rb +1 -1
  68. data/lib/oci/core/models/app_catalog_listing_resource_version_agreements.rb +1 -1
  69. data/lib/oci/core/models/app_catalog_listing_resource_version_summary.rb +1 -1
  70. data/lib/oci/core/models/app_catalog_listing_summary.rb +1 -1
  71. data/lib/oci/core/models/app_catalog_subscription.rb +1 -1
  72. data/lib/oci/core/models/app_catalog_subscription_summary.rb +1 -1
  73. data/lib/oci/core/models/attach_boot_volume_details.rb +1 -1
  74. data/lib/oci/core/models/attach_i_scsi_volume_details.rb +6 -2
  75. data/lib/oci/core/models/attach_paravirtualized_volume_details.rb +6 -2
  76. data/lib/oci/core/models/attach_vnic_details.rb +1 -1
  77. data/lib/oci/core/models/attach_volume_details.rb +12 -2
  78. data/lib/oci/core/models/boot_volume.rb +1 -1
  79. data/lib/oci/core/models/boot_volume_attachment.rb +1 -1
  80. data/lib/oci/core/models/boot_volume_backup.rb +1 -1
  81. data/lib/oci/core/models/boot_volume_kms_key.rb +1 -1
  82. data/lib/oci/core/models/boot_volume_source_details.rb +1 -1
  83. data/lib/oci/core/models/boot_volume_source_from_boot_volume_backup_details.rb +1 -1
  84. data/lib/oci/core/models/boot_volume_source_from_boot_volume_details.rb +1 -1
  85. data/lib/oci/core/models/bulk_add_virtual_circuit_public_prefixes_details.rb +1 -1
  86. data/lib/oci/core/models/bulk_delete_virtual_circuit_public_prefixes_details.rb +1 -1
  87. data/lib/oci/core/models/capture_console_history_details.rb +1 -1
  88. data/lib/oci/core/models/compute_instance_details.rb +1 -1
  89. data/lib/oci/core/models/connect_local_peering_gateways_details.rb +1 -1
  90. data/lib/oci/core/models/connect_remote_peering_connections_details.rb +1 -1
  91. data/lib/oci/core/models/console_history.rb +1 -1
  92. data/lib/oci/core/models/copy_volume_backup_details.rb +1 -1
  93. data/lib/oci/core/models/cpe.rb +1 -1
  94. data/lib/oci/core/models/create_app_catalog_subscription_details.rb +1 -1
  95. data/lib/oci/core/models/create_boot_volume_backup_details.rb +1 -1
  96. data/lib/oci/core/models/create_boot_volume_details.rb +1 -1
  97. data/lib/oci/core/models/create_cpe_details.rb +1 -1
  98. data/lib/oci/core/models/create_cross_connect_details.rb +1 -1
  99. data/lib/oci/core/models/create_cross_connect_group_details.rb +1 -1
  100. data/lib/oci/core/models/create_dhcp_details.rb +1 -1
  101. data/lib/oci/core/models/create_drg_attachment_details.rb +1 -1
  102. data/lib/oci/core/models/create_drg_details.rb +1 -1
  103. data/lib/oci/core/models/create_image_details.rb +1 -1
  104. data/lib/oci/core/models/create_instance_configuration_details.rb +1 -1
  105. data/lib/oci/core/models/create_instance_console_connection_details.rb +1 -1
  106. data/lib/oci/core/models/create_instance_pool_details.rb +1 -1
  107. data/lib/oci/core/models/create_instance_pool_placement_configuration_details.rb +1 -1
  108. data/lib/oci/core/models/create_internet_gateway_details.rb +1 -1
  109. data/lib/oci/core/models/create_ip_sec_connection_details.rb +1 -1
  110. data/lib/oci/core/models/create_local_peering_gateway_details.rb +1 -1
  111. data/lib/oci/core/models/create_nat_gateway_details.rb +1 -1
  112. data/lib/oci/core/models/create_private_ip_details.rb +1 -1
  113. data/lib/oci/core/models/create_public_ip_details.rb +1 -1
  114. data/lib/oci/core/models/create_remote_peering_connection_details.rb +1 -1
  115. data/lib/oci/core/models/create_route_table_details.rb +1 -1
  116. data/lib/oci/core/models/create_security_list_details.rb +1 -1
  117. data/lib/oci/core/models/create_service_gateway_details.rb +1 -1
  118. data/lib/oci/core/models/create_subnet_details.rb +1 -1
  119. data/lib/oci/core/models/create_vcn_details.rb +1 -1
  120. data/lib/oci/core/models/create_virtual_circuit_details.rb +1 -1
  121. data/lib/oci/core/models/create_virtual_circuit_public_prefix_details.rb +1 -1
  122. data/lib/oci/core/models/create_vnic_details.rb +1 -1
  123. data/lib/oci/core/models/create_volume_backup_details.rb +1 -1
  124. data/lib/oci/core/models/create_volume_backup_policy_assignment_details.rb +1 -1
  125. data/lib/oci/core/models/create_volume_details.rb +1 -1
  126. data/lib/oci/core/models/create_volume_group_backup_details.rb +1 -1
  127. data/lib/oci/core/models/create_volume_group_details.rb +1 -1
  128. data/lib/oci/core/models/cross_connect.rb +1 -1
  129. data/lib/oci/core/models/cross_connect_group.rb +1 -1
  130. data/lib/oci/core/models/cross_connect_location.rb +1 -1
  131. data/lib/oci/core/models/cross_connect_mapping.rb +1 -1
  132. data/lib/oci/core/models/cross_connect_port_speed_shape.rb +1 -1
  133. data/lib/oci/core/models/cross_connect_status.rb +1 -1
  134. data/lib/oci/core/models/delete_virtual_circuit_public_prefix_details.rb +1 -1
  135. data/lib/oci/core/models/device.rb +163 -0
  136. data/lib/oci/core/models/dhcp_dns_option.rb +1 -1
  137. data/lib/oci/core/models/dhcp_option.rb +1 -1
  138. data/lib/oci/core/models/dhcp_options.rb +1 -1
  139. data/lib/oci/core/models/dhcp_search_domain_option.rb +1 -1
  140. data/lib/oci/core/models/drg.rb +1 -1
  141. data/lib/oci/core/models/drg_attachment.rb +1 -1
  142. data/lib/oci/core/models/egress_security_rule.rb +1 -1
  143. data/lib/oci/core/models/export_image_details.rb +1 -1
  144. data/lib/oci/core/models/export_image_via_object_storage_tuple_details.rb +1 -1
  145. data/lib/oci/core/models/export_image_via_object_storage_uri_details.rb +1 -1
  146. data/lib/oci/core/models/fast_connect_provider_service.rb +1 -1
  147. data/lib/oci/core/models/get_public_ip_by_ip_address_details.rb +1 -1
  148. data/lib/oci/core/models/get_public_ip_by_private_ip_id_details.rb +1 -1
  149. data/lib/oci/core/models/i_scsi_volume_attachment.rb +6 -2
  150. data/lib/oci/core/models/icmp_options.rb +1 -1
  151. data/lib/oci/core/models/image.rb +1 -1
  152. data/lib/oci/core/models/image_source_details.rb +1 -1
  153. data/lib/oci/core/models/image_source_via_object_storage_tuple_details.rb +1 -1
  154. data/lib/oci/core/models/image_source_via_object_storage_uri_details.rb +1 -1
  155. data/lib/oci/core/models/ingress_security_rule.rb +1 -1
  156. data/lib/oci/core/models/instance.rb +1 -1
  157. data/lib/oci/core/models/instance_configuration.rb +1 -1
  158. data/lib/oci/core/models/instance_configuration_attach_vnic_details.rb +1 -1
  159. data/lib/oci/core/models/instance_configuration_attach_volume_details.rb +1 -1
  160. data/lib/oci/core/models/instance_configuration_block_volume_details.rb +1 -1
  161. data/lib/oci/core/models/instance_configuration_create_vnic_details.rb +1 -1
  162. data/lib/oci/core/models/instance_configuration_create_volume_details.rb +1 -1
  163. data/lib/oci/core/models/instance_configuration_instance_details.rb +1 -1
  164. data/lib/oci/core/models/instance_configuration_instance_source_details.rb +1 -1
  165. data/lib/oci/core/models/instance_configuration_instance_source_via_boot_volume_details.rb +1 -1
  166. data/lib/oci/core/models/instance_configuration_instance_source_via_image_details.rb +1 -1
  167. data/lib/oci/core/models/instance_configuration_iscsi_attach_volume_details.rb +1 -1
  168. data/lib/oci/core/models/instance_configuration_launch_instance_details.rb +1 -1
  169. data/lib/oci/core/models/instance_configuration_paravirtualized_attach_volume_details.rb +1 -1
  170. data/lib/oci/core/models/instance_configuration_summary.rb +1 -1
  171. data/lib/oci/core/models/instance_configuration_volume_source_details.rb +1 -1
  172. data/lib/oci/core/models/instance_configuration_volume_source_from_volume_backup_details.rb +1 -1
  173. data/lib/oci/core/models/instance_configuration_volume_source_from_volume_details.rb +1 -1
  174. data/lib/oci/core/models/instance_console_connection.rb +1 -1
  175. data/lib/oci/core/models/instance_credentials.rb +1 -1
  176. data/lib/oci/core/models/instance_pool.rb +1 -1
  177. data/lib/oci/core/models/instance_pool_placement_configuration.rb +1 -1
  178. data/lib/oci/core/models/instance_pool_placement_secondary_vnic_subnet.rb +1 -1
  179. data/lib/oci/core/models/instance_pool_summary.rb +1 -1
  180. data/lib/oci/core/models/instance_source_details.rb +1 -1
  181. data/lib/oci/core/models/instance_source_via_boot_volume_details.rb +1 -1
  182. data/lib/oci/core/models/instance_source_via_image_details.rb +1 -1
  183. data/lib/oci/core/models/instance_summary.rb +1 -1
  184. data/lib/oci/core/models/internet_gateway.rb +1 -1
  185. data/lib/oci/core/models/ip_sec_connection.rb +1 -1
  186. data/lib/oci/core/models/ip_sec_connection_device_config.rb +1 -1
  187. data/lib/oci/core/models/ip_sec_connection_device_status.rb +1 -1
  188. data/lib/oci/core/models/launch_instance_details.rb +1 -1
  189. data/lib/oci/core/models/launch_options.rb +19 -5
  190. data/lib/oci/core/models/letter_of_authority.rb +1 -1
  191. data/lib/oci/core/models/local_peering_gateway.rb +1 -1
  192. data/lib/oci/core/models/nat_gateway.rb +1 -1
  193. data/lib/oci/core/models/paravirtualized_volume_attachment.rb +6 -2
  194. data/lib/oci/core/models/peer_region_for_remote_peering.rb +1 -1
  195. data/lib/oci/core/models/port_range.rb +1 -1
  196. data/lib/oci/core/models/private_ip.rb +1 -1
  197. data/lib/oci/core/models/public_ip.rb +1 -1
  198. data/lib/oci/core/models/remote_peering_connection.rb +1 -1
  199. data/lib/oci/core/models/route_rule.rb +1 -1
  200. data/lib/oci/core/models/route_table.rb +1 -1
  201. data/lib/oci/core/models/security_list.rb +1 -1
  202. data/lib/oci/core/models/service.rb +1 -1
  203. data/lib/oci/core/models/service_gateway.rb +1 -1
  204. data/lib/oci/core/models/service_id_request_details.rb +1 -1
  205. data/lib/oci/core/models/service_id_response_details.rb +1 -1
  206. data/lib/oci/core/models/shape.rb +1 -1
  207. data/lib/oci/core/models/subnet.rb +1 -1
  208. data/lib/oci/core/models/tcp_options.rb +1 -1
  209. data/lib/oci/core/models/tunnel_config.rb +1 -1
  210. data/lib/oci/core/models/tunnel_status.rb +1 -1
  211. data/lib/oci/core/models/udp_options.rb +1 -1
  212. data/lib/oci/core/models/update_boot_volume_backup_details.rb +1 -1
  213. data/lib/oci/core/models/update_boot_volume_details.rb +1 -1
  214. data/lib/oci/core/models/update_boot_volume_kms_key_details.rb +1 -1
  215. data/lib/oci/core/models/update_console_history_details.rb +1 -1
  216. data/lib/oci/core/models/update_cpe_details.rb +1 -1
  217. data/lib/oci/core/models/update_cross_connect_details.rb +1 -1
  218. data/lib/oci/core/models/update_cross_connect_group_details.rb +1 -1
  219. data/lib/oci/core/models/update_dhcp_details.rb +1 -1
  220. data/lib/oci/core/models/update_drg_attachment_details.rb +1 -1
  221. data/lib/oci/core/models/update_drg_details.rb +1 -1
  222. data/lib/oci/core/models/update_image_details.rb +1 -1
  223. data/lib/oci/core/models/update_instance_configuration_details.rb +1 -1
  224. data/lib/oci/core/models/update_instance_details.rb +1 -1
  225. data/lib/oci/core/models/update_instance_pool_details.rb +1 -1
  226. data/lib/oci/core/models/update_instance_pool_placement_configuration_details.rb +1 -1
  227. data/lib/oci/core/models/update_internet_gateway_details.rb +1 -1
  228. data/lib/oci/core/models/update_ip_sec_connection_details.rb +1 -1
  229. data/lib/oci/core/models/update_local_peering_gateway_details.rb +1 -1
  230. data/lib/oci/core/models/update_nat_gateway_details.rb +1 -1
  231. data/lib/oci/core/models/update_private_ip_details.rb +1 -1
  232. data/lib/oci/core/models/update_public_ip_details.rb +1 -1
  233. data/lib/oci/core/models/update_remote_peering_connection_details.rb +1 -1
  234. data/lib/oci/core/models/update_route_table_details.rb +1 -1
  235. data/lib/oci/core/models/update_security_list_details.rb +1 -1
  236. data/lib/oci/core/models/update_service_gateway_details.rb +1 -1
  237. data/lib/oci/core/models/update_subnet_details.rb +1 -1
  238. data/lib/oci/core/models/update_vcn_details.rb +1 -1
  239. data/lib/oci/core/models/update_virtual_circuit_details.rb +1 -1
  240. data/lib/oci/core/models/update_vnic_details.rb +1 -1
  241. data/lib/oci/core/models/update_volume_backup_details.rb +1 -1
  242. data/lib/oci/core/models/update_volume_details.rb +1 -1
  243. data/lib/oci/core/models/update_volume_group_backup_details.rb +1 -1
  244. data/lib/oci/core/models/update_volume_group_details.rb +1 -1
  245. data/lib/oci/core/models/update_volume_kms_key_details.rb +1 -1
  246. data/lib/oci/core/models/vcn.rb +1 -1
  247. data/lib/oci/core/models/virtual_circuit.rb +1 -1
  248. data/lib/oci/core/models/virtual_circuit_bandwidth_shape.rb +1 -1
  249. data/lib/oci/core/models/virtual_circuit_public_prefix.rb +1 -1
  250. data/lib/oci/core/models/vnic.rb +1 -1
  251. data/lib/oci/core/models/vnic_attachment.rb +1 -1
  252. data/lib/oci/core/models/volume.rb +1 -1
  253. data/lib/oci/core/models/volume_attachment.rb +12 -2
  254. data/lib/oci/core/models/volume_backup.rb +1 -1
  255. data/lib/oci/core/models/volume_backup_policy.rb +1 -1
  256. data/lib/oci/core/models/volume_backup_policy_assignment.rb +1 -1
  257. data/lib/oci/core/models/volume_backup_schedule.rb +1 -1
  258. data/lib/oci/core/models/volume_group.rb +1 -1
  259. data/lib/oci/core/models/volume_group_backup.rb +1 -1
  260. data/lib/oci/core/models/volume_group_source_details.rb +1 -1
  261. data/lib/oci/core/models/volume_group_source_from_volume_group_backup_details.rb +1 -1
  262. data/lib/oci/core/models/volume_group_source_from_volume_group_details.rb +1 -1
  263. data/lib/oci/core/models/volume_group_source_from_volumes_details.rb +1 -1
  264. data/lib/oci/core/models/volume_kms_key.rb +1 -1
  265. data/lib/oci/core/models/volume_source_details.rb +1 -1
  266. data/lib/oci/core/models/volume_source_from_volume_backup_details.rb +1 -1
  267. data/lib/oci/core/models/volume_source_from_volume_details.rb +1 -1
  268. data/lib/oci/core/util.rb +1 -1
  269. data/lib/oci/core/virtual_network_client.rb +1 -1
  270. data/lib/oci/core/virtual_network_client_composite_operations.rb +1 -1
  271. data/lib/oci/database/database.rb +1 -1
  272. data/lib/oci/database/database_client.rb +1 -1
  273. data/lib/oci/database/database_client_composite_operations.rb +1 -1
  274. data/lib/oci/database/models/autonomous_data_warehouse.rb +1 -1
  275. data/lib/oci/database/models/autonomous_data_warehouse_backup.rb +1 -1
  276. data/lib/oci/database/models/autonomous_data_warehouse_backup_summary.rb +1 -1
  277. data/lib/oci/database/models/autonomous_data_warehouse_connection_strings.rb +1 -1
  278. data/lib/oci/database/models/autonomous_data_warehouse_summary.rb +1 -1
  279. data/lib/oci/database/models/autonomous_database.rb +1 -1
  280. data/lib/oci/database/models/autonomous_database_backup.rb +1 -1
  281. data/lib/oci/database/models/autonomous_database_backup_summary.rb +1 -1
  282. data/lib/oci/database/models/autonomous_database_connection_strings.rb +1 -1
  283. data/lib/oci/database/models/autonomous_database_summary.rb +1 -1
  284. data/lib/oci/database/models/backup.rb +1 -1
  285. data/lib/oci/database/models/backup_summary.rb +1 -1
  286. data/lib/oci/database/models/complete_external_backup_job_details.rb +1 -1
  287. data/lib/oci/database/models/create_autonomous_data_warehouse_backup_details.rb +1 -1
  288. data/lib/oci/database/models/create_autonomous_data_warehouse_details.rb +1 -1
  289. data/lib/oci/database/models/create_autonomous_database_backup_details.rb +1 -1
  290. data/lib/oci/database/models/create_autonomous_database_details.rb +1 -1
  291. data/lib/oci/database/models/create_backup_details.rb +1 -1
  292. data/lib/oci/database/models/create_data_guard_association_details.rb +1 -1
  293. data/lib/oci/database/models/create_data_guard_association_to_existing_db_system_details.rb +1 -1
  294. data/lib/oci/database/models/create_data_guard_association_with_new_db_system_details.rb +1 -1
  295. data/lib/oci/database/models/create_database_details.rb +1 -1
  296. data/lib/oci/database/models/create_database_from_backup_details.rb +1 -1
  297. data/lib/oci/database/models/create_db_home_details.rb +1 -1
  298. data/lib/oci/database/models/create_db_home_from_backup_details.rb +1 -1
  299. data/lib/oci/database/models/create_db_home_with_db_system_id_base.rb +1 -1
  300. data/lib/oci/database/models/create_db_home_with_db_system_id_details.rb +1 -1
  301. data/lib/oci/database/models/create_db_home_with_db_system_id_from_backup_details.rb +1 -1
  302. data/lib/oci/database/models/create_external_backup_job_details.rb +1 -1
  303. data/lib/oci/database/models/data_guard_association.rb +1 -1
  304. data/lib/oci/database/models/data_guard_association_summary.rb +1 -1
  305. data/lib/oci/database/models/database.rb +1 -1
  306. data/lib/oci/database/models/database_summary.rb +1 -1
  307. data/lib/oci/database/models/db_backup_config.rb +1 -1
  308. data/lib/oci/database/models/db_home.rb +1 -1
  309. data/lib/oci/database/models/db_home_summary.rb +1 -1
  310. data/lib/oci/database/models/db_node.rb +1 -1
  311. data/lib/oci/database/models/db_node_summary.rb +1 -1
  312. data/lib/oci/database/models/db_system.rb +1 -1
  313. data/lib/oci/database/models/db_system_shape_summary.rb +1 -1
  314. data/lib/oci/database/models/db_system_summary.rb +1 -1
  315. data/lib/oci/database/models/db_version_summary.rb +1 -1
  316. data/lib/oci/database/models/external_backup_job.rb +1 -1
  317. data/lib/oci/database/models/failover_data_guard_association_details.rb +1 -1
  318. data/lib/oci/database/models/generate_autonomous_data_warehouse_wallet_details.rb +1 -1
  319. data/lib/oci/database/models/generate_autonomous_database_wallet_details.rb +1 -1
  320. data/lib/oci/database/models/launch_db_system_base.rb +1 -1
  321. data/lib/oci/database/models/launch_db_system_details.rb +1 -1
  322. data/lib/oci/database/models/launch_db_system_from_backup_details.rb +1 -1
  323. data/lib/oci/database/models/patch.rb +1 -1
  324. data/lib/oci/database/models/patch_details.rb +1 -1
  325. data/lib/oci/database/models/patch_history_entry.rb +1 -1
  326. data/lib/oci/database/models/patch_history_entry_summary.rb +1 -1
  327. data/lib/oci/database/models/patch_summary.rb +1 -1
  328. data/lib/oci/database/models/reinstate_data_guard_association_details.rb +1 -1
  329. data/lib/oci/database/models/restore_autonomous_data_warehouse_details.rb +1 -1
  330. data/lib/oci/database/models/restore_autonomous_database_details.rb +1 -1
  331. data/lib/oci/database/models/restore_database_details.rb +1 -1
  332. data/lib/oci/database/models/switchover_data_guard_association_details.rb +1 -1
  333. data/lib/oci/database/models/update_autonomous_data_warehouse_details.rb +1 -1
  334. data/lib/oci/database/models/update_autonomous_database_details.rb +1 -1
  335. data/lib/oci/database/models/update_database_details.rb +1 -1
  336. data/lib/oci/database/models/update_db_home_details.rb +1 -1
  337. data/lib/oci/database/models/update_db_system_details.rb +1 -1
  338. data/lib/oci/database/util.rb +1 -1
  339. data/lib/oci/dns/dns.rb +1 -1
  340. data/lib/oci/dns/dns_client.rb +1 -1
  341. data/lib/oci/dns/dns_client_composite_operations.rb +1 -1
  342. data/lib/oci/dns/models/create_zone_details.rb +1 -1
  343. data/lib/oci/dns/models/external_master.rb +1 -1
  344. data/lib/oci/dns/models/nameserver.rb +1 -1
  345. data/lib/oci/dns/models/patch_domain_records_details.rb +1 -1
  346. data/lib/oci/dns/models/patch_rr_set_details.rb +1 -1
  347. data/lib/oci/dns/models/patch_zone_records_details.rb +1 -1
  348. data/lib/oci/dns/models/record.rb +1 -1
  349. data/lib/oci/dns/models/record_collection.rb +1 -1
  350. data/lib/oci/dns/models/record_details.rb +1 -1
  351. data/lib/oci/dns/models/record_operation.rb +1 -1
  352. data/lib/oci/dns/models/rr_set.rb +1 -1
  353. data/lib/oci/dns/models/sort_order.rb +1 -1
  354. data/lib/oci/dns/models/tsig.rb +1 -1
  355. data/lib/oci/dns/models/update_domain_records_details.rb +1 -1
  356. data/lib/oci/dns/models/update_rr_set_details.rb +1 -1
  357. data/lib/oci/dns/models/update_zone_details.rb +1 -1
  358. data/lib/oci/dns/models/update_zone_records_details.rb +1 -1
  359. data/lib/oci/dns/models/zone.rb +1 -1
  360. data/lib/oci/dns/models/zone_summary.rb +1 -1
  361. data/lib/oci/dns/util.rb +1 -1
  362. data/lib/oci/email/email.rb +1 -1
  363. data/lib/oci/email/email_client.rb +1 -1
  364. data/lib/oci/email/email_client_composite_operations.rb +1 -1
  365. data/lib/oci/email/models/create_sender_details.rb +1 -1
  366. data/lib/oci/email/models/create_suppression_details.rb +1 -1
  367. data/lib/oci/email/models/sender.rb +1 -1
  368. data/lib/oci/email/models/sender_summary.rb +1 -1
  369. data/lib/oci/email/models/suppression.rb +1 -1
  370. data/lib/oci/email/models/suppression_summary.rb +1 -1
  371. data/lib/oci/email/util.rb +1 -1
  372. data/lib/oci/errors.rb +1 -1
  373. data/lib/oci/file_storage/file_storage.rb +1 -1
  374. data/lib/oci/file_storage/file_storage_client.rb +1 -1
  375. data/lib/oci/file_storage/file_storage_client_composite_operations.rb +1 -1
  376. data/lib/oci/file_storage/models/client_options.rb +1 -1
  377. data/lib/oci/file_storage/models/create_export_details.rb +1 -1
  378. data/lib/oci/file_storage/models/create_file_system_details.rb +1 -1
  379. data/lib/oci/file_storage/models/create_mount_target_details.rb +1 -1
  380. data/lib/oci/file_storage/models/create_snapshot_details.rb +1 -1
  381. data/lib/oci/file_storage/models/export.rb +1 -1
  382. data/lib/oci/file_storage/models/export_set.rb +1 -1
  383. data/lib/oci/file_storage/models/export_set_summary.rb +1 -1
  384. data/lib/oci/file_storage/models/export_summary.rb +1 -1
  385. data/lib/oci/file_storage/models/file_system.rb +1 -1
  386. data/lib/oci/file_storage/models/file_system_summary.rb +1 -1
  387. data/lib/oci/file_storage/models/mount_target.rb +1 -1
  388. data/lib/oci/file_storage/models/mount_target_summary.rb +1 -1
  389. data/lib/oci/file_storage/models/snapshot.rb +1 -1
  390. data/lib/oci/file_storage/models/snapshot_summary.rb +1 -1
  391. data/lib/oci/file_storage/models/update_export_details.rb +1 -1
  392. data/lib/oci/file_storage/models/update_export_set_details.rb +1 -1
  393. data/lib/oci/file_storage/models/update_file_system_details.rb +1 -1
  394. data/lib/oci/file_storage/models/update_mount_target_details.rb +1 -1
  395. data/lib/oci/file_storage/models/update_snapshot_details.rb +1 -1
  396. data/lib/oci/file_storage/util.rb +1 -1
  397. data/lib/oci/global_context.rb +1 -1
  398. data/lib/oci/identity/identity.rb +1 -1
  399. data/lib/oci/identity/identity_client.rb +1 -1
  400. data/lib/oci/identity/identity_client_composite_operations.rb +1 -1
  401. data/lib/oci/identity/models/add_user_to_group_details.rb +1 -1
  402. data/lib/oci/identity/models/api_key.rb +1 -1
  403. data/lib/oci/identity/models/auth_token.rb +1 -1
  404. data/lib/oci/identity/models/availability_domain.rb +1 -1
  405. data/lib/oci/identity/models/compartment.rb +1 -1
  406. data/lib/oci/identity/models/create_api_key_details.rb +1 -1
  407. data/lib/oci/identity/models/create_auth_token_details.rb +1 -1
  408. data/lib/oci/identity/models/create_compartment_details.rb +1 -1
  409. data/lib/oci/identity/models/create_customer_secret_key_details.rb +1 -1
  410. data/lib/oci/identity/models/create_dynamic_group_details.rb +1 -1
  411. data/lib/oci/identity/models/create_group_details.rb +1 -1
  412. data/lib/oci/identity/models/create_identity_provider_details.rb +1 -1
  413. data/lib/oci/identity/models/create_idp_group_mapping_details.rb +1 -1
  414. data/lib/oci/identity/models/create_policy_details.rb +1 -1
  415. data/lib/oci/identity/models/create_region_subscription_details.rb +1 -1
  416. data/lib/oci/identity/models/create_saml2_identity_provider_details.rb +1 -1
  417. data/lib/oci/identity/models/create_smtp_credential_details.rb +1 -1
  418. data/lib/oci/identity/models/create_swift_password_details.rb +1 -1
  419. data/lib/oci/identity/models/create_tag_details.rb +1 -1
  420. data/lib/oci/identity/models/create_tag_namespace_details.rb +1 -1
  421. data/lib/oci/identity/models/create_user_details.rb +1 -1
  422. data/lib/oci/identity/models/customer_secret_key.rb +1 -1
  423. data/lib/oci/identity/models/customer_secret_key_summary.rb +1 -1
  424. data/lib/oci/identity/models/dynamic_group.rb +1 -1
  425. data/lib/oci/identity/models/fault_domain.rb +1 -1
  426. data/lib/oci/identity/models/group.rb +1 -1
  427. data/lib/oci/identity/models/identity_provider.rb +1 -1
  428. data/lib/oci/identity/models/identity_provider_group_summary.rb +1 -1
  429. data/lib/oci/identity/models/idp_group_mapping.rb +1 -1
  430. data/lib/oci/identity/models/policy.rb +1 -1
  431. data/lib/oci/identity/models/region.rb +1 -1
  432. data/lib/oci/identity/models/region_subscription.rb +1 -1
  433. data/lib/oci/identity/models/saml2_identity_provider.rb +1 -1
  434. data/lib/oci/identity/models/scim_client_credentials.rb +1 -1
  435. data/lib/oci/identity/models/smtp_credential.rb +1 -1
  436. data/lib/oci/identity/models/smtp_credential_summary.rb +1 -1
  437. data/lib/oci/identity/models/swift_password.rb +1 -1
  438. data/lib/oci/identity/models/tag.rb +1 -1
  439. data/lib/oci/identity/models/tag_namespace.rb +1 -1
  440. data/lib/oci/identity/models/tag_namespace_summary.rb +1 -1
  441. data/lib/oci/identity/models/tag_summary.rb +1 -1
  442. data/lib/oci/identity/models/tenancy.rb +1 -1
  443. data/lib/oci/identity/models/ui_password.rb +1 -1
  444. data/lib/oci/identity/models/update_auth_token_details.rb +1 -1
  445. data/lib/oci/identity/models/update_compartment_details.rb +1 -1
  446. data/lib/oci/identity/models/update_customer_secret_key_details.rb +1 -1
  447. data/lib/oci/identity/models/update_dynamic_group_details.rb +1 -1
  448. data/lib/oci/identity/models/update_group_details.rb +1 -1
  449. data/lib/oci/identity/models/update_identity_provider_details.rb +1 -1
  450. data/lib/oci/identity/models/update_idp_group_mapping_details.rb +1 -1
  451. data/lib/oci/identity/models/update_policy_details.rb +1 -1
  452. data/lib/oci/identity/models/update_saml2_identity_provider_details.rb +1 -1
  453. data/lib/oci/identity/models/update_smtp_credential_details.rb +1 -1
  454. data/lib/oci/identity/models/update_state_details.rb +1 -1
  455. data/lib/oci/identity/models/update_swift_password_details.rb +1 -1
  456. data/lib/oci/identity/models/update_tag_details.rb +1 -1
  457. data/lib/oci/identity/models/update_tag_namespace_details.rb +1 -1
  458. data/lib/oci/identity/models/update_user_capabilities_details.rb +1 -1
  459. data/lib/oci/identity/models/update_user_details.rb +1 -1
  460. data/lib/oci/identity/models/user.rb +1 -1
  461. data/lib/oci/identity/models/user_capabilities.rb +1 -1
  462. data/lib/oci/identity/models/user_group_membership.rb +1 -1
  463. data/lib/oci/identity/models/work_request.rb +1 -1
  464. data/lib/oci/identity/models/work_request_error.rb +1 -1
  465. data/lib/oci/identity/models/work_request_log_entry.rb +1 -1
  466. data/lib/oci/identity/models/work_request_resource.rb +1 -1
  467. data/lib/oci/identity/models/work_request_summary.rb +1 -1
  468. data/lib/oci/identity/util.rb +1 -1
  469. data/lib/oci/internal/internal.rb +1 -1
  470. data/lib/oci/internal/util.rb +1 -1
  471. data/lib/oci/key_management/key_management.rb +1 -1
  472. data/lib/oci/key_management/kms_crypto_client.rb +1 -1
  473. data/lib/oci/key_management/kms_crypto_client_composite_operations.rb +1 -1
  474. data/lib/oci/key_management/kms_management_client.rb +1 -1
  475. data/lib/oci/key_management/kms_management_client_composite_operations.rb +1 -1
  476. data/lib/oci/key_management/kms_vault_client.rb +1 -1
  477. data/lib/oci/key_management/kms_vault_client_composite_operations.rb +1 -1
  478. data/lib/oci/key_management/models/create_key_details.rb +1 -1
  479. data/lib/oci/key_management/models/create_vault_details.rb +1 -1
  480. data/lib/oci/key_management/models/decrypt_data_details.rb +1 -1
  481. data/lib/oci/key_management/models/decrypted_data.rb +1 -1
  482. data/lib/oci/key_management/models/encrypt_data_details.rb +1 -1
  483. data/lib/oci/key_management/models/encrypted_data.rb +1 -1
  484. data/lib/oci/key_management/models/generate_key_details.rb +1 -1
  485. data/lib/oci/key_management/models/generated_key.rb +1 -1
  486. data/lib/oci/key_management/models/key.rb +1 -1
  487. data/lib/oci/key_management/models/key_shape.rb +1 -1
  488. data/lib/oci/key_management/models/key_summary.rb +1 -1
  489. data/lib/oci/key_management/models/key_version.rb +1 -1
  490. data/lib/oci/key_management/models/key_version_summary.rb +1 -1
  491. data/lib/oci/key_management/models/schedule_vault_deletion_details.rb +1 -1
  492. data/lib/oci/key_management/models/update_key_details.rb +1 -1
  493. data/lib/oci/key_management/models/update_vault_details.rb +1 -1
  494. data/lib/oci/key_management/models/vault.rb +1 -1
  495. data/lib/oci/key_management/models/vault_summary.rb +1 -1
  496. data/lib/oci/key_management/util.rb +1 -1
  497. data/lib/oci/load_balancer/load_balancer.rb +12 -1
  498. data/lib/oci/load_balancer/load_balancer_client.rb +337 -21
  499. data/lib/oci/load_balancer/load_balancer_client_composite_operations.rb +158 -1
  500. data/lib/oci/load_balancer/models/add_http_request_header_rule.rb +184 -0
  501. data/lib/oci/load_balancer/models/add_http_response_header_rule.rb +184 -0
  502. data/lib/oci/load_balancer/models/backend.rb +59 -59
  503. data/lib/oci/load_balancer/models/backend_details.rb +50 -50
  504. data/lib/oci/load_balancer/models/backend_health.rb +16 -16
  505. data/lib/oci/load_balancer/models/backend_set.rb +38 -36
  506. data/lib/oci/load_balancer/models/backend_set_details.rb +30 -30
  507. data/lib/oci/load_balancer/models/backend_set_health.rb +41 -41
  508. data/lib/oci/load_balancer/models/certificate.rb +32 -30
  509. data/lib/oci/load_balancer/models/certificate_details.rb +51 -49
  510. data/lib/oci/load_balancer/models/connection_configuration.rb +1 -1
  511. data/lib/oci/load_balancer/models/create_backend_details.rb +51 -51
  512. data/lib/oci/load_balancer/models/create_backend_set_details.rb +37 -35
  513. data/lib/oci/load_balancer/models/create_certificate_details.rb +51 -49
  514. data/lib/oci/load_balancer/models/create_hostname_details.rb +22 -19
  515. data/lib/oci/load_balancer/models/create_listener_details.rb +75 -56
  516. data/lib/oci/load_balancer/models/create_load_balancer_details.rb +107 -95
  517. data/lib/oci/load_balancer/models/create_path_route_set_details.rb +4 -1
  518. data/lib/oci/load_balancer/models/create_rule_set_details.rb +163 -0
  519. data/lib/oci/load_balancer/models/extend_http_request_header_value_rule.rb +200 -0
  520. data/lib/oci/load_balancer/models/extend_http_response_header_value_rule.rb +200 -0
  521. data/lib/oci/load_balancer/models/health_check_result.rb +27 -27
  522. data/lib/oci/load_balancer/models/health_checker.rb +61 -61
  523. data/lib/oci/load_balancer/models/health_checker_details.rb +61 -61
  524. data/lib/oci/load_balancer/models/hostname.rb +22 -19
  525. data/lib/oci/load_balancer/models/hostname_details.rb +18 -18
  526. data/lib/oci/load_balancer/models/ip_address.rb +1 -1
  527. data/lib/oci/load_balancer/models/listener.rb +67 -50
  528. data/lib/oci/load_balancer/models/listener_details.rb +59 -42
  529. data/lib/oci/load_balancer/models/load_balancer.rb +133 -124
  530. data/lib/oci/load_balancer/models/load_balancer_health.rb +41 -41
  531. data/lib/oci/load_balancer/models/load_balancer_health_summary.rb +1 -1
  532. data/lib/oci/load_balancer/models/load_balancer_policy.rb +1 -1
  533. data/lib/oci/load_balancer/models/load_balancer_protocol.rb +1 -1
  534. data/lib/oci/load_balancer/models/load_balancer_shape.rb +1 -1
  535. data/lib/oci/load_balancer/models/path_match_type.rb +1 -1
  536. data/lib/oci/load_balancer/models/path_route.rb +22 -22
  537. data/lib/oci/load_balancer/models/path_route_set.rb +3 -1
  538. data/lib/oci/load_balancer/models/path_route_set_details.rb +1 -1
  539. data/lib/oci/load_balancer/models/remove_http_request_header_rule.rb +167 -0
  540. data/lib/oci/load_balancer/models/remove_http_response_header_rule.rb +167 -0
  541. data/lib/oci/load_balancer/models/rule.rb +196 -0
  542. data/lib/oci/load_balancer/models/rule_set.rb +165 -0
  543. data/lib/oci/load_balancer/models/rule_set_details.rb +149 -0
  544. data/lib/oci/load_balancer/models/session_persistence_configuration_details.rb +1 -1
  545. data/lib/oci/load_balancer/models/ssl_configuration.rb +24 -22
  546. data/lib/oci/load_balancer/models/ssl_configuration_details.rb +25 -22
  547. data/lib/oci/load_balancer/models/update_backend_details.rb +22 -22
  548. data/lib/oci/load_balancer/models/update_backend_set_details.rb +31 -31
  549. data/lib/oci/load_balancer/models/update_health_checker_details.rb +60 -60
  550. data/lib/oci/load_balancer/models/update_hostname_details.rb +1 -1
  551. data/lib/oci/load_balancer/models/update_listener_details.rb +59 -42
  552. data/lib/oci/load_balancer/models/update_load_balancer_details.rb +26 -23
  553. data/lib/oci/load_balancer/models/update_path_route_set_details.rb +1 -1
  554. data/lib/oci/load_balancer/models/update_rule_set_details.rb +149 -0
  555. data/lib/oci/load_balancer/models/work_request.rb +40 -40
  556. data/lib/oci/load_balancer/models/work_request_error.rb +1 -1
  557. data/lib/oci/load_balancer/util.rb +1 -1
  558. data/lib/oci/object_storage/models/bucket.rb +1 -1
  559. data/lib/oci/object_storage/models/bucket_summary.rb +1 -1
  560. data/lib/oci/object_storage/models/commit_multipart_upload_details.rb +1 -1
  561. data/lib/oci/object_storage/models/commit_multipart_upload_part_details.rb +1 -1
  562. data/lib/oci/object_storage/models/copy_object_details.rb +1 -1
  563. data/lib/oci/object_storage/models/create_bucket_details.rb +1 -1
  564. data/lib/oci/object_storage/models/create_multipart_upload_details.rb +1 -1
  565. data/lib/oci/object_storage/models/create_preauthenticated_request_details.rb +1 -1
  566. data/lib/oci/object_storage/models/list_objects.rb +1 -1
  567. data/lib/oci/object_storage/models/multipart_upload.rb +1 -1
  568. data/lib/oci/object_storage/models/multipart_upload_part_summary.rb +1 -1
  569. data/lib/oci/object_storage/models/namespace_metadata.rb +1 -1
  570. data/lib/oci/object_storage/models/object_lifecycle_policy.rb +1 -1
  571. data/lib/oci/object_storage/models/object_lifecycle_rule.rb +1 -1
  572. data/lib/oci/object_storage/models/object_name_filter.rb +1 -1
  573. data/lib/oci/object_storage/models/object_summary.rb +1 -1
  574. data/lib/oci/object_storage/models/preauthenticated_request.rb +1 -1
  575. data/lib/oci/object_storage/models/preauthenticated_request_summary.rb +1 -1
  576. data/lib/oci/object_storage/models/put_object_lifecycle_policy_details.rb +1 -1
  577. data/lib/oci/object_storage/models/rename_object_details.rb +1 -1
  578. data/lib/oci/object_storage/models/restore_objects_details.rb +1 -1
  579. data/lib/oci/object_storage/models/update_bucket_details.rb +1 -1
  580. data/lib/oci/object_storage/models/update_namespace_metadata_details.rb +1 -1
  581. data/lib/oci/object_storage/models/work_request.rb +1 -1
  582. data/lib/oci/object_storage/models/work_request_error.rb +1 -1
  583. data/lib/oci/object_storage/models/work_request_log_entry.rb +1 -1
  584. data/lib/oci/object_storage/models/work_request_resource.rb +1 -1
  585. data/lib/oci/object_storage/models/work_request_resource_metadata_key.rb +1 -1
  586. data/lib/oci/object_storage/models/work_request_summary.rb +1 -1
  587. data/lib/oci/object_storage/object_storage.rb +1 -1
  588. data/lib/oci/object_storage/object_storage_client.rb +1 -1
  589. data/lib/oci/object_storage/object_storage_client_composite_operations.rb +1 -1
  590. data/lib/oci/object_storage/transfer/multipart/internal/file_part_io_wrapper.rb +1 -1
  591. data/lib/oci/object_storage/transfer/multipart/internal/multipart_upload_parts_collection.rb +1 -1
  592. data/lib/oci/object_storage/transfer/multipart/internal/seekable_non_file_part_io_wrapper.rb +1 -1
  593. data/lib/oci/object_storage/transfer/multipart/internal/stdin_part_io_wrapper.rb +1 -1
  594. data/lib/oci/object_storage/transfer/multipart/multipart_object_assembler.rb +1 -1
  595. data/lib/oci/object_storage/transfer/transfer.rb +1 -1
  596. data/lib/oci/object_storage/transfer/upload_manager.rb +1 -1
  597. data/lib/oci/object_storage/transfer/upload_manager_config.rb +1 -1
  598. data/lib/oci/object_storage/util.rb +1 -1
  599. data/lib/oci/regions.rb +1 -1
  600. data/lib/oci/resource_search/models/free_text_search_details.rb +1 -1
  601. data/lib/oci/resource_search/models/queryable_field_description.rb +1 -1
  602. data/lib/oci/resource_search/models/resource_summary.rb +1 -1
  603. data/lib/oci/resource_search/models/resource_summary_collection.rb +1 -1
  604. data/lib/oci/resource_search/models/resource_type.rb +1 -1
  605. data/lib/oci/resource_search/models/search_context.rb +1 -1
  606. data/lib/oci/resource_search/models/search_details.rb +1 -1
  607. data/lib/oci/resource_search/models/structured_search_details.rb +1 -1
  608. data/lib/oci/resource_search/resource_search.rb +1 -1
  609. data/lib/oci/resource_search/resource_search_client.rb +1 -1
  610. data/lib/oci/resource_search/resource_search_client_composite_operations.rb +1 -1
  611. data/lib/oci/resource_search/util.rb +1 -1
  612. data/lib/oci/response.rb +1 -1
  613. data/lib/oci/response_headers.rb +1 -1
  614. data/lib/oci/retry/functions/should_retry_on_error.rb +1 -1
  615. data/lib/oci/retry/functions/sleep.rb +1 -1
  616. data/lib/oci/retry/internal/retry_state.rb +1 -1
  617. data/lib/oci/retry/retry.rb +1 -1
  618. data/lib/oci/retry/retry_config.rb +1 -1
  619. data/lib/oci/signer.rb +1 -1
  620. data/lib/oci/version.rb +2 -2
  621. data/lib/oci/waiter.rb +1 -1
  622. data/lib/oraclebmc.rb +1 -1
  623. metadata +35 -30
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2016, 2018, Oracle and/or its affiliates. All rights reserved.
1
+ # Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.
2
2
 
3
3
  # rubocop:disable Lint/UnneededCopDisableDirective, Metrics/LineLength
4
4
  module OCI
@@ -377,6 +377,56 @@ module OCI
377
377
  # rubocop:disable Layout/EmptyLines
378
378
 
379
379
 
380
+ # Calls {OCI::LoadBalancer::LoadBalancerClient#create_rule_set} and then waits for the {OCI::LoadBalancer::Models::WorkRequest}
381
+ # to enter the given state(s).
382
+ #
383
+ # @param [String] load_balancer_id The [OCID](https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/identifiers.htm) of the specified load balancer.
384
+ # @param [OCI::LoadBalancer::Models::CreateRuleSetDetails] create_rule_set_details The configuration details for the rule set to create.
385
+ # @param [Array<String>] wait_for_states An array of states to wait on. These should be valid values for {OCI::LoadBalancer::Models::WorkRequest#lifecycle_state}
386
+ # @param [Hash] base_operation_opts Any optional arguments accepted by {OCI::LoadBalancer::LoadBalancerClient#create_rule_set}
387
+ # @param [Hash] waiter_opts Optional arguments for the waiter. Keys should be symbols, and the following keys are supported:
388
+ # * max_interval_seconds: The maximum interval between queries, in seconds.
389
+ # * max_wait_seconds The maximum time to wait, in seconds
390
+ #
391
+ # @return [OCI::Response] A {OCI::Response} object containing the completed {OCI::LoadBalancer::Models::WorkRequest}
392
+ def create_rule_set_and_wait_for_state(load_balancer_id, create_rule_set_details, wait_for_states = [], base_operation_opts = {}, waiter_opts = {})
393
+ operation_result = @service_client.create_rule_set(load_balancer_id, create_rule_set_details, base_operation_opts)
394
+ use_util = OCI::LoadBalancer::Util.respond_to?(:wait_on_work_request)
395
+
396
+ return operation_result if wait_for_states.empty? && !use_util
397
+
398
+ lowered_wait_for_states = wait_for_states.map(&:downcase)
399
+ wait_for_resource_id = operation_result.headers['opc-work-request-id']
400
+
401
+ begin
402
+ if use_util
403
+ waiter_result = OCI::LoadBalancer::Util.wait_on_work_request(
404
+ @service_client,
405
+ wait_for_resource_id,
406
+ max_interval_seconds: waiter_opts.key?(:max_interval_seconds) ? waiter_opts[:max_interval_seconds] : 30,
407
+ max_wait_seconds: waiter_opts.key?(:max_wait_seconds) ? waiter_opts[:max_wait_seconds] : 1200
408
+ )
409
+ else
410
+ waiter_result = @service_client.get_work_request(wait_for_resource_id).wait_until(
411
+ eval_proc: ->(response) { response.data.respond_to?(:lifecycle_state) && lowered_wait_for_states.include?(response.data.lifecycle_state.downcase) },
412
+ max_interval_seconds: waiter_opts.key?(:max_interval_seconds) ? waiter_opts[:max_interval_seconds] : 30,
413
+ max_wait_seconds: waiter_opts.key?(:max_wait_seconds) ? waiter_opts[:max_wait_seconds] : 1200
414
+ )
415
+ end
416
+ result_to_return = waiter_result
417
+
418
+ return result_to_return
419
+ rescue StandardError
420
+ raise OCI::Errors::CompositeOperationError.new(partial_results: [operation_result])
421
+ end
422
+ end
423
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/ParameterLists, Metrics/PerceivedComplexity
424
+ # rubocop:enable Layout/EmptyLines
425
+
426
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/ParameterLists, Metrics/PerceivedComplexity
427
+ # rubocop:disable Layout/EmptyLines
428
+
429
+
380
430
  # Calls {OCI::LoadBalancer::LoadBalancerClient#delete_backend} and then waits for the {OCI::LoadBalancer::Models::WorkRequest}
381
431
  # to enter the given state(s).
382
432
  #
@@ -750,6 +800,59 @@ module OCI
750
800
  # rubocop:disable Layout/EmptyLines
751
801
 
752
802
 
803
+ # Calls {OCI::LoadBalancer::LoadBalancerClient#delete_rule_set} and then waits for the {OCI::LoadBalancer::Models::WorkRequest}
804
+ # to enter the given state(s).
805
+ #
806
+ # @param [String] load_balancer_id The [OCID](https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/identifiers.htm) of the specified load balancer.
807
+ # @param [String] rule_set_name The name of the rule set to delete.
808
+ #
809
+ # Example: `example_rule_set`
810
+ #
811
+ # @param [Array<String>] wait_for_states An array of states to wait on. These should be valid values for {OCI::LoadBalancer::Models::WorkRequest#lifecycle_state}
812
+ # @param [Hash] base_operation_opts Any optional arguments accepted by {OCI::LoadBalancer::LoadBalancerClient#delete_rule_set}
813
+ # @param [Hash] waiter_opts Optional arguments for the waiter. Keys should be symbols, and the following keys are supported:
814
+ # * max_interval_seconds: The maximum interval between queries, in seconds.
815
+ # * max_wait_seconds The maximum time to wait, in seconds
816
+ #
817
+ # @return [OCI::Response] A {OCI::Response} object containing the completed {OCI::LoadBalancer::Models::WorkRequest}
818
+ def delete_rule_set_and_wait_for_state(load_balancer_id, rule_set_name, wait_for_states = [], base_operation_opts = {}, waiter_opts = {})
819
+ operation_result = @service_client.delete_rule_set(load_balancer_id, rule_set_name, base_operation_opts)
820
+ use_util = OCI::LoadBalancer::Util.respond_to?(:wait_on_work_request)
821
+
822
+ return operation_result if wait_for_states.empty? && !use_util
823
+
824
+ lowered_wait_for_states = wait_for_states.map(&:downcase)
825
+ wait_for_resource_id = operation_result.headers['opc-work-request-id']
826
+
827
+ begin
828
+ if use_util
829
+ waiter_result = OCI::LoadBalancer::Util.wait_on_work_request(
830
+ @service_client,
831
+ wait_for_resource_id,
832
+ max_interval_seconds: waiter_opts.key?(:max_interval_seconds) ? waiter_opts[:max_interval_seconds] : 30,
833
+ max_wait_seconds: waiter_opts.key?(:max_wait_seconds) ? waiter_opts[:max_wait_seconds] : 1200
834
+ )
835
+ else
836
+ waiter_result = @service_client.get_work_request(wait_for_resource_id).wait_until(
837
+ eval_proc: ->(response) { response.data.respond_to?(:lifecycle_state) && lowered_wait_for_states.include?(response.data.lifecycle_state.downcase) },
838
+ max_interval_seconds: waiter_opts.key?(:max_interval_seconds) ? waiter_opts[:max_interval_seconds] : 30,
839
+ max_wait_seconds: waiter_opts.key?(:max_wait_seconds) ? waiter_opts[:max_wait_seconds] : 1200
840
+ )
841
+ end
842
+ result_to_return = waiter_result
843
+
844
+ return result_to_return
845
+ rescue StandardError
846
+ raise OCI::Errors::CompositeOperationError.new(partial_results: [operation_result])
847
+ end
848
+ end
849
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/ParameterLists, Metrics/PerceivedComplexity
850
+ # rubocop:enable Layout/EmptyLines
851
+
852
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/ParameterLists, Metrics/PerceivedComplexity
853
+ # rubocop:disable Layout/EmptyLines
854
+
855
+
753
856
  # Calls {OCI::LoadBalancer::LoadBalancerClient#update_backend} and then waits for the {OCI::LoadBalancer::Models::WorkRequest}
754
857
  # to enter the given state(s).
755
858
  #
@@ -1125,6 +1228,60 @@ module OCI
1125
1228
  end
1126
1229
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/ParameterLists, Metrics/PerceivedComplexity
1127
1230
  # rubocop:enable Layout/EmptyLines
1231
+
1232
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/ParameterLists, Metrics/PerceivedComplexity
1233
+ # rubocop:disable Layout/EmptyLines
1234
+
1235
+
1236
+ # Calls {OCI::LoadBalancer::LoadBalancerClient#update_rule_set} and then waits for the {OCI::LoadBalancer::Models::WorkRequest}
1237
+ # to enter the given state(s).
1238
+ #
1239
+ # @param [String] load_balancer_id The [OCID](https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/identifiers.htm) of the specified load balancer.
1240
+ # @param [String] rule_set_name The name of the rule set to update.
1241
+ #
1242
+ # Example: `example_rule_set`
1243
+ #
1244
+ # @param [OCI::LoadBalancer::Models::UpdateRuleSetDetails] update_rule_set_details The configuration details to update a set of rules.
1245
+ # @param [Array<String>] wait_for_states An array of states to wait on. These should be valid values for {OCI::LoadBalancer::Models::WorkRequest#lifecycle_state}
1246
+ # @param [Hash] base_operation_opts Any optional arguments accepted by {OCI::LoadBalancer::LoadBalancerClient#update_rule_set}
1247
+ # @param [Hash] waiter_opts Optional arguments for the waiter. Keys should be symbols, and the following keys are supported:
1248
+ # * max_interval_seconds: The maximum interval between queries, in seconds.
1249
+ # * max_wait_seconds The maximum time to wait, in seconds
1250
+ #
1251
+ # @return [OCI::Response] A {OCI::Response} object containing the completed {OCI::LoadBalancer::Models::WorkRequest}
1252
+ def update_rule_set_and_wait_for_state(load_balancer_id, rule_set_name, update_rule_set_details, wait_for_states = [], base_operation_opts = {}, waiter_opts = {})
1253
+ operation_result = @service_client.update_rule_set(load_balancer_id, rule_set_name, update_rule_set_details, base_operation_opts)
1254
+ use_util = OCI::LoadBalancer::Util.respond_to?(:wait_on_work_request)
1255
+
1256
+ return operation_result if wait_for_states.empty? && !use_util
1257
+
1258
+ lowered_wait_for_states = wait_for_states.map(&:downcase)
1259
+ wait_for_resource_id = operation_result.headers['opc-work-request-id']
1260
+
1261
+ begin
1262
+ if use_util
1263
+ waiter_result = OCI::LoadBalancer::Util.wait_on_work_request(
1264
+ @service_client,
1265
+ wait_for_resource_id,
1266
+ max_interval_seconds: waiter_opts.key?(:max_interval_seconds) ? waiter_opts[:max_interval_seconds] : 30,
1267
+ max_wait_seconds: waiter_opts.key?(:max_wait_seconds) ? waiter_opts[:max_wait_seconds] : 1200
1268
+ )
1269
+ else
1270
+ waiter_result = @service_client.get_work_request(wait_for_resource_id).wait_until(
1271
+ eval_proc: ->(response) { response.data.respond_to?(:lifecycle_state) && lowered_wait_for_states.include?(response.data.lifecycle_state.downcase) },
1272
+ max_interval_seconds: waiter_opts.key?(:max_interval_seconds) ? waiter_opts[:max_interval_seconds] : 30,
1273
+ max_wait_seconds: waiter_opts.key?(:max_wait_seconds) ? waiter_opts[:max_wait_seconds] : 1200
1274
+ )
1275
+ end
1276
+ result_to_return = waiter_result
1277
+
1278
+ return result_to_return
1279
+ rescue StandardError
1280
+ raise OCI::Errors::CompositeOperationError.new(partial_results: [operation_result])
1281
+ end
1282
+ end
1283
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/ParameterLists, Metrics/PerceivedComplexity
1284
+ # rubocop:enable Layout/EmptyLines
1128
1285
  end
1129
1286
  end
1130
1287
  # rubocop:enable Lint/UnneededCopDisableDirective, Metrics/LineLength
@@ -0,0 +1,184 @@
1
+ # Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.
2
+
3
+ require 'date'
4
+ require_relative 'rule'
5
+
6
+ # rubocop:disable Lint/UnneededCopDisableDirective
7
+ module OCI
8
+ # An object that represents the action of adding a header to a request.
9
+ # This rule applies only to HTTP or HTTP2 listeners.
10
+ #
11
+ # **NOTES:**
12
+ #
13
+ # * If a matching header already exists in the request, the system removes all of its occurrences, and then adds the
14
+ # new header.
15
+ #
16
+ # * The system does not distinquish between underscore and dash characters in headers. That is, it treats
17
+ # `example_header_name` and `example-header-name` as identical. Oracle recommends that you do not rely on underscore
18
+ # or dash characters to uniquely distinguish header names.
19
+ #
20
+ class LoadBalancer::Models::AddHttpRequestHeaderRule < LoadBalancer::Models::Rule # rubocop:disable Metrics/LineLength
21
+ # **[Required]** A header name that conforms to RFC 7230.
22
+ #
23
+ # Example: `example_header_name`
24
+ #
25
+ # @return [String]
26
+ attr_accessor :header
27
+
28
+ # **[Required]** A header value that conforms to RFC 7230.
29
+ #
30
+ # Example: `example_value`
31
+ #
32
+ # @return [String]
33
+ attr_accessor :value
34
+
35
+ # Attribute mapping from ruby-style variable name to JSON key.
36
+ def self.attribute_map
37
+ {
38
+ # rubocop:disable Style/SymbolLiteral
39
+ 'action': :'action',
40
+ 'header': :'header',
41
+ 'value': :'value'
42
+ # rubocop:enable Style/SymbolLiteral
43
+ }
44
+ end
45
+
46
+ # Attribute type mapping.
47
+ def self.swagger_types
48
+ {
49
+ # rubocop:disable Style/SymbolLiteral
50
+ 'action': :'String',
51
+ 'header': :'String',
52
+ 'value': :'String'
53
+ # rubocop:enable Style/SymbolLiteral
54
+ }
55
+ end
56
+
57
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
58
+ # rubocop:disable Metrics/LineLength, Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
59
+
60
+
61
+ # Initializes the object
62
+ # @param [Hash] attributes Model attributes in the form of hash
63
+ # @option attributes [String] :header The value to assign to the {#header} property
64
+ # @option attributes [String] :value The value to assign to the {#value} property
65
+ def initialize(attributes = {})
66
+ return unless attributes.is_a?(Hash)
67
+
68
+ attributes['action'] = 'ADD_HTTP_REQUEST_HEADER'
69
+
70
+ super(attributes)
71
+
72
+ # convert string to symbol for hash key
73
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
74
+
75
+ self.header = attributes[:'header'] if attributes[:'header']
76
+
77
+ self.value = attributes[:'value'] if attributes[:'value']
78
+ end
79
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
80
+ # rubocop:enable Metrics/LineLength, Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
81
+
82
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Metrics/LineLength, Layout/EmptyLines
83
+
84
+
85
+ # Checks equality by comparing each attribute.
86
+ # @param [Object] other the other object to be compared
87
+ def ==(other)
88
+ return true if equal?(other)
89
+
90
+ self.class == other.class &&
91
+ action == other.action &&
92
+ header == other.header &&
93
+ value == other.value
94
+ end
95
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Metrics/LineLength, Layout/EmptyLines
96
+
97
+ # @see the `==` method
98
+ # @param [Object] other the other object to be compared
99
+ def eql?(other)
100
+ self == other
101
+ end
102
+
103
+ # rubocop:disable Metrics/AbcSize, Metrics/LineLength, Layout/EmptyLines
104
+
105
+
106
+ # Calculates hash code according to all attributes.
107
+ # @return [Fixnum] Hash code
108
+ def hash
109
+ [action, header, value].hash
110
+ end
111
+ # rubocop:enable Metrics/AbcSize, Metrics/LineLength, Layout/EmptyLines
112
+
113
+ # rubocop:disable Metrics/AbcSize, Layout/EmptyLines
114
+
115
+
116
+ # Builds the object from hash
117
+ # @param [Hash] attributes Model attributes in the form of hash
118
+ # @return [Object] Returns the model itself
119
+ def build_from_hash(attributes)
120
+ return nil unless attributes.is_a?(Hash)
121
+
122
+ self.class.swagger_types.each_pair do |key, type|
123
+ if type =~ /^Array<(.*)>/i
124
+ # check to ensure the input is an array given that the the attribute
125
+ # is documented as an array but the input is not
126
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
127
+ public_method("#{key}=").call(
128
+ attributes[self.class.attribute_map[key]]
129
+ .map { |v| OCI::Internal::Util.convert_to_type(Regexp.last_match(1), v) }
130
+ )
131
+ end
132
+ elsif !attributes[self.class.attribute_map[key]].nil?
133
+ public_method("#{key}=").call(
134
+ OCI::Internal::Util.convert_to_type(type, attributes[self.class.attribute_map[key]])
135
+ )
136
+ end
137
+ # or else data not found in attributes(hash), not an issue as the data can be optional
138
+ end
139
+
140
+ self
141
+ end
142
+ # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
143
+
144
+ # Returns the string representation of the object
145
+ # @return [String] String presentation of the object
146
+ def to_s
147
+ to_hash.to_s
148
+ end
149
+
150
+ # Returns the object in the form of hash
151
+ # @return [Hash] Returns the object in the form of hash
152
+ def to_hash
153
+ hash = {}
154
+ self.class.attribute_map.each_pair do |attr, param|
155
+ value = public_method(attr).call
156
+ next if value.nil? && !instance_variable_defined?("@#{attr}")
157
+
158
+ hash[param] = _to_hash(value)
159
+ end
160
+ hash
161
+ end
162
+
163
+ private
164
+
165
+ # Outputs non-array value in the form of hash
166
+ # For object, use to_hash. Otherwise, just return the value
167
+ # @param [Object] value Any valid value
168
+ # @return [Hash] Returns the value in the form of hash
169
+ def _to_hash(value)
170
+ if value.is_a?(Array)
171
+ value.compact.map { |v| _to_hash(v) }
172
+ elsif value.is_a?(Hash)
173
+ {}.tap do |hash|
174
+ value.each { |k, v| hash[k] = _to_hash(v) }
175
+ end
176
+ elsif value.respond_to? :to_hash
177
+ value.to_hash
178
+ else
179
+ value
180
+ end
181
+ end
182
+ end
183
+ end
184
+ # rubocop:enable Lint/UnneededCopDisableDirective
@@ -0,0 +1,184 @@
1
+ # Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.
2
+
3
+ require 'date'
4
+ require_relative 'rule'
5
+
6
+ # rubocop:disable Lint/UnneededCopDisableDirective
7
+ module OCI
8
+ # An object that represents the action of adding a header to a response.
9
+ # This rule applies only to HTTP or HTTP2 listeners.
10
+ #
11
+ # **NOTES:**
12
+ #
13
+ # * If a matching header already exists in the response, the system removes all of its occurrences, and then adds the
14
+ # new header.
15
+ #
16
+ # * The system does not distinquish between underscore and dash characters in headers. That is, it treats
17
+ # `example_header_name` and `example-header-name` as identical. Oracle recommends that you do not rely on underscore
18
+ # or dash characters to uniquely distinguish header names.
19
+ #
20
+ class LoadBalancer::Models::AddHttpResponseHeaderRule < LoadBalancer::Models::Rule # rubocop:disable Metrics/LineLength
21
+ # **[Required]** A header name that conforms to RFC 7230.
22
+ #
23
+ # Example: `example_header_name`
24
+ #
25
+ # @return [String]
26
+ attr_accessor :header
27
+
28
+ # **[Required]** A header value that conforms to RFC 7230.
29
+ #
30
+ # Example: `example_value`
31
+ #
32
+ # @return [String]
33
+ attr_accessor :value
34
+
35
+ # Attribute mapping from ruby-style variable name to JSON key.
36
+ def self.attribute_map
37
+ {
38
+ # rubocop:disable Style/SymbolLiteral
39
+ 'action': :'action',
40
+ 'header': :'header',
41
+ 'value': :'value'
42
+ # rubocop:enable Style/SymbolLiteral
43
+ }
44
+ end
45
+
46
+ # Attribute type mapping.
47
+ def self.swagger_types
48
+ {
49
+ # rubocop:disable Style/SymbolLiteral
50
+ 'action': :'String',
51
+ 'header': :'String',
52
+ 'value': :'String'
53
+ # rubocop:enable Style/SymbolLiteral
54
+ }
55
+ end
56
+
57
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
58
+ # rubocop:disable Metrics/LineLength, Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
59
+
60
+
61
+ # Initializes the object
62
+ # @param [Hash] attributes Model attributes in the form of hash
63
+ # @option attributes [String] :header The value to assign to the {#header} property
64
+ # @option attributes [String] :value The value to assign to the {#value} property
65
+ def initialize(attributes = {})
66
+ return unless attributes.is_a?(Hash)
67
+
68
+ attributes['action'] = 'ADD_HTTP_RESPONSE_HEADER'
69
+
70
+ super(attributes)
71
+
72
+ # convert string to symbol for hash key
73
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
74
+
75
+ self.header = attributes[:'header'] if attributes[:'header']
76
+
77
+ self.value = attributes[:'value'] if attributes[:'value']
78
+ end
79
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
80
+ # rubocop:enable Metrics/LineLength, Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
81
+
82
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Metrics/LineLength, Layout/EmptyLines
83
+
84
+
85
+ # Checks equality by comparing each attribute.
86
+ # @param [Object] other the other object to be compared
87
+ def ==(other)
88
+ return true if equal?(other)
89
+
90
+ self.class == other.class &&
91
+ action == other.action &&
92
+ header == other.header &&
93
+ value == other.value
94
+ end
95
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Metrics/LineLength, Layout/EmptyLines
96
+
97
+ # @see the `==` method
98
+ # @param [Object] other the other object to be compared
99
+ def eql?(other)
100
+ self == other
101
+ end
102
+
103
+ # rubocop:disable Metrics/AbcSize, Metrics/LineLength, Layout/EmptyLines
104
+
105
+
106
+ # Calculates hash code according to all attributes.
107
+ # @return [Fixnum] Hash code
108
+ def hash
109
+ [action, header, value].hash
110
+ end
111
+ # rubocop:enable Metrics/AbcSize, Metrics/LineLength, Layout/EmptyLines
112
+
113
+ # rubocop:disable Metrics/AbcSize, Layout/EmptyLines
114
+
115
+
116
+ # Builds the object from hash
117
+ # @param [Hash] attributes Model attributes in the form of hash
118
+ # @return [Object] Returns the model itself
119
+ def build_from_hash(attributes)
120
+ return nil unless attributes.is_a?(Hash)
121
+
122
+ self.class.swagger_types.each_pair do |key, type|
123
+ if type =~ /^Array<(.*)>/i
124
+ # check to ensure the input is an array given that the the attribute
125
+ # is documented as an array but the input is not
126
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
127
+ public_method("#{key}=").call(
128
+ attributes[self.class.attribute_map[key]]
129
+ .map { |v| OCI::Internal::Util.convert_to_type(Regexp.last_match(1), v) }
130
+ )
131
+ end
132
+ elsif !attributes[self.class.attribute_map[key]].nil?
133
+ public_method("#{key}=").call(
134
+ OCI::Internal::Util.convert_to_type(type, attributes[self.class.attribute_map[key]])
135
+ )
136
+ end
137
+ # or else data not found in attributes(hash), not an issue as the data can be optional
138
+ end
139
+
140
+ self
141
+ end
142
+ # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
143
+
144
+ # Returns the string representation of the object
145
+ # @return [String] String presentation of the object
146
+ def to_s
147
+ to_hash.to_s
148
+ end
149
+
150
+ # Returns the object in the form of hash
151
+ # @return [Hash] Returns the object in the form of hash
152
+ def to_hash
153
+ hash = {}
154
+ self.class.attribute_map.each_pair do |attr, param|
155
+ value = public_method(attr).call
156
+ next if value.nil? && !instance_variable_defined?("@#{attr}")
157
+
158
+ hash[param] = _to_hash(value)
159
+ end
160
+ hash
161
+ end
162
+
163
+ private
164
+
165
+ # Outputs non-array value in the form of hash
166
+ # For object, use to_hash. Otherwise, just return the value
167
+ # @param [Object] value Any valid value
168
+ # @return [Hash] Returns the value in the form of hash
169
+ def _to_hash(value)
170
+ if value.is_a?(Array)
171
+ value.compact.map { |v| _to_hash(v) }
172
+ elsif value.is_a?(Hash)
173
+ {}.tap do |hash|
174
+ value.each { |k, v| hash[k] = _to_hash(v) }
175
+ end
176
+ elsif value.respond_to? :to_hash
177
+ value.to_hash
178
+ else
179
+ value
180
+ end
181
+ end
182
+ end
183
+ end
184
+ # rubocop:enable Lint/UnneededCopDisableDirective