oci 2.1.0 → 2.1.1

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 (370) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +11 -3
  3. data/lib/oci.rb +6 -0
  4. data/lib/oci/api_client.rb +159 -134
  5. data/lib/oci/audit/audit.rb +3 -0
  6. data/lib/oci/audit/audit_client.rb +88 -40
  7. data/lib/oci/audit/audit_client_composite_operations.rb +64 -0
  8. data/lib/oci/audit/models/audit_event.rb +151 -200
  9. data/lib/oci/audit/models/configuration.rb +61 -38
  10. data/lib/oci/audit/models/update_configuration_details.rb +61 -38
  11. data/lib/oci/auth/util.rb +1 -1
  12. data/lib/oci/base_signer.rb +20 -29
  13. data/lib/oci/config.rb +9 -3
  14. data/lib/oci/core/blockstorage_client.rb +512 -269
  15. data/lib/oci/core/blockstorage_client_composite_operations.rb +342 -0
  16. data/lib/oci/core/compute_client.rb +959 -536
  17. data/lib/oci/core/compute_client_composite_operations.rb +738 -0
  18. data/lib/oci/core/core.rb +5 -0
  19. data/lib/oci/core/models/attach_boot_volume_details.rb +72 -57
  20. data/lib/oci/core/models/attach_i_scsi_volume_details.rb +76 -53
  21. data/lib/oci/core/models/attach_paravirtualized_volume_details.rb +69 -45
  22. data/lib/oci/core/models/attach_vnic_details.rb +79 -68
  23. data/lib/oci/core/models/attach_volume_details.rb +83 -74
  24. data/lib/oci/core/models/boot_volume.rb +119 -120
  25. data/lib/oci/core/models/boot_volume_attachment.rb +114 -111
  26. data/lib/oci/core/models/bulk_add_virtual_circuit_public_prefixes_details.rb +61 -38
  27. data/lib/oci/core/models/bulk_delete_virtual_circuit_public_prefixes_details.rb +61 -38
  28. data/lib/oci/core/models/capture_console_history_details.rb +81 -70
  29. data/lib/oci/core/models/connect_local_peering_gateways_details.rb +60 -38
  30. data/lib/oci/core/models/connect_remote_peering_connections_details.rb +67 -49
  31. data/lib/oci/core/models/console_history.rb +122 -123
  32. data/lib/oci/core/models/cpe.rb +82 -74
  33. data/lib/oci/core/models/create_cpe_details.rb +73 -58
  34. data/lib/oci/core/models/create_cross_connect_details.rb +98 -99
  35. data/lib/oci/core/models/create_cross_connect_group_details.rb +67 -48
  36. data/lib/oci/core/models/create_dhcp_details.rb +89 -84
  37. data/lib/oci/core/models/create_drg_attachment_details.rb +71 -56
  38. data/lib/oci/core/models/create_drg_details.rb +66 -47
  39. data/lib/oci/core/models/create_image_details.rb +108 -110
  40. data/lib/oci/core/models/create_instance_console_connection_details.rb +79 -69
  41. data/lib/oci/core/models/create_internet_gateway_details.rb +76 -65
  42. data/lib/oci/core/models/create_ip_sec_connection_details.rb +83 -76
  43. data/lib/oci/core/models/create_local_peering_gateway_details.rb +72 -57
  44. data/lib/oci/core/models/create_private_ip_details.rb +97 -94
  45. data/lib/oci/core/models/create_public_ip_details.rb +90 -77
  46. data/lib/oci/core/models/create_remote_peering_connection_details.rb +72 -57
  47. data/lib/oci/core/models/create_route_table_details.rb +90 -87
  48. data/lib/oci/core/models/create_security_list_details.rb +95 -96
  49. data/lib/oci/core/models/create_subnet_details.rb +133 -154
  50. data/lib/oci/core/models/create_vcn_details.rb +96 -93
  51. data/lib/oci/core/models/create_virtual_circuit_details.rb +136 -153
  52. data/lib/oci/core/models/create_virtual_circuit_public_prefix_details.rb +62 -39
  53. data/lib/oci/core/models/create_vnic_details.rb +99 -97
  54. data/lib/oci/core/models/create_volume_backup_details.rb +94 -85
  55. data/lib/oci/core/models/create_volume_backup_policy_assignment_details.rb +66 -47
  56. data/lib/oci/core/models/create_volume_details.rb +117 -130
  57. data/lib/oci/core/models/cross_connect.rb +120 -121
  58. data/lib/oci/core/models/cross_connect_group.rb +97 -82
  59. data/lib/oci/core/models/cross_connect_location.rb +65 -43
  60. data/lib/oci/core/models/cross_connect_mapping.rb +89 -81
  61. data/lib/oci/core/models/cross_connect_port_speed_shape.rb +68 -48
  62. data/lib/oci/core/models/cross_connect_status.rb +110 -87
  63. data/lib/oci/core/models/delete_virtual_circuit_public_prefix_details.rb +61 -38
  64. data/lib/oci/core/models/dhcp_dns_option.rb +85 -60
  65. data/lib/oci/core/models/dhcp_option.rb +62 -38
  66. data/lib/oci/core/models/dhcp_options.rb +119 -118
  67. data/lib/oci/core/models/dhcp_search_domain_option.rb +66 -44
  68. data/lib/oci/core/models/drg.rb +96 -81
  69. data/lib/oci/core/models/drg_attachment.rb +106 -99
  70. data/lib/oci/core/models/egress_security_rule.rb +89 -83
  71. data/lib/oci/core/models/export_image_details.rb +63 -41
  72. data/lib/oci/core/models/export_image_via_object_storage_tuple_details.rb +74 -59
  73. data/lib/oci/core/models/export_image_via_object_storage_uri_details.rb +65 -42
  74. data/lib/oci/core/models/fast_connect_provider_service.rb +155 -126
  75. data/lib/oci/core/models/get_public_ip_by_ip_address_details.rb +61 -39
  76. data/lib/oci/core/models/get_public_ip_by_private_ip_id_details.rb +61 -39
  77. data/lib/oci/core/models/i_scsi_volume_attachment.rb +117 -105
  78. data/lib/oci/core/models/icmp_options.rb +63 -41
  79. data/lib/oci/core/models/image.rb +170 -185
  80. data/lib/oci/core/models/image_source_details.rb +79 -60
  81. data/lib/oci/core/models/image_source_via_object_storage_tuple_details.rb +77 -62
  82. data/lib/oci/core/models/image_source_via_object_storage_uri_details.rb +67 -44
  83. data/lib/oci/core/models/ingress_security_rule.rb +89 -83
  84. data/lib/oci/core/models/instance.rb +190 -211
  85. data/lib/oci/core/models/instance_console_connection.rb +118 -117
  86. data/lib/oci/core/models/instance_credentials.rb +63 -41
  87. data/lib/oci/core/models/instance_source_details.rb +64 -41
  88. data/lib/oci/core/models/instance_source_via_boot_volume_details.rb +64 -41
  89. data/lib/oci/core/models/instance_source_via_image_details.rb +70 -51
  90. data/lib/oci/core/models/internet_gateway.rb +107 -100
  91. data/lib/oci/core/models/ip_sec_connection.rb +113 -110
  92. data/lib/oci/core/models/ip_sec_connection_device_config.rb +73 -59
  93. data/lib/oci/core/models/ip_sec_connection_device_status.rb +75 -61
  94. data/lib/oci/core/models/launch_instance_details.rb +163 -189
  95. data/lib/oci/core/models/launch_options.rb +130 -93
  96. data/lib/oci/core/models/letter_of_authority.rb +105 -100
  97. data/lib/oci/core/models/local_peering_gateway.rb +141 -140
  98. data/lib/oci/core/models/paravirtualized_volume_attachment.rb +83 -60
  99. data/lib/oci/core/models/peer_region_for_remote_peering.rb +61 -37
  100. data/lib/oci/core/models/port_range.rb +65 -42
  101. data/lib/oci/core/models/private_ip.rb +131 -151
  102. data/lib/oci/core/models/public_ip.rb +160 -149
  103. data/lib/oci/core/models/remote_peering_connection.rb +148 -151
  104. data/lib/oci/core/models/route_rule.rb +68 -50
  105. data/lib/oci/core/models/route_table.rb +120 -121
  106. data/lib/oci/core/models/security_list.rb +125 -130
  107. data/lib/oci/core/models/shape.rb +60 -36
  108. data/lib/oci/core/models/subnet.rb +183 -220
  109. data/lib/oci/core/models/tcp_options.rb +67 -49
  110. data/lib/oci/core/models/tunnel_config.rb +76 -62
  111. data/lib/oci/core/models/tunnel_status.rb +94 -77
  112. data/lib/oci/core/models/udp_options.rb +67 -49
  113. data/lib/oci/core/models/update_boot_volume_details.rb +62 -39
  114. data/lib/oci/core/models/update_console_history_details.rb +76 -61
  115. data/lib/oci/core/models/update_cpe_details.rb +62 -39
  116. data/lib/oci/core/models/update_cross_connect_details.rb +68 -50
  117. data/lib/oci/core/models/update_cross_connect_group_details.rb +62 -39
  118. data/lib/oci/core/models/update_dhcp_details.rb +80 -67
  119. data/lib/oci/core/models/update_drg_attachment_details.rb +62 -39
  120. data/lib/oci/core/models/update_drg_details.rb +62 -39
  121. data/lib/oci/core/models/update_image_details.rb +77 -62
  122. data/lib/oci/core/models/update_instance_details.rb +77 -62
  123. data/lib/oci/core/models/update_internet_gateway_details.rb +67 -48
  124. data/lib/oci/core/models/update_ip_sec_connection_details.rb +62 -39
  125. data/lib/oci/core/models/update_local_peering_gateway_details.rb +62 -39
  126. data/lib/oci/core/models/update_private_ip_details.rb +90 -83
  127. data/lib/oci/core/models/update_public_ip_details.rb +68 -49
  128. data/lib/oci/core/models/update_remote_peering_connection_details.rb +62 -39
  129. data/lib/oci/core/models/update_route_table_details.rb +81 -70
  130. data/lib/oci/core/models/update_security_list_details.rb +86 -79
  131. data/lib/oci/core/models/update_subnet_details.rb +76 -61
  132. data/lib/oci/core/models/update_vcn_details.rb +76 -61
  133. data/lib/oci/core/models/update_virtual_circuit_details.rb +114 -115
  134. data/lib/oci/core/models/update_vnic_details.rb +75 -60
  135. data/lib/oci/core/models/update_volume_backup_details.rb +76 -61
  136. data/lib/oci/core/models/update_volume_details.rb +76 -61
  137. data/lib/oci/core/models/vcn.rb +150 -167
  138. data/lib/oci/core/models/virtual_circuit.rb +254 -269
  139. data/lib/oci/core/models/virtual_circuit_bandwidth_shape.rb +68 -48
  140. data/lib/oci/core/models/virtual_circuit_public_prefix.rb +79 -54
  141. data/lib/oci/core/models/vnic.rb +149 -166
  142. data/lib/oci/core/models/vnic_attachment.rb +132 -141
  143. data/lib/oci/core/models/volume.rb +138 -151
  144. data/lib/oci/core/models/volume_attachment.rb +126 -131
  145. data/lib/oci/core/models/volume_backup.rb +185 -200
  146. data/lib/oci/core/models/volume_backup_policy.rb +75 -61
  147. data/lib/oci/core/models/volume_backup_policy_assignment.rb +75 -63
  148. data/lib/oci/core/models/volume_backup_schedule.rb +101 -76
  149. data/lib/oci/core/models/volume_source_details.rb +62 -37
  150. data/lib/oci/core/models/volume_source_from_volume_backup_details.rb +62 -38
  151. data/lib/oci/core/models/volume_source_from_volume_details.rb +62 -38
  152. data/lib/oci/core/virtual_network_client.rb +2683 -1457
  153. data/lib/oci/core/virtual_network_client_composite_operations.rb +1849 -0
  154. data/lib/oci/database/database.rb +3 -0
  155. data/lib/oci/database/database_client.rb +894 -454
  156. data/lib/oci/database/database_client_composite_operations.rb +462 -0
  157. data/lib/oci/database/models/backup.rb +131 -128
  158. data/lib/oci/database/models/backup_summary.rb +131 -128
  159. data/lib/oci/database/models/create_backup_details.rb +66 -47
  160. data/lib/oci/database/models/create_data_guard_association_details.rb +112 -102
  161. data/lib/oci/database/models/create_data_guard_association_to_existing_db_system_details.rb +73 -51
  162. data/lib/oci/database/models/create_database_details.rb +140 -105
  163. data/lib/oci/database/models/create_database_from_backup_details.rb +71 -56
  164. data/lib/oci/database/models/create_db_home_details.rb +70 -53
  165. data/lib/oci/database/models/create_db_home_with_db_system_id_base.rb +83 -67
  166. data/lib/oci/database/models/create_db_home_with_db_system_id_details.rb +74 -53
  167. data/lib/oci/database/models/create_db_home_with_db_system_id_from_backup_details.rb +69 -44
  168. data/lib/oci/database/models/data_guard_association.rb +205 -204
  169. data/lib/oci/database/models/data_guard_association_summary.rb +205 -204
  170. data/lib/oci/database/models/database.rb +175 -156
  171. data/lib/oci/database/models/database_summary.rb +175 -156
  172. data/lib/oci/database/models/db_backup_config.rb +60 -38
  173. data/lib/oci/database/models/db_home.rb +110 -107
  174. data/lib/oci/database/models/db_home_summary.rb +110 -107
  175. data/lib/oci/database/models/db_node.rb +113 -108
  176. data/lib/oci/database/models/db_node_summary.rb +113 -108
  177. data/lib/oci/database/models/db_system.rb +299 -314
  178. data/lib/oci/database/models/db_system_shape_summary.rb +88 -86
  179. data/lib/oci/database/models/db_system_summary.rb +299 -314
  180. data/lib/oci/database/models/db_version_summary.rb +64 -44
  181. data/lib/oci/database/models/failover_data_guard_association_details.rb +60 -38
  182. data/lib/oci/database/models/launch_db_system_details.rb +231 -234
  183. data/lib/oci/database/models/patch.rb +136 -113
  184. data/lib/oci/database/models/patch_details.rb +73 -53
  185. data/lib/oci/database/models/patch_history_entry.rb +114 -99
  186. data/lib/oci/database/models/patch_history_entry_summary.rb +114 -99
  187. data/lib/oci/database/models/patch_summary.rb +136 -113
  188. data/lib/oci/database/models/reinstate_data_guard_association_details.rb +60 -38
  189. data/lib/oci/database/models/restore_database_details.rb +72 -53
  190. data/lib/oci/database/models/switchover_data_guard_association_details.rb +60 -38
  191. data/lib/oci/database/models/update_database_details.rb +97 -38
  192. data/lib/oci/database/models/update_db_home_details.rb +60 -38
  193. data/lib/oci/database/models/update_db_system_details.rb +112 -64
  194. data/lib/oci/dns/dns.rb +3 -0
  195. data/lib/oci/dns/dns_client.rb +489 -302
  196. data/lib/oci/dns/dns_client_composite_operations.rb +143 -0
  197. data/lib/oci/dns/models/create_zone_details.rb +84 -72
  198. data/lib/oci/dns/models/external_master.rb +67 -47
  199. data/lib/oci/dns/models/patch_domain_records_details.rb +60 -35
  200. data/lib/oci/dns/models/patch_rr_set_details.rb +60 -35
  201. data/lib/oci/dns/models/patch_zone_records_details.rb +60 -35
  202. data/lib/oci/dns/models/record.rb +92 -86
  203. data/lib/oci/dns/models/record_collection.rb +59 -35
  204. data/lib/oci/dns/models/record_details.rb +92 -86
  205. data/lib/oci/dns/models/record_operation.rb +113 -110
  206. data/lib/oci/dns/models/rr_set.rb +59 -35
  207. data/lib/oci/dns/models/sort_order.rb +0 -2
  208. data/lib/oci/dns/models/tsig.rb +68 -48
  209. data/lib/oci/dns/models/update_domain_records_details.rb +60 -35
  210. data/lib/oci/dns/models/update_rr_set_details.rb +60 -35
  211. data/lib/oci/dns/models/update_zone_details.rb +60 -38
  212. data/lib/oci/dns/models/update_zone_records_details.rb +60 -35
  213. data/lib/oci/dns/models/zone.rb +133 -126
  214. data/lib/oci/dns/models/zone_summary.rb +108 -99
  215. data/lib/oci/email/email.rb +3 -0
  216. data/lib/oci/email/email_client.rb +223 -112
  217. data/lib/oci/email/email_client_composite_operations.rb +103 -0
  218. data/lib/oci/email/models/create_sender_details.rb +65 -47
  219. data/lib/oci/email/models/create_suppression_details.rb +66 -48
  220. data/lib/oci/email/models/sender.rb +97 -84
  221. data/lib/oci/email/models/sender_summary.rb +89 -70
  222. data/lib/oci/email/models/suppression.rb +90 -69
  223. data/lib/oci/email/models/suppression_summary.rb +90 -69
  224. data/lib/oci/errors.rb +16 -0
  225. data/lib/oci/file_storage/file_storage.rb +3 -0
  226. data/lib/oci/file_storage/file_storage_client.rb +587 -333
  227. data/lib/oci/file_storage/file_storage_client_composite_operations.rb +460 -0
  228. data/lib/oci/file_storage/models/create_export_details.rb +73 -56
  229. data/lib/oci/file_storage/models/create_file_system_details.rb +75 -60
  230. data/lib/oci/file_storage/models/create_mount_target_details.rb +96 -93
  231. data/lib/oci/file_storage/models/create_snapshot_details.rb +68 -47
  232. data/lib/oci/file_storage/models/export.rb +102 -89
  233. data/lib/oci/file_storage/models/export_set.rb +121 -122
  234. data/lib/oci/file_storage/models/export_set_summary.rb +109 -102
  235. data/lib/oci/file_storage/models/export_summary.rb +102 -89
  236. data/lib/oci/file_storage/models/file_system.rb +110 -103
  237. data/lib/oci/file_storage/models/file_system_summary.rb +110 -103
  238. data/lib/oci/file_storage/models/mount_target.rb +126 -131
  239. data/lib/oci/file_storage/models/mount_target_summary.rb +121 -122
  240. data/lib/oci/file_storage/models/snapshot.rb +98 -81
  241. data/lib/oci/file_storage/models/snapshot_summary.rb +98 -81
  242. data/lib/oci/file_storage/models/update_export_set_details.rb +75 -60
  243. data/lib/oci/file_storage/models/update_file_system_details.rb +63 -40
  244. data/lib/oci/file_storage/models/update_mount_target_details.rb +63 -40
  245. data/lib/oci/identity/identity.rb +3 -0
  246. data/lib/oci/identity/identity_client.rb +1671 -872
  247. data/lib/oci/identity/identity_client_composite_operations.rb +818 -0
  248. data/lib/oci/identity/models/add_user_to_group_details.rb +66 -47
  249. data/lib/oci/identity/models/api_key.rb +108 -101
  250. data/lib/oci/identity/models/availability_domain.rb +64 -44
  251. data/lib/oci/identity/models/compartment.rb +118 -115
  252. data/lib/oci/identity/models/create_api_key_details.rb +60 -35
  253. data/lib/oci/identity/models/create_compartment_details.rb +83 -72
  254. data/lib/oci/identity/models/create_customer_secret_key_details.rb +62 -39
  255. data/lib/oci/identity/models/create_dynamic_group_details.rb +75 -61
  256. data/lib/oci/identity/models/create_group_details.rb +82 -71
  257. data/lib/oci/identity/models/create_identity_provider_details.rb +115 -110
  258. data/lib/oci/identity/models/create_idp_group_mapping_details.rb +67 -48
  259. data/lib/oci/identity/models/create_policy_details.rb +94 -89
  260. data/lib/oci/identity/models/create_region_subscription_details.rb +64 -41
  261. data/lib/oci/identity/models/create_saml2_identity_provider_details.rb +88 -67
  262. data/lib/oci/identity/models/create_smtp_credential_details.rb +61 -36
  263. data/lib/oci/identity/models/create_swift_password_details.rb +61 -36
  264. data/lib/oci/identity/models/create_tag_details.rb +77 -62
  265. data/lib/oci/identity/models/create_tag_namespace_details.rb +82 -71
  266. data/lib/oci/identity/models/create_user_details.rb +82 -71
  267. data/lib/oci/identity/models/customer_secret_key.rb +114 -109
  268. data/lib/oci/identity/models/customer_secret_key_summary.rb +109 -102
  269. data/lib/oci/identity/models/dynamic_group.rb +112 -105
  270. data/lib/oci/identity/models/group.rb +118 -115
  271. data/lib/oci/identity/models/identity_provider.rb +135 -138
  272. data/lib/oci/identity/models/idp_group_mapping.rb +112 -109
  273. data/lib/oci/identity/models/policy.rb +129 -132
  274. data/lib/oci/identity/models/region.rb +67 -45
  275. data/lib/oci/identity/models/region_subscription.rb +90 -71
  276. data/lib/oci/identity/models/saml2_identity_provider.rb +106 -92
  277. data/lib/oci/identity/models/smtp_credential.rb +118 -113
  278. data/lib/oci/identity/models/smtp_credential_summary.rb +113 -106
  279. data/lib/oci/identity/models/swift_password.rb +113 -106
  280. data/lib/oci/identity/models/tag.rb +108 -116
  281. data/lib/oci/identity/models/tag_namespace.rb +97 -97
  282. data/lib/oci/identity/models/tag_namespace_summary.rb +97 -97
  283. data/lib/oci/identity/models/tag_summary.rb +97 -97
  284. data/lib/oci/identity/models/tenancy.rb +86 -78
  285. data/lib/oci/identity/models/ui_password.rb +97 -82
  286. data/lib/oci/identity/models/update_compartment_details.rb +77 -62
  287. data/lib/oci/identity/models/update_customer_secret_key_details.rb +61 -38
  288. data/lib/oci/identity/models/update_dynamic_group_details.rb +65 -45
  289. data/lib/oci/identity/models/update_group_details.rb +72 -55
  290. data/lib/oci/identity/models/update_identity_provider_details.rb +89 -74
  291. data/lib/oci/identity/models/update_idp_group_mapping_details.rb +66 -47
  292. data/lib/oci/identity/models/update_policy_details.rb +83 -72
  293. data/lib/oci/identity/models/update_saml2_identity_provider_details.rb +79 -58
  294. data/lib/oci/identity/models/update_smtp_credential_details.rb +60 -35
  295. data/lib/oci/identity/models/update_state_details.rb +61 -36
  296. data/lib/oci/identity/models/update_swift_password_details.rb +60 -35
  297. data/lib/oci/identity/models/update_tag_details.rb +78 -65
  298. data/lib/oci/identity/models/update_tag_namespace_details.rb +78 -65
  299. data/lib/oci/identity/models/update_user_details.rb +72 -55
  300. data/lib/oci/identity/models/user.rb +120 -117
  301. data/lib/oci/identity/models/user_group_membership.rb +107 -100
  302. data/lib/oci/load_balancer/load_balancer.rb +3 -0
  303. data/lib/oci/load_balancer/load_balancer_client.rb +918 -500
  304. data/lib/oci/load_balancer/load_balancer_client_composite_operations.rb +795 -0
  305. data/lib/oci/load_balancer/models/backend.rb +101 -94
  306. data/lib/oci/load_balancer/models/backend_details.rb +95 -86
  307. data/lib/oci/load_balancer/models/backend_health.rb +84 -57
  308. data/lib/oci/load_balancer/models/backend_set.rb +87 -79
  309. data/lib/oci/load_balancer/models/backend_set_details.rb +80 -70
  310. data/lib/oci/load_balancer/models/backend_set_health.rb +106 -91
  311. data/lib/oci/load_balancer/models/certificate.rb +78 -64
  312. data/lib/oci/load_balancer/models/certificate_details.rb +92 -84
  313. data/lib/oci/load_balancer/models/connection_configuration.rb +73 -51
  314. data/lib/oci/load_balancer/models/create_backend_details.rb +95 -86
  315. data/lib/oci/load_balancer/models/create_backend_set_details.rb +87 -79
  316. data/lib/oci/load_balancer/models/create_certificate_details.rb +92 -84
  317. data/lib/oci/load_balancer/models/create_listener_details.rb +97 -93
  318. data/lib/oci/load_balancer/models/create_load_balancer_details.rb +109 -117
  319. data/lib/oci/load_balancer/models/create_path_route_set_details.rb +66 -46
  320. data/lib/oci/load_balancer/models/health_check_result.rb +98 -79
  321. data/lib/oci/load_balancer/models/health_checker.rb +108 -108
  322. data/lib/oci/load_balancer/models/health_checker_details.rb +108 -108
  323. data/lib/oci/load_balancer/models/ip_address.rb +70 -52
  324. data/lib/oci/load_balancer/models/listener.rb +97 -93
  325. data/lib/oci/load_balancer/models/listener_details.rb +91 -85
  326. data/lib/oci/load_balancer/models/load_balancer.rb +144 -157
  327. data/lib/oci/load_balancer/models/load_balancer_health.rb +110 -95
  328. data/lib/oci/load_balancer/models/load_balancer_health_summary.rb +88 -61
  329. data/lib/oci/load_balancer/models/load_balancer_policy.rb +59 -35
  330. data/lib/oci/load_balancer/models/load_balancer_protocol.rb +59 -35
  331. data/lib/oci/load_balancer/models/load_balancer_shape.rb +59 -35
  332. data/lib/oci/load_balancer/models/path_match_type.rb +80 -51
  333. data/lib/oci/load_balancer/models/path_route.rb +76 -60
  334. data/lib/oci/load_balancer/models/path_route_set.rb +66 -46
  335. data/lib/oci/load_balancer/models/path_route_set_details.rb +60 -38
  336. data/lib/oci/load_balancer/models/session_persistence_configuration_details.rb +71 -55
  337. data/lib/oci/load_balancer/models/ssl_configuration.rb +78 -66
  338. data/lib/oci/load_balancer/models/ssl_configuration_details.rb +78 -66
  339. data/lib/oci/load_balancer/models/update_backend_details.rb +82 -67
  340. data/lib/oci/load_balancer/models/update_backend_set_details.rb +80 -70
  341. data/lib/oci/load_balancer/models/update_health_checker_details.rb +108 -108
  342. data/lib/oci/load_balancer/models/update_listener_details.rb +91 -85
  343. data/lib/oci/load_balancer/models/update_load_balancer_details.rb +62 -40
  344. data/lib/oci/load_balancer/models/update_path_route_set_details.rb +60 -38
  345. data/lib/oci/load_balancer/models/work_request.rb +115 -108
  346. data/lib/oci/load_balancer/models/work_request_error.rb +76 -49
  347. data/lib/oci/object_storage/models/bucket.rb +136 -133
  348. data/lib/oci/object_storage/models/bucket_summary.rb +95 -95
  349. data/lib/oci/object_storage/models/commit_multipart_upload_details.rb +66 -48
  350. data/lib/oci/object_storage/models/commit_multipart_upload_part_details.rb +64 -44
  351. data/lib/oci/object_storage/models/create_bucket_details.rb +113 -111
  352. data/lib/oci/object_storage/models/create_multipart_upload_details.rb +80 -70
  353. data/lib/oci/object_storage/models/create_preauthenticated_request_details.rb +87 -74
  354. data/lib/oci/object_storage/models/list_objects.rb +71 -53
  355. data/lib/oci/object_storage/models/multipart_upload.rb +77 -65
  356. data/lib/oci/object_storage/models/multipart_upload_part_summary.rb +72 -56
  357. data/lib/oci/object_storage/models/namespace_metadata.rb +69 -53
  358. data/lib/oci/object_storage/models/object_summary.rb +73 -57
  359. data/lib/oci/object_storage/models/preauthenticated_request.rb +105 -96
  360. data/lib/oci/object_storage/models/preauthenticated_request_summary.rb +99 -86
  361. data/lib/oci/object_storage/models/rename_object_details.rb +80 -74
  362. data/lib/oci/object_storage/models/restore_objects_details.rb +66 -45
  363. data/lib/oci/object_storage/models/update_bucket_details.rb +101 -97
  364. data/lib/oci/object_storage/models/update_namespace_metadata_details.rb +65 -47
  365. data/lib/oci/object_storage/object_storage.rb +2 -0
  366. data/lib/oci/object_storage/object_storage_client.rb +737 -435
  367. data/lib/oci/object_storage/object_storage_client_composite_operations.rb +24 -0
  368. data/lib/oci/signer.rb +20 -7
  369. data/lib/oci/version.rb +1 -1
  370. metadata +13 -2
@@ -1,7 +1,9 @@
1
1
  # Copyright (c) 2016, 2018, Oracle and/or its affiliates. All rights reserved.
2
2
 
3
3
  require 'date'
4
+ require 'logger'
4
5
 
6
+ # rubocop:disable Lint/UnneededCopDisableDirective
5
7
  module OCI
6
8
  # A base object for all types of attachments between a storage volume and an instance.
7
9
  # For specific details about iSCSI attachments, see
@@ -11,22 +13,23 @@ module OCI
11
13
  # [Overview of Block Volume Storage](https://docs.us-phoenix-1.oraclecloud.com/Content/Block/Concepts/overview.htm).
12
14
  #
13
15
  # This class has direct subclasses. If you are using this class as input to a service operations then you should favor using a subclass over the base class
14
- class Core::Models::VolumeAttachment
15
-
16
- LIFECYCLE_STATE_ENUM = [LIFECYCLE_STATE_ATTACHING = 'ATTACHING',
17
- LIFECYCLE_STATE_ATTACHED = 'ATTACHED',
18
- LIFECYCLE_STATE_DETACHING = 'DETACHING',
19
- LIFECYCLE_STATE_DETACHED = 'DETACHED',
20
- LIFECYCLE_STATE_UNKNOWN_ENUM_VALUE = 'UNKNOWN_ENUM_VALUE']
16
+ class Core::Models::VolumeAttachment # rubocop:disable Metrics/LineLength
17
+ LIFECYCLE_STATE_ENUM = [
18
+ LIFECYCLE_STATE_ATTACHING = 'ATTACHING'.freeze,
19
+ LIFECYCLE_STATE_ATTACHED = 'ATTACHED'.freeze,
20
+ LIFECYCLE_STATE_DETACHING = 'DETACHING'.freeze,
21
+ LIFECYCLE_STATE_DETACHED = 'DETACHED'.freeze,
22
+ LIFECYCLE_STATE_UNKNOWN_ENUM_VALUE = 'UNKNOWN_ENUM_VALUE'.freeze
23
+ ].freeze
21
24
 
22
25
  # **[Required]** The type of volume attachment.
23
26
  # @return [String]
24
27
  attr_accessor :attachment_type
25
28
 
26
29
  # **[Required]** The Availability Domain of an instance.
27
- #
30
+ #
28
31
  # Example: `Uocm:PHX-AD-1`
29
- #
32
+ #
30
33
  # @return [String]
31
34
  attr_accessor :availability_domain
32
35
 
@@ -36,9 +39,9 @@ module OCI
36
39
 
37
40
  # A user-friendly name. Does not have to be unique, and it cannot be changed.
38
41
  # Avoid entering confidential information.
39
- #
42
+ #
40
43
  # Example: `My volume attachment`
41
- #
44
+ #
42
45
  # @return [String]
43
46
  attr_accessor :display_name
44
47
 
@@ -56,12 +59,12 @@ module OCI
56
59
 
57
60
  # **[Required]** The current state of the volume attachment.
58
61
  # @return [String]
59
- attr_accessor :lifecycle_state
62
+ attr_reader :lifecycle_state
60
63
 
61
64
  # **[Required]** The date and time the volume was created, in the format defined by RFC3339.
62
- #
65
+ #
63
66
  # Example: `2016-08-25T21:10:29.600Z`
64
- #
67
+ #
65
68
  # @return [DateTime]
66
69
  attr_accessor :time_created
67
70
 
@@ -69,19 +72,58 @@ module OCI
69
72
  # @return [String]
70
73
  attr_accessor :volume_id
71
74
 
75
+ # Attribute mapping from ruby-style variable name to JSON key.
76
+ def self.attribute_map
77
+ {
78
+ # rubocop:disable Style/SymbolLiteral
79
+ 'attachment_type': :'attachmentType',
80
+ 'availability_domain': :'availabilityDomain',
81
+ 'compartment_id': :'compartmentId',
82
+ 'display_name': :'displayName',
83
+ 'id': :'id',
84
+ 'instance_id': :'instanceId',
85
+ 'is_read_only': :'isReadOnly',
86
+ 'lifecycle_state': :'lifecycleState',
87
+ 'time_created': :'timeCreated',
88
+ 'volume_id': :'volumeId'
89
+ # rubocop:enable Style/SymbolLiteral
90
+ }
91
+ end
92
+
93
+ # Attribute type mapping.
94
+ def self.swagger_types
95
+ {
96
+ # rubocop:disable Style/SymbolLiteral
97
+ 'attachment_type': :'String',
98
+ 'availability_domain': :'String',
99
+ 'compartment_id': :'String',
100
+ 'display_name': :'String',
101
+ 'id': :'String',
102
+ 'instance_id': :'String',
103
+ 'is_read_only': :'BOOLEAN',
104
+ 'lifecycle_state': :'String',
105
+ 'time_created': :'DateTime',
106
+ 'volume_id': :'String'
107
+ # rubocop:enable Style/SymbolLiteral
108
+ }
109
+ end
72
110
 
73
111
  # Given the hash representation of a subtype of this class,
74
112
  # use the info in the hash to return the class of the subtype.
75
113
  def self.get_subtype(object_hash)
76
- type = object_hash[:'attachmentType']
114
+ type = object_hash[:'attachmentType'] # rubocop:disable Style/SymbolLiteral
77
115
 
78
116
  return 'OCI::Core::Models::IScsiVolumeAttachment' if type == 'iscsi'
79
117
  return 'OCI::Core::Models::ParavirtualizedVolumeAttachment' if type == 'paravirtualized'
80
118
 
81
119
  # TODO: Log a warning when the subtype is not found.
82
- return 'OCI::Core::Models::VolumeAttachment'
120
+ 'OCI::Core::Models::VolumeAttachment'
83
121
  end
84
122
 
123
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
124
+ # rubocop:disable Metrics/LineLength, Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
125
+
126
+
85
127
  # Initializes the object
86
128
  # @param [Hash] attributes Model attributes in the form of hash
87
129
  # @option attributes [String] :attachment_type The value to assign to the {#attachment_type} property
@@ -98,142 +140,121 @@ module OCI
98
140
  return unless attributes.is_a?(Hash)
99
141
 
100
142
  # convert string to symbol for hash key
101
- attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
143
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
102
144
 
103
- if attributes[:'attachmentType']
104
- self.attachment_type = attributes[:'attachmentType']
105
- end
145
+ self.attachment_type = attributes[:'attachmentType'] if attributes[:'attachmentType']
106
146
 
107
147
  raise 'You cannot provide both :attachmentType and :attachment_type' if attributes.key?(:'attachmentType') && attributes.key?(:'attachment_type')
108
148
 
109
- if attributes[:'attachment_type']
110
- self.attachment_type = attributes[:'attachment_type']
111
- end
149
+ self.attachment_type = attributes[:'attachment_type'] if attributes[:'attachment_type']
112
150
 
113
- if attributes[:'availabilityDomain']
114
- self.availability_domain = attributes[:'availabilityDomain']
115
- end
151
+ self.availability_domain = attributes[:'availabilityDomain'] if attributes[:'availabilityDomain']
116
152
 
117
153
  raise 'You cannot provide both :availabilityDomain and :availability_domain' if attributes.key?(:'availabilityDomain') && attributes.key?(:'availability_domain')
118
154
 
119
- if attributes[:'availability_domain']
120
- self.availability_domain = attributes[:'availability_domain']
121
- end
155
+ self.availability_domain = attributes[:'availability_domain'] if attributes[:'availability_domain']
122
156
 
123
- if attributes[:'compartmentId']
124
- self.compartment_id = attributes[:'compartmentId']
125
- end
157
+ self.compartment_id = attributes[:'compartmentId'] if attributes[:'compartmentId']
126
158
 
127
159
  raise 'You cannot provide both :compartmentId and :compartment_id' if attributes.key?(:'compartmentId') && attributes.key?(:'compartment_id')
128
160
 
129
- if attributes[:'compartment_id']
130
- self.compartment_id = attributes[:'compartment_id']
131
- end
161
+ self.compartment_id = attributes[:'compartment_id'] if attributes[:'compartment_id']
132
162
 
133
- if attributes[:'displayName']
134
- self.display_name = attributes[:'displayName']
135
- end
163
+ self.display_name = attributes[:'displayName'] if attributes[:'displayName']
136
164
 
137
165
  raise 'You cannot provide both :displayName and :display_name' if attributes.key?(:'displayName') && attributes.key?(:'display_name')
138
166
 
139
- if attributes[:'display_name']
140
- self.display_name = attributes[:'display_name']
141
- end
167
+ self.display_name = attributes[:'display_name'] if attributes[:'display_name']
142
168
 
143
- if attributes[:'id']
144
- self.id = attributes[:'id']
145
- end
169
+ self.id = attributes[:'id'] if attributes[:'id']
146
170
 
147
- if attributes[:'instanceId']
148
- self.instance_id = attributes[:'instanceId']
149
- end
171
+ self.instance_id = attributes[:'instanceId'] if attributes[:'instanceId']
150
172
 
151
173
  raise 'You cannot provide both :instanceId and :instance_id' if attributes.key?(:'instanceId') && attributes.key?(:'instance_id')
152
174
 
153
- if attributes[:'instance_id']
154
- self.instance_id = attributes[:'instance_id']
155
- end
175
+ self.instance_id = attributes[:'instance_id'] if attributes[:'instance_id']
156
176
 
157
- unless attributes[:'isReadOnly'].nil?
158
- self.is_read_only = attributes[:'isReadOnly']
159
- end
177
+ self.is_read_only = attributes[:'isReadOnly'] unless attributes[:'isReadOnly'].nil?
160
178
 
161
179
  raise 'You cannot provide both :isReadOnly and :is_read_only' if attributes.key?(:'isReadOnly') && attributes.key?(:'is_read_only')
162
180
 
163
- unless attributes[:'is_read_only'].nil?
164
- self.is_read_only = attributes[:'is_read_only']
165
- end
181
+ self.is_read_only = attributes[:'is_read_only'] unless attributes[:'is_read_only'].nil?
166
182
 
167
- if attributes[:'lifecycleState']
168
- self.lifecycle_state = attributes[:'lifecycleState']
169
- end
183
+ self.lifecycle_state = attributes[:'lifecycleState'] if attributes[:'lifecycleState']
170
184
 
171
185
  raise 'You cannot provide both :lifecycleState and :lifecycle_state' if attributes.key?(:'lifecycleState') && attributes.key?(:'lifecycle_state')
172
186
 
173
- if attributes[:'lifecycle_state']
174
- self.lifecycle_state = attributes[:'lifecycle_state']
175
- end
187
+ self.lifecycle_state = attributes[:'lifecycle_state'] if attributes[:'lifecycle_state']
176
188
 
177
- if attributes[:'timeCreated']
178
- self.time_created = attributes[:'timeCreated']
179
- end
189
+ self.time_created = attributes[:'timeCreated'] if attributes[:'timeCreated']
180
190
 
181
191
  raise 'You cannot provide both :timeCreated and :time_created' if attributes.key?(:'timeCreated') && attributes.key?(:'time_created')
182
192
 
183
- if attributes[:'time_created']
184
- self.time_created = attributes[:'time_created']
185
- end
193
+ self.time_created = attributes[:'time_created'] if attributes[:'time_created']
186
194
 
187
- if attributes[:'volumeId']
188
- self.volume_id = attributes[:'volumeId']
189
- end
195
+ self.volume_id = attributes[:'volumeId'] if attributes[:'volumeId']
190
196
 
191
197
  raise 'You cannot provide both :volumeId and :volume_id' if attributes.key?(:'volumeId') && attributes.key?(:'volume_id')
192
198
 
193
- if attributes[:'volume_id']
194
- self.volume_id = attributes[:'volume_id']
195
- end
196
-
199
+ self.volume_id = attributes[:'volume_id'] if attributes[:'volume_id']
197
200
  end
201
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
202
+ # rubocop:enable Metrics/LineLength, Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
198
203
 
199
204
  # Custom attribute writer method checking allowed values (enum).
200
205
  # @param [Object] lifecycle_state Object to be assigned
201
206
  def lifecycle_state=(lifecycle_state)
207
+ # rubocop:disable Style/ConditionalAssignment
202
208
  if lifecycle_state && !LIFECYCLE_STATE_ENUM.include?(lifecycle_state)
209
+ # rubocop: disable Metrics/LineLength
210
+ OCI.logger.debug("Unknown value for 'lifecycle_state' [" + lifecycle_state + "]. Mapping to 'LIFECYCLE_STATE_UNKNOWN_ENUM_VALUE'") if OCI.logger
211
+ # rubocop: enable Metrics/LineLength
203
212
  @lifecycle_state = LIFECYCLE_STATE_UNKNOWN_ENUM_VALUE
204
213
  else
205
214
  @lifecycle_state = lifecycle_state
206
215
  end
216
+ # rubocop:enable Style/ConditionalAssignment
207
217
  end
208
218
 
219
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
220
+
221
+
209
222
  # Checks equality by comparing each attribute.
210
- # @param [Object] other_object to be compared
211
- def ==(other_object)
212
- return true if self.equal?(other_object)
213
- self.class == other_object.class &&
214
- attachment_type == other_object.attachment_type &&
215
- availability_domain == other_object.availability_domain &&
216
- compartment_id == other_object.compartment_id &&
217
- display_name == other_object.display_name &&
218
- id == other_object.id &&
219
- instance_id == other_object.instance_id &&
220
- is_read_only == other_object.is_read_only &&
221
- lifecycle_state == other_object.lifecycle_state &&
222
- time_created == other_object.time_created &&
223
- volume_id == other_object.volume_id
223
+ # @param [Object] other the other object to be compared
224
+ def ==(other)
225
+ return true if equal?(other)
226
+ self.class == other.class &&
227
+ attachment_type == other.attachment_type &&
228
+ availability_domain == other.availability_domain &&
229
+ compartment_id == other.compartment_id &&
230
+ display_name == other.display_name &&
231
+ id == other.id &&
232
+ instance_id == other.instance_id &&
233
+ is_read_only == other.is_read_only &&
234
+ lifecycle_state == other.lifecycle_state &&
235
+ time_created == other.time_created &&
236
+ volume_id == other.volume_id
224
237
  end
238
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
225
239
 
226
240
  # @see the `==` method
227
- # @param [Object] other_object to be compared
228
- def eql?(other_object)
229
- self == other_object
241
+ # @param [Object] other the other object to be compared
242
+ def eql?(other)
243
+ self == other
230
244
  end
231
245
 
246
+ # rubocop:disable Metrics/AbcSize, Metrics/LineLength, Layout/EmptyLines
247
+
248
+
232
249
  # Calculates hash code according to all attributes.
233
250
  # @return [Fixnum] Hash code
234
251
  def hash
235
252
  [attachment_type, availability_domain, compartment_id, display_name, id, instance_id, is_read_only, lifecycle_state, time_created, volume_id].hash
236
253
  end
254
+ # rubocop:enable Metrics/AbcSize, Metrics/LineLength, Layout/EmptyLines
255
+
256
+ # rubocop:disable Metrics/AbcSize, Layout/EmptyLines
257
+
237
258
 
238
259
  # Builds the object from hash
239
260
  # @param [Hash] attributes Model attributes in the form of hash
@@ -245,15 +266,22 @@ module OCI
245
266
  # check to ensure the input is an array given that the the attribute
246
267
  # is documented as an array but the input is not
247
268
  if attributes[self.class.attribute_map[key]].is_a?(Array)
248
- self.public_method("#{key}=").call(attributes[self.class.attribute_map[key]].map{ |v| OCI::Internal::Util.convert_to_type($1, v) } )
269
+ public_method("#{key}=").call(
270
+ attributes[self.class.attribute_map[key]]
271
+ .map { |v| OCI::Internal::Util.convert_to_type(Regexp.last_match(1), v) }
272
+ )
249
273
  end
250
274
  elsif !attributes[self.class.attribute_map[key]].nil?
251
- self.public_method("#{key}=").call(OCI::Internal::Util.convert_to_type(type, attributes[self.class.attribute_map[key]]))
252
- end # or else data not found in attributes(hash), not an issue as the data can be optional
275
+ public_method("#{key}=").call(
276
+ OCI::Internal::Util.convert_to_type(type, attributes[self.class.attribute_map[key]])
277
+ )
278
+ end
279
+ # or else data not found in attributes(hash), not an issue as the data can be optional
253
280
  end
254
281
 
255
282
  self
256
283
  end
284
+ # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
257
285
 
258
286
  # Returns the string representation of the object
259
287
  # @return [String] String presentation of the object
@@ -277,11 +305,11 @@ module OCI
277
305
 
278
306
  # Outputs non-array value in the form of hash
279
307
  # For object, use to_hash. Otherwise, just return the value
280
- # @param [Object] value Any valid value
308
+ # @param [Object] value Any valid value
281
309
  # @return [Hash] Returns the value in the form of hash
282
310
  def _to_hash(value)
283
311
  if value.is_a?(Array)
284
- value.compact.map{ |v| _to_hash(v) }
312
+ value.compact.map { |v| _to_hash(v) }
285
313
  elsif value.is_a?(Hash)
286
314
  {}.tap do |hash|
287
315
  value.each { |k, v| hash[k] = _to_hash(v) }
@@ -292,39 +320,6 @@ module OCI
292
320
  value
293
321
  end
294
322
  end
295
-
296
-
297
-
298
- # Attribute mapping from ruby-style variable name to JSON key.
299
- def self.attribute_map
300
- {
301
- :'attachment_type' => :'attachmentType',
302
- :'availability_domain' => :'availabilityDomain',
303
- :'compartment_id' => :'compartmentId',
304
- :'display_name' => :'displayName',
305
- :'id' => :'id',
306
- :'instance_id' => :'instanceId',
307
- :'is_read_only' => :'isReadOnly',
308
- :'lifecycle_state' => :'lifecycleState',
309
- :'time_created' => :'timeCreated',
310
- :'volume_id' => :'volumeId'
311
- }
312
- end
313
-
314
- # Attribute type mapping.
315
- def self.swagger_types
316
- {
317
- :'attachment_type' => :'String',
318
- :'availability_domain' => :'String',
319
- :'compartment_id' => :'String',
320
- :'display_name' => :'String',
321
- :'id' => :'String',
322
- :'instance_id' => :'String',
323
- :'is_read_only' => :'BOOLEAN',
324
- :'lifecycle_state' => :'String',
325
- :'time_created' => :'DateTime',
326
- :'volume_id' => :'String'
327
- }
328
- end
329
323
  end
330
324
  end
325
+ # rubocop:enable Lint/UnneededCopDisableDirective
@@ -1,7 +1,9 @@
1
1
  # Copyright (c) 2016, 2018, Oracle and/or its affiliates. All rights reserved.
2
2
 
3
3
  require 'date'
4
+ require 'logger'
4
5
 
6
+ # rubocop:disable Lint/UnneededCopDisableDirective
5
7
  module OCI
6
8
  # A point-in-time copy of a volume that can then be used to create a new block volume
7
9
  # or recover a block volume. For more information, see
@@ -11,25 +13,28 @@ module OCI
11
13
  # talk to an administrator. If you're an administrator who needs to write policies to give users access, see
12
14
  # [Getting Started with Policies](https://docs.us-phoenix-1.oraclecloud.com/Content/Identity/Concepts/policygetstarted.htm).
13
15
  #
14
- class Core::Models::VolumeBackup
15
-
16
- LIFECYCLE_STATE_ENUM = [LIFECYCLE_STATE_CREATING = 'CREATING',
17
- LIFECYCLE_STATE_AVAILABLE = 'AVAILABLE',
18
- LIFECYCLE_STATE_TERMINATING = 'TERMINATING',
19
- LIFECYCLE_STATE_TERMINATED = 'TERMINATED',
20
- LIFECYCLE_STATE_FAULTY = 'FAULTY',
21
- LIFECYCLE_STATE_REQUEST_RECEIVED = 'REQUEST_RECEIVED',
22
- LIFECYCLE_STATE_UNKNOWN_ENUM_VALUE = 'UNKNOWN_ENUM_VALUE']
23
-
24
-
25
- SOURCE_TYPE_ENUM = [SOURCE_TYPE_MANUAL = 'MANUAL',
26
- SOURCE_TYPE_SCHEDULED = 'SCHEDULED',
27
- SOURCE_TYPE_UNKNOWN_ENUM_VALUE = 'UNKNOWN_ENUM_VALUE']
28
-
29
-
30
- TYPE_ENUM = [TYPE_FULL = 'FULL',
31
- TYPE_INCREMENTAL = 'INCREMENTAL',
32
- TYPE_UNKNOWN_ENUM_VALUE = 'UNKNOWN_ENUM_VALUE']
16
+ class Core::Models::VolumeBackup # rubocop:disable Metrics/LineLength
17
+ LIFECYCLE_STATE_ENUM = [
18
+ LIFECYCLE_STATE_CREATING = 'CREATING'.freeze,
19
+ LIFECYCLE_STATE_AVAILABLE = 'AVAILABLE'.freeze,
20
+ LIFECYCLE_STATE_TERMINATING = 'TERMINATING'.freeze,
21
+ LIFECYCLE_STATE_TERMINATED = 'TERMINATED'.freeze,
22
+ LIFECYCLE_STATE_FAULTY = 'FAULTY'.freeze,
23
+ LIFECYCLE_STATE_REQUEST_RECEIVED = 'REQUEST_RECEIVED'.freeze,
24
+ LIFECYCLE_STATE_UNKNOWN_ENUM_VALUE = 'UNKNOWN_ENUM_VALUE'.freeze
25
+ ].freeze
26
+
27
+ SOURCE_TYPE_ENUM = [
28
+ SOURCE_TYPE_MANUAL = 'MANUAL'.freeze,
29
+ SOURCE_TYPE_SCHEDULED = 'SCHEDULED'.freeze,
30
+ SOURCE_TYPE_UNKNOWN_ENUM_VALUE = 'UNKNOWN_ENUM_VALUE'.freeze
31
+ ].freeze
32
+
33
+ TYPE_ENUM = [
34
+ TYPE_FULL = 'FULL'.freeze,
35
+ TYPE_INCREMENTAL = 'INCREMENTAL'.freeze,
36
+ TYPE_UNKNOWN_ENUM_VALUE = 'UNKNOWN_ENUM_VALUE'.freeze
37
+ ].freeze
33
38
 
34
39
  # **[Required]** The OCID of the compartment that contains the volume backup.
35
40
  # @return [String]
@@ -37,15 +42,15 @@ module OCI
37
42
 
38
43
  # Defined tags for this resource. Each key is predefined and scoped to a namespace.
39
44
  # For more information, see [Resource Tags](https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/resourcetags.htm).
40
- #
45
+ #
41
46
  # Example: `{\"Operations\": {\"CostCenter\": \"42\"}}`
42
- #
47
+ #
43
48
  # @return [Hash<String, Hash<String, Object>>]
44
49
  attr_accessor :defined_tags
45
50
 
46
51
  # **[Required]** A user-friendly name for the volume backup. Does not have to be unique and it's changeable.
47
52
  # Avoid entering confidential information.
48
- #
53
+ #
49
54
  # @return [String]
50
55
  attr_accessor :display_name
51
56
 
@@ -54,16 +59,16 @@ module OCI
54
59
  # were created automatically by a scheduled-backup policy. For manually created backups,
55
60
  # it will be absent, signifying that there is no expiration time and the backup will
56
61
  # last forever until manually deleted.
57
- #
62
+ #
58
63
  # @return [DateTime]
59
64
  attr_accessor :expiration_time
60
65
 
61
66
  # Free-form tags for this resource. Each tag is a simple key-value pair with no
62
67
  # predefined name, type, or namespace. For more information, see
63
68
  # [Resource Tags](https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/resourcetags.htm).
64
- #
69
+ #
65
70
  # Example: `{\"Department\": \"Finance\"}`
66
- #
71
+ #
67
72
  # @return [Hash<String, String>]
68
73
  attr_accessor :freeform_tags
69
74
 
@@ -73,48 +78,48 @@ module OCI
73
78
 
74
79
  # **[Required]** The current state of a volume backup.
75
80
  # @return [String]
76
- attr_accessor :lifecycle_state
81
+ attr_reader :lifecycle_state
77
82
 
78
83
  # The size of the volume, in GBs.
79
- #
84
+ #
80
85
  # @return [Integer]
81
86
  attr_accessor :size_in_gbs
82
87
 
83
88
  # The size of the volume in MBs. The value must be a multiple of 1024.
84
89
  # This field is deprecated. Please use sizeInGBs.
85
- #
90
+ #
86
91
  # @return [Integer]
87
92
  attr_accessor :size_in_mbs
88
93
 
89
94
  # Specifies whether the backup was created manually, or via scheduled backup policy.
90
95
  # @return [String]
91
- attr_accessor :source_type
96
+ attr_reader :source_type
92
97
 
93
98
  # **[Required]** The date and time the volume backup was created. This is the time the actual point-in-time image
94
99
  # of the volume data was taken. Format defined by RFC3339.
95
- #
100
+ #
96
101
  # @return [DateTime]
97
102
  attr_accessor :time_created
98
103
 
99
104
  # The date and time the request to create the volume backup was received. Format defined by RFC3339.
100
- #
105
+ #
101
106
  # @return [DateTime]
102
107
  attr_accessor :time_request_received
103
108
 
104
109
  # **[Required]** The type of a volume backup.
105
110
  # @return [String]
106
- attr_accessor :type
111
+ attr_reader :type
107
112
 
108
113
  # The size used by the backup, in GBs. It is typically smaller than sizeInGBs, depending on the space
109
114
  # consumed on the volume and whether the backup is full or incremental.
110
- #
115
+ #
111
116
  # @return [Integer]
112
117
  attr_accessor :unique_size_in_gbs
113
118
 
114
119
  # The size used by the backup, in MBs. It is typically smaller than sizeInMBs, depending on the space
115
120
  # consumed on the volume and whether the backup is full or incremental.
116
121
  # This field is deprecated. Please use uniqueSizeInGBs.
117
- #
122
+ #
118
123
  # @return [Integer]
119
124
  attr_accessor :unique_size_in_mbs
120
125
 
@@ -122,6 +127,57 @@ module OCI
122
127
  # @return [String]
123
128
  attr_accessor :volume_id
124
129
 
130
+ # Attribute mapping from ruby-style variable name to JSON key.
131
+ def self.attribute_map
132
+ {
133
+ # rubocop:disable Style/SymbolLiteral
134
+ 'compartment_id': :'compartmentId',
135
+ 'defined_tags': :'definedTags',
136
+ 'display_name': :'displayName',
137
+ 'expiration_time': :'expirationTime',
138
+ 'freeform_tags': :'freeformTags',
139
+ 'id': :'id',
140
+ 'lifecycle_state': :'lifecycleState',
141
+ 'size_in_gbs': :'sizeInGBs',
142
+ 'size_in_mbs': :'sizeInMBs',
143
+ 'source_type': :'sourceType',
144
+ 'time_created': :'timeCreated',
145
+ 'time_request_received': :'timeRequestReceived',
146
+ 'type': :'type',
147
+ 'unique_size_in_gbs': :'uniqueSizeInGBs',
148
+ 'unique_size_in_mbs': :'uniqueSizeInMbs',
149
+ 'volume_id': :'volumeId'
150
+ # rubocop:enable Style/SymbolLiteral
151
+ }
152
+ end
153
+
154
+ # Attribute type mapping.
155
+ def self.swagger_types
156
+ {
157
+ # rubocop:disable Style/SymbolLiteral
158
+ 'compartment_id': :'String',
159
+ 'defined_tags': :'Hash<String, Hash<String, Object>>',
160
+ 'display_name': :'String',
161
+ 'expiration_time': :'DateTime',
162
+ 'freeform_tags': :'Hash<String, String>',
163
+ 'id': :'String',
164
+ 'lifecycle_state': :'String',
165
+ 'size_in_gbs': :'Integer',
166
+ 'size_in_mbs': :'Integer',
167
+ 'source_type': :'String',
168
+ 'time_created': :'DateTime',
169
+ 'time_request_received': :'DateTime',
170
+ 'type': :'String',
171
+ 'unique_size_in_gbs': :'Integer',
172
+ 'unique_size_in_mbs': :'Integer',
173
+ 'volume_id': :'String'
174
+ # rubocop:enable Style/SymbolLiteral
175
+ }
176
+ end
177
+
178
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
179
+ # rubocop:disable Metrics/LineLength, Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
180
+
125
181
 
126
182
  # Initializes the object
127
183
  # @param [Hash] attributes Model attributes in the form of hash
@@ -145,222 +201,189 @@ module OCI
145
201
  return unless attributes.is_a?(Hash)
146
202
 
147
203
  # convert string to symbol for hash key
148
- attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
204
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
149
205
 
150
- if attributes[:'compartmentId']
151
- self.compartment_id = attributes[:'compartmentId']
152
- end
206
+ self.compartment_id = attributes[:'compartmentId'] if attributes[:'compartmentId']
153
207
 
154
208
  raise 'You cannot provide both :compartmentId and :compartment_id' if attributes.key?(:'compartmentId') && attributes.key?(:'compartment_id')
155
209
 
156
- if attributes[:'compartment_id']
157
- self.compartment_id = attributes[:'compartment_id']
158
- end
210
+ self.compartment_id = attributes[:'compartment_id'] if attributes[:'compartment_id']
159
211
 
160
- if attributes[:'definedTags']
161
- self.defined_tags = attributes[:'definedTags']
162
- end
212
+ self.defined_tags = attributes[:'definedTags'] if attributes[:'definedTags']
163
213
 
164
214
  raise 'You cannot provide both :definedTags and :defined_tags' if attributes.key?(:'definedTags') && attributes.key?(:'defined_tags')
165
215
 
166
- if attributes[:'defined_tags']
167
- self.defined_tags = attributes[:'defined_tags']
168
- end
216
+ self.defined_tags = attributes[:'defined_tags'] if attributes[:'defined_tags']
169
217
 
170
- if attributes[:'displayName']
171
- self.display_name = attributes[:'displayName']
172
- end
218
+ self.display_name = attributes[:'displayName'] if attributes[:'displayName']
173
219
 
174
220
  raise 'You cannot provide both :displayName and :display_name' if attributes.key?(:'displayName') && attributes.key?(:'display_name')
175
221
 
176
- if attributes[:'display_name']
177
- self.display_name = attributes[:'display_name']
178
- end
222
+ self.display_name = attributes[:'display_name'] if attributes[:'display_name']
179
223
 
180
- if attributes[:'expirationTime']
181
- self.expiration_time = attributes[:'expirationTime']
182
- end
224
+ self.expiration_time = attributes[:'expirationTime'] if attributes[:'expirationTime']
183
225
 
184
226
  raise 'You cannot provide both :expirationTime and :expiration_time' if attributes.key?(:'expirationTime') && attributes.key?(:'expiration_time')
185
227
 
186
- if attributes[:'expiration_time']
187
- self.expiration_time = attributes[:'expiration_time']
188
- end
228
+ self.expiration_time = attributes[:'expiration_time'] if attributes[:'expiration_time']
189
229
 
190
- if attributes[:'freeformTags']
191
- self.freeform_tags = attributes[:'freeformTags']
192
- end
230
+ self.freeform_tags = attributes[:'freeformTags'] if attributes[:'freeformTags']
193
231
 
194
232
  raise 'You cannot provide both :freeformTags and :freeform_tags' if attributes.key?(:'freeformTags') && attributes.key?(:'freeform_tags')
195
233
 
196
- if attributes[:'freeform_tags']
197
- self.freeform_tags = attributes[:'freeform_tags']
198
- end
234
+ self.freeform_tags = attributes[:'freeform_tags'] if attributes[:'freeform_tags']
199
235
 
200
- if attributes[:'id']
201
- self.id = attributes[:'id']
202
- end
236
+ self.id = attributes[:'id'] if attributes[:'id']
203
237
 
204
- if attributes[:'lifecycleState']
205
- self.lifecycle_state = attributes[:'lifecycleState']
206
- end
238
+ self.lifecycle_state = attributes[:'lifecycleState'] if attributes[:'lifecycleState']
207
239
 
208
240
  raise 'You cannot provide both :lifecycleState and :lifecycle_state' if attributes.key?(:'lifecycleState') && attributes.key?(:'lifecycle_state')
209
241
 
210
- if attributes[:'lifecycle_state']
211
- self.lifecycle_state = attributes[:'lifecycle_state']
212
- end
242
+ self.lifecycle_state = attributes[:'lifecycle_state'] if attributes[:'lifecycle_state']
213
243
 
214
- if attributes[:'sizeInGBs']
215
- self.size_in_gbs = attributes[:'sizeInGBs']
216
- end
244
+ self.size_in_gbs = attributes[:'sizeInGBs'] if attributes[:'sizeInGBs']
217
245
 
218
246
  raise 'You cannot provide both :sizeInGBs and :size_in_gbs' if attributes.key?(:'sizeInGBs') && attributes.key?(:'size_in_gbs')
219
247
 
220
- if attributes[:'size_in_gbs']
221
- self.size_in_gbs = attributes[:'size_in_gbs']
222
- end
248
+ self.size_in_gbs = attributes[:'size_in_gbs'] if attributes[:'size_in_gbs']
223
249
 
224
- if attributes[:'sizeInMBs']
225
- self.size_in_mbs = attributes[:'sizeInMBs']
226
- end
250
+ self.size_in_mbs = attributes[:'sizeInMBs'] if attributes[:'sizeInMBs']
227
251
 
228
252
  raise 'You cannot provide both :sizeInMBs and :size_in_mbs' if attributes.key?(:'sizeInMBs') && attributes.key?(:'size_in_mbs')
229
253
 
230
- if attributes[:'size_in_mbs']
231
- self.size_in_mbs = attributes[:'size_in_mbs']
232
- end
254
+ self.size_in_mbs = attributes[:'size_in_mbs'] if attributes[:'size_in_mbs']
233
255
 
234
- if attributes[:'sourceType']
235
- self.source_type = attributes[:'sourceType']
236
- end
256
+ self.source_type = attributes[:'sourceType'] if attributes[:'sourceType']
237
257
 
238
258
  raise 'You cannot provide both :sourceType and :source_type' if attributes.key?(:'sourceType') && attributes.key?(:'source_type')
239
259
 
240
- if attributes[:'source_type']
241
- self.source_type = attributes[:'source_type']
242
- end
260
+ self.source_type = attributes[:'source_type'] if attributes[:'source_type']
243
261
 
244
- if attributes[:'timeCreated']
245
- self.time_created = attributes[:'timeCreated']
246
- end
262
+ self.time_created = attributes[:'timeCreated'] if attributes[:'timeCreated']
247
263
 
248
264
  raise 'You cannot provide both :timeCreated and :time_created' if attributes.key?(:'timeCreated') && attributes.key?(:'time_created')
249
265
 
250
- if attributes[:'time_created']
251
- self.time_created = attributes[:'time_created']
252
- end
266
+ self.time_created = attributes[:'time_created'] if attributes[:'time_created']
253
267
 
254
- if attributes[:'timeRequestReceived']
255
- self.time_request_received = attributes[:'timeRequestReceived']
256
- end
268
+ self.time_request_received = attributes[:'timeRequestReceived'] if attributes[:'timeRequestReceived']
257
269
 
258
270
  raise 'You cannot provide both :timeRequestReceived and :time_request_received' if attributes.key?(:'timeRequestReceived') && attributes.key?(:'time_request_received')
259
271
 
260
- if attributes[:'time_request_received']
261
- self.time_request_received = attributes[:'time_request_received']
262
- end
272
+ self.time_request_received = attributes[:'time_request_received'] if attributes[:'time_request_received']
263
273
 
264
- if attributes[:'type']
265
- self.type = attributes[:'type']
266
- end
274
+ self.type = attributes[:'type'] if attributes[:'type']
267
275
 
268
- if attributes[:'uniqueSizeInGBs']
269
- self.unique_size_in_gbs = attributes[:'uniqueSizeInGBs']
270
- end
276
+ self.unique_size_in_gbs = attributes[:'uniqueSizeInGBs'] if attributes[:'uniqueSizeInGBs']
271
277
 
272
278
  raise 'You cannot provide both :uniqueSizeInGBs and :unique_size_in_gbs' if attributes.key?(:'uniqueSizeInGBs') && attributes.key?(:'unique_size_in_gbs')
273
279
 
274
- if attributes[:'unique_size_in_gbs']
275
- self.unique_size_in_gbs = attributes[:'unique_size_in_gbs']
276
- end
280
+ self.unique_size_in_gbs = attributes[:'unique_size_in_gbs'] if attributes[:'unique_size_in_gbs']
277
281
 
278
- if attributes[:'uniqueSizeInMbs']
279
- self.unique_size_in_mbs = attributes[:'uniqueSizeInMbs']
280
- end
282
+ self.unique_size_in_mbs = attributes[:'uniqueSizeInMbs'] if attributes[:'uniqueSizeInMbs']
281
283
 
282
284
  raise 'You cannot provide both :uniqueSizeInMbs and :unique_size_in_mbs' if attributes.key?(:'uniqueSizeInMbs') && attributes.key?(:'unique_size_in_mbs')
283
285
 
284
- if attributes[:'unique_size_in_mbs']
285
- self.unique_size_in_mbs = attributes[:'unique_size_in_mbs']
286
- end
286
+ self.unique_size_in_mbs = attributes[:'unique_size_in_mbs'] if attributes[:'unique_size_in_mbs']
287
287
 
288
- if attributes[:'volumeId']
289
- self.volume_id = attributes[:'volumeId']
290
- end
288
+ self.volume_id = attributes[:'volumeId'] if attributes[:'volumeId']
291
289
 
292
290
  raise 'You cannot provide both :volumeId and :volume_id' if attributes.key?(:'volumeId') && attributes.key?(:'volume_id')
293
291
 
294
- if attributes[:'volume_id']
295
- self.volume_id = attributes[:'volume_id']
296
- end
297
-
292
+ self.volume_id = attributes[:'volume_id'] if attributes[:'volume_id']
298
293
  end
294
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
295
+ # rubocop:enable Metrics/LineLength, Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
299
296
 
300
297
  # Custom attribute writer method checking allowed values (enum).
301
298
  # @param [Object] lifecycle_state Object to be assigned
302
299
  def lifecycle_state=(lifecycle_state)
300
+ # rubocop:disable Style/ConditionalAssignment
303
301
  if lifecycle_state && !LIFECYCLE_STATE_ENUM.include?(lifecycle_state)
302
+ # rubocop: disable Metrics/LineLength
303
+ OCI.logger.debug("Unknown value for 'lifecycle_state' [" + lifecycle_state + "]. Mapping to 'LIFECYCLE_STATE_UNKNOWN_ENUM_VALUE'") if OCI.logger
304
+ # rubocop: enable Metrics/LineLength
304
305
  @lifecycle_state = LIFECYCLE_STATE_UNKNOWN_ENUM_VALUE
305
306
  else
306
307
  @lifecycle_state = lifecycle_state
307
308
  end
309
+ # rubocop:enable Style/ConditionalAssignment
308
310
  end
309
311
 
310
312
  # Custom attribute writer method checking allowed values (enum).
311
313
  # @param [Object] source_type Object to be assigned
312
314
  def source_type=(source_type)
315
+ # rubocop:disable Style/ConditionalAssignment
313
316
  if source_type && !SOURCE_TYPE_ENUM.include?(source_type)
317
+ # rubocop: disable Metrics/LineLength
318
+ OCI.logger.debug("Unknown value for 'source_type' [" + source_type + "]. Mapping to 'SOURCE_TYPE_UNKNOWN_ENUM_VALUE'") if OCI.logger
319
+ # rubocop: enable Metrics/LineLength
314
320
  @source_type = SOURCE_TYPE_UNKNOWN_ENUM_VALUE
315
321
  else
316
322
  @source_type = source_type
317
323
  end
324
+ # rubocop:enable Style/ConditionalAssignment
318
325
  end
319
326
 
320
327
  # Custom attribute writer method checking allowed values (enum).
321
328
  # @param [Object] type Object to be assigned
322
329
  def type=(type)
330
+ # rubocop:disable Style/ConditionalAssignment
323
331
  if type && !TYPE_ENUM.include?(type)
332
+ # rubocop: disable Metrics/LineLength
333
+ OCI.logger.debug("Unknown value for 'type' [" + type + "]. Mapping to 'TYPE_UNKNOWN_ENUM_VALUE'") if OCI.logger
334
+ # rubocop: enable Metrics/LineLength
324
335
  @type = TYPE_UNKNOWN_ENUM_VALUE
325
336
  else
326
337
  @type = type
327
338
  end
339
+ # rubocop:enable Style/ConditionalAssignment
328
340
  end
329
341
 
342
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
343
+
344
+
330
345
  # Checks equality by comparing each attribute.
331
- # @param [Object] other_object to be compared
332
- def ==(other_object)
333
- return true if self.equal?(other_object)
334
- self.class == other_object.class &&
335
- compartment_id == other_object.compartment_id &&
336
- defined_tags == other_object.defined_tags &&
337
- display_name == other_object.display_name &&
338
- expiration_time == other_object.expiration_time &&
339
- freeform_tags == other_object.freeform_tags &&
340
- id == other_object.id &&
341
- lifecycle_state == other_object.lifecycle_state &&
342
- size_in_gbs == other_object.size_in_gbs &&
343
- size_in_mbs == other_object.size_in_mbs &&
344
- source_type == other_object.source_type &&
345
- time_created == other_object.time_created &&
346
- time_request_received == other_object.time_request_received &&
347
- type == other_object.type &&
348
- unique_size_in_gbs == other_object.unique_size_in_gbs &&
349
- unique_size_in_mbs == other_object.unique_size_in_mbs &&
350
- volume_id == other_object.volume_id
346
+ # @param [Object] other the other object to be compared
347
+ def ==(other)
348
+ return true if equal?(other)
349
+ self.class == other.class &&
350
+ compartment_id == other.compartment_id &&
351
+ defined_tags == other.defined_tags &&
352
+ display_name == other.display_name &&
353
+ expiration_time == other.expiration_time &&
354
+ freeform_tags == other.freeform_tags &&
355
+ id == other.id &&
356
+ lifecycle_state == other.lifecycle_state &&
357
+ size_in_gbs == other.size_in_gbs &&
358
+ size_in_mbs == other.size_in_mbs &&
359
+ source_type == other.source_type &&
360
+ time_created == other.time_created &&
361
+ time_request_received == other.time_request_received &&
362
+ type == other.type &&
363
+ unique_size_in_gbs == other.unique_size_in_gbs &&
364
+ unique_size_in_mbs == other.unique_size_in_mbs &&
365
+ volume_id == other.volume_id
351
366
  end
367
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
352
368
 
353
369
  # @see the `==` method
354
- # @param [Object] other_object to be compared
355
- def eql?(other_object)
356
- self == other_object
370
+ # @param [Object] other the other object to be compared
371
+ def eql?(other)
372
+ self == other
357
373
  end
358
374
 
375
+ # rubocop:disable Metrics/AbcSize, Metrics/LineLength, Layout/EmptyLines
376
+
377
+
359
378
  # Calculates hash code according to all attributes.
360
379
  # @return [Fixnum] Hash code
361
380
  def hash
362
381
  [compartment_id, defined_tags, display_name, expiration_time, freeform_tags, id, lifecycle_state, size_in_gbs, size_in_mbs, source_type, time_created, time_request_received, type, unique_size_in_gbs, unique_size_in_mbs, volume_id].hash
363
382
  end
383
+ # rubocop:enable Metrics/AbcSize, Metrics/LineLength, Layout/EmptyLines
384
+
385
+ # rubocop:disable Metrics/AbcSize, Layout/EmptyLines
386
+
364
387
 
365
388
  # Builds the object from hash
366
389
  # @param [Hash] attributes Model attributes in the form of hash
@@ -372,15 +395,22 @@ module OCI
372
395
  # check to ensure the input is an array given that the the attribute
373
396
  # is documented as an array but the input is not
374
397
  if attributes[self.class.attribute_map[key]].is_a?(Array)
375
- self.public_method("#{key}=").call(attributes[self.class.attribute_map[key]].map{ |v| OCI::Internal::Util.convert_to_type($1, v) } )
398
+ public_method("#{key}=").call(
399
+ attributes[self.class.attribute_map[key]]
400
+ .map { |v| OCI::Internal::Util.convert_to_type(Regexp.last_match(1), v) }
401
+ )
376
402
  end
377
403
  elsif !attributes[self.class.attribute_map[key]].nil?
378
- self.public_method("#{key}=").call(OCI::Internal::Util.convert_to_type(type, attributes[self.class.attribute_map[key]]))
379
- end # or else data not found in attributes(hash), not an issue as the data can be optional
404
+ public_method("#{key}=").call(
405
+ OCI::Internal::Util.convert_to_type(type, attributes[self.class.attribute_map[key]])
406
+ )
407
+ end
408
+ # or else data not found in attributes(hash), not an issue as the data can be optional
380
409
  end
381
410
 
382
411
  self
383
412
  end
413
+ # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
384
414
 
385
415
  # Returns the string representation of the object
386
416
  # @return [String] String presentation of the object
@@ -404,11 +434,11 @@ module OCI
404
434
 
405
435
  # Outputs non-array value in the form of hash
406
436
  # For object, use to_hash. Otherwise, just return the value
407
- # @param [Object] value Any valid value
437
+ # @param [Object] value Any valid value
408
438
  # @return [Hash] Returns the value in the form of hash
409
439
  def _to_hash(value)
410
440
  if value.is_a?(Array)
411
- value.compact.map{ |v| _to_hash(v) }
441
+ value.compact.map { |v| _to_hash(v) }
412
442
  elsif value.is_a?(Hash)
413
443
  {}.tap do |hash|
414
444
  value.each { |k, v| hash[k] = _to_hash(v) }
@@ -419,51 +449,6 @@ module OCI
419
449
  value
420
450
  end
421
451
  end
422
-
423
-
424
-
425
- # Attribute mapping from ruby-style variable name to JSON key.
426
- def self.attribute_map
427
- {
428
- :'compartment_id' => :'compartmentId',
429
- :'defined_tags' => :'definedTags',
430
- :'display_name' => :'displayName',
431
- :'expiration_time' => :'expirationTime',
432
- :'freeform_tags' => :'freeformTags',
433
- :'id' => :'id',
434
- :'lifecycle_state' => :'lifecycleState',
435
- :'size_in_gbs' => :'sizeInGBs',
436
- :'size_in_mbs' => :'sizeInMBs',
437
- :'source_type' => :'sourceType',
438
- :'time_created' => :'timeCreated',
439
- :'time_request_received' => :'timeRequestReceived',
440
- :'type' => :'type',
441
- :'unique_size_in_gbs' => :'uniqueSizeInGBs',
442
- :'unique_size_in_mbs' => :'uniqueSizeInMbs',
443
- :'volume_id' => :'volumeId'
444
- }
445
- end
446
-
447
- # Attribute type mapping.
448
- def self.swagger_types
449
- {
450
- :'compartment_id' => :'String',
451
- :'defined_tags' => :'Hash<String, Hash<String, Object>>',
452
- :'display_name' => :'String',
453
- :'expiration_time' => :'DateTime',
454
- :'freeform_tags' => :'Hash<String, String>',
455
- :'id' => :'String',
456
- :'lifecycle_state' => :'String',
457
- :'size_in_gbs' => :'Integer',
458
- :'size_in_mbs' => :'Integer',
459
- :'source_type' => :'String',
460
- :'time_created' => :'DateTime',
461
- :'time_request_received' => :'DateTime',
462
- :'type' => :'String',
463
- :'unique_size_in_gbs' => :'Integer',
464
- :'unique_size_in_mbs' => :'Integer',
465
- :'volume_id' => :'String'
466
- }
467
- end
468
452
  end
469
453
  end
454
+ # rubocop:enable Lint/UnneededCopDisableDirective