oci 2.5.1 → 2.5.2

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 (378) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +17 -2
  3. data/lib/oci.rb +1 -0
  4. data/lib/oci/autoscaling/auto_scaling_client.rb +5 -5
  5. data/lib/oci/autoscaling/models/auto_scaling_configuration.rb +2 -2
  6. data/lib/oci/autoscaling/models/create_auto_scaling_configuration_details.rb +2 -2
  7. data/lib/oci/autoscaling/models/update_auto_scaling_configuration_details.rb +2 -2
  8. data/lib/oci/budget/budget.rb +33 -0
  9. data/lib/oci/budget/budget_client.rb +767 -0
  10. data/lib/oci/budget/budget_client_composite_operations.rb +224 -0
  11. data/lib/oci/budget/models/alert_rule.rb +398 -0
  12. data/lib/oci/budget/models/alert_rule_summary.rb +396 -0
  13. data/lib/oci/budget/models/alert_type.rb +10 -0
  14. data/lib/oci/budget/models/budget.rb +413 -0
  15. data/lib/oci/budget/models/budget_summary.rb +413 -0
  16. data/lib/oci/budget/models/create_alert_rule_details.rb +288 -0
  17. data/lib/oci/budget/models/create_budget_details.rb +267 -0
  18. data/lib/oci/budget/models/lifecycle_state.rb +10 -0
  19. data/lib/oci/budget/models/reset_period.rb +9 -0
  20. data/lib/oci/budget/models/sort_by.rb +10 -0
  21. data/lib/oci/budget/models/sort_order.rb +10 -0
  22. data/lib/oci/budget/models/threshold_type.rb +10 -0
  23. data/lib/oci/budget/models/update_alert_rule_details.rb +288 -0
  24. data/lib/oci/budget/models/update_budget_details.rb +239 -0
  25. data/lib/oci/budget/util.rb +2 -0
  26. data/lib/oci/core/blockstorage_client.rb +35 -35
  27. data/lib/oci/core/compute_client.rb +41 -41
  28. data/lib/oci/core/compute_management_client.rb +6 -6
  29. data/lib/oci/core/models/app_catalog_listing_resource_version.rb +1 -1
  30. data/lib/oci/core/models/attach_vnic_details.rb +1 -1
  31. data/lib/oci/core/models/boot_volume.rb +4 -4
  32. data/lib/oci/core/models/boot_volume_backup.rb +4 -4
  33. data/lib/oci/core/models/capture_console_history_details.rb +2 -2
  34. data/lib/oci/core/models/console_history.rb +2 -2
  35. data/lib/oci/core/models/cpe.rb +4 -4
  36. data/lib/oci/core/models/create_boot_volume_backup_details.rb +2 -2
  37. data/lib/oci/core/models/create_boot_volume_details.rb +2 -2
  38. data/lib/oci/core/models/create_cpe_details.rb +2 -2
  39. data/lib/oci/core/models/create_dhcp_details.rb +2 -2
  40. data/lib/oci/core/models/create_drg_attachment_details.rb +1 -1
  41. data/lib/oci/core/models/create_drg_details.rb +2 -2
  42. data/lib/oci/core/models/create_image_details.rb +2 -2
  43. data/lib/oci/core/models/create_instance_configuration_details.rb +2 -2
  44. data/lib/oci/core/models/create_instance_console_connection_details.rb +2 -2
  45. data/lib/oci/core/models/create_instance_pool_details.rb +2 -2
  46. data/lib/oci/core/models/create_internet_gateway_details.rb +2 -2
  47. data/lib/oci/core/models/create_ip_sec_connection_details.rb +2 -2
  48. data/lib/oci/core/models/create_local_peering_gateway_details.rb +3 -3
  49. data/lib/oci/core/models/create_nat_gateway_details.rb +4 -4
  50. data/lib/oci/core/models/create_private_ip_details.rb +3 -3
  51. data/lib/oci/core/models/create_public_ip_details.rb +3 -3
  52. data/lib/oci/core/models/create_route_table_details.rb +2 -2
  53. data/lib/oci/core/models/create_security_list_details.rb +2 -2
  54. data/lib/oci/core/models/create_service_gateway_details.rb +4 -4
  55. data/lib/oci/core/models/create_subnet_details.rb +3 -3
  56. data/lib/oci/core/models/create_vcn_details.rb +3 -3
  57. data/lib/oci/core/models/create_vnic_details.rb +7 -7
  58. data/lib/oci/core/models/create_volume_backup_details.rb +2 -2
  59. data/lib/oci/core/models/create_volume_details.rb +2 -2
  60. data/lib/oci/core/models/create_volume_group_backup_details.rb +2 -2
  61. data/lib/oci/core/models/create_volume_group_details.rb +2 -2
  62. data/lib/oci/core/models/cross_connect.rb +2 -2
  63. data/lib/oci/core/models/cross_connect_group.rb +2 -2
  64. data/lib/oci/core/models/dhcp_dns_option.rb +2 -2
  65. data/lib/oci/core/models/dhcp_option.rb +2 -2
  66. data/lib/oci/core/models/dhcp_options.rb +5 -5
  67. data/lib/oci/core/models/dhcp_search_domain_option.rb +1 -1
  68. data/lib/oci/core/models/drg.rb +4 -4
  69. data/lib/oci/core/models/drg_attachment.rb +2 -2
  70. data/lib/oci/core/models/export_image_via_object_storage_uri_details.rb +2 -2
  71. data/lib/oci/core/models/fast_connect_provider_service.rb +1 -1
  72. data/lib/oci/core/models/image.rb +4 -4
  73. data/lib/oci/core/models/instance.rb +5 -5
  74. data/lib/oci/core/models/instance_configuration.rb +2 -2
  75. data/lib/oci/core/models/instance_configuration_attach_vnic_details.rb +1 -1
  76. data/lib/oci/core/models/instance_configuration_create_volume_details.rb +2 -2
  77. data/lib/oci/core/models/instance_configuration_launch_instance_details.rb +3 -3
  78. data/lib/oci/core/models/instance_console_connection.rb +3 -3
  79. data/lib/oci/core/models/instance_pool.rb +2 -2
  80. data/lib/oci/core/models/internet_gateway.rb +4 -4
  81. data/lib/oci/core/models/ip_sec_connection.rb +4 -4
  82. data/lib/oci/core/models/launch_instance_details.rb +3 -3
  83. data/lib/oci/core/models/local_peering_gateway.rb +5 -5
  84. data/lib/oci/core/models/nat_gateway.rb +7 -7
  85. data/lib/oci/core/models/peer_region_for_remote_peering.rb +1 -1
  86. data/lib/oci/core/models/private_ip.rb +5 -5
  87. data/lib/oci/core/models/public_ip.rb +4 -4
  88. data/lib/oci/core/models/remote_peering_connection.rb +2 -2
  89. data/lib/oci/core/models/route_rule.rb +1 -1
  90. data/lib/oci/core/models/route_table.rb +4 -4
  91. data/lib/oci/core/models/security_list.rb +4 -4
  92. data/lib/oci/core/models/service.rb +1 -1
  93. data/lib/oci/core/models/service_gateway.rb +7 -7
  94. data/lib/oci/core/models/service_id_request_details.rb +1 -1
  95. data/lib/oci/core/models/service_id_response_details.rb +1 -1
  96. data/lib/oci/core/models/shape.rb +1 -1
  97. data/lib/oci/core/models/subnet.rb +7 -7
  98. data/lib/oci/core/models/update_boot_volume_backup_details.rb +2 -2
  99. data/lib/oci/core/models/update_boot_volume_details.rb +2 -2
  100. data/lib/oci/core/models/update_console_history_details.rb +2 -2
  101. data/lib/oci/core/models/update_cpe_details.rb +2 -2
  102. data/lib/oci/core/models/update_dhcp_details.rb +2 -2
  103. data/lib/oci/core/models/update_drg_attachment_details.rb +1 -1
  104. data/lib/oci/core/models/update_drg_details.rb +2 -2
  105. data/lib/oci/core/models/update_image_details.rb +2 -2
  106. data/lib/oci/core/models/update_instance_configuration_details.rb +2 -2
  107. data/lib/oci/core/models/update_instance_details.rb +2 -2
  108. data/lib/oci/core/models/update_instance_pool_details.rb +2 -2
  109. data/lib/oci/core/models/update_internet_gateway_details.rb +2 -2
  110. data/lib/oci/core/models/update_ip_sec_connection_details.rb +2 -2
  111. data/lib/oci/core/models/update_local_peering_gateway_details.rb +3 -3
  112. data/lib/oci/core/models/update_nat_gateway_details.rb +2 -2
  113. data/lib/oci/core/models/update_private_ip_details.rb +3 -3
  114. data/lib/oci/core/models/update_public_ip_details.rb +2 -2
  115. data/lib/oci/core/models/update_route_table_details.rb +2 -2
  116. data/lib/oci/core/models/update_security_list_details.rb +2 -2
  117. data/lib/oci/core/models/update_service_gateway_details.rb +2 -2
  118. data/lib/oci/core/models/update_subnet_details.rb +2 -2
  119. data/lib/oci/core/models/update_vcn_details.rb +2 -2
  120. data/lib/oci/core/models/update_vnic_details.rb +4 -4
  121. data/lib/oci/core/models/update_volume_backup_details.rb +2 -2
  122. data/lib/oci/core/models/update_volume_details.rb +2 -2
  123. data/lib/oci/core/models/update_volume_group_backup_details.rb +2 -2
  124. data/lib/oci/core/models/update_volume_group_details.rb +2 -2
  125. data/lib/oci/core/models/vcn.rb +6 -6
  126. data/lib/oci/core/models/virtual_circuit.rb +4 -4
  127. data/lib/oci/core/models/virtual_circuit_public_prefix.rb +1 -1
  128. data/lib/oci/core/models/vnic.rb +7 -7
  129. data/lib/oci/core/models/vnic_attachment.rb +2 -2
  130. data/lib/oci/core/models/volume.rb +4 -4
  131. data/lib/oci/core/models/volume_attachment.rb +1 -1
  132. data/lib/oci/core/models/volume_backup.rb +4 -4
  133. data/lib/oci/core/models/volume_group.rb +3 -3
  134. data/lib/oci/core/models/volume_group_backup.rb +4 -4
  135. data/lib/oci/core/virtual_network_client.rb +121 -121
  136. data/lib/oci/core/virtual_network_client_composite_operations.rb +6 -6
  137. data/lib/oci/database/database.rb +4 -0
  138. data/lib/oci/database/database_client.rb +202 -78
  139. data/lib/oci/database/database_client_composite_operations.rb +65 -25
  140. data/lib/oci/database/models/autonomous_data_warehouse.rb +4 -4
  141. data/lib/oci/database/models/autonomous_data_warehouse_backup.rb +3 -3
  142. data/lib/oci/database/models/autonomous_data_warehouse_backup_summary.rb +4 -4
  143. data/lib/oci/database/models/autonomous_data_warehouse_summary.rb +4 -4
  144. data/lib/oci/database/models/autonomous_database.rb +43 -8
  145. data/lib/oci/database/models/autonomous_database_backup.rb +3 -3
  146. data/lib/oci/database/models/autonomous_database_backup_summary.rb +4 -4
  147. data/lib/oci/database/models/autonomous_database_summary.rb +43 -8
  148. data/lib/oci/database/models/backup.rb +3 -3
  149. data/lib/oci/database/models/backup_summary.rb +4 -4
  150. data/lib/oci/database/models/create_autonomous_data_warehouse_backup_details.rb +1 -1
  151. data/lib/oci/database/models/create_autonomous_data_warehouse_details.rb +3 -3
  152. data/lib/oci/database/models/create_autonomous_database_backup_details.rb +1 -1
  153. data/lib/oci/database/models/create_autonomous_database_details.rb +33 -4
  154. data/lib/oci/database/models/create_backup_details.rb +1 -1
  155. data/lib/oci/database/models/create_data_guard_association_to_existing_db_system_details.rb +1 -1
  156. data/lib/oci/database/models/create_data_guard_association_with_new_db_system_details.rb +1 -1
  157. data/lib/oci/database/models/create_database_details.rb +2 -2
  158. data/lib/oci/database/models/create_database_from_backup_details.rb +1 -1
  159. data/lib/oci/database/models/create_db_home_with_db_system_id_base.rb +1 -1
  160. data/lib/oci/database/models/create_external_backup_job_details.rb +1 -1
  161. data/lib/oci/database/models/data_guard_association.rb +6 -6
  162. data/lib/oci/database/models/data_guard_association_summary.rb +9 -9
  163. data/lib/oci/database/models/database.rb +5 -5
  164. data/lib/oci/database/models/database_summary.rb +7 -7
  165. data/lib/oci/database/models/db_backup_config.rb +1 -1
  166. data/lib/oci/database/models/db_home.rb +4 -4
  167. data/lib/oci/database/models/db_home_summary.rb +6 -6
  168. data/lib/oci/database/models/db_iorm_config.rb +181 -0
  169. data/lib/oci/database/models/db_iorm_config_update_detail.rb +166 -0
  170. data/lib/oci/database/models/db_node.rb +4 -4
  171. data/lib/oci/database/models/db_node_summary.rb +5 -5
  172. data/lib/oci/database/models/db_system.rb +41 -11
  173. data/lib/oci/database/models/db_system_shape_summary.rb +2 -2
  174. data/lib/oci/database/models/db_system_summary.rb +30 -16
  175. data/lib/oci/database/models/db_version_summary.rb +1 -1
  176. data/lib/oci/database/models/exadata_iorm_config.rb +247 -0
  177. data/lib/oci/database/models/exadata_iorm_config_update_details.rb +186 -0
  178. data/lib/oci/database/models/external_backup_job.rb +2 -2
  179. data/lib/oci/database/models/launch_db_system_base.rb +24 -10
  180. data/lib/oci/database/models/launch_db_system_details.rb +5 -1
  181. data/lib/oci/database/models/launch_db_system_from_backup_details.rb +5 -1
  182. data/lib/oci/database/models/patch.rb +1 -1
  183. data/lib/oci/database/models/patch_details.rb +1 -1
  184. data/lib/oci/database/models/patch_history_entry.rb +2 -2
  185. data/lib/oci/database/models/patch_history_entry_summary.rb +2 -2
  186. data/lib/oci/database/models/patch_summary.rb +2 -2
  187. data/lib/oci/database/models/update_autonomous_data_warehouse_details.rb +2 -2
  188. data/lib/oci/database/models/update_autonomous_database_details.rb +2 -2
  189. data/lib/oci/database/models/update_database_details.rb +2 -2
  190. data/lib/oci/database/models/update_db_system_details.rb +2 -2
  191. data/lib/oci/dns/dns_client.rb +1 -1
  192. data/lib/oci/dns/models/create_steering_policy_details.rb +1 -1
  193. data/lib/oci/dns/models/create_zone_details.rb +1 -1
  194. data/lib/oci/dns/models/record.rb +1 -1
  195. data/lib/oci/dns/models/record_details.rb +1 -1
  196. data/lib/oci/dns/models/record_operation.rb +1 -1
  197. data/lib/oci/dns/models/steering_policy.rb +1 -1
  198. data/lib/oci/dns/models/steering_policy_summary.rb +1 -1
  199. data/lib/oci/dns/models/update_steering_policy_details.rb +1 -1
  200. data/lib/oci/dns/models/update_zone_details.rb +1 -1
  201. data/lib/oci/dns/models/zone.rb +1 -1
  202. data/lib/oci/dns/models/zone_summary.rb +1 -1
  203. data/lib/oci/email/email_client.rb +3 -3
  204. data/lib/oci/email/models/create_sender_details.rb +2 -2
  205. data/lib/oci/email/models/sender.rb +2 -2
  206. data/lib/oci/email/models/sender_summary.rb +2 -2
  207. data/lib/oci/email/models/update_sender_details.rb +2 -2
  208. data/lib/oci/file_storage/file_storage_client.rb +14 -14
  209. data/lib/oci/file_storage/models/create_file_system_details.rb +2 -2
  210. data/lib/oci/file_storage/models/create_mount_target_details.rb +3 -3
  211. data/lib/oci/file_storage/models/create_snapshot_details.rb +2 -2
  212. data/lib/oci/file_storage/models/export.rb +1 -1
  213. data/lib/oci/file_storage/models/file_system.rb +3 -3
  214. data/lib/oci/file_storage/models/mount_target.rb +2 -2
  215. data/lib/oci/file_storage/models/snapshot.rb +2 -2
  216. data/lib/oci/file_storage/models/update_file_system_details.rb +2 -2
  217. data/lib/oci/file_storage/models/update_mount_target_details.rb +2 -2
  218. data/lib/oci/file_storage/models/update_snapshot_details.rb +2 -2
  219. data/lib/oci/healthchecks/models/create_http_monitor_details.rb +2 -2
  220. data/lib/oci/healthchecks/models/create_ping_monitor_details.rb +2 -2
  221. data/lib/oci/healthchecks/models/http_monitor.rb +2 -2
  222. data/lib/oci/healthchecks/models/http_monitor_summary.rb +2 -2
  223. data/lib/oci/healthchecks/models/ping_monitor.rb +2 -2
  224. data/lib/oci/healthchecks/models/ping_monitor_summary.rb +2 -2
  225. data/lib/oci/healthchecks/models/update_http_monitor_details.rb +2 -2
  226. data/lib/oci/healthchecks/models/update_ping_monitor_details.rb +2 -2
  227. data/lib/oci/identity/identity.rb +7 -0
  228. data/lib/oci/identity/identity_client.rb +461 -36
  229. data/lib/oci/identity/identity_client_composite_operations.rb +119 -0
  230. data/lib/oci/identity/models/api_key.rb +2 -2
  231. data/lib/oci/identity/models/auth_token.rb +1 -1
  232. data/lib/oci/identity/models/authentication_policy.rb +168 -0
  233. data/lib/oci/identity/models/availability_domain.rb +1 -1
  234. data/lib/oci/identity/models/compartment.rb +5 -5
  235. data/lib/oci/identity/models/create_compartment_details.rb +2 -2
  236. data/lib/oci/identity/models/create_dynamic_group_details.rb +1 -1
  237. data/lib/oci/identity/models/create_group_details.rb +2 -2
  238. data/lib/oci/identity/models/create_identity_provider_details.rb +2 -2
  239. data/lib/oci/identity/models/create_policy_details.rb +4 -4
  240. data/lib/oci/identity/models/create_tag_default_details.rb +180 -0
  241. data/lib/oci/identity/models/create_tag_details.rb +2 -2
  242. data/lib/oci/identity/models/create_tag_namespace_details.rb +2 -2
  243. data/lib/oci/identity/models/create_user_details.rb +13 -3
  244. data/lib/oci/identity/models/customer_secret_key.rb +2 -2
  245. data/lib/oci/identity/models/dynamic_group.rb +2 -2
  246. data/lib/oci/identity/models/group.rb +5 -5
  247. data/lib/oci/identity/models/identity_provider.rb +4 -4
  248. data/lib/oci/identity/models/idp_group_mapping.rb +1 -1
  249. data/lib/oci/identity/models/mfa_totp_device.rb +20 -9
  250. data/lib/oci/identity/models/mfa_totp_device_summary.rb +7 -1
  251. data/lib/oci/identity/models/password_policy.rb +234 -0
  252. data/lib/oci/identity/models/policy.rb +4 -4
  253. data/lib/oci/identity/models/region.rb +2 -2
  254. data/lib/oci/identity/models/region_subscription.rb +2 -2
  255. data/lib/oci/identity/models/saml2_identity_provider.rb +1 -1
  256. data/lib/oci/identity/models/smtp_credential.rb +1 -1
  257. data/lib/oci/identity/models/smtp_credential_summary.rb +1 -1
  258. data/lib/oci/identity/models/swift_password.rb +1 -1
  259. data/lib/oci/identity/models/tag.rb +4 -4
  260. data/lib/oci/identity/models/tag_default.rb +280 -0
  261. data/lib/oci/identity/models/tag_default_summary.rb +274 -0
  262. data/lib/oci/identity/models/tag_namespace.rb +4 -4
  263. data/lib/oci/identity/models/tag_namespace_summary.rb +3 -3
  264. data/lib/oci/identity/models/tag_summary.rb +3 -3
  265. data/lib/oci/identity/models/tenancy.rb +4 -4
  266. data/lib/oci/identity/models/ui_password.rb +1 -1
  267. data/lib/oci/identity/models/update_authentication_policy_details.rb +154 -0
  268. data/lib/oci/identity/models/update_compartment_details.rb +2 -2
  269. data/lib/oci/identity/models/update_dynamic_group_details.rb +1 -1
  270. data/lib/oci/identity/models/update_group_details.rb +2 -2
  271. data/lib/oci/identity/models/update_identity_provider_details.rb +2 -2
  272. data/lib/oci/identity/models/update_policy_details.rb +4 -4
  273. data/lib/oci/identity/models/update_tag_default_details.rb +150 -0
  274. data/lib/oci/identity/models/update_tag_details.rb +3 -3
  275. data/lib/oci/identity/models/update_tag_namespace_details.rb +3 -3
  276. data/lib/oci/identity/models/update_user_details.rb +13 -3
  277. data/lib/oci/identity/models/user.rb +19 -7
  278. data/lib/oci/load_balancer/load_balancer_client.rb +64 -64
  279. data/lib/oci/load_balancer/load_balancer_client_composite_operations.rb +23 -23
  280. data/lib/oci/load_balancer/models/backend.rb +2 -2
  281. data/lib/oci/load_balancer/models/backend_details.rb +1 -1
  282. data/lib/oci/load_balancer/models/backend_set.rb +1 -1
  283. data/lib/oci/load_balancer/models/backend_set_details.rb +1 -1
  284. data/lib/oci/load_balancer/models/certificate.rb +1 -1
  285. data/lib/oci/load_balancer/models/certificate_details.rb +1 -1
  286. data/lib/oci/load_balancer/models/connection_configuration.rb +1 -1
  287. data/lib/oci/load_balancer/models/create_backend_details.rb +2 -2
  288. data/lib/oci/load_balancer/models/create_backend_set_details.rb +1 -1
  289. data/lib/oci/load_balancer/models/create_certificate_details.rb +1 -1
  290. data/lib/oci/load_balancer/models/create_hostname_details.rb +1 -1
  291. data/lib/oci/load_balancer/models/create_listener_details.rb +1 -1
  292. data/lib/oci/load_balancer/models/create_load_balancer_details.rb +6 -6
  293. data/lib/oci/load_balancer/models/health_check_result.rb +1 -1
  294. data/lib/oci/load_balancer/models/health_checker.rb +1 -1
  295. data/lib/oci/load_balancer/models/hostname.rb +1 -1
  296. data/lib/oci/load_balancer/models/hostname_details.rb +1 -1
  297. data/lib/oci/load_balancer/models/listener.rb +1 -1
  298. data/lib/oci/load_balancer/models/load_balancer.rb +11 -11
  299. data/lib/oci/load_balancer/models/load_balancer_health_summary.rb +1 -1
  300. data/lib/oci/load_balancer/models/load_balancer_policy.rb +1 -1
  301. data/lib/oci/load_balancer/models/path_match_type.rb +1 -1
  302. data/lib/oci/load_balancer/models/path_route_set.rb +1 -1
  303. data/lib/oci/load_balancer/models/session_persistence_configuration_details.rb +1 -1
  304. data/lib/oci/load_balancer/models/update_backend_details.rb +1 -1
  305. data/lib/oci/load_balancer/models/update_backend_set_details.rb +1 -1
  306. data/lib/oci/load_balancer/models/update_hostname_details.rb +2 -2
  307. data/lib/oci/load_balancer/models/update_load_balancer_details.rb +2 -2
  308. data/lib/oci/load_balancer/models/work_request.rb +3 -3
  309. data/lib/oci/monitoring/models/alarm.rb +10 -10
  310. data/lib/oci/monitoring/models/alarm_history_collection.rb +1 -1
  311. data/lib/oci/monitoring/models/alarm_status_summary.rb +5 -5
  312. data/lib/oci/monitoring/models/alarm_summary.rb +10 -10
  313. data/lib/oci/monitoring/models/create_alarm_details.rb +5 -5
  314. data/lib/oci/monitoring/models/metric.rb +2 -2
  315. data/lib/oci/monitoring/models/metric_data.rb +2 -2
  316. data/lib/oci/monitoring/models/metric_data_details.rb +1 -1
  317. data/lib/oci/monitoring/models/summarize_metrics_data_details.rb +2 -2
  318. data/lib/oci/monitoring/models/suppression.rb +1 -1
  319. data/lib/oci/monitoring/models/update_alarm_details.rb +5 -5
  320. data/lib/oci/monitoring/monitoring_client.rb +20 -20
  321. data/lib/oci/monitoring/monitoring_client_composite_operations.rb +2 -2
  322. data/lib/oci/object_storage/models/bucket.rb +4 -4
  323. data/lib/oci/object_storage/models/bucket_summary.rb +3 -3
  324. data/lib/oci/object_storage/models/commit_multipart_upload_details.rb +1 -1
  325. data/lib/oci/object_storage/models/commit_multipart_upload_part_details.rb +1 -1
  326. data/lib/oci/object_storage/models/copy_object_details.rb +1 -1
  327. data/lib/oci/object_storage/models/create_bucket_details.rb +3 -3
  328. data/lib/oci/object_storage/models/create_multipart_upload_details.rb +1 -1
  329. data/lib/oci/object_storage/models/list_objects.rb +1 -1
  330. data/lib/oci/object_storage/models/multipart_upload.rb +2 -2
  331. data/lib/oci/object_storage/models/multipart_upload_part_summary.rb +1 -1
  332. data/lib/oci/object_storage/models/object_lifecycle_policy.rb +1 -1
  333. data/lib/oci/object_storage/models/object_lifecycle_rule.rb +2 -2
  334. data/lib/oci/object_storage/models/object_summary.rb +1 -1
  335. data/lib/oci/object_storage/models/preauthenticated_request.rb +2 -2
  336. data/lib/oci/object_storage/models/rename_object_details.rb +1 -1
  337. data/lib/oci/object_storage/models/update_bucket_details.rb +3 -3
  338. data/lib/oci/object_storage/object_storage_client.rb +3 -3
  339. data/lib/oci/ons/models/confirmation_result.rb +2 -2
  340. data/lib/oci/ons/models/create_subscription_details.rb +4 -4
  341. data/lib/oci/ons/models/create_topic_details.rb +3 -3
  342. data/lib/oci/ons/models/notification_topic.rb +4 -4
  343. data/lib/oci/ons/models/notification_topic_summary.rb +4 -4
  344. data/lib/oci/ons/models/subscription.rb +3 -3
  345. data/lib/oci/ons/models/subscription_summary.rb +4 -4
  346. data/lib/oci/ons/models/topic_attributes_details.rb +2 -2
  347. data/lib/oci/ons/models/update_subscription_details.rb +2 -2
  348. data/lib/oci/ons/notification_control_plane_client.rb +9 -9
  349. data/lib/oci/ons/notification_data_plane_client.rb +10 -10
  350. data/lib/oci/ons/notification_data_plane_client_composite_operations.rb +1 -1
  351. data/lib/oci/regions.rb +1 -0
  352. data/lib/oci/resource_manager/models/create_job_details.rb +2 -2
  353. data/lib/oci/resource_manager/models/create_stack_details.rb +2 -2
  354. data/lib/oci/resource_manager/models/job.rb +2 -2
  355. data/lib/oci/resource_manager/models/job_summary.rb +2 -2
  356. data/lib/oci/resource_manager/models/stack.rb +2 -2
  357. data/lib/oci/resource_manager/models/stack_summary.rb +2 -2
  358. data/lib/oci/resource_manager/models/update_job_details.rb +2 -2
  359. data/lib/oci/resource_manager/models/update_stack_details.rb +2 -2
  360. data/lib/oci/resource_manager/resource_manager_client.rb +6 -6
  361. data/lib/oci/streaming/models/create_stream_details.rb +2 -2
  362. data/lib/oci/streaming/models/stream.rb +2 -2
  363. data/lib/oci/streaming/models/stream_summary.rb +2 -2
  364. data/lib/oci/streaming/models/update_stream_details.rb +2 -2
  365. data/lib/oci/version.rb +1 -1
  366. data/lib/oci/waas/models/certificate.rb +2 -2
  367. data/lib/oci/waas/models/certificate_summary.rb +2 -2
  368. data/lib/oci/waas/models/create_certificate_details.rb +1 -1
  369. data/lib/oci/waas/models/create_waas_policy_details.rb +1 -1
  370. data/lib/oci/waas/models/update_waas_policy_details.rb +1 -1
  371. data/lib/oci/waas/models/waas_policy.rb +2 -2
  372. data/lib/oci/waas/models/waas_policy_summary.rb +2 -2
  373. data/lib/oci/waas/models/work_request.rb +3 -3
  374. data/lib/oci/waas/models/work_request_resource.rb +1 -1
  375. data/lib/oci/waas/models/work_request_summary.rb +2 -2
  376. data/lib/oci/waas/waas_client.rb +53 -53
  377. data/lib/oci/waas/waas_client_composite_operations.rb +18 -18
  378. metadata +31 -2
@@ -0,0 +1,267 @@
1
+ # Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.
2
+
3
+ require 'date'
4
+
5
+ # rubocop:disable Lint/UnneededCopDisableDirective
6
+ module OCI
7
+ # The create budget details.
8
+ class Budget::Models::CreateBudgetDetails # rubocop:disable Metrics/LineLength
9
+ RESET_PERIOD_ENUM = [
10
+ RESET_PERIOD_MONTHLY = 'MONTHLY'.freeze
11
+ ].freeze
12
+
13
+ # **[Required]** The OCID of the compartment
14
+ # @return [String]
15
+ attr_accessor :compartment_id
16
+
17
+ # **[Required]** The OCID of the compartment on which budget is applied
18
+ # @return [String]
19
+ attr_accessor :target_compartment_id
20
+
21
+ # The displayName of the budget.
22
+ # @return [String]
23
+ attr_accessor :display_name
24
+
25
+ # The description of the budget.
26
+ # @return [String]
27
+ attr_accessor :description
28
+
29
+ # **[Required]** The amount of the budget expressed as a whole number in the currency of the customer's rate card.
30
+ #
31
+ # @return [Float]
32
+ attr_accessor :amount
33
+
34
+ # **[Required]** The reset period for the budget.
35
+ #
36
+ # @return [String]
37
+ attr_reader :reset_period
38
+
39
+ # Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace.
40
+ # For more information, see [Resource Tags](https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm).
41
+ #
42
+ # Example: `{\"Department\": \"Finance\"}`
43
+ #
44
+ # @return [Hash<String, String>]
45
+ attr_accessor :freeform_tags
46
+
47
+ # Defined tags for this resource. Each key is predefined and scoped to a namespace.
48
+ # For more information, see [Resource Tags](https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm).
49
+ #
50
+ # Example: `{\"Operations\": {\"CostCenter\": \"42\"}}`
51
+ #
52
+ # @return [Hash<String, Hash<String, Object>>]
53
+ attr_accessor :defined_tags
54
+
55
+ # Attribute mapping from ruby-style variable name to JSON key.
56
+ def self.attribute_map
57
+ {
58
+ # rubocop:disable Style/SymbolLiteral
59
+ 'compartment_id': :'compartmentId',
60
+ 'target_compartment_id': :'targetCompartmentId',
61
+ 'display_name': :'displayName',
62
+ 'description': :'description',
63
+ 'amount': :'amount',
64
+ 'reset_period': :'resetPeriod',
65
+ 'freeform_tags': :'freeformTags',
66
+ 'defined_tags': :'definedTags'
67
+ # rubocop:enable Style/SymbolLiteral
68
+ }
69
+ end
70
+
71
+ # Attribute type mapping.
72
+ def self.swagger_types
73
+ {
74
+ # rubocop:disable Style/SymbolLiteral
75
+ 'compartment_id': :'String',
76
+ 'target_compartment_id': :'String',
77
+ 'display_name': :'String',
78
+ 'description': :'String',
79
+ 'amount': :'Float',
80
+ 'reset_period': :'String',
81
+ 'freeform_tags': :'Hash<String, String>',
82
+ 'defined_tags': :'Hash<String, Hash<String, Object>>'
83
+ # rubocop:enable Style/SymbolLiteral
84
+ }
85
+ end
86
+
87
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
88
+ # rubocop:disable Metrics/LineLength, Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
89
+
90
+
91
+ # Initializes the object
92
+ # @param [Hash] attributes Model attributes in the form of hash
93
+ # @option attributes [String] :compartment_id The value to assign to the {#compartment_id} property
94
+ # @option attributes [String] :target_compartment_id The value to assign to the {#target_compartment_id} property
95
+ # @option attributes [String] :display_name The value to assign to the {#display_name} property
96
+ # @option attributes [String] :description The value to assign to the {#description} property
97
+ # @option attributes [Float] :amount The value to assign to the {#amount} property
98
+ # @option attributes [String] :reset_period The value to assign to the {#reset_period} property
99
+ # @option attributes [Hash<String, String>] :freeform_tags The value to assign to the {#freeform_tags} property
100
+ # @option attributes [Hash<String, Hash<String, Object>>] :defined_tags The value to assign to the {#defined_tags} property
101
+ def initialize(attributes = {})
102
+ return unless attributes.is_a?(Hash)
103
+
104
+ # convert string to symbol for hash key
105
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
106
+
107
+ self.compartment_id = attributes[:'compartmentId'] if attributes[:'compartmentId']
108
+
109
+ raise 'You cannot provide both :compartmentId and :compartment_id' if attributes.key?(:'compartmentId') && attributes.key?(:'compartment_id')
110
+
111
+ self.compartment_id = attributes[:'compartment_id'] if attributes[:'compartment_id']
112
+
113
+ self.target_compartment_id = attributes[:'targetCompartmentId'] if attributes[:'targetCompartmentId']
114
+
115
+ raise 'You cannot provide both :targetCompartmentId and :target_compartment_id' if attributes.key?(:'targetCompartmentId') && attributes.key?(:'target_compartment_id')
116
+
117
+ self.target_compartment_id = attributes[:'target_compartment_id'] if attributes[:'target_compartment_id']
118
+
119
+ self.display_name = attributes[:'displayName'] if attributes[:'displayName']
120
+
121
+ raise 'You cannot provide both :displayName and :display_name' if attributes.key?(:'displayName') && attributes.key?(:'display_name')
122
+
123
+ self.display_name = attributes[:'display_name'] if attributes[:'display_name']
124
+
125
+ self.description = attributes[:'description'] if attributes[:'description']
126
+
127
+ self.amount = attributes[:'amount'] if attributes[:'amount']
128
+
129
+ self.reset_period = attributes[:'resetPeriod'] if attributes[:'resetPeriod']
130
+
131
+ raise 'You cannot provide both :resetPeriod and :reset_period' if attributes.key?(:'resetPeriod') && attributes.key?(:'reset_period')
132
+
133
+ self.reset_period = attributes[:'reset_period'] if attributes[:'reset_period']
134
+
135
+ self.freeform_tags = attributes[:'freeformTags'] if attributes[:'freeformTags']
136
+
137
+ raise 'You cannot provide both :freeformTags and :freeform_tags' if attributes.key?(:'freeformTags') && attributes.key?(:'freeform_tags')
138
+
139
+ self.freeform_tags = attributes[:'freeform_tags'] if attributes[:'freeform_tags']
140
+
141
+ self.defined_tags = attributes[:'definedTags'] if attributes[:'definedTags']
142
+
143
+ raise 'You cannot provide both :definedTags and :defined_tags' if attributes.key?(:'definedTags') && attributes.key?(:'defined_tags')
144
+
145
+ self.defined_tags = attributes[:'defined_tags'] if attributes[:'defined_tags']
146
+ end
147
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
148
+ # rubocop:enable Metrics/LineLength, Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
149
+
150
+ # Custom attribute writer method checking allowed values (enum).
151
+ # @param [Object] reset_period Object to be assigned
152
+ def reset_period=(reset_period)
153
+ # rubocop: disable Metrics/LineLength
154
+ raise "Invalid value for 'reset_period': this must be one of the values in RESET_PERIOD_ENUM." if reset_period && !RESET_PERIOD_ENUM.include?(reset_period)
155
+
156
+ # rubocop: enable Metrics/LineLength
157
+ @reset_period = reset_period
158
+ end
159
+
160
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Metrics/LineLength, Layout/EmptyLines
161
+
162
+
163
+ # Checks equality by comparing each attribute.
164
+ # @param [Object] other the other object to be compared
165
+ def ==(other)
166
+ return true if equal?(other)
167
+
168
+ self.class == other.class &&
169
+ compartment_id == other.compartment_id &&
170
+ target_compartment_id == other.target_compartment_id &&
171
+ display_name == other.display_name &&
172
+ description == other.description &&
173
+ amount == other.amount &&
174
+ reset_period == other.reset_period &&
175
+ freeform_tags == other.freeform_tags &&
176
+ defined_tags == other.defined_tags
177
+ end
178
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Metrics/LineLength, Layout/EmptyLines
179
+
180
+ # @see the `==` method
181
+ # @param [Object] other the other object to be compared
182
+ def eql?(other)
183
+ self == other
184
+ end
185
+
186
+ # rubocop:disable Metrics/AbcSize, Metrics/LineLength, Layout/EmptyLines
187
+
188
+
189
+ # Calculates hash code according to all attributes.
190
+ # @return [Fixnum] Hash code
191
+ def hash
192
+ [compartment_id, target_compartment_id, display_name, description, amount, reset_period, freeform_tags, defined_tags].hash
193
+ end
194
+ # rubocop:enable Metrics/AbcSize, Metrics/LineLength, Layout/EmptyLines
195
+
196
+ # rubocop:disable Metrics/AbcSize, Layout/EmptyLines
197
+
198
+
199
+ # Builds the object from hash
200
+ # @param [Hash] attributes Model attributes in the form of hash
201
+ # @return [Object] Returns the model itself
202
+ def build_from_hash(attributes)
203
+ return nil unless attributes.is_a?(Hash)
204
+
205
+ self.class.swagger_types.each_pair do |key, type|
206
+ if type =~ /^Array<(.*)>/i
207
+ # check to ensure the input is an array given that the the attribute
208
+ # is documented as an array but the input is not
209
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
210
+ public_method("#{key}=").call(
211
+ attributes[self.class.attribute_map[key]]
212
+ .map { |v| OCI::Internal::Util.convert_to_type(Regexp.last_match(1), v) }
213
+ )
214
+ end
215
+ elsif !attributes[self.class.attribute_map[key]].nil?
216
+ public_method("#{key}=").call(
217
+ OCI::Internal::Util.convert_to_type(type, attributes[self.class.attribute_map[key]])
218
+ )
219
+ end
220
+ # or else data not found in attributes(hash), not an issue as the data can be optional
221
+ end
222
+
223
+ self
224
+ end
225
+ # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
226
+
227
+ # Returns the string representation of the object
228
+ # @return [String] String presentation of the object
229
+ def to_s
230
+ to_hash.to_s
231
+ end
232
+
233
+ # Returns the object in the form of hash
234
+ # @return [Hash] Returns the object in the form of hash
235
+ def to_hash
236
+ hash = {}
237
+ self.class.attribute_map.each_pair do |attr, param|
238
+ value = public_method(attr).call
239
+ next if value.nil? && !instance_variable_defined?("@#{attr}")
240
+
241
+ hash[param] = _to_hash(value)
242
+ end
243
+ hash
244
+ end
245
+
246
+ private
247
+
248
+ # Outputs non-array value in the form of hash
249
+ # For object, use to_hash. Otherwise, just return the value
250
+ # @param [Object] value Any valid value
251
+ # @return [Hash] Returns the value in the form of hash
252
+ def _to_hash(value)
253
+ if value.is_a?(Array)
254
+ value.compact.map { |v| _to_hash(v) }
255
+ elsif value.is_a?(Hash)
256
+ {}.tap do |hash|
257
+ value.each { |k, v| hash[k] = _to_hash(v) }
258
+ end
259
+ elsif value.respond_to? :to_hash
260
+ value.to_hash
261
+ else
262
+ value
263
+ end
264
+ end
265
+ end
266
+ end
267
+ # rubocop:enable Lint/UnneededCopDisableDirective
@@ -0,0 +1,10 @@
1
+ # Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.
2
+
3
+ module OCI
4
+ module Budget::Models
5
+ LIFECYCLE_STATE_ENUM = [
6
+ LIFECYCLE_STATE_ACTIVE = 'ACTIVE'.freeze,
7
+ LIFECYCLE_STATE_INACTIVE = 'INACTIVE'.freeze
8
+ ].freeze
9
+ end
10
+ end
@@ -0,0 +1,9 @@
1
+ # Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.
2
+
3
+ module OCI
4
+ module Budget::Models
5
+ RESET_PERIOD_ENUM = [
6
+ RESET_PERIOD_MONTHLY = 'MONTHLY'.freeze
7
+ ].freeze
8
+ end
9
+ end
@@ -0,0 +1,10 @@
1
+ # Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.
2
+
3
+ module OCI
4
+ module Budget::Models
5
+ SORT_BY_ENUM = [
6
+ SORT_BY_TIME_CREATED = 'timeCreated'.freeze,
7
+ SORT_BY_DISPLAY_NAME = 'displayName'.freeze
8
+ ].freeze
9
+ end
10
+ end
@@ -0,0 +1,10 @@
1
+ # Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.
2
+
3
+ module OCI
4
+ module Budget::Models
5
+ SORT_ORDER_ENUM = [
6
+ SORT_ORDER_ASC = 'ASC'.freeze,
7
+ SORT_ORDER_DESC = 'DESC'.freeze
8
+ ].freeze
9
+ end
10
+ end
@@ -0,0 +1,10 @@
1
+ # Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.
2
+
3
+ module OCI
4
+ module Budget::Models
5
+ THRESHOLD_TYPE_ENUM = [
6
+ THRESHOLD_TYPE_PERCENTAGE = 'PERCENTAGE'.freeze,
7
+ THRESHOLD_TYPE_ABSOLUTE = 'ABSOLUTE'.freeze
8
+ ].freeze
9
+ end
10
+ end
@@ -0,0 +1,288 @@
1
+ # Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.
2
+
3
+ require 'date'
4
+
5
+ # rubocop:disable Lint/UnneededCopDisableDirective
6
+ module OCI
7
+ # The update alert rule details.
8
+ class Budget::Models::UpdateAlertRuleDetails # rubocop:disable Metrics/LineLength
9
+ TYPE_ENUM = [
10
+ TYPE_ACTUAL = 'ACTUAL'.freeze,
11
+ TYPE_FORECAST = 'FORECAST'.freeze
12
+ ].freeze
13
+
14
+ THRESHOLD_TYPE_ENUM = [
15
+ THRESHOLD_TYPE_PERCENTAGE = 'PERCENTAGE'.freeze,
16
+ THRESHOLD_TYPE_ABSOLUTE = 'ABSOLUTE'.freeze
17
+ ].freeze
18
+
19
+ # The name of the alert rule.
20
+ # @return [String]
21
+ attr_accessor :display_name
22
+
23
+ # Type of alert. Valid values are ACTUAL (the alert will trigger based on actual usage) or
24
+ # FORECAST (the alert will trigger based on predicted usage).
25
+ #
26
+ # @return [String]
27
+ attr_reader :type
28
+
29
+ # The threshold for triggering the alert expressed as a whole number or decimal value.
30
+ # If thresholdType is ABSOLUTE, threshold can have at most 12 digits before the decimal point and up to 2 digits after the decimal point.
31
+ # If thresholdType is PERCENTAGE, the maximum value is 10000 and can have up to 2 digits after the decimal point.
32
+ #
33
+ # @return [Float]
34
+ attr_accessor :threshold
35
+
36
+ # The type of threshold.
37
+ # @return [String]
38
+ attr_reader :threshold_type
39
+
40
+ # The audience that will received the alert when it triggers.
41
+ # @return [String]
42
+ attr_accessor :recipients
43
+
44
+ # The description of the alert rule
45
+ # @return [String]
46
+ attr_accessor :description
47
+
48
+ # The message to be delivered to the recipients when alert is triggered
49
+ # @return [String]
50
+ attr_accessor :message
51
+
52
+ # Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace.
53
+ # For more information, see [Resource Tags](https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm).
54
+ #
55
+ # Example: `{\"Department\": \"Finance\"}`
56
+ #
57
+ # @return [Hash<String, String>]
58
+ attr_accessor :freeform_tags
59
+
60
+ # Defined tags for this resource. Each key is predefined and scoped to a namespace.
61
+ # For more information, see [Resource Tags](https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm).
62
+ #
63
+ # Example: `{\"Operations\": {\"CostCenter\": \"42\"}}`
64
+ #
65
+ # @return [Hash<String, Hash<String, Object>>]
66
+ attr_accessor :defined_tags
67
+
68
+ # Attribute mapping from ruby-style variable name to JSON key.
69
+ def self.attribute_map
70
+ {
71
+ # rubocop:disable Style/SymbolLiteral
72
+ 'display_name': :'displayName',
73
+ 'type': :'type',
74
+ 'threshold': :'threshold',
75
+ 'threshold_type': :'thresholdType',
76
+ 'recipients': :'recipients',
77
+ 'description': :'description',
78
+ 'message': :'message',
79
+ 'freeform_tags': :'freeformTags',
80
+ 'defined_tags': :'definedTags'
81
+ # rubocop:enable Style/SymbolLiteral
82
+ }
83
+ end
84
+
85
+ # Attribute type mapping.
86
+ def self.swagger_types
87
+ {
88
+ # rubocop:disable Style/SymbolLiteral
89
+ 'display_name': :'String',
90
+ 'type': :'String',
91
+ 'threshold': :'Float',
92
+ 'threshold_type': :'String',
93
+ 'recipients': :'String',
94
+ 'description': :'String',
95
+ 'message': :'String',
96
+ 'freeform_tags': :'Hash<String, String>',
97
+ 'defined_tags': :'Hash<String, Hash<String, Object>>'
98
+ # rubocop:enable Style/SymbolLiteral
99
+ }
100
+ end
101
+
102
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
103
+ # rubocop:disable Metrics/LineLength, Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
104
+
105
+
106
+ # Initializes the object
107
+ # @param [Hash] attributes Model attributes in the form of hash
108
+ # @option attributes [String] :display_name The value to assign to the {#display_name} property
109
+ # @option attributes [String] :type The value to assign to the {#type} property
110
+ # @option attributes [Float] :threshold The value to assign to the {#threshold} property
111
+ # @option attributes [String] :threshold_type The value to assign to the {#threshold_type} property
112
+ # @option attributes [String] :recipients The value to assign to the {#recipients} property
113
+ # @option attributes [String] :description The value to assign to the {#description} property
114
+ # @option attributes [String] :message The value to assign to the {#message} property
115
+ # @option attributes [Hash<String, String>] :freeform_tags The value to assign to the {#freeform_tags} property
116
+ # @option attributes [Hash<String, Hash<String, Object>>] :defined_tags The value to assign to the {#defined_tags} property
117
+ def initialize(attributes = {})
118
+ return unless attributes.is_a?(Hash)
119
+
120
+ # convert string to symbol for hash key
121
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
122
+
123
+ self.display_name = attributes[:'displayName'] if attributes[:'displayName']
124
+
125
+ raise 'You cannot provide both :displayName and :display_name' if attributes.key?(:'displayName') && attributes.key?(:'display_name')
126
+
127
+ self.display_name = attributes[:'display_name'] if attributes[:'display_name']
128
+
129
+ self.type = attributes[:'type'] if attributes[:'type']
130
+
131
+ self.threshold = attributes[:'threshold'] if attributes[:'threshold']
132
+
133
+ self.threshold_type = attributes[:'thresholdType'] if attributes[:'thresholdType']
134
+
135
+ raise 'You cannot provide both :thresholdType and :threshold_type' if attributes.key?(:'thresholdType') && attributes.key?(:'threshold_type')
136
+
137
+ self.threshold_type = attributes[:'threshold_type'] if attributes[:'threshold_type']
138
+
139
+ self.recipients = attributes[:'recipients'] if attributes[:'recipients']
140
+
141
+ self.description = attributes[:'description'] if attributes[:'description']
142
+
143
+ self.message = attributes[:'message'] if attributes[:'message']
144
+
145
+ self.freeform_tags = attributes[:'freeformTags'] if attributes[:'freeformTags']
146
+
147
+ raise 'You cannot provide both :freeformTags and :freeform_tags' if attributes.key?(:'freeformTags') && attributes.key?(:'freeform_tags')
148
+
149
+ self.freeform_tags = attributes[:'freeform_tags'] if attributes[:'freeform_tags']
150
+
151
+ self.defined_tags = attributes[:'definedTags'] if attributes[:'definedTags']
152
+
153
+ raise 'You cannot provide both :definedTags and :defined_tags' if attributes.key?(:'definedTags') && attributes.key?(:'defined_tags')
154
+
155
+ self.defined_tags = attributes[:'defined_tags'] if attributes[:'defined_tags']
156
+ end
157
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
158
+ # rubocop:enable Metrics/LineLength, Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
159
+
160
+ # Custom attribute writer method checking allowed values (enum).
161
+ # @param [Object] type Object to be assigned
162
+ def type=(type)
163
+ # rubocop: disable Metrics/LineLength
164
+ raise "Invalid value for 'type': this must be one of the values in TYPE_ENUM." if type && !TYPE_ENUM.include?(type)
165
+
166
+ # rubocop: enable Metrics/LineLength
167
+ @type = type
168
+ end
169
+
170
+ # Custom attribute writer method checking allowed values (enum).
171
+ # @param [Object] threshold_type Object to be assigned
172
+ def threshold_type=(threshold_type)
173
+ # rubocop: disable Metrics/LineLength
174
+ raise "Invalid value for 'threshold_type': this must be one of the values in THRESHOLD_TYPE_ENUM." if threshold_type && !THRESHOLD_TYPE_ENUM.include?(threshold_type)
175
+
176
+ # rubocop: enable Metrics/LineLength
177
+ @threshold_type = threshold_type
178
+ end
179
+
180
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Metrics/LineLength, Layout/EmptyLines
181
+
182
+
183
+ # Checks equality by comparing each attribute.
184
+ # @param [Object] other the other object to be compared
185
+ def ==(other)
186
+ return true if equal?(other)
187
+
188
+ self.class == other.class &&
189
+ display_name == other.display_name &&
190
+ type == other.type &&
191
+ threshold == other.threshold &&
192
+ threshold_type == other.threshold_type &&
193
+ recipients == other.recipients &&
194
+ description == other.description &&
195
+ message == other.message &&
196
+ freeform_tags == other.freeform_tags &&
197
+ defined_tags == other.defined_tags
198
+ end
199
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Metrics/LineLength, Layout/EmptyLines
200
+
201
+ # @see the `==` method
202
+ # @param [Object] other the other object to be compared
203
+ def eql?(other)
204
+ self == other
205
+ end
206
+
207
+ # rubocop:disable Metrics/AbcSize, Metrics/LineLength, Layout/EmptyLines
208
+
209
+
210
+ # Calculates hash code according to all attributes.
211
+ # @return [Fixnum] Hash code
212
+ def hash
213
+ [display_name, type, threshold, threshold_type, recipients, description, message, freeform_tags, defined_tags].hash
214
+ end
215
+ # rubocop:enable Metrics/AbcSize, Metrics/LineLength, Layout/EmptyLines
216
+
217
+ # rubocop:disable Metrics/AbcSize, Layout/EmptyLines
218
+
219
+
220
+ # Builds the object from hash
221
+ # @param [Hash] attributes Model attributes in the form of hash
222
+ # @return [Object] Returns the model itself
223
+ def build_from_hash(attributes)
224
+ return nil unless attributes.is_a?(Hash)
225
+
226
+ self.class.swagger_types.each_pair do |key, type|
227
+ if type =~ /^Array<(.*)>/i
228
+ # check to ensure the input is an array given that the the attribute
229
+ # is documented as an array but the input is not
230
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
231
+ public_method("#{key}=").call(
232
+ attributes[self.class.attribute_map[key]]
233
+ .map { |v| OCI::Internal::Util.convert_to_type(Regexp.last_match(1), v) }
234
+ )
235
+ end
236
+ elsif !attributes[self.class.attribute_map[key]].nil?
237
+ public_method("#{key}=").call(
238
+ OCI::Internal::Util.convert_to_type(type, attributes[self.class.attribute_map[key]])
239
+ )
240
+ end
241
+ # or else data not found in attributes(hash), not an issue as the data can be optional
242
+ end
243
+
244
+ self
245
+ end
246
+ # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
247
+
248
+ # Returns the string representation of the object
249
+ # @return [String] String presentation of the object
250
+ def to_s
251
+ to_hash.to_s
252
+ end
253
+
254
+ # Returns the object in the form of hash
255
+ # @return [Hash] Returns the object in the form of hash
256
+ def to_hash
257
+ hash = {}
258
+ self.class.attribute_map.each_pair do |attr, param|
259
+ value = public_method(attr).call
260
+ next if value.nil? && !instance_variable_defined?("@#{attr}")
261
+
262
+ hash[param] = _to_hash(value)
263
+ end
264
+ hash
265
+ end
266
+
267
+ private
268
+
269
+ # Outputs non-array value in the form of hash
270
+ # For object, use to_hash. Otherwise, just return the value
271
+ # @param [Object] value Any valid value
272
+ # @return [Hash] Returns the value in the form of hash
273
+ def _to_hash(value)
274
+ if value.is_a?(Array)
275
+ value.compact.map { |v| _to_hash(v) }
276
+ elsif value.is_a?(Hash)
277
+ {}.tap do |hash|
278
+ value.each { |k, v| hash[k] = _to_hash(v) }
279
+ end
280
+ elsif value.respond_to? :to_hash
281
+ value.to_hash
282
+ else
283
+ value
284
+ end
285
+ end
286
+ end
287
+ end
288
+ # rubocop:enable Lint/UnneededCopDisableDirective