oci 2.5.10 → 2.5.11

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 (225) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +4 -1
  3. data/lib/oci.rb +3 -0
  4. data/lib/oci/budget/budget.rb +1 -0
  5. data/lib/oci/budget/budget_client.rb +21 -1
  6. data/lib/oci/budget/models/budget.rb +52 -2
  7. data/lib/oci/budget/models/budget_summary.rb +52 -2
  8. data/lib/oci/budget/models/create_budget_details.rb +55 -2
  9. data/lib/oci/budget/models/target_type.rb +10 -0
  10. data/lib/oci/core/blockstorage_client.rb +18 -6
  11. data/lib/oci/core/compute_client.rb +75 -0
  12. data/lib/oci/core/compute_management_client.rb +4 -1
  13. data/lib/oci/core/core.rb +12 -0
  14. data/lib/oci/core/models/add_security_rule_details.rb +2 -2
  15. data/lib/oci/core/models/boot_volume_backup.rb +19 -1
  16. data/lib/oci/core/models/change_boot_volume_backup_compartment_details.rb +2 -2
  17. data/lib/oci/core/models/change_boot_volume_compartment_details.rb +2 -2
  18. data/lib/oci/core/models/change_cpe_compartment_details.rb +155 -0
  19. data/lib/oci/core/models/change_cross_connect_compartment_details.rb +155 -0
  20. data/lib/oci/core/models/change_cross_connect_group_compartment_details.rb +155 -0
  21. data/lib/oci/core/models/change_instance_compartment_details.rb +154 -0
  22. data/lib/oci/core/models/change_ip_sec_connection_compartment_details.rb +155 -0
  23. data/lib/oci/core/models/change_remote_peering_connection_compartment_details.rb +155 -0
  24. data/lib/oci/core/models/change_virtual_circuit_compartment_details.rb +155 -0
  25. data/lib/oci/core/models/change_volume_backup_compartment_details.rb +2 -2
  26. data/lib/oci/core/models/change_volume_compartment_details.rb +2 -2
  27. data/lib/oci/core/models/change_volume_group_backup_compartment_details.rb +2 -2
  28. data/lib/oci/core/models/change_volume_group_compartment_details.rb +2 -2
  29. data/lib/oci/core/models/copy_volume_backup_details.rb +27 -4
  30. data/lib/oci/core/models/create_cross_connect_details.rb +37 -1
  31. data/lib/oci/core/models/create_cross_connect_group_details.rb +40 -4
  32. data/lib/oci/core/models/create_instance_configuration_base.rb +250 -0
  33. data/lib/oci/core/models/create_instance_configuration_details.rb +15 -57
  34. data/lib/oci/core/models/create_instance_configuration_from_instance_details.rb +179 -0
  35. data/lib/oci/core/models/create_ipv6_details.rb +249 -0
  36. data/lib/oci/core/models/create_remote_peering_connection_details.rb +40 -4
  37. data/lib/oci/core/models/create_service_gateway_details.rb +23 -1
  38. data/lib/oci/core/models/create_subnet_details.rb +24 -1
  39. data/lib/oci/core/models/create_vcn_details.rb +56 -4
  40. data/lib/oci/core/models/create_virtual_circuit_details.rb +38 -2
  41. data/lib/oci/core/models/cross_connect.rb +37 -1
  42. data/lib/oci/core/models/cross_connect_group.rb +37 -1
  43. data/lib/oci/core/models/cross_connect_mapping.rb +50 -1
  44. data/lib/oci/core/models/egress_security_rule.rb +10 -7
  45. data/lib/oci/core/models/ingress_security_rule.rb +10 -7
  46. data/lib/oci/core/models/instance.rb +1 -0
  47. data/lib/oci/core/models/ipv6.rb +375 -0
  48. data/lib/oci/core/models/private_ip.rb +1 -0
  49. data/lib/oci/core/models/remote_peering_connection.rb +37 -1
  50. data/lib/oci/core/models/route_rule.rb +4 -1
  51. data/lib/oci/core/models/security_rule.rb +2 -2
  52. data/lib/oci/core/models/service_gateway.rb +18 -1
  53. data/lib/oci/core/models/subnet.rb +56 -1
  54. data/lib/oci/core/models/update_cross_connect_details.rb +37 -1
  55. data/lib/oci/core/models/update_cross_connect_group_details.rb +40 -4
  56. data/lib/oci/core/models/update_ipv6_details.rb +229 -0
  57. data/lib/oci/core/models/update_remote_peering_connection_details.rb +40 -4
  58. data/lib/oci/core/models/update_security_rule_details.rb +2 -2
  59. data/lib/oci/core/models/update_service_gateway_details.rb +18 -1
  60. data/lib/oci/core/models/update_virtual_circuit_details.rb +37 -1
  61. data/lib/oci/core/models/vcn.rb +42 -1
  62. data/lib/oci/core/models/virtual_circuit.rb +37 -1
  63. data/lib/oci/core/models/volume_backup.rb +19 -1
  64. data/lib/oci/core/virtual_network_client.rb +744 -10
  65. data/lib/oci/core/virtual_network_client_composite_operations.rb +119 -0
  66. data/lib/oci/database/database.rb +3 -0
  67. data/lib/oci/database/database_client.rb +320 -36
  68. data/lib/oci/database/models/autonomous_data_warehouse.rb +1 -0
  69. data/lib/oci/database/models/autonomous_data_warehouse_console_token_details.rb +164 -0
  70. data/lib/oci/database/models/autonomous_data_warehouse_summary.rb +1 -0
  71. data/lib/oci/database/models/autonomous_database.rb +5 -3
  72. data/lib/oci/database/models/autonomous_database_connection_urls.rb +1 -1
  73. data/lib/oci/database/models/autonomous_database_console_token_details.rb +163 -0
  74. data/lib/oci/database/models/autonomous_database_summary.rb +5 -3
  75. data/lib/oci/database/models/autonomous_db_preview_version_summary.rb +1 -3
  76. data/lib/oci/database/models/change_compartment_details.rb +155 -0
  77. data/lib/oci/database/models/create_autonomous_database_base.rb +5 -4
  78. data/lib/oci/database/models/create_data_guard_association_with_new_db_system_details.rb +2 -5
  79. data/lib/oci/database/models/create_database_details.rb +1 -1
  80. data/lib/oci/database/models/create_db_home_with_db_system_id_details.rb +2 -1
  81. data/lib/oci/database/models/create_db_home_with_db_system_id_from_backup_details.rb +2 -1
  82. data/lib/oci/database/models/db_system.rb +2 -5
  83. data/lib/oci/database/models/db_system_summary.rb +2 -5
  84. data/lib/oci/database/models/launch_db_system_base.rb +3 -5
  85. data/lib/oci/database/models/maintenance_window.rb +2 -1
  86. data/lib/oci/database/models/update_autonomous_database_details.rb +5 -3
  87. data/lib/oci/database/models/update_db_system_details.rb +2 -5
  88. data/lib/oci/dns/dns.rb +2 -0
  89. data/lib/oci/dns/dns_client.rb +138 -1
  90. data/lib/oci/dns/models/change_steering_policy_compartment_details.rb +155 -0
  91. data/lib/oci/dns/models/change_zone_compartment_details.rb +155 -0
  92. data/lib/oci/events/events.rb +34 -0
  93. data/lib/oci/events/events_client.rb +537 -0
  94. data/lib/oci/events/events_client_composite_operations.rb +145 -0
  95. data/lib/oci/events/models/action.rb +275 -0
  96. data/lib/oci/events/models/action_details.rb +222 -0
  97. data/lib/oci/events/models/action_details_list.rb +150 -0
  98. data/lib/oci/events/models/action_list.rb +151 -0
  99. data/lib/oci/events/models/change_rule_compartment_details.rb +156 -0
  100. data/lib/oci/events/models/create_faa_s_action_details.rb +170 -0
  101. data/lib/oci/events/models/create_notification_service_action_details.rb +170 -0
  102. data/lib/oci/events/models/create_rule_details.rb +284 -0
  103. data/lib/oci/events/models/create_streaming_service_action_details.rb +170 -0
  104. data/lib/oci/events/models/faa_s_action.rb +178 -0
  105. data/lib/oci/events/models/notification_service_action.rb +179 -0
  106. data/lib/oci/events/models/rule.rb +372 -0
  107. data/lib/oci/events/models/rule_summary.rb +321 -0
  108. data/lib/oci/events/models/streaming_service_action.rb +178 -0
  109. data/lib/oci/events/models/update_rule_details.rb +266 -0
  110. data/lib/oci/events/util.rb +2 -0
  111. data/lib/oci/functions/functions.rb +29 -0
  112. data/lib/oci/functions/functions_invoke_client.rb +237 -0
  113. data/lib/oci/functions/functions_invoke_client_composite_operations.rb +24 -0
  114. data/lib/oci/functions/functions_management_client.rb +851 -0
  115. data/lib/oci/functions/functions_management_client_composite_operations.rb +266 -0
  116. data/lib/oci/functions/models/application.rb +322 -0
  117. data/lib/oci/functions/models/application_summary.rb +281 -0
  118. data/lib/oci/functions/models/change_application_compartment_details.rb +156 -0
  119. data/lib/oci/functions/models/create_application_details.rb +236 -0
  120. data/lib/oci/functions/models/create_function_details.rb +280 -0
  121. data/lib/oci/functions/models/function.rb +397 -0
  122. data/lib/oci/functions/models/function_summary.rb +381 -0
  123. data/lib/oci/functions/models/update_application_details.rb +191 -0
  124. data/lib/oci/functions/models/update_function_details.rb +250 -0
  125. data/lib/oci/functions/util.rb +2 -0
  126. data/lib/oci/healthchecks/health_checks_client.rb +147 -1
  127. data/lib/oci/healthchecks/healthchecks.rb +2 -0
  128. data/lib/oci/healthchecks/models/change_http_monitor_compartment_details.rb +155 -0
  129. data/lib/oci/healthchecks/models/change_ping_monitor_compartment_details.rb +155 -0
  130. data/lib/oci/healthchecks/models/create_http_monitor_details.rb +2 -1
  131. data/lib/oci/healthchecks/models/create_on_demand_http_probe_details.rb +2 -1
  132. data/lib/oci/healthchecks/models/create_on_demand_ping_probe_details.rb +2 -1
  133. data/lib/oci/healthchecks/models/create_ping_monitor_details.rb +2 -1
  134. data/lib/oci/healthchecks/models/http_monitor.rb +2 -0
  135. data/lib/oci/healthchecks/models/http_probe.rb +2 -0
  136. data/lib/oci/healthchecks/models/ping_monitor.rb +2 -0
  137. data/lib/oci/healthchecks/models/ping_probe.rb +2 -0
  138. data/lib/oci/healthchecks/models/update_http_monitor_details.rb +2 -0
  139. data/lib/oci/healthchecks/models/update_ping_monitor_details.rb +2 -0
  140. data/lib/oci/identity/identity.rb +1 -0
  141. data/lib/oci/identity/identity_client.rb +70 -0
  142. data/lib/oci/identity/identity_client_composite_operations.rb +50 -0
  143. data/lib/oci/identity/models/move_compartment_details.rb +155 -0
  144. data/lib/oci/key_management/key_management.rb +2 -0
  145. data/lib/oci/key_management/kms_management_client.rb +73 -0
  146. data/lib/oci/key_management/kms_vault_client.rb +73 -0
  147. data/lib/oci/key_management/models/change_key_compartment_details.rb +153 -0
  148. data/lib/oci/key_management/models/change_vault_compartment_details.rb +153 -0
  149. data/lib/oci/key_management/models/key.rb +1 -0
  150. data/lib/oci/key_management/models/key_summary.rb +1 -0
  151. data/lib/oci/key_management/models/vault.rb +1 -0
  152. data/lib/oci/key_management/models/vault_summary.rb +1 -0
  153. data/lib/oci/limits/limits.rb +23 -0
  154. data/lib/oci/limits/models/create_quota_details.rb +220 -0
  155. data/lib/oci/limits/models/quota.rb +287 -0
  156. data/lib/oci/limits/models/quota_summary.rb +273 -0
  157. data/lib/oci/limits/models/update_quota_details.rb +194 -0
  158. data/lib/oci/limits/quotas_client.rb +439 -0
  159. data/lib/oci/limits/quotas_client_composite_operations.rb +143 -0
  160. data/lib/oci/limits/util.rb +2 -0
  161. data/lib/oci/load_balancer/load_balancer.rb +9 -0
  162. data/lib/oci/load_balancer/load_balancer_client.rb +139 -0
  163. data/lib/oci/load_balancer/load_balancer_client_composite_operations.rb +50 -0
  164. data/lib/oci/load_balancer/models/allow_rule.rb +181 -0
  165. data/lib/oci/load_balancer/models/backend_set.rb +21 -4
  166. data/lib/oci/load_balancer/models/backend_set_details.rb +21 -4
  167. data/lib/oci/load_balancer/models/change_load_balancer_compartment_details.rb +156 -0
  168. data/lib/oci/load_balancer/models/control_access_using_http_methods_rule.rb +205 -0
  169. data/lib/oci/load_balancer/models/create_backend_set_details.rb +21 -4
  170. data/lib/oci/load_balancer/models/create_load_balancer_details.rb +37 -1
  171. data/lib/oci/load_balancer/models/lb_cookie_session_persistence_configuration_details.rb +334 -0
  172. data/lib/oci/load_balancer/models/listener_rule_summary.rb +166 -0
  173. data/lib/oci/load_balancer/models/rule.rb +4 -0
  174. data/lib/oci/load_balancer/models/rule_condition.rb +192 -0
  175. data/lib/oci/load_balancer/models/session_persistence_configuration_details.rb +6 -0
  176. data/lib/oci/load_balancer/models/source_ip_address_condition.rb +167 -0
  177. data/lib/oci/load_balancer/models/source_vcn_id_condition.rb +169 -0
  178. data/lib/oci/load_balancer/models/source_vcn_ip_address_condition.rb +171 -0
  179. data/lib/oci/load_balancer/models/update_backend_set_details.rb +21 -4
  180. data/lib/oci/monitoring/models/alarm.rb +4 -3
  181. data/lib/oci/monitoring/models/alarm_summary.rb +4 -3
  182. data/lib/oci/monitoring/models/change_alarm_compartment_details.rb +155 -0
  183. data/lib/oci/monitoring/models/create_alarm_details.rb +4 -3
  184. data/lib/oci/monitoring/models/datapoint.rb +1 -1
  185. data/lib/oci/monitoring/models/list_metrics_details.rb +4 -4
  186. data/lib/oci/monitoring/models/metric_data.rb +14 -0
  187. data/lib/oci/monitoring/models/metric_data_details.rb +6 -4
  188. data/lib/oci/monitoring/models/summarize_metrics_data_details.rb +3 -0
  189. data/lib/oci/monitoring/models/update_alarm_details.rb +4 -3
  190. data/lib/oci/monitoring/monitoring.rb +1 -0
  191. data/lib/oci/monitoring/monitoring_client.rb +140 -5
  192. data/lib/oci/ons/models/backoff_retry_policy.rb +2 -2
  193. data/lib/oci/ons/models/change_compartment_details.rb +156 -0
  194. data/lib/oci/ons/models/confirmation_result.rb +5 -6
  195. data/lib/oci/ons/models/create_topic_details.rb +1 -1
  196. data/lib/oci/ons/models/notification_topic.rb +2 -2
  197. data/lib/oci/ons/models/notification_topic_summary.rb +2 -2
  198. data/lib/oci/ons/models/subscription.rb +47 -4
  199. data/lib/oci/ons/models/subscription_summary.rb +19 -3
  200. data/lib/oci/ons/notification_control_plane_client.rb +95 -8
  201. data/lib/oci/ons/notification_data_plane_client.rb +109 -8
  202. data/lib/oci/ons/ons.rb +1 -0
  203. data/lib/oci/regions.rb +3 -0
  204. data/lib/oci/streaming/models/change_stream_compartment_details.rb +155 -0
  205. data/lib/oci/streaming/stream_admin_client.rb +58 -0
  206. data/lib/oci/streaming/streaming.rb +1 -0
  207. data/lib/oci/version.rb +1 -1
  208. data/lib/oci/waas/models/access_rule_criteria.rb +14 -2
  209. data/lib/oci/waas/models/change_certificate_compartment_details.rb +154 -0
  210. data/lib/oci/waas/models/change_waas_policy_compartment_details.rb +154 -0
  211. data/lib/oci/waas/models/create_certificate_details.rb +2 -2
  212. data/lib/oci/waas/models/protection_rule_exclusion.rb +16 -1
  213. data/lib/oci/waas/models/protection_settings.rb +9 -5
  214. data/lib/oci/waas/models/waas_policy.rb +1 -1
  215. data/lib/oci/waas/models/waf_config_details.rb +8 -8
  216. data/lib/oci/waas/models/waf_log.rb +40 -19
  217. data/lib/oci/waas/waas.rb +2 -0
  218. data/lib/oci/waas/waas_client.rb +155 -27
  219. data/lib/oci/work_requests/models/work_request.rb +14 -8
  220. data/lib/oci/work_requests/models/work_request_error.rb +3 -3
  221. data/lib/oci/work_requests/models/work_request_log_entry.rb +2 -2
  222. data/lib/oci/work_requests/models/work_request_resource.rb +9 -7
  223. data/lib/oci/work_requests/models/work_request_summary.rb +12 -6
  224. data/lib/oci/work_requests/work_request_client.rb +33 -16
  225. metadata +81 -2
@@ -0,0 +1,229 @@
1
+ # Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.
2
+
3
+ require 'date'
4
+
5
+ # rubocop:disable Lint/UnneededCopDisableDirective, Metrics/LineLength
6
+ module OCI
7
+ # UpdateIpv6Details model.
8
+ class Core::Models::UpdateIpv6Details
9
+ # Defined tags for this resource. Each key is predefined and scoped to a
10
+ # namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm).
11
+ #
12
+ # Example: `{\"Operations\": {\"CostCenter\": \"42\"}}`
13
+ #
14
+ # @return [Hash<String, Hash<String, Object>>]
15
+ attr_accessor :defined_tags
16
+
17
+ # A user-friendly name. Does not have to be unique, and it's changeable. Avoid
18
+ # entering confidential information.
19
+ #
20
+ # @return [String]
21
+ attr_accessor :display_name
22
+
23
+ # Free-form tags for this resource. Each tag is a simple key-value pair with no
24
+ # predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm).
25
+ #
26
+ # Example: `{\"Department\": \"Finance\"}`
27
+ #
28
+ # @return [Hash<String, String>]
29
+ attr_accessor :freeform_tags
30
+
31
+ # Whether the IPv6 can be used for internet communication. Allowed by default for an IPv6 in
32
+ # a public subnet. Never allowed for an IPv6 in a private subnet. If the value is `true`, the
33
+ # IPv6 uses its public IP address for internet communication.
34
+ #
35
+ # If you switch this from `true` to `false`, the `publicIpAddress` attribute for the IPv6
36
+ # becomes null.
37
+ #
38
+ # Example: `false`
39
+ #
40
+ # @return [BOOLEAN]
41
+ attr_accessor :is_internet_access_allowed
42
+
43
+ # The [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) of the VNIC to reassign the IPv6 to.
44
+ # The VNIC must be in the same subnet as the current VNIC.
45
+ #
46
+ # @return [String]
47
+ attr_accessor :vnic_id
48
+
49
+ # Attribute mapping from ruby-style variable name to JSON key.
50
+ def self.attribute_map
51
+ {
52
+ # rubocop:disable Style/SymbolLiteral
53
+ 'defined_tags': :'definedTags',
54
+ 'display_name': :'displayName',
55
+ 'freeform_tags': :'freeformTags',
56
+ 'is_internet_access_allowed': :'isInternetAccessAllowed',
57
+ 'vnic_id': :'vnicId'
58
+ # rubocop:enable Style/SymbolLiteral
59
+ }
60
+ end
61
+
62
+ # Attribute type mapping.
63
+ def self.swagger_types
64
+ {
65
+ # rubocop:disable Style/SymbolLiteral
66
+ 'defined_tags': :'Hash<String, Hash<String, Object>>',
67
+ 'display_name': :'String',
68
+ 'freeform_tags': :'Hash<String, String>',
69
+ 'is_internet_access_allowed': :'BOOLEAN',
70
+ 'vnic_id': :'String'
71
+ # rubocop:enable Style/SymbolLiteral
72
+ }
73
+ end
74
+
75
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
76
+ # rubocop:disable Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
77
+
78
+
79
+ # Initializes the object
80
+ # @param [Hash] attributes Model attributes in the form of hash
81
+ # @option attributes [Hash<String, Hash<String, Object>>] :defined_tags The value to assign to the {#defined_tags} property
82
+ # @option attributes [String] :display_name The value to assign to the {#display_name} property
83
+ # @option attributes [Hash<String, String>] :freeform_tags The value to assign to the {#freeform_tags} property
84
+ # @option attributes [BOOLEAN] :is_internet_access_allowed The value to assign to the {#is_internet_access_allowed} property
85
+ # @option attributes [String] :vnic_id The value to assign to the {#vnic_id} property
86
+ def initialize(attributes = {})
87
+ return unless attributes.is_a?(Hash)
88
+
89
+ # convert string to symbol for hash key
90
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
91
+
92
+ self.defined_tags = attributes[:'definedTags'] if attributes[:'definedTags']
93
+
94
+ raise 'You cannot provide both :definedTags and :defined_tags' if attributes.key?(:'definedTags') && attributes.key?(:'defined_tags')
95
+
96
+ self.defined_tags = attributes[:'defined_tags'] if attributes[:'defined_tags']
97
+
98
+ self.display_name = attributes[:'displayName'] if attributes[:'displayName']
99
+
100
+ raise 'You cannot provide both :displayName and :display_name' if attributes.key?(:'displayName') && attributes.key?(:'display_name')
101
+
102
+ self.display_name = attributes[:'display_name'] if attributes[:'display_name']
103
+
104
+ self.freeform_tags = attributes[:'freeformTags'] if attributes[:'freeformTags']
105
+
106
+ raise 'You cannot provide both :freeformTags and :freeform_tags' if attributes.key?(:'freeformTags') && attributes.key?(:'freeform_tags')
107
+
108
+ self.freeform_tags = attributes[:'freeform_tags'] if attributes[:'freeform_tags']
109
+
110
+ self.is_internet_access_allowed = attributes[:'isInternetAccessAllowed'] unless attributes[:'isInternetAccessAllowed'].nil?
111
+
112
+ raise 'You cannot provide both :isInternetAccessAllowed and :is_internet_access_allowed' if attributes.key?(:'isInternetAccessAllowed') && attributes.key?(:'is_internet_access_allowed')
113
+
114
+ self.is_internet_access_allowed = attributes[:'is_internet_access_allowed'] unless attributes[:'is_internet_access_allowed'].nil?
115
+
116
+ self.vnic_id = attributes[:'vnicId'] if attributes[:'vnicId']
117
+
118
+ raise 'You cannot provide both :vnicId and :vnic_id' if attributes.key?(:'vnicId') && attributes.key?(:'vnic_id')
119
+
120
+ self.vnic_id = attributes[:'vnic_id'] if attributes[:'vnic_id']
121
+ end
122
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
123
+ # rubocop:enable Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
124
+
125
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
126
+
127
+
128
+ # Checks equality by comparing each attribute.
129
+ # @param [Object] other the other object to be compared
130
+ def ==(other)
131
+ return true if equal?(other)
132
+
133
+ self.class == other.class &&
134
+ defined_tags == other.defined_tags &&
135
+ display_name == other.display_name &&
136
+ freeform_tags == other.freeform_tags &&
137
+ is_internet_access_allowed == other.is_internet_access_allowed &&
138
+ vnic_id == other.vnic_id
139
+ end
140
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
141
+
142
+ # @see the `==` method
143
+ # @param [Object] other the other object to be compared
144
+ def eql?(other)
145
+ self == other
146
+ end
147
+
148
+ # rubocop:disable Metrics/AbcSize, Layout/EmptyLines
149
+
150
+
151
+ # Calculates hash code according to all attributes.
152
+ # @return [Fixnum] Hash code
153
+ def hash
154
+ [defined_tags, display_name, freeform_tags, is_internet_access_allowed, vnic_id].hash
155
+ end
156
+ # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
157
+
158
+ # rubocop:disable Metrics/AbcSize, Layout/EmptyLines
159
+
160
+
161
+ # Builds the object from hash
162
+ # @param [Hash] attributes Model attributes in the form of hash
163
+ # @return [Object] Returns the model itself
164
+ def build_from_hash(attributes)
165
+ return nil unless attributes.is_a?(Hash)
166
+
167
+ self.class.swagger_types.each_pair do |key, type|
168
+ if type =~ /^Array<(.*)>/i
169
+ # check to ensure the input is an array given that the the attribute
170
+ # is documented as an array but the input is not
171
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
172
+ public_method("#{key}=").call(
173
+ attributes[self.class.attribute_map[key]]
174
+ .map { |v| OCI::Internal::Util.convert_to_type(Regexp.last_match(1), v) }
175
+ )
176
+ end
177
+ elsif !attributes[self.class.attribute_map[key]].nil?
178
+ public_method("#{key}=").call(
179
+ OCI::Internal::Util.convert_to_type(type, attributes[self.class.attribute_map[key]])
180
+ )
181
+ end
182
+ # or else data not found in attributes(hash), not an issue as the data can be optional
183
+ end
184
+
185
+ self
186
+ end
187
+ # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
188
+
189
+ # Returns the string representation of the object
190
+ # @return [String] String presentation of the object
191
+ def to_s
192
+ to_hash.to_s
193
+ end
194
+
195
+ # Returns the object in the form of hash
196
+ # @return [Hash] Returns the object in the form of hash
197
+ def to_hash
198
+ hash = {}
199
+ self.class.attribute_map.each_pair do |attr, param|
200
+ value = public_method(attr).call
201
+ next if value.nil? && !instance_variable_defined?("@#{attr}")
202
+
203
+ hash[param] = _to_hash(value)
204
+ end
205
+ hash
206
+ end
207
+
208
+ private
209
+
210
+ # Outputs non-array value in the form of hash
211
+ # For object, use to_hash. Otherwise, just return the value
212
+ # @param [Object] value Any valid value
213
+ # @return [Hash] Returns the value in the form of hash
214
+ def _to_hash(value)
215
+ if value.is_a?(Array)
216
+ value.compact.map { |v| _to_hash(v) }
217
+ elsif value.is_a?(Hash)
218
+ {}.tap do |hash|
219
+ value.each { |k, v| hash[k] = _to_hash(v) }
220
+ end
221
+ elsif value.respond_to? :to_hash
222
+ value.to_hash
223
+ else
224
+ value
225
+ end
226
+ end
227
+ end
228
+ end
229
+ # rubocop:enable Lint/UnneededCopDisableDirective, Metrics/LineLength
@@ -6,17 +6,35 @@ require 'date'
6
6
  module OCI
7
7
  # UpdateRemotePeeringConnectionDetails model.
8
8
  class Core::Models::UpdateRemotePeeringConnectionDetails
9
+ # Defined tags for this resource. Each key is predefined and scoped to a
10
+ # namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm).
11
+ #
12
+ # Example: `{\"Operations\": {\"CostCenter\": \"42\"}}`
13
+ #
14
+ # @return [Hash<String, Hash<String, Object>>]
15
+ attr_accessor :defined_tags
16
+
9
17
  # A user-friendly name. Does not have to be unique, and it's changeable.
10
18
  # Avoid entering confidential information.
11
19
  #
12
20
  # @return [String]
13
21
  attr_accessor :display_name
14
22
 
23
+ # Free-form tags for this resource. Each tag is a simple key-value pair with no
24
+ # predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm).
25
+ #
26
+ # Example: `{\"Department\": \"Finance\"}`
27
+ #
28
+ # @return [Hash<String, String>]
29
+ attr_accessor :freeform_tags
30
+
15
31
  # Attribute mapping from ruby-style variable name to JSON key.
16
32
  def self.attribute_map
17
33
  {
18
34
  # rubocop:disable Style/SymbolLiteral
19
- 'display_name': :'displayName'
35
+ 'defined_tags': :'definedTags',
36
+ 'display_name': :'displayName',
37
+ 'freeform_tags': :'freeformTags'
20
38
  # rubocop:enable Style/SymbolLiteral
21
39
  }
22
40
  end
@@ -25,7 +43,9 @@ module OCI
25
43
  def self.swagger_types
26
44
  {
27
45
  # rubocop:disable Style/SymbolLiteral
28
- 'display_name': :'String'
46
+ 'defined_tags': :'Hash<String, Hash<String, Object>>',
47
+ 'display_name': :'String',
48
+ 'freeform_tags': :'Hash<String, String>'
29
49
  # rubocop:enable Style/SymbolLiteral
30
50
  }
31
51
  end
@@ -36,18 +56,32 @@ module OCI
36
56
 
37
57
  # Initializes the object
38
58
  # @param [Hash] attributes Model attributes in the form of hash
59
+ # @option attributes [Hash<String, Hash<String, Object>>] :defined_tags The value to assign to the {#defined_tags} property
39
60
  # @option attributes [String] :display_name The value to assign to the {#display_name} property
61
+ # @option attributes [Hash<String, String>] :freeform_tags The value to assign to the {#freeform_tags} property
40
62
  def initialize(attributes = {})
41
63
  return unless attributes.is_a?(Hash)
42
64
 
43
65
  # convert string to symbol for hash key
44
66
  attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
45
67
 
68
+ self.defined_tags = attributes[:'definedTags'] if attributes[:'definedTags']
69
+
70
+ raise 'You cannot provide both :definedTags and :defined_tags' if attributes.key?(:'definedTags') && attributes.key?(:'defined_tags')
71
+
72
+ self.defined_tags = attributes[:'defined_tags'] if attributes[:'defined_tags']
73
+
46
74
  self.display_name = attributes[:'displayName'] if attributes[:'displayName']
47
75
 
48
76
  raise 'You cannot provide both :displayName and :display_name' if attributes.key?(:'displayName') && attributes.key?(:'display_name')
49
77
 
50
78
  self.display_name = attributes[:'display_name'] if attributes[:'display_name']
79
+
80
+ self.freeform_tags = attributes[:'freeformTags'] if attributes[:'freeformTags']
81
+
82
+ raise 'You cannot provide both :freeformTags and :freeform_tags' if attributes.key?(:'freeformTags') && attributes.key?(:'freeform_tags')
83
+
84
+ self.freeform_tags = attributes[:'freeform_tags'] if attributes[:'freeform_tags']
51
85
  end
52
86
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
53
87
  # rubocop:enable Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
@@ -61,7 +95,9 @@ module OCI
61
95
  return true if equal?(other)
62
96
 
63
97
  self.class == other.class &&
64
- display_name == other.display_name
98
+ defined_tags == other.defined_tags &&
99
+ display_name == other.display_name &&
100
+ freeform_tags == other.freeform_tags
65
101
  end
66
102
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
67
103
 
@@ -77,7 +113,7 @@ module OCI
77
113
  # Calculates hash code according to all attributes.
78
114
  # @return [Fixnum] Hash code
79
115
  def hash
80
- [display_name].hash
116
+ [defined_tags, display_name, freeform_tags].hash
81
117
  end
82
118
  # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
83
119
 
@@ -34,7 +34,7 @@ module OCI
34
34
  #
35
35
  # Allowed values:
36
36
  #
37
- # * An IP address range in CIDR notation. For example: `192.168.1.0/24`
37
+ # * An IP address range in CIDR notation. For example: `192.168.1.0/24` or `2001:0db8:0123:45::/56`
38
38
  #
39
39
  # * The `cidrBlock` value for a {Service}, if you're
40
40
  # setting up a security rule for traffic destined for a particular `Service` through
@@ -112,7 +112,7 @@ module OCI
112
112
  #
113
113
  # Allowed values:
114
114
  #
115
- # * An IP address range in CIDR notation. For example: `192.168.1.0/24`
115
+ # * An IP address range in CIDR notation. For example: `192.168.1.0/24` or `2001:0db8:0123:45::/56`
116
116
  #
117
117
  # * The `cidrBlock` value for a {Service}, if you're
118
118
  # setting up a security rule for traffic coming from a particular `Service` through
@@ -36,6 +36,13 @@ module OCI
36
36
  # @return [Hash<String, String>]
37
37
  attr_accessor :freeform_tags
38
38
 
39
+ # The OCID of the route table the service gateway will use. For information about why you
40
+ # would associate a route table with a service gateway, see
41
+ # [Transit Routing: Private Access to Oracle Services Network](https://docs.cloud.oracle.com/Content/Network/Tasks/transitroutingoracleservices.htm).
42
+ #
43
+ # @return [String]
44
+ attr_accessor :route_table_id
45
+
39
46
  # List of all the `Service` objects you want enabled on this service gateway. Sending an empty list
40
47
  # means you want to disable all services. Omitting this parameter entirely keeps the
41
48
  # existing list of services intact.
@@ -59,6 +66,7 @@ module OCI
59
66
  'defined_tags': :'definedTags',
60
67
  'display_name': :'displayName',
61
68
  'freeform_tags': :'freeformTags',
69
+ 'route_table_id': :'routeTableId',
62
70
  'services': :'services'
63
71
  # rubocop:enable Style/SymbolLiteral
64
72
  }
@@ -72,6 +80,7 @@ module OCI
72
80
  'defined_tags': :'Hash<String, Hash<String, Object>>',
73
81
  'display_name': :'String',
74
82
  'freeform_tags': :'Hash<String, String>',
83
+ 'route_table_id': :'String',
75
84
  'services': :'Array<OCI::Core::Models::ServiceIdRequestDetails>'
76
85
  # rubocop:enable Style/SymbolLiteral
77
86
  }
@@ -87,6 +96,7 @@ module OCI
87
96
  # @option attributes [Hash<String, Hash<String, Object>>] :defined_tags The value to assign to the {#defined_tags} property
88
97
  # @option attributes [String] :display_name The value to assign to the {#display_name} property
89
98
  # @option attributes [Hash<String, String>] :freeform_tags The value to assign to the {#freeform_tags} property
99
+ # @option attributes [String] :route_table_id The value to assign to the {#route_table_id} property
90
100
  # @option attributes [Array<OCI::Core::Models::ServiceIdRequestDetails>] :services The value to assign to the {#services} property
91
101
  def initialize(attributes = {})
92
102
  return unless attributes.is_a?(Hash)
@@ -120,6 +130,12 @@ module OCI
120
130
 
121
131
  self.freeform_tags = attributes[:'freeform_tags'] if attributes[:'freeform_tags']
122
132
 
133
+ self.route_table_id = attributes[:'routeTableId'] if attributes[:'routeTableId']
134
+
135
+ raise 'You cannot provide both :routeTableId and :route_table_id' if attributes.key?(:'routeTableId') && attributes.key?(:'route_table_id')
136
+
137
+ self.route_table_id = attributes[:'route_table_id'] if attributes[:'route_table_id']
138
+
123
139
  self.services = attributes[:'services'] if attributes[:'services']
124
140
  end
125
141
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
@@ -138,6 +154,7 @@ module OCI
138
154
  defined_tags == other.defined_tags &&
139
155
  display_name == other.display_name &&
140
156
  freeform_tags == other.freeform_tags &&
157
+ route_table_id == other.route_table_id &&
141
158
  services == other.services
142
159
  end
143
160
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
@@ -154,7 +171,7 @@ module OCI
154
171
  # Calculates hash code according to all attributes.
155
172
  # @return [Fixnum] Hash code
156
173
  def hash
157
- [block_traffic, defined_tags, display_name, freeform_tags, services].hash
174
+ [block_traffic, defined_tags, display_name, freeform_tags, route_table_id, services].hash
158
175
  end
159
176
  # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
160
177
 
@@ -43,6 +43,14 @@ module OCI
43
43
  # @return [Integer]
44
44
  attr_accessor :customer_bgp_asn
45
45
 
46
+ # Defined tags for this resource. Each key is predefined and scoped to a
47
+ # namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm).
48
+ #
49
+ # Example: `{\"Operations\": {\"CostCenter\": \"42\"}}`
50
+ #
51
+ # @return [Hash<String, Hash<String, Object>>]
52
+ attr_accessor :defined_tags
53
+
46
54
  # A user-friendly name. Does not have to be unique.
47
55
  # Avoid entering confidential information.
48
56
  #
@@ -51,6 +59,14 @@ module OCI
51
59
  # @return [String]
52
60
  attr_accessor :display_name
53
61
 
62
+ # Free-form tags for this resource. Each tag is a simple key-value pair with no
63
+ # predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm).
64
+ #
65
+ # Example: `{\"Department\": \"Finance\"}`
66
+ #
67
+ # @return [Hash<String, String>]
68
+ attr_accessor :freeform_tags
69
+
54
70
  # The OCID of the {Drg}
55
71
  # that this private virtual circuit uses.
56
72
  #
@@ -90,7 +106,9 @@ module OCI
90
106
  'bandwidth_shape_name': :'bandwidthShapeName',
91
107
  'cross_connect_mappings': :'crossConnectMappings',
92
108
  'customer_bgp_asn': :'customerBgpAsn',
109
+ 'defined_tags': :'definedTags',
93
110
  'display_name': :'displayName',
111
+ 'freeform_tags': :'freeformTags',
94
112
  'gateway_id': :'gatewayId',
95
113
  'provider_state': :'providerState',
96
114
  'provider_service_key_name': :'providerServiceKeyName',
@@ -106,7 +124,9 @@ module OCI
106
124
  'bandwidth_shape_name': :'String',
107
125
  'cross_connect_mappings': :'Array<OCI::Core::Models::CrossConnectMapping>',
108
126
  'customer_bgp_asn': :'Integer',
127
+ 'defined_tags': :'Hash<String, Hash<String, Object>>',
109
128
  'display_name': :'String',
129
+ 'freeform_tags': :'Hash<String, String>',
110
130
  'gateway_id': :'String',
111
131
  'provider_state': :'String',
112
132
  'provider_service_key_name': :'String',
@@ -124,7 +144,9 @@ module OCI
124
144
  # @option attributes [String] :bandwidth_shape_name The value to assign to the {#bandwidth_shape_name} property
125
145
  # @option attributes [Array<OCI::Core::Models::CrossConnectMapping>] :cross_connect_mappings The value to assign to the {#cross_connect_mappings} property
126
146
  # @option attributes [Integer] :customer_bgp_asn The value to assign to the {#customer_bgp_asn} property
147
+ # @option attributes [Hash<String, Hash<String, Object>>] :defined_tags The value to assign to the {#defined_tags} property
127
148
  # @option attributes [String] :display_name The value to assign to the {#display_name} property
149
+ # @option attributes [Hash<String, String>] :freeform_tags The value to assign to the {#freeform_tags} property
128
150
  # @option attributes [String] :gateway_id The value to assign to the {#gateway_id} property
129
151
  # @option attributes [String] :provider_state The value to assign to the {#provider_state} property
130
152
  # @option attributes [String] :provider_service_key_name The value to assign to the {#provider_service_key_name} property
@@ -153,12 +175,24 @@ module OCI
153
175
 
154
176
  self.customer_bgp_asn = attributes[:'customer_bgp_asn'] if attributes[:'customer_bgp_asn']
155
177
 
178
+ self.defined_tags = attributes[:'definedTags'] if attributes[:'definedTags']
179
+
180
+ raise 'You cannot provide both :definedTags and :defined_tags' if attributes.key?(:'definedTags') && attributes.key?(:'defined_tags')
181
+
182
+ self.defined_tags = attributes[:'defined_tags'] if attributes[:'defined_tags']
183
+
156
184
  self.display_name = attributes[:'displayName'] if attributes[:'displayName']
157
185
 
158
186
  raise 'You cannot provide both :displayName and :display_name' if attributes.key?(:'displayName') && attributes.key?(:'display_name')
159
187
 
160
188
  self.display_name = attributes[:'display_name'] if attributes[:'display_name']
161
189
 
190
+ self.freeform_tags = attributes[:'freeformTags'] if attributes[:'freeformTags']
191
+
192
+ raise 'You cannot provide both :freeformTags and :freeform_tags' if attributes.key?(:'freeformTags') && attributes.key?(:'freeform_tags')
193
+
194
+ self.freeform_tags = attributes[:'freeform_tags'] if attributes[:'freeform_tags']
195
+
162
196
  self.gateway_id = attributes[:'gatewayId'] if attributes[:'gatewayId']
163
197
 
164
198
  raise 'You cannot provide both :gatewayId and :gateway_id' if attributes.key?(:'gatewayId') && attributes.key?(:'gateway_id')
@@ -206,7 +240,9 @@ module OCI
206
240
  bandwidth_shape_name == other.bandwidth_shape_name &&
207
241
  cross_connect_mappings == other.cross_connect_mappings &&
208
242
  customer_bgp_asn == other.customer_bgp_asn &&
243
+ defined_tags == other.defined_tags &&
209
244
  display_name == other.display_name &&
245
+ freeform_tags == other.freeform_tags &&
210
246
  gateway_id == other.gateway_id &&
211
247
  provider_state == other.provider_state &&
212
248
  provider_service_key_name == other.provider_service_key_name &&
@@ -226,7 +262,7 @@ module OCI
226
262
  # Calculates hash code according to all attributes.
227
263
  # @return [Fixnum] Hash code
228
264
  def hash
229
- [bandwidth_shape_name, cross_connect_mappings, customer_bgp_asn, display_name, gateway_id, provider_state, provider_service_key_name, reference_comment].hash
265
+ [bandwidth_shape_name, cross_connect_mappings, customer_bgp_asn, defined_tags, display_name, freeform_tags, gateway_id, provider_state, provider_service_key_name, reference_comment].hash
230
266
  end
231
267
  # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
232
268