oci 2.3.8 → 2.3.9

Sign up to get free protection for your applications and to get access to all the features.
Files changed (536) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +7 -7
  3. data/lib/oci/api_client.rb +5 -0
  4. data/lib/oci/audit/audit_client.rb +1 -0
  5. data/lib/oci/audit/models/audit_event.rb +5 -2
  6. data/lib/oci/audit/models/configuration.rb +5 -2
  7. data/lib/oci/audit/models/update_configuration_details.rb +5 -2
  8. data/lib/oci/base_signer.rb +2 -1
  9. data/lib/oci/config.rb +1 -0
  10. data/lib/oci/config_file_loader.rb +2 -0
  11. data/lib/oci/container_engine/container_engine_client.rb +1 -0
  12. data/lib/oci/container_engine/models/add_on_options.rb +5 -2
  13. data/lib/oci/container_engine/models/cluster.rb +5 -2
  14. data/lib/oci/container_engine/models/cluster_create_options.rb +5 -2
  15. data/lib/oci/container_engine/models/cluster_endpoints.rb +5 -2
  16. data/lib/oci/container_engine/models/cluster_metadata.rb +5 -2
  17. data/lib/oci/container_engine/models/cluster_options.rb +5 -2
  18. data/lib/oci/container_engine/models/cluster_summary.rb +5 -2
  19. data/lib/oci/container_engine/models/create_cluster_details.rb +5 -2
  20. data/lib/oci/container_engine/models/create_cluster_kubeconfig_content_details.rb +5 -2
  21. data/lib/oci/container_engine/models/create_node_pool_details.rb +5 -2
  22. data/lib/oci/container_engine/models/key_value.rb +5 -2
  23. data/lib/oci/container_engine/models/kubernetes_network_config.rb +5 -2
  24. data/lib/oci/container_engine/models/node.rb +5 -2
  25. data/lib/oci/container_engine/models/node_error.rb +5 -2
  26. data/lib/oci/container_engine/models/node_pool.rb +5 -2
  27. data/lib/oci/container_engine/models/node_pool_options.rb +5 -2
  28. data/lib/oci/container_engine/models/node_pool_summary.rb +5 -2
  29. data/lib/oci/container_engine/models/update_cluster_details.rb +5 -2
  30. data/lib/oci/container_engine/models/update_node_pool_details.rb +5 -2
  31. data/lib/oci/container_engine/models/work_request.rb +5 -2
  32. data/lib/oci/container_engine/models/work_request_error.rb +5 -2
  33. data/lib/oci/container_engine/models/work_request_log_entry.rb +5 -2
  34. data/lib/oci/container_engine/models/work_request_resource.rb +5 -2
  35. data/lib/oci/container_engine/models/work_request_summary.rb +5 -2
  36. data/lib/oci/core/blockstorage_client.rb +72 -1
  37. data/lib/oci/core/blockstorage_client_composite_operations.rb +40 -0
  38. data/lib/oci/core/compute_client.rb +1 -0
  39. data/lib/oci/core/compute_management_client.rb +1179 -0
  40. data/lib/oci/core/compute_management_client_composite_operations.rb +299 -0
  41. data/lib/oci/core/core.rb +32 -0
  42. data/lib/oci/core/models/app_catalog_listing.rb +5 -2
  43. data/lib/oci/core/models/app_catalog_listing_resource_version.rb +5 -2
  44. data/lib/oci/core/models/app_catalog_listing_resource_version_agreements.rb +5 -2
  45. data/lib/oci/core/models/app_catalog_listing_resource_version_summary.rb +5 -2
  46. data/lib/oci/core/models/app_catalog_listing_summary.rb +5 -2
  47. data/lib/oci/core/models/app_catalog_subscription.rb +5 -2
  48. data/lib/oci/core/models/app_catalog_subscription_summary.rb +5 -2
  49. data/lib/oci/core/models/attach_boot_volume_details.rb +5 -2
  50. data/lib/oci/core/models/attach_i_scsi_volume_details.rb +5 -2
  51. data/lib/oci/core/models/attach_paravirtualized_volume_details.rb +5 -2
  52. data/lib/oci/core/models/attach_vnic_details.rb +5 -2
  53. data/lib/oci/core/models/attach_volume_details.rb +5 -2
  54. data/lib/oci/core/models/boot_volume.rb +5 -2
  55. data/lib/oci/core/models/boot_volume_attachment.rb +5 -2
  56. data/lib/oci/core/models/boot_volume_backup.rb +5 -2
  57. data/lib/oci/core/models/boot_volume_kms_key.rb +5 -2
  58. data/lib/oci/core/models/boot_volume_source_details.rb +5 -2
  59. data/lib/oci/core/models/boot_volume_source_from_boot_volume_backup_details.rb +5 -2
  60. data/lib/oci/core/models/boot_volume_source_from_boot_volume_details.rb +5 -2
  61. data/lib/oci/core/models/bulk_add_virtual_circuit_public_prefixes_details.rb +5 -2
  62. data/lib/oci/core/models/bulk_delete_virtual_circuit_public_prefixes_details.rb +5 -2
  63. data/lib/oci/core/models/capture_console_history_details.rb +5 -2
  64. data/lib/oci/core/models/compute_instance_details.rb +186 -0
  65. data/lib/oci/core/models/connect_local_peering_gateways_details.rb +5 -2
  66. data/lib/oci/core/models/connect_remote_peering_connections_details.rb +5 -2
  67. data/lib/oci/core/models/console_history.rb +5 -2
  68. data/lib/oci/core/models/copy_volume_backup_details.rb +172 -0
  69. data/lib/oci/core/models/cpe.rb +5 -2
  70. data/lib/oci/core/models/create_app_catalog_subscription_details.rb +5 -2
  71. data/lib/oci/core/models/create_boot_volume_backup_details.rb +6 -2
  72. data/lib/oci/core/models/create_boot_volume_details.rb +5 -2
  73. data/lib/oci/core/models/create_cpe_details.rb +5 -2
  74. data/lib/oci/core/models/create_cross_connect_details.rb +5 -2
  75. data/lib/oci/core/models/create_cross_connect_group_details.rb +5 -2
  76. data/lib/oci/core/models/create_dhcp_details.rb +5 -2
  77. data/lib/oci/core/models/create_drg_attachment_details.rb +5 -2
  78. data/lib/oci/core/models/create_drg_details.rb +5 -2
  79. data/lib/oci/core/models/create_image_details.rb +6 -2
  80. data/lib/oci/core/models/create_instance_configuration_details.rb +221 -0
  81. data/lib/oci/core/models/create_instance_console_connection_details.rb +5 -2
  82. data/lib/oci/core/models/create_instance_pool_details.rb +244 -0
  83. data/lib/oci/core/models/create_instance_pool_placement_configuration_details.rb +183 -0
  84. data/lib/oci/core/models/create_internet_gateway_details.rb +5 -2
  85. data/lib/oci/core/models/create_ip_sec_connection_details.rb +5 -2
  86. data/lib/oci/core/models/create_local_peering_gateway_details.rb +5 -2
  87. data/lib/oci/core/models/create_nat_gateway_details.rb +5 -2
  88. data/lib/oci/core/models/create_private_ip_details.rb +5 -2
  89. data/lib/oci/core/models/create_public_ip_details.rb +6 -2
  90. data/lib/oci/core/models/create_remote_peering_connection_details.rb +5 -2
  91. data/lib/oci/core/models/create_route_table_details.rb +5 -2
  92. data/lib/oci/core/models/create_security_list_details.rb +5 -2
  93. data/lib/oci/core/models/create_service_gateway_details.rb +5 -2
  94. data/lib/oci/core/models/create_subnet_details.rb +11 -8
  95. data/lib/oci/core/models/create_vcn_details.rb +5 -2
  96. data/lib/oci/core/models/create_virtual_circuit_details.rb +6 -2
  97. data/lib/oci/core/models/create_virtual_circuit_public_prefix_details.rb +5 -2
  98. data/lib/oci/core/models/create_vnic_details.rb +5 -2
  99. data/lib/oci/core/models/create_volume_backup_details.rb +6 -2
  100. data/lib/oci/core/models/create_volume_backup_policy_assignment_details.rb +5 -2
  101. data/lib/oci/core/models/create_volume_details.rb +5 -2
  102. data/lib/oci/core/models/create_volume_group_backup_details.rb +6 -2
  103. data/lib/oci/core/models/create_volume_group_details.rb +5 -2
  104. data/lib/oci/core/models/cross_connect.rb +5 -2
  105. data/lib/oci/core/models/cross_connect_group.rb +5 -2
  106. data/lib/oci/core/models/cross_connect_location.rb +5 -2
  107. data/lib/oci/core/models/cross_connect_mapping.rb +5 -2
  108. data/lib/oci/core/models/cross_connect_port_speed_shape.rb +5 -2
  109. data/lib/oci/core/models/cross_connect_status.rb +5 -2
  110. data/lib/oci/core/models/delete_virtual_circuit_public_prefix_details.rb +5 -2
  111. data/lib/oci/core/models/dhcp_dns_option.rb +5 -2
  112. data/lib/oci/core/models/dhcp_option.rb +5 -2
  113. data/lib/oci/core/models/dhcp_options.rb +5 -2
  114. data/lib/oci/core/models/dhcp_search_domain_option.rb +5 -2
  115. data/lib/oci/core/models/drg.rb +5 -2
  116. data/lib/oci/core/models/drg_attachment.rb +5 -2
  117. data/lib/oci/core/models/egress_security_rule.rb +5 -2
  118. data/lib/oci/core/models/export_image_details.rb +5 -2
  119. data/lib/oci/core/models/export_image_via_object_storage_tuple_details.rb +5 -2
  120. data/lib/oci/core/models/export_image_via_object_storage_uri_details.rb +5 -2
  121. data/lib/oci/core/models/fast_connect_provider_service.rb +5 -2
  122. data/lib/oci/core/models/get_public_ip_by_ip_address_details.rb +5 -2
  123. data/lib/oci/core/models/get_public_ip_by_private_ip_id_details.rb +5 -2
  124. data/lib/oci/core/models/i_scsi_volume_attachment.rb +5 -2
  125. data/lib/oci/core/models/icmp_options.rb +5 -2
  126. data/lib/oci/core/models/image.rb +5 -2
  127. data/lib/oci/core/models/image_source_details.rb +6 -2
  128. data/lib/oci/core/models/image_source_via_object_storage_tuple_details.rb +5 -2
  129. data/lib/oci/core/models/image_source_via_object_storage_uri_details.rb +5 -2
  130. data/lib/oci/core/models/ingress_security_rule.rb +5 -2
  131. data/lib/oci/core/models/instance.rb +27 -6
  132. data/lib/oci/core/models/instance_configuration.rb +259 -0
  133. data/lib/oci/core/models/instance_configuration_attach_vnic_details.rb +188 -0
  134. data/lib/oci/core/models/instance_configuration_attach_volume_details.rb +196 -0
  135. data/lib/oci/core/models/instance_configuration_block_volume_details.rb +180 -0
  136. data/lib/oci/core/models/instance_configuration_create_vnic_details.rb +221 -0
  137. data/lib/oci/core/models/instance_configuration_create_volume_details.rb +271 -0
  138. data/lib/oci/core/models/instance_configuration_instance_details.rb +170 -0
  139. data/lib/oci/core/models/instance_configuration_instance_source_details.rb +173 -0
  140. data/lib/oci/core/models/instance_configuration_instance_source_via_boot_volume_details.rb +161 -0
  141. data/lib/oci/core/models/instance_configuration_instance_source_via_image_details.rb +161 -0
  142. data/lib/oci/core/models/instance_configuration_iscsi_attach_volume_details.rb +169 -0
  143. data/lib/oci/core/models/instance_configuration_launch_instance_details.rb +395 -0
  144. data/lib/oci/core/models/instance_configuration_paravirtualized_attach_volume_details.rb +152 -0
  145. data/lib/oci/core/models/instance_configuration_summary.rb +196 -0
  146. data/lib/oci/core/models/instance_configuration_volume_source_details.rb +166 -0
  147. data/lib/oci/core/models/instance_configuration_volume_source_from_volume_backup_details.rb +157 -0
  148. data/lib/oci/core/models/instance_configuration_volume_source_from_volume_details.rb +157 -0
  149. data/lib/oci/core/models/instance_console_connection.rb +5 -2
  150. data/lib/oci/core/models/instance_credentials.rb +5 -2
  151. data/lib/oci/core/models/instance_pool.rb +310 -0
  152. data/lib/oci/core/models/instance_pool_placement_configuration.rb +183 -0
  153. data/lib/oci/core/models/instance_pool_placement_secondary_vnic_subnet.rb +169 -0
  154. data/lib/oci/core/models/instance_pool_summary.rb +273 -0
  155. data/lib/oci/core/models/instance_source_details.rb +5 -2
  156. data/lib/oci/core/models/instance_source_via_boot_volume_details.rb +5 -2
  157. data/lib/oci/core/models/instance_source_via_image_details.rb +5 -2
  158. data/lib/oci/core/models/instance_summary.rb +269 -0
  159. data/lib/oci/core/models/internet_gateway.rb +5 -2
  160. data/lib/oci/core/models/ip_sec_connection.rb +5 -2
  161. data/lib/oci/core/models/ip_sec_connection_device_config.rb +5 -2
  162. data/lib/oci/core/models/ip_sec_connection_device_status.rb +5 -2
  163. data/lib/oci/core/models/launch_instance_details.rb +5 -2
  164. data/lib/oci/core/models/launch_options.rb +5 -2
  165. data/lib/oci/core/models/letter_of_authority.rb +5 -2
  166. data/lib/oci/core/models/local_peering_gateway.rb +5 -2
  167. data/lib/oci/core/models/nat_gateway.rb +5 -2
  168. data/lib/oci/core/models/paravirtualized_volume_attachment.rb +5 -2
  169. data/lib/oci/core/models/peer_region_for_remote_peering.rb +5 -2
  170. data/lib/oci/core/models/port_range.rb +5 -2
  171. data/lib/oci/core/models/private_ip.rb +5 -2
  172. data/lib/oci/core/models/public_ip.rb +5 -2
  173. data/lib/oci/core/models/remote_peering_connection.rb +5 -2
  174. data/lib/oci/core/models/route_rule.rb +5 -2
  175. data/lib/oci/core/models/route_table.rb +5 -2
  176. data/lib/oci/core/models/security_list.rb +5 -2
  177. data/lib/oci/core/models/service.rb +5 -2
  178. data/lib/oci/core/models/service_gateway.rb +5 -2
  179. data/lib/oci/core/models/service_id_request_details.rb +5 -2
  180. data/lib/oci/core/models/service_id_response_details.rb +5 -2
  181. data/lib/oci/core/models/shape.rb +5 -2
  182. data/lib/oci/core/models/subnet.rb +11 -5
  183. data/lib/oci/core/models/tcp_options.rb +5 -2
  184. data/lib/oci/core/models/tunnel_config.rb +5 -2
  185. data/lib/oci/core/models/tunnel_status.rb +5 -2
  186. data/lib/oci/core/models/udp_options.rb +5 -2
  187. data/lib/oci/core/models/update_boot_volume_backup_details.rb +5 -2
  188. data/lib/oci/core/models/update_boot_volume_details.rb +5 -2
  189. data/lib/oci/core/models/update_boot_volume_kms_key_details.rb +5 -2
  190. data/lib/oci/core/models/update_console_history_details.rb +5 -2
  191. data/lib/oci/core/models/update_cpe_details.rb +5 -2
  192. data/lib/oci/core/models/update_cross_connect_details.rb +5 -2
  193. data/lib/oci/core/models/update_cross_connect_group_details.rb +5 -2
  194. data/lib/oci/core/models/update_dhcp_details.rb +5 -2
  195. data/lib/oci/core/models/update_drg_attachment_details.rb +5 -2
  196. data/lib/oci/core/models/update_drg_details.rb +5 -2
  197. data/lib/oci/core/models/update_image_details.rb +5 -2
  198. data/lib/oci/core/models/update_instance_configuration_details.rb +194 -0
  199. data/lib/oci/core/models/update_instance_details.rb +5 -2
  200. data/lib/oci/core/models/update_instance_pool_details.rb +230 -0
  201. data/lib/oci/core/models/update_instance_pool_placement_configuration_details.rb +183 -0
  202. data/lib/oci/core/models/update_internet_gateway_details.rb +5 -2
  203. data/lib/oci/core/models/update_ip_sec_connection_details.rb +5 -2
  204. data/lib/oci/core/models/update_local_peering_gateway_details.rb +5 -2
  205. data/lib/oci/core/models/update_nat_gateway_details.rb +5 -2
  206. data/lib/oci/core/models/update_private_ip_details.rb +5 -2
  207. data/lib/oci/core/models/update_public_ip_details.rb +5 -2
  208. data/lib/oci/core/models/update_remote_peering_connection_details.rb +5 -2
  209. data/lib/oci/core/models/update_route_table_details.rb +5 -2
  210. data/lib/oci/core/models/update_security_list_details.rb +5 -2
  211. data/lib/oci/core/models/update_service_gateway_details.rb +5 -2
  212. data/lib/oci/core/models/update_subnet_details.rb +5 -2
  213. data/lib/oci/core/models/update_vcn_details.rb +5 -2
  214. data/lib/oci/core/models/update_virtual_circuit_details.rb +6 -2
  215. data/lib/oci/core/models/update_vnic_details.rb +5 -2
  216. data/lib/oci/core/models/update_volume_backup_details.rb +5 -2
  217. data/lib/oci/core/models/update_volume_details.rb +5 -2
  218. data/lib/oci/core/models/update_volume_group_backup_details.rb +5 -2
  219. data/lib/oci/core/models/update_volume_group_details.rb +5 -2
  220. data/lib/oci/core/models/update_volume_kms_key_details.rb +5 -2
  221. data/lib/oci/core/models/vcn.rb +5 -2
  222. data/lib/oci/core/models/virtual_circuit.rb +5 -2
  223. data/lib/oci/core/models/virtual_circuit_bandwidth_shape.rb +5 -2
  224. data/lib/oci/core/models/virtual_circuit_public_prefix.rb +5 -2
  225. data/lib/oci/core/models/vnic.rb +5 -2
  226. data/lib/oci/core/models/vnic_attachment.rb +5 -2
  227. data/lib/oci/core/models/volume.rb +5 -2
  228. data/lib/oci/core/models/volume_attachment.rb +5 -2
  229. data/lib/oci/core/models/volume_backup.rb +20 -3
  230. data/lib/oci/core/models/volume_backup_policy.rb +5 -2
  231. data/lib/oci/core/models/volume_backup_policy_assignment.rb +5 -2
  232. data/lib/oci/core/models/volume_backup_schedule.rb +5 -2
  233. data/lib/oci/core/models/volume_group.rb +5 -2
  234. data/lib/oci/core/models/volume_group_backup.rb +5 -2
  235. data/lib/oci/core/models/volume_group_source_details.rb +5 -2
  236. data/lib/oci/core/models/volume_group_source_from_volume_group_backup_details.rb +5 -2
  237. data/lib/oci/core/models/volume_group_source_from_volume_group_details.rb +5 -2
  238. data/lib/oci/core/models/volume_group_source_from_volumes_details.rb +5 -2
  239. data/lib/oci/core/models/volume_kms_key.rb +5 -2
  240. data/lib/oci/core/models/volume_source_details.rb +5 -2
  241. data/lib/oci/core/models/volume_source_from_volume_backup_details.rb +5 -2
  242. data/lib/oci/core/models/volume_source_from_volume_details.rb +5 -2
  243. data/lib/oci/core/virtual_network_client.rb +3 -3
  244. data/lib/oci/database/database.rb +5 -0
  245. data/lib/oci/database/database_client.rb +527 -4
  246. data/lib/oci/database/models/autonomous_data_warehouse.rb +21 -4
  247. data/lib/oci/database/models/autonomous_data_warehouse_backup.rb +5 -2
  248. data/lib/oci/database/models/autonomous_data_warehouse_backup_summary.rb +5 -2
  249. data/lib/oci/database/models/autonomous_data_warehouse_connection_strings.rb +20 -3
  250. data/lib/oci/database/models/autonomous_data_warehouse_summary.rb +21 -4
  251. data/lib/oci/database/models/autonomous_database.rb +22 -4
  252. data/lib/oci/database/models/autonomous_database_backup.rb +5 -2
  253. data/lib/oci/database/models/autonomous_database_backup_summary.rb +5 -2
  254. data/lib/oci/database/models/autonomous_database_connection_strings.rb +20 -3
  255. data/lib/oci/database/models/autonomous_database_summary.rb +22 -4
  256. data/lib/oci/database/models/backup.rb +40 -14
  257. data/lib/oci/database/models/backup_summary.rb +40 -14
  258. data/lib/oci/database/models/complete_external_backup_job_details.rb +223 -0
  259. data/lib/oci/database/models/create_autonomous_data_warehouse_backup_details.rb +5 -2
  260. data/lib/oci/database/models/create_autonomous_data_warehouse_details.rb +6 -2
  261. data/lib/oci/database/models/create_autonomous_database_backup_details.rb +5 -2
  262. data/lib/oci/database/models/create_autonomous_database_details.rb +6 -2
  263. data/lib/oci/database/models/create_backup_details.rb +5 -2
  264. data/lib/oci/database/models/create_data_guard_association_details.rb +7 -2
  265. data/lib/oci/database/models/create_data_guard_association_to_existing_db_system_details.rb +5 -2
  266. data/lib/oci/database/models/create_database_details.rb +6 -2
  267. data/lib/oci/database/models/create_database_from_backup_details.rb +5 -2
  268. data/lib/oci/database/models/create_db_home_details.rb +5 -2
  269. data/lib/oci/database/models/create_db_home_from_backup_details.rb +5 -2
  270. data/lib/oci/database/models/create_db_home_with_db_system_id_base.rb +6 -2
  271. data/lib/oci/database/models/create_db_home_with_db_system_id_details.rb +5 -2
  272. data/lib/oci/database/models/create_db_home_with_db_system_id_from_backup_details.rb +5 -2
  273. data/lib/oci/database/models/create_external_backup_job_details.rb +341 -0
  274. data/lib/oci/database/models/data_guard_association.rb +5 -2
  275. data/lib/oci/database/models/data_guard_association_summary.rb +5 -2
  276. data/lib/oci/database/models/database.rb +5 -2
  277. data/lib/oci/database/models/database_summary.rb +5 -2
  278. data/lib/oci/database/models/db_backup_config.rb +5 -2
  279. data/lib/oci/database/models/db_home.rb +5 -2
  280. data/lib/oci/database/models/db_home_summary.rb +5 -2
  281. data/lib/oci/database/models/db_node.rb +5 -2
  282. data/lib/oci/database/models/db_node_summary.rb +5 -2
  283. data/lib/oci/database/models/db_system.rb +5 -2
  284. data/lib/oci/database/models/db_system_shape_summary.rb +5 -2
  285. data/lib/oci/database/models/db_system_summary.rb +5 -2
  286. data/lib/oci/database/models/db_version_summary.rb +5 -2
  287. data/lib/oci/database/models/external_backup_job.rb +232 -0
  288. data/lib/oci/database/models/failover_data_guard_association_details.rb +5 -2
  289. data/lib/oci/database/models/generate_autonomous_data_warehouse_wallet_details.rb +150 -0
  290. data/lib/oci/database/models/generate_autonomous_database_wallet_details.rb +150 -0
  291. data/lib/oci/database/models/launch_db_system_base.rb +6 -2
  292. data/lib/oci/database/models/launch_db_system_details.rb +8 -2
  293. data/lib/oci/database/models/launch_db_system_from_backup_details.rb +8 -2
  294. data/lib/oci/database/models/patch.rb +5 -2
  295. data/lib/oci/database/models/patch_details.rb +6 -2
  296. data/lib/oci/database/models/patch_history_entry.rb +5 -2
  297. data/lib/oci/database/models/patch_history_entry_summary.rb +5 -2
  298. data/lib/oci/database/models/patch_summary.rb +5 -2
  299. data/lib/oci/database/models/reinstate_data_guard_association_details.rb +5 -2
  300. data/lib/oci/database/models/restore_autonomous_data_warehouse_details.rb +5 -2
  301. data/lib/oci/database/models/restore_autonomous_database_details.rb +5 -2
  302. data/lib/oci/database/models/restore_database_details.rb +5 -2
  303. data/lib/oci/database/models/switchover_data_guard_association_details.rb +5 -2
  304. data/lib/oci/database/models/update_autonomous_data_warehouse_details.rb +5 -2
  305. data/lib/oci/database/models/update_autonomous_database_details.rb +5 -2
  306. data/lib/oci/database/models/update_database_details.rb +5 -2
  307. data/lib/oci/database/models/update_db_home_details.rb +5 -2
  308. data/lib/oci/database/models/update_db_system_details.rb +5 -2
  309. data/lib/oci/dns/dns_client.rb +1 -0
  310. data/lib/oci/dns/models/create_zone_details.rb +6 -2
  311. data/lib/oci/dns/models/external_master.rb +5 -2
  312. data/lib/oci/dns/models/patch_domain_records_details.rb +5 -2
  313. data/lib/oci/dns/models/patch_rr_set_details.rb +5 -2
  314. data/lib/oci/dns/models/patch_zone_records_details.rb +5 -2
  315. data/lib/oci/dns/models/record.rb +5 -2
  316. data/lib/oci/dns/models/record_collection.rb +5 -2
  317. data/lib/oci/dns/models/record_details.rb +5 -2
  318. data/lib/oci/dns/models/record_operation.rb +6 -2
  319. data/lib/oci/dns/models/rr_set.rb +5 -2
  320. data/lib/oci/dns/models/tsig.rb +5 -2
  321. data/lib/oci/dns/models/update_domain_records_details.rb +5 -2
  322. data/lib/oci/dns/models/update_rr_set_details.rb +5 -2
  323. data/lib/oci/dns/models/update_zone_details.rb +5 -2
  324. data/lib/oci/dns/models/update_zone_records_details.rb +5 -2
  325. data/lib/oci/dns/models/zone.rb +5 -2
  326. data/lib/oci/dns/models/zone_summary.rb +5 -2
  327. data/lib/oci/email/email_client.rb +1 -0
  328. data/lib/oci/email/models/create_sender_details.rb +5 -2
  329. data/lib/oci/email/models/create_suppression_details.rb +5 -2
  330. data/lib/oci/email/models/sender.rb +5 -2
  331. data/lib/oci/email/models/sender_summary.rb +5 -2
  332. data/lib/oci/email/models/suppression.rb +5 -2
  333. data/lib/oci/email/models/suppression_summary.rb +5 -2
  334. data/lib/oci/file_storage/file_storage_client.rb +1 -0
  335. data/lib/oci/file_storage/models/client_options.rb +5 -2
  336. data/lib/oci/file_storage/models/create_export_details.rb +5 -2
  337. data/lib/oci/file_storage/models/create_file_system_details.rb +5 -2
  338. data/lib/oci/file_storage/models/create_mount_target_details.rb +5 -2
  339. data/lib/oci/file_storage/models/create_snapshot_details.rb +5 -2
  340. data/lib/oci/file_storage/models/export.rb +5 -2
  341. data/lib/oci/file_storage/models/export_set.rb +5 -2
  342. data/lib/oci/file_storage/models/export_set_summary.rb +5 -2
  343. data/lib/oci/file_storage/models/export_summary.rb +5 -2
  344. data/lib/oci/file_storage/models/file_system.rb +5 -2
  345. data/lib/oci/file_storage/models/file_system_summary.rb +5 -2
  346. data/lib/oci/file_storage/models/mount_target.rb +5 -2
  347. data/lib/oci/file_storage/models/mount_target_summary.rb +5 -2
  348. data/lib/oci/file_storage/models/snapshot.rb +5 -2
  349. data/lib/oci/file_storage/models/snapshot_summary.rb +5 -2
  350. data/lib/oci/file_storage/models/update_export_details.rb +5 -2
  351. data/lib/oci/file_storage/models/update_export_set_details.rb +5 -2
  352. data/lib/oci/file_storage/models/update_file_system_details.rb +5 -2
  353. data/lib/oci/file_storage/models/update_mount_target_details.rb +5 -2
  354. data/lib/oci/identity/identity.rb +5 -0
  355. data/lib/oci/identity/identity_client.rb +283 -14
  356. data/lib/oci/identity/identity_client_composite_operations.rb +49 -0
  357. data/lib/oci/identity/models/add_user_to_group_details.rb +5 -2
  358. data/lib/oci/identity/models/api_key.rb +5 -2
  359. data/lib/oci/identity/models/auth_token.rb +5 -2
  360. data/lib/oci/identity/models/availability_domain.rb +5 -2
  361. data/lib/oci/identity/models/compartment.rb +25 -5
  362. data/lib/oci/identity/models/create_api_key_details.rb +5 -2
  363. data/lib/oci/identity/models/create_auth_token_details.rb +5 -2
  364. data/lib/oci/identity/models/create_compartment_details.rb +7 -4
  365. data/lib/oci/identity/models/create_customer_secret_key_details.rb +5 -2
  366. data/lib/oci/identity/models/create_dynamic_group_details.rb +5 -2
  367. data/lib/oci/identity/models/create_group_details.rb +5 -2
  368. data/lib/oci/identity/models/create_identity_provider_details.rb +7 -2
  369. data/lib/oci/identity/models/create_idp_group_mapping_details.rb +5 -2
  370. data/lib/oci/identity/models/create_policy_details.rb +5 -2
  371. data/lib/oci/identity/models/create_region_subscription_details.rb +5 -2
  372. data/lib/oci/identity/models/create_saml2_identity_provider_details.rb +5 -2
  373. data/lib/oci/identity/models/create_smtp_credential_details.rb +5 -2
  374. data/lib/oci/identity/models/create_swift_password_details.rb +5 -2
  375. data/lib/oci/identity/models/create_tag_details.rb +24 -6
  376. data/lib/oci/identity/models/create_tag_namespace_details.rb +5 -2
  377. data/lib/oci/identity/models/create_user_details.rb +5 -2
  378. data/lib/oci/identity/models/customer_secret_key.rb +5 -2
  379. data/lib/oci/identity/models/customer_secret_key_summary.rb +5 -2
  380. data/lib/oci/identity/models/dynamic_group.rb +5 -2
  381. data/lib/oci/identity/models/fault_domain.rb +5 -2
  382. data/lib/oci/identity/models/group.rb +5 -2
  383. data/lib/oci/identity/models/identity_provider.rb +5 -2
  384. data/lib/oci/identity/models/idp_group_mapping.rb +5 -2
  385. data/lib/oci/identity/models/policy.rb +5 -2
  386. data/lib/oci/identity/models/region.rb +5 -2
  387. data/lib/oci/identity/models/region_subscription.rb +5 -2
  388. data/lib/oci/identity/models/saml2_identity_provider.rb +5 -2
  389. data/lib/oci/identity/models/smtp_credential.rb +5 -2
  390. data/lib/oci/identity/models/smtp_credential_summary.rb +5 -2
  391. data/lib/oci/identity/models/swift_password.rb +5 -2
  392. data/lib/oci/identity/models/tag.rb +24 -6
  393. data/lib/oci/identity/models/tag_namespace.rb +5 -2
  394. data/lib/oci/identity/models/tag_namespace_summary.rb +5 -2
  395. data/lib/oci/identity/models/tag_summary.rb +24 -6
  396. data/lib/oci/identity/models/tenancy.rb +5 -2
  397. data/lib/oci/identity/models/ui_password.rb +5 -2
  398. data/lib/oci/identity/models/update_auth_token_details.rb +5 -2
  399. data/lib/oci/identity/models/update_compartment_details.rb +6 -3
  400. data/lib/oci/identity/models/update_customer_secret_key_details.rb +5 -2
  401. data/lib/oci/identity/models/update_dynamic_group_details.rb +5 -2
  402. data/lib/oci/identity/models/update_group_details.rb +5 -2
  403. data/lib/oci/identity/models/update_identity_provider_details.rb +6 -2
  404. data/lib/oci/identity/models/update_idp_group_mapping_details.rb +5 -2
  405. data/lib/oci/identity/models/update_policy_details.rb +5 -2
  406. data/lib/oci/identity/models/update_saml2_identity_provider_details.rb +5 -2
  407. data/lib/oci/identity/models/update_smtp_credential_details.rb +5 -2
  408. data/lib/oci/identity/models/update_state_details.rb +5 -2
  409. data/lib/oci/identity/models/update_swift_password_details.rb +5 -2
  410. data/lib/oci/identity/models/update_tag_details.rb +24 -6
  411. data/lib/oci/identity/models/update_tag_namespace_details.rb +5 -2
  412. data/lib/oci/identity/models/update_user_details.rb +5 -2
  413. data/lib/oci/identity/models/user.rb +5 -2
  414. data/lib/oci/identity/models/user_group_membership.rb +5 -2
  415. data/lib/oci/identity/models/work_request.rb +331 -0
  416. data/lib/oci/identity/models/work_request_error.rb +172 -0
  417. data/lib/oci/identity/models/work_request_log_entry.rb +162 -0
  418. data/lib/oci/identity/models/work_request_resource.rb +217 -0
  419. data/lib/oci/identity/models/work_request_summary.rb +319 -0
  420. data/lib/oci/key_management/kms_crypto_client.rb +2 -0
  421. data/lib/oci/key_management/kms_management_client.rb +2 -0
  422. data/lib/oci/key_management/kms_vault_client.rb +1 -0
  423. data/lib/oci/key_management/models/create_key_details.rb +5 -2
  424. data/lib/oci/key_management/models/create_vault_details.rb +6 -2
  425. data/lib/oci/key_management/models/decrypt_data_details.rb +5 -2
  426. data/lib/oci/key_management/models/decrypted_data.rb +5 -2
  427. data/lib/oci/key_management/models/encrypt_data_details.rb +5 -2
  428. data/lib/oci/key_management/models/encrypted_data.rb +5 -2
  429. data/lib/oci/key_management/models/generate_key_details.rb +5 -2
  430. data/lib/oci/key_management/models/generated_key.rb +5 -2
  431. data/lib/oci/key_management/models/key.rb +5 -2
  432. data/lib/oci/key_management/models/key_shape.rb +5 -2
  433. data/lib/oci/key_management/models/key_summary.rb +5 -2
  434. data/lib/oci/key_management/models/key_version.rb +5 -2
  435. data/lib/oci/key_management/models/key_version_summary.rb +5 -2
  436. data/lib/oci/key_management/models/schedule_vault_deletion_details.rb +5 -2
  437. data/lib/oci/key_management/models/update_key_details.rb +5 -2
  438. data/lib/oci/key_management/models/update_vault_details.rb +5 -2
  439. data/lib/oci/key_management/models/vault.rb +5 -2
  440. data/lib/oci/key_management/models/vault_summary.rb +5 -2
  441. data/lib/oci/load_balancer/load_balancer_client.rb +1 -0
  442. data/lib/oci/load_balancer/models/backend.rb +5 -2
  443. data/lib/oci/load_balancer/models/backend_details.rb +5 -2
  444. data/lib/oci/load_balancer/models/backend_health.rb +5 -2
  445. data/lib/oci/load_balancer/models/backend_set.rb +5 -2
  446. data/lib/oci/load_balancer/models/backend_set_details.rb +5 -2
  447. data/lib/oci/load_balancer/models/backend_set_health.rb +5 -2
  448. data/lib/oci/load_balancer/models/certificate.rb +5 -2
  449. data/lib/oci/load_balancer/models/certificate_details.rb +5 -2
  450. data/lib/oci/load_balancer/models/connection_configuration.rb +5 -2
  451. data/lib/oci/load_balancer/models/create_backend_details.rb +5 -2
  452. data/lib/oci/load_balancer/models/create_backend_set_details.rb +5 -2
  453. data/lib/oci/load_balancer/models/create_certificate_details.rb +5 -2
  454. data/lib/oci/load_balancer/models/create_hostname_details.rb +5 -2
  455. data/lib/oci/load_balancer/models/create_listener_details.rb +5 -2
  456. data/lib/oci/load_balancer/models/create_load_balancer_details.rb +5 -2
  457. data/lib/oci/load_balancer/models/create_path_route_set_details.rb +5 -2
  458. data/lib/oci/load_balancer/models/health_check_result.rb +5 -2
  459. data/lib/oci/load_balancer/models/health_checker.rb +5 -2
  460. data/lib/oci/load_balancer/models/health_checker_details.rb +5 -2
  461. data/lib/oci/load_balancer/models/hostname.rb +5 -2
  462. data/lib/oci/load_balancer/models/hostname_details.rb +5 -2
  463. data/lib/oci/load_balancer/models/ip_address.rb +5 -2
  464. data/lib/oci/load_balancer/models/listener.rb +5 -2
  465. data/lib/oci/load_balancer/models/listener_details.rb +5 -2
  466. data/lib/oci/load_balancer/models/load_balancer.rb +5 -2
  467. data/lib/oci/load_balancer/models/load_balancer_health.rb +5 -2
  468. data/lib/oci/load_balancer/models/load_balancer_health_summary.rb +5 -2
  469. data/lib/oci/load_balancer/models/load_balancer_policy.rb +5 -2
  470. data/lib/oci/load_balancer/models/load_balancer_protocol.rb +5 -2
  471. data/lib/oci/load_balancer/models/load_balancer_shape.rb +5 -2
  472. data/lib/oci/load_balancer/models/path_match_type.rb +5 -2
  473. data/lib/oci/load_balancer/models/path_route.rb +5 -2
  474. data/lib/oci/load_balancer/models/path_route_set.rb +5 -2
  475. data/lib/oci/load_balancer/models/path_route_set_details.rb +5 -2
  476. data/lib/oci/load_balancer/models/session_persistence_configuration_details.rb +5 -2
  477. data/lib/oci/load_balancer/models/ssl_configuration.rb +5 -2
  478. data/lib/oci/load_balancer/models/ssl_configuration_details.rb +5 -2
  479. data/lib/oci/load_balancer/models/update_backend_details.rb +5 -2
  480. data/lib/oci/load_balancer/models/update_backend_set_details.rb +5 -2
  481. data/lib/oci/load_balancer/models/update_health_checker_details.rb +5 -2
  482. data/lib/oci/load_balancer/models/update_hostname_details.rb +5 -2
  483. data/lib/oci/load_balancer/models/update_listener_details.rb +5 -2
  484. data/lib/oci/load_balancer/models/update_load_balancer_details.rb +5 -2
  485. data/lib/oci/load_balancer/models/update_path_route_set_details.rb +5 -2
  486. data/lib/oci/load_balancer/models/work_request.rb +5 -2
  487. data/lib/oci/load_balancer/models/work_request_error.rb +5 -2
  488. data/lib/oci/object_storage/models/bucket.rb +5 -2
  489. data/lib/oci/object_storage/models/bucket_summary.rb +5 -2
  490. data/lib/oci/object_storage/models/commit_multipart_upload_details.rb +5 -2
  491. data/lib/oci/object_storage/models/commit_multipart_upload_part_details.rb +5 -2
  492. data/lib/oci/object_storage/models/copy_object_details.rb +5 -2
  493. data/lib/oci/object_storage/models/create_bucket_details.rb +7 -2
  494. data/lib/oci/object_storage/models/create_multipart_upload_details.rb +5 -2
  495. data/lib/oci/object_storage/models/create_preauthenticated_request_details.rb +6 -2
  496. data/lib/oci/object_storage/models/list_objects.rb +5 -2
  497. data/lib/oci/object_storage/models/multipart_upload.rb +5 -2
  498. data/lib/oci/object_storage/models/multipart_upload_part_summary.rb +5 -2
  499. data/lib/oci/object_storage/models/namespace_metadata.rb +5 -2
  500. data/lib/oci/object_storage/models/object_lifecycle_policy.rb +5 -2
  501. data/lib/oci/object_storage/models/object_lifecycle_rule.rb +5 -2
  502. data/lib/oci/object_storage/models/object_name_filter.rb +5 -2
  503. data/lib/oci/object_storage/models/object_summary.rb +5 -2
  504. data/lib/oci/object_storage/models/preauthenticated_request.rb +5 -2
  505. data/lib/oci/object_storage/models/preauthenticated_request_summary.rb +5 -2
  506. data/lib/oci/object_storage/models/put_object_lifecycle_policy_details.rb +5 -2
  507. data/lib/oci/object_storage/models/rename_object_details.rb +5 -2
  508. data/lib/oci/object_storage/models/restore_objects_details.rb +5 -2
  509. data/lib/oci/object_storage/models/update_bucket_details.rb +6 -2
  510. data/lib/oci/object_storage/models/update_namespace_metadata_details.rb +5 -2
  511. data/lib/oci/object_storage/models/work_request.rb +5 -2
  512. data/lib/oci/object_storage/models/work_request_error.rb +5 -2
  513. data/lib/oci/object_storage/models/work_request_log_entry.rb +5 -2
  514. data/lib/oci/object_storage/models/work_request_resource.rb +5 -2
  515. data/lib/oci/object_storage/models/work_request_summary.rb +5 -2
  516. data/lib/oci/object_storage/object_storage_client.rb +1 -0
  517. data/lib/oci/object_storage/transfer/multipart/internal/seekable_non_file_part_io_wrapper.rb +1 -0
  518. data/lib/oci/object_storage/transfer/multipart/multipart_object_assembler.rb +2 -0
  519. data/lib/oci/object_storage/transfer/upload_manager.rb +1 -0
  520. data/lib/oci/regions.rb +3 -1
  521. data/lib/oci/resource_search/models/free_text_search_details.rb +5 -2
  522. data/lib/oci/resource_search/models/queryable_field_description.rb +5 -2
  523. data/lib/oci/resource_search/models/resource_summary.rb +5 -2
  524. data/lib/oci/resource_search/models/resource_summary_collection.rb +5 -2
  525. data/lib/oci/resource_search/models/resource_type.rb +5 -2
  526. data/lib/oci/resource_search/models/search_context.rb +5 -2
  527. data/lib/oci/resource_search/models/search_details.rb +6 -2
  528. data/lib/oci/resource_search/models/structured_search_details.rb +5 -2
  529. data/lib/oci/resource_search/resource_search_client.rb +1 -0
  530. data/lib/oci/response_headers.rb +1 -0
  531. data/lib/oci/retry/functions/sleep.rb +1 -0
  532. data/lib/oci/retry/internal/retry_state.rb +1 -0
  533. data/lib/oci/retry/retry_config.rb +3 -0
  534. data/lib/oci/version.rb +1 -1
  535. data/lib/oci/waiter.rb +2 -0
  536. metadata +44 -2
@@ -46,17 +46,18 @@ module OCI
46
46
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
47
47
  # rubocop:enable Metrics/LineLength, Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
48
48
 
49
- # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
49
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Metrics/LineLength, Layout/EmptyLines
50
50
 
51
51
 
52
52
  # Checks equality by comparing each attribute.
53
53
  # @param [Object] other the other object to be compared
54
54
  def ==(other)
55
55
  return true if equal?(other)
56
+
56
57
  self.class == other.class &&
57
58
  description == other.description
58
59
  end
59
- # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
60
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Metrics/LineLength, Layout/EmptyLines
60
61
 
61
62
  # @see the `==` method
62
63
  # @param [Object] other the other object to be compared
@@ -82,6 +83,7 @@ module OCI
82
83
  # @return [Object] Returns the model itself
83
84
  def build_from_hash(attributes)
84
85
  return nil unless attributes.is_a?(Hash)
86
+
85
87
  self.class.swagger_types.each_pair do |key, type|
86
88
  if type =~ /^Array<(.*)>/i
87
89
  # check to ensure the input is an array given that the the attribute
@@ -117,6 +119,7 @@ module OCI
117
119
  self.class.attribute_map.each_pair do |attr, param|
118
120
  value = public_method(attr).call
119
121
  next if value.nil? && !instance_variable_defined?("@#{attr}")
122
+
120
123
  hash[param] = _to_hash(value)
121
124
  end
122
125
  hash
@@ -30,6 +30,11 @@ module OCI
30
30
  # @return [Hash<String, Hash<String, Object>>]
31
31
  attr_accessor :defined_tags
32
32
 
33
+ # Indicates whether the tag is enabled for cost tracking.
34
+ #
35
+ # @return [BOOLEAN]
36
+ attr_accessor :is_cost_tracking
37
+
33
38
  # Attribute mapping from ruby-style variable name to JSON key.
34
39
  def self.attribute_map
35
40
  {
@@ -37,7 +42,8 @@ module OCI
37
42
  'description': :'description',
38
43
  'is_retired': :'isRetired',
39
44
  'freeform_tags': :'freeformTags',
40
- 'defined_tags': :'definedTags'
45
+ 'defined_tags': :'definedTags',
46
+ 'is_cost_tracking': :'isCostTracking'
41
47
  # rubocop:enable Style/SymbolLiteral
42
48
  }
43
49
  end
@@ -49,7 +55,8 @@ module OCI
49
55
  'description': :'String',
50
56
  'is_retired': :'BOOLEAN',
51
57
  'freeform_tags': :'Hash<String, String>',
52
- 'defined_tags': :'Hash<String, Hash<String, Object>>'
58
+ 'defined_tags': :'Hash<String, Hash<String, Object>>',
59
+ 'is_cost_tracking': :'BOOLEAN'
53
60
  # rubocop:enable Style/SymbolLiteral
54
61
  }
55
62
  end
@@ -64,6 +71,7 @@ module OCI
64
71
  # @option attributes [BOOLEAN] :is_retired The value to assign to the {#is_retired} property
65
72
  # @option attributes [Hash<String, String>] :freeform_tags The value to assign to the {#freeform_tags} property
66
73
  # @option attributes [Hash<String, Hash<String, Object>>] :defined_tags The value to assign to the {#defined_tags} property
74
+ # @option attributes [BOOLEAN] :is_cost_tracking The value to assign to the {#is_cost_tracking} property
67
75
  def initialize(attributes = {})
68
76
  return unless attributes.is_a?(Hash)
69
77
 
@@ -89,24 +97,32 @@ module OCI
89
97
  raise 'You cannot provide both :definedTags and :defined_tags' if attributes.key?(:'definedTags') && attributes.key?(:'defined_tags')
90
98
 
91
99
  self.defined_tags = attributes[:'defined_tags'] if attributes[:'defined_tags']
100
+
101
+ self.is_cost_tracking = attributes[:'isCostTracking'] unless attributes[:'isCostTracking'].nil?
102
+
103
+ raise 'You cannot provide both :isCostTracking and :is_cost_tracking' if attributes.key?(:'isCostTracking') && attributes.key?(:'is_cost_tracking')
104
+
105
+ self.is_cost_tracking = attributes[:'is_cost_tracking'] unless attributes[:'is_cost_tracking'].nil?
92
106
  end
93
107
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
94
108
  # rubocop:enable Metrics/LineLength, Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
95
109
 
96
- # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
110
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Metrics/LineLength, Layout/EmptyLines
97
111
 
98
112
 
99
113
  # Checks equality by comparing each attribute.
100
114
  # @param [Object] other the other object to be compared
101
115
  def ==(other)
102
116
  return true if equal?(other)
117
+
103
118
  self.class == other.class &&
104
119
  description == other.description &&
105
120
  is_retired == other.is_retired &&
106
121
  freeform_tags == other.freeform_tags &&
107
- defined_tags == other.defined_tags
122
+ defined_tags == other.defined_tags &&
123
+ is_cost_tracking == other.is_cost_tracking
108
124
  end
109
- # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
125
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Metrics/LineLength, Layout/EmptyLines
110
126
 
111
127
  # @see the `==` method
112
128
  # @param [Object] other the other object to be compared
@@ -120,7 +136,7 @@ module OCI
120
136
  # Calculates hash code according to all attributes.
121
137
  # @return [Fixnum] Hash code
122
138
  def hash
123
- [description, is_retired, freeform_tags, defined_tags].hash
139
+ [description, is_retired, freeform_tags, defined_tags, is_cost_tracking].hash
124
140
  end
125
141
  # rubocop:enable Metrics/AbcSize, Metrics/LineLength, Layout/EmptyLines
126
142
 
@@ -132,6 +148,7 @@ module OCI
132
148
  # @return [Object] Returns the model itself
133
149
  def build_from_hash(attributes)
134
150
  return nil unless attributes.is_a?(Hash)
151
+
135
152
  self.class.swagger_types.each_pair do |key, type|
136
153
  if type =~ /^Array<(.*)>/i
137
154
  # check to ensure the input is an array given that the the attribute
@@ -167,6 +184,7 @@ module OCI
167
184
  self.class.attribute_map.each_pair do |attr, param|
168
185
  value = public_method(attr).call
169
186
  next if value.nil? && !instance_variable_defined?("@#{attr}")
187
+
170
188
  hash[param] = _to_hash(value)
171
189
  end
172
190
  hash
@@ -93,20 +93,21 @@ module OCI
93
93
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
94
94
  # rubocop:enable Metrics/LineLength, Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
95
95
 
96
- # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
96
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Metrics/LineLength, Layout/EmptyLines
97
97
 
98
98
 
99
99
  # Checks equality by comparing each attribute.
100
100
  # @param [Object] other the other object to be compared
101
101
  def ==(other)
102
102
  return true if equal?(other)
103
+
103
104
  self.class == other.class &&
104
105
  description == other.description &&
105
106
  is_retired == other.is_retired &&
106
107
  freeform_tags == other.freeform_tags &&
107
108
  defined_tags == other.defined_tags
108
109
  end
109
- # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
110
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Metrics/LineLength, Layout/EmptyLines
110
111
 
111
112
  # @see the `==` method
112
113
  # @param [Object] other the other object to be compared
@@ -132,6 +133,7 @@ module OCI
132
133
  # @return [Object] Returns the model itself
133
134
  def build_from_hash(attributes)
134
135
  return nil unless attributes.is_a?(Hash)
136
+
135
137
  self.class.swagger_types.each_pair do |key, type|
136
138
  if type =~ /^Array<(.*)>/i
137
139
  # check to ensure the input is an array given that the the attribute
@@ -167,6 +169,7 @@ module OCI
167
169
  self.class.attribute_map.each_pair do |attr, param|
168
170
  value = public_method(attr).call
169
171
  next if value.nil? && !instance_variable_defined?("@#{attr}")
172
+
170
173
  hash[param] = _to_hash(value)
171
174
  end
172
175
  hash
@@ -78,19 +78,20 @@ module OCI
78
78
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
79
79
  # rubocop:enable Metrics/LineLength, Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
80
80
 
81
- # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
81
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Metrics/LineLength, Layout/EmptyLines
82
82
 
83
83
 
84
84
  # Checks equality by comparing each attribute.
85
85
  # @param [Object] other the other object to be compared
86
86
  def ==(other)
87
87
  return true if equal?(other)
88
+
88
89
  self.class == other.class &&
89
90
  description == other.description &&
90
91
  freeform_tags == other.freeform_tags &&
91
92
  defined_tags == other.defined_tags
92
93
  end
93
- # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
94
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Metrics/LineLength, Layout/EmptyLines
94
95
 
95
96
  # @see the `==` method
96
97
  # @param [Object] other the other object to be compared
@@ -116,6 +117,7 @@ module OCI
116
117
  # @return [Object] Returns the model itself
117
118
  def build_from_hash(attributes)
118
119
  return nil unless attributes.is_a?(Hash)
120
+
119
121
  self.class.swagger_types.each_pair do |key, type|
120
122
  if type =~ /^Array<(.*)>/i
121
123
  # check to ensure the input is an array given that the the attribute
@@ -151,6 +153,7 @@ module OCI
151
153
  self.class.attribute_map.each_pair do |attr, param|
152
154
  value = public_method(attr).call
153
155
  next if value.nil? && !instance_variable_defined?("@#{attr}")
156
+
154
157
  hash[param] = _to_hash(value)
155
158
  end
156
159
  hash
@@ -203,13 +203,14 @@ module OCI
203
203
  # rubocop:enable Style/ConditionalAssignment
204
204
  end
205
205
 
206
- # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
206
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Metrics/LineLength, Layout/EmptyLines
207
207
 
208
208
 
209
209
  # Checks equality by comparing each attribute.
210
210
  # @param [Object] other the other object to be compared
211
211
  def ==(other)
212
212
  return true if equal?(other)
213
+
213
214
  self.class == other.class &&
214
215
  id == other.id &&
215
216
  compartment_id == other.compartment_id &&
@@ -221,7 +222,7 @@ module OCI
221
222
  freeform_tags == other.freeform_tags &&
222
223
  defined_tags == other.defined_tags
223
224
  end
224
- # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
225
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Metrics/LineLength, Layout/EmptyLines
225
226
 
226
227
  # @see the `==` method
227
228
  # @param [Object] other the other object to be compared
@@ -247,6 +248,7 @@ module OCI
247
248
  # @return [Object] Returns the model itself
248
249
  def build_from_hash(attributes)
249
250
  return nil unless attributes.is_a?(Hash)
251
+
250
252
  self.class.swagger_types.each_pair do |key, type|
251
253
  if type =~ /^Array<(.*)>/i
252
254
  # check to ensure the input is an array given that the the attribute
@@ -282,6 +284,7 @@ module OCI
282
284
  self.class.attribute_map.each_pair do |attr, param|
283
285
  value = public_method(attr).call
284
286
  next if value.nil? && !instance_variable_defined?("@#{attr}")
287
+
285
288
  hash[param] = _to_hash(value)
286
289
  end
287
290
  hash
@@ -156,13 +156,14 @@ module OCI
156
156
  # rubocop:enable Style/ConditionalAssignment
157
157
  end
158
158
 
159
- # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
159
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Metrics/LineLength, Layout/EmptyLines
160
160
 
161
161
 
162
162
  # Checks equality by comparing each attribute.
163
163
  # @param [Object] other the other object to be compared
164
164
  def ==(other)
165
165
  return true if equal?(other)
166
+
166
167
  self.class == other.class &&
167
168
  id == other.id &&
168
169
  compartment_id == other.compartment_id &&
@@ -172,7 +173,7 @@ module OCI
172
173
  lifecycle_state == other.lifecycle_state &&
173
174
  inactive_status == other.inactive_status
174
175
  end
175
- # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
176
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Metrics/LineLength, Layout/EmptyLines
176
177
 
177
178
  # @see the `==` method
178
179
  # @param [Object] other the other object to be compared
@@ -198,6 +199,7 @@ module OCI
198
199
  # @return [Object] Returns the model itself
199
200
  def build_from_hash(attributes)
200
201
  return nil unless attributes.is_a?(Hash)
202
+
201
203
  self.class.swagger_types.each_pair do |key, type|
202
204
  if type =~ /^Array<(.*)>/i
203
205
  # check to ensure the input is an array given that the the attribute
@@ -233,6 +235,7 @@ module OCI
233
235
  self.class.attribute_map.each_pair do |attr, param|
234
236
  value = public_method(attr).call
235
237
  next if value.nil? && !instance_variable_defined?("@#{attr}")
238
+
236
239
  hash[param] = _to_hash(value)
237
240
  end
238
241
  hash
@@ -0,0 +1,331 @@
1
+ # Copyright (c) 2016, 2018, Oracle and/or its affiliates. All rights reserved.
2
+
3
+ require 'date'
4
+ require 'logger'
5
+
6
+ # rubocop:disable Lint/UnneededCopDisableDirective
7
+ module OCI
8
+ # The asynchronous API request does not take effect immediately. This request spawns an asynchronous
9
+ # workflow to fulfill the request. WorkRequest objects provide visibility for in-progress workflows.
10
+ #
11
+ class Identity::Models::WorkRequest # rubocop:disable Metrics/LineLength
12
+ OPERATION_TYPE_ENUM = [
13
+ OPERATION_TYPE_DELETE_COMPARTMENT = 'DELETE_COMPARTMENT'.freeze,
14
+ OPERATION_TYPE_UNKNOWN_ENUM_VALUE = 'UNKNOWN_ENUM_VALUE'.freeze
15
+ ].freeze
16
+
17
+ STATUS_ENUM = [
18
+ STATUS_ACCEPTED = 'ACCEPTED'.freeze,
19
+ STATUS_IN_PROGRESS = 'IN_PROGRESS'.freeze,
20
+ STATUS_FAILED = 'FAILED'.freeze,
21
+ STATUS_SUCCEEDED = 'SUCCEEDED'.freeze,
22
+ STATUS_CANCELING = 'CANCELING'.freeze,
23
+ STATUS_CANCELED = 'CANCELED'.freeze,
24
+ STATUS_UNKNOWN_ENUM_VALUE = 'UNKNOWN_ENUM_VALUE'.freeze
25
+ ].freeze
26
+
27
+ # **[Required]** The OCID of the work request.
28
+ # @return [String]
29
+ attr_accessor :id
30
+
31
+ # **[Required]** An enum-like description of the type of work the work request is doing.
32
+ # @return [String]
33
+ attr_reader :operation_type
34
+
35
+ # The OCID of the compartment that contains the work request.
36
+ # @return [String]
37
+ attr_accessor :compartment_id
38
+
39
+ # **[Required]** The current status of the work request.
40
+ # @return [String]
41
+ attr_reader :status
42
+
43
+ # The resources this work request affects.
44
+ #
45
+ # @return [Array<OCI::Identity::Models::WorkRequestResource>]
46
+ attr_accessor :resources
47
+
48
+ # The errors for work request.
49
+ #
50
+ # @return [Array<OCI::Identity::Models::WorkRequestError>]
51
+ attr_accessor :errors
52
+
53
+ # The logs for work request.
54
+ #
55
+ # @return [Array<OCI::Identity::Models::WorkRequestLogEntry>]
56
+ attr_accessor :logs
57
+
58
+ # Date and time the work was accepted, in the format defined by RFC3339.
59
+ # Example: `2016-08-25T21:10:29.600Z`
60
+ #
61
+ # @return [DateTime]
62
+ attr_accessor :time_accepted
63
+
64
+ # Date and time the work started, in the format defined by RFC3339.
65
+ # Example: `2016-08-25T21:10:29.600Z`
66
+ #
67
+ # @return [DateTime]
68
+ attr_accessor :time_started
69
+
70
+ # Date and time the work completed, in the format defined by RFC3339.
71
+ # Example: `2016-08-25T21:10:29.600Z`
72
+ #
73
+ # @return [DateTime]
74
+ attr_accessor :time_finished
75
+
76
+ # How much progress the operation has made.
77
+ #
78
+ # @return [Float]
79
+ attr_accessor :percent_complete
80
+
81
+ # Attribute mapping from ruby-style variable name to JSON key.
82
+ def self.attribute_map
83
+ {
84
+ # rubocop:disable Style/SymbolLiteral
85
+ 'id': :'id',
86
+ 'operation_type': :'operationType',
87
+ 'compartment_id': :'compartmentId',
88
+ 'status': :'status',
89
+ 'resources': :'resources',
90
+ 'errors': :'errors',
91
+ 'logs': :'logs',
92
+ 'time_accepted': :'timeAccepted',
93
+ 'time_started': :'timeStarted',
94
+ 'time_finished': :'timeFinished',
95
+ 'percent_complete': :'percentComplete'
96
+ # rubocop:enable Style/SymbolLiteral
97
+ }
98
+ end
99
+
100
+ # Attribute type mapping.
101
+ def self.swagger_types
102
+ {
103
+ # rubocop:disable Style/SymbolLiteral
104
+ 'id': :'String',
105
+ 'operation_type': :'String',
106
+ 'compartment_id': :'String',
107
+ 'status': :'String',
108
+ 'resources': :'Array<OCI::Identity::Models::WorkRequestResource>',
109
+ 'errors': :'Array<OCI::Identity::Models::WorkRequestError>',
110
+ 'logs': :'Array<OCI::Identity::Models::WorkRequestLogEntry>',
111
+ 'time_accepted': :'DateTime',
112
+ 'time_started': :'DateTime',
113
+ 'time_finished': :'DateTime',
114
+ 'percent_complete': :'Float'
115
+ # rubocop:enable Style/SymbolLiteral
116
+ }
117
+ end
118
+
119
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
120
+ # rubocop:disable Metrics/LineLength, Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
121
+
122
+
123
+ # Initializes the object
124
+ # @param [Hash] attributes Model attributes in the form of hash
125
+ # @option attributes [String] :id The value to assign to the {#id} property
126
+ # @option attributes [String] :operation_type The value to assign to the {#operation_type} property
127
+ # @option attributes [String] :compartment_id The value to assign to the {#compartment_id} property
128
+ # @option attributes [String] :status The value to assign to the {#status} property
129
+ # @option attributes [Array<OCI::Identity::Models::WorkRequestResource>] :resources The value to assign to the {#resources} property
130
+ # @option attributes [Array<OCI::Identity::Models::WorkRequestError>] :errors The value to assign to the {#errors} property
131
+ # @option attributes [Array<OCI::Identity::Models::WorkRequestLogEntry>] :logs The value to assign to the {#logs} property
132
+ # @option attributes [DateTime] :time_accepted The value to assign to the {#time_accepted} property
133
+ # @option attributes [DateTime] :time_started The value to assign to the {#time_started} property
134
+ # @option attributes [DateTime] :time_finished The value to assign to the {#time_finished} property
135
+ # @option attributes [Float] :percent_complete The value to assign to the {#percent_complete} property
136
+ def initialize(attributes = {})
137
+ return unless attributes.is_a?(Hash)
138
+
139
+ # convert string to symbol for hash key
140
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
141
+
142
+ self.id = attributes[:'id'] if attributes[:'id']
143
+
144
+ self.operation_type = attributes[:'operationType'] if attributes[:'operationType']
145
+
146
+ raise 'You cannot provide both :operationType and :operation_type' if attributes.key?(:'operationType') && attributes.key?(:'operation_type')
147
+
148
+ self.operation_type = attributes[:'operation_type'] if attributes[:'operation_type']
149
+
150
+ self.compartment_id = attributes[:'compartmentId'] if attributes[:'compartmentId']
151
+
152
+ raise 'You cannot provide both :compartmentId and :compartment_id' if attributes.key?(:'compartmentId') && attributes.key?(:'compartment_id')
153
+
154
+ self.compartment_id = attributes[:'compartment_id'] if attributes[:'compartment_id']
155
+
156
+ self.status = attributes[:'status'] if attributes[:'status']
157
+
158
+ self.resources = attributes[:'resources'] if attributes[:'resources']
159
+
160
+ self.errors = attributes[:'errors'] if attributes[:'errors']
161
+
162
+ self.logs = attributes[:'logs'] if attributes[:'logs']
163
+
164
+ self.time_accepted = attributes[:'timeAccepted'] if attributes[:'timeAccepted']
165
+
166
+ raise 'You cannot provide both :timeAccepted and :time_accepted' if attributes.key?(:'timeAccepted') && attributes.key?(:'time_accepted')
167
+
168
+ self.time_accepted = attributes[:'time_accepted'] if attributes[:'time_accepted']
169
+
170
+ self.time_started = attributes[:'timeStarted'] if attributes[:'timeStarted']
171
+
172
+ raise 'You cannot provide both :timeStarted and :time_started' if attributes.key?(:'timeStarted') && attributes.key?(:'time_started')
173
+
174
+ self.time_started = attributes[:'time_started'] if attributes[:'time_started']
175
+
176
+ self.time_finished = attributes[:'timeFinished'] if attributes[:'timeFinished']
177
+
178
+ raise 'You cannot provide both :timeFinished and :time_finished' if attributes.key?(:'timeFinished') && attributes.key?(:'time_finished')
179
+
180
+ self.time_finished = attributes[:'time_finished'] if attributes[:'time_finished']
181
+
182
+ self.percent_complete = attributes[:'percentComplete'] if attributes[:'percentComplete']
183
+
184
+ raise 'You cannot provide both :percentComplete and :percent_complete' if attributes.key?(:'percentComplete') && attributes.key?(:'percent_complete')
185
+
186
+ self.percent_complete = attributes[:'percent_complete'] if attributes[:'percent_complete']
187
+ end
188
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
189
+ # rubocop:enable Metrics/LineLength, Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
190
+
191
+ # Custom attribute writer method checking allowed values (enum).
192
+ # @param [Object] operation_type Object to be assigned
193
+ def operation_type=(operation_type)
194
+ # rubocop:disable Style/ConditionalAssignment
195
+ if operation_type && !OPERATION_TYPE_ENUM.include?(operation_type)
196
+ # rubocop: disable Metrics/LineLength
197
+ OCI.logger.debug("Unknown value for 'operation_type' [" + operation_type + "]. Mapping to 'OPERATION_TYPE_UNKNOWN_ENUM_VALUE'") if OCI.logger
198
+ # rubocop: enable Metrics/LineLength
199
+ @operation_type = OPERATION_TYPE_UNKNOWN_ENUM_VALUE
200
+ else
201
+ @operation_type = operation_type
202
+ end
203
+ # rubocop:enable Style/ConditionalAssignment
204
+ end
205
+
206
+ # Custom attribute writer method checking allowed values (enum).
207
+ # @param [Object] status Object to be assigned
208
+ def status=(status)
209
+ # rubocop:disable Style/ConditionalAssignment
210
+ if status && !STATUS_ENUM.include?(status)
211
+ # rubocop: disable Metrics/LineLength
212
+ OCI.logger.debug("Unknown value for 'status' [" + status + "]. Mapping to 'STATUS_UNKNOWN_ENUM_VALUE'") if OCI.logger
213
+ # rubocop: enable Metrics/LineLength
214
+ @status = STATUS_UNKNOWN_ENUM_VALUE
215
+ else
216
+ @status = status
217
+ end
218
+ # rubocop:enable Style/ConditionalAssignment
219
+ end
220
+
221
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Metrics/LineLength, Layout/EmptyLines
222
+
223
+
224
+ # Checks equality by comparing each attribute.
225
+ # @param [Object] other the other object to be compared
226
+ def ==(other)
227
+ return true if equal?(other)
228
+
229
+ self.class == other.class &&
230
+ id == other.id &&
231
+ operation_type == other.operation_type &&
232
+ compartment_id == other.compartment_id &&
233
+ status == other.status &&
234
+ resources == other.resources &&
235
+ errors == other.errors &&
236
+ logs == other.logs &&
237
+ time_accepted == other.time_accepted &&
238
+ time_started == other.time_started &&
239
+ time_finished == other.time_finished &&
240
+ percent_complete == other.percent_complete
241
+ end
242
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Metrics/LineLength, Layout/EmptyLines
243
+
244
+ # @see the `==` method
245
+ # @param [Object] other the other object to be compared
246
+ def eql?(other)
247
+ self == other
248
+ end
249
+
250
+ # rubocop:disable Metrics/AbcSize, Metrics/LineLength, Layout/EmptyLines
251
+
252
+
253
+ # Calculates hash code according to all attributes.
254
+ # @return [Fixnum] Hash code
255
+ def hash
256
+ [id, operation_type, compartment_id, status, resources, errors, logs, time_accepted, time_started, time_finished, percent_complete].hash
257
+ end
258
+ # rubocop:enable Metrics/AbcSize, Metrics/LineLength, Layout/EmptyLines
259
+
260
+ # rubocop:disable Metrics/AbcSize, Layout/EmptyLines
261
+
262
+
263
+ # Builds the object from hash
264
+ # @param [Hash] attributes Model attributes in the form of hash
265
+ # @return [Object] Returns the model itself
266
+ def build_from_hash(attributes)
267
+ return nil unless attributes.is_a?(Hash)
268
+
269
+ self.class.swagger_types.each_pair do |key, type|
270
+ if type =~ /^Array<(.*)>/i
271
+ # check to ensure the input is an array given that the the attribute
272
+ # is documented as an array but the input is not
273
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
274
+ public_method("#{key}=").call(
275
+ attributes[self.class.attribute_map[key]]
276
+ .map { |v| OCI::Internal::Util.convert_to_type(Regexp.last_match(1), v) }
277
+ )
278
+ end
279
+ elsif !attributes[self.class.attribute_map[key]].nil?
280
+ public_method("#{key}=").call(
281
+ OCI::Internal::Util.convert_to_type(type, attributes[self.class.attribute_map[key]])
282
+ )
283
+ end
284
+ # or else data not found in attributes(hash), not an issue as the data can be optional
285
+ end
286
+
287
+ self
288
+ end
289
+ # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
290
+
291
+ # Returns the string representation of the object
292
+ # @return [String] String presentation of the object
293
+ def to_s
294
+ to_hash.to_s
295
+ end
296
+
297
+ # Returns the object in the form of hash
298
+ # @return [Hash] Returns the object in the form of hash
299
+ def to_hash
300
+ hash = {}
301
+ self.class.attribute_map.each_pair do |attr, param|
302
+ value = public_method(attr).call
303
+ next if value.nil? && !instance_variable_defined?("@#{attr}")
304
+
305
+ hash[param] = _to_hash(value)
306
+ end
307
+ hash
308
+ end
309
+
310
+ private
311
+
312
+ # Outputs non-array value in the form of hash
313
+ # For object, use to_hash. Otherwise, just return the value
314
+ # @param [Object] value Any valid value
315
+ # @return [Hash] Returns the value in the form of hash
316
+ def _to_hash(value)
317
+ if value.is_a?(Array)
318
+ value.compact.map { |v| _to_hash(v) }
319
+ elsif value.is_a?(Hash)
320
+ {}.tap do |hash|
321
+ value.each { |k, v| hash[k] = _to_hash(v) }
322
+ end
323
+ elsif value.respond_to? :to_hash
324
+ value.to_hash
325
+ else
326
+ value
327
+ end
328
+ end
329
+ end
330
+ end
331
+ # rubocop:enable Lint/UnneededCopDisableDirective