oci 2.3.7 → 2.3.8

Sign up to get free protection for your applications and to get access to all the features.
Files changed (43) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +1 -1
  3. data/lib/oci/core/blockstorage_client.rb +56 -24
  4. data/lib/oci/core/compute_client.rb +578 -24
  5. data/lib/oci/core/core.rb +11 -0
  6. data/lib/oci/core/models/app_catalog_listing.rb +242 -0
  7. data/lib/oci/core/models/app_catalog_listing_resource_version.rb +295 -0
  8. data/lib/oci/core/models/app_catalog_listing_resource_version_agreements.rb +219 -0
  9. data/lib/oci/core/models/app_catalog_listing_resource_version_summary.rb +194 -0
  10. data/lib/oci/core/models/app_catalog_listing_summary.rb +188 -0
  11. data/lib/oci/core/models/app_catalog_subscription.rb +246 -0
  12. data/lib/oci/core/models/app_catalog_subscription_summary.rb +246 -0
  13. data/lib/oci/core/models/create_app_catalog_subscription_details.rb +232 -0
  14. data/lib/oci/core/models/create_nat_gateway_details.rb +239 -0
  15. data/lib/oci/core/models/launch_instance_details.rb +4 -0
  16. data/lib/oci/core/models/nat_gateway.rb +333 -0
  17. data/lib/oci/core/models/public_ip.rb +76 -13
  18. data/lib/oci/core/models/service_gateway.rb +9 -4
  19. data/lib/oci/core/models/update_nat_gateway_details.rb +208 -0
  20. data/lib/oci/core/models/update_service_gateway_details.rb +9 -4
  21. data/lib/oci/core/virtual_network_client.rb +546 -91
  22. data/lib/oci/core/virtual_network_client_composite_operations.rb +119 -0
  23. data/lib/oci/object_storage/models/bucket.rb +18 -4
  24. data/lib/oci/object_storage/models/copy_object_details.rb +269 -0
  25. data/lib/oci/object_storage/models/multipart_upload.rb +1 -1
  26. data/lib/oci/object_storage/models/namespace_metadata.rb +1 -1
  27. data/lib/oci/object_storage/models/object_lifecycle_policy.rb +167 -0
  28. data/lib/oci/object_storage/models/object_lifecycle_rule.rb +245 -0
  29. data/lib/oci/object_storage/models/object_name_filter.rb +153 -0
  30. data/lib/oci/object_storage/models/preauthenticated_request.rb +1 -1
  31. data/lib/oci/object_storage/models/put_object_lifecycle_policy_details.rb +147 -0
  32. data/lib/oci/object_storage/models/restore_objects_details.rb +2 -2
  33. data/lib/oci/object_storage/models/work_request.rb +304 -0
  34. data/lib/oci/object_storage/models/work_request_error.rb +168 -0
  35. data/lib/oci/object_storage/models/work_request_log_entry.rb +156 -0
  36. data/lib/oci/object_storage/models/work_request_resource.rb +225 -0
  37. data/lib/oci/object_storage/models/work_request_resource_metadata_key.rb +12 -0
  38. data/lib/oci/object_storage/models/work_request_summary.rb +304 -0
  39. data/lib/oci/object_storage/object_storage.rb +12 -0
  40. data/lib/oci/object_storage/object_storage_client.rb +542 -17
  41. data/lib/oci/object_storage/object_storage_client_composite_operations.rb +53 -0
  42. data/lib/oci/version.rb +1 -1
  43. metadata +24 -2
@@ -43,8 +43,10 @@ module OCI
43
43
  # @return [String]
44
44
  attr_accessor :compartment_id
45
45
 
46
- # Usage of predefined tag keys. These predefined keys are scoped to namespaces.
47
- # Example: `{\"foo-namespace\": {\"bar-key\": \"foo-value\"}}`
46
+ # Defined tags for this resource. Each key is predefined and scoped to a namespace.
47
+ # For more information, see [Resource Tags](https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/resourcetags.htm).
48
+ #
49
+ # Example: `{\"Operations\": {\"CostCenter\": \"42\"}}`
48
50
  #
49
51
  # @return [Hash<String, Hash<String, Object>>]
50
52
  attr_accessor :defined_tags
@@ -55,8 +57,11 @@ module OCI
55
57
  # @return [String]
56
58
  attr_accessor :display_name
57
59
 
58
- # Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only.
59
- # Example: `{\"bar-key\": \"value\"}`
60
+ # Free-form tags for this resource. Each tag is a simple key-value pair with no
61
+ # predefined name, type, or namespace. For more information, see
62
+ # [Resource Tags](https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/resourcetags.htm).
63
+ #
64
+ # Example: `{\"Department\": \"Finance\"}`
60
65
  #
61
66
  # @return [Hash<String, String>]
62
67
  attr_accessor :freeform_tags
@@ -0,0 +1,208 @@
1
+ # Copyright (c) 2016, 2018, Oracle and/or its affiliates. All rights reserved.
2
+
3
+ require 'date'
4
+
5
+ # rubocop:disable Lint/UnneededCopDisableDirective
6
+ module OCI
7
+ # UpdateNatGatewayDetails model.
8
+ class Core::Models::UpdateNatGatewayDetails # rubocop:disable Metrics/LineLength
9
+ # Defined tags for this resource. Each key is predefined and scoped to a namespace.
10
+ # For more information, see [Resource Tags](https://docs.us-phoenix-1.oraclecloud.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.
18
+ # Avoid 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
25
+ # [Resource Tags](https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/resourcetags.htm).
26
+ #
27
+ # Example: `{\"Department\": \"Finance\"}`
28
+ #
29
+ # @return [Hash<String, String>]
30
+ attr_accessor :freeform_tags
31
+
32
+ # Whether the NAT gateway blocks traffic through it. The default is `false`.
33
+ #
34
+ # Example: `true`
35
+ #
36
+ # @return [BOOLEAN]
37
+ attr_accessor :block_traffic
38
+
39
+ # Attribute mapping from ruby-style variable name to JSON key.
40
+ def self.attribute_map
41
+ {
42
+ # rubocop:disable Style/SymbolLiteral
43
+ 'defined_tags': :'definedTags',
44
+ 'display_name': :'displayName',
45
+ 'freeform_tags': :'freeformTags',
46
+ 'block_traffic': :'blockTraffic'
47
+ # rubocop:enable Style/SymbolLiteral
48
+ }
49
+ end
50
+
51
+ # Attribute type mapping.
52
+ def self.swagger_types
53
+ {
54
+ # rubocop:disable Style/SymbolLiteral
55
+ 'defined_tags': :'Hash<String, Hash<String, Object>>',
56
+ 'display_name': :'String',
57
+ 'freeform_tags': :'Hash<String, String>',
58
+ 'block_traffic': :'BOOLEAN'
59
+ # rubocop:enable Style/SymbolLiteral
60
+ }
61
+ end
62
+
63
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
64
+ # rubocop:disable Metrics/LineLength, Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
65
+
66
+
67
+ # Initializes the object
68
+ # @param [Hash] attributes Model attributes in the form of hash
69
+ # @option attributes [Hash<String, Hash<String, Object>>] :defined_tags The value to assign to the {#defined_tags} property
70
+ # @option attributes [String] :display_name The value to assign to the {#display_name} property
71
+ # @option attributes [Hash<String, String>] :freeform_tags The value to assign to the {#freeform_tags} property
72
+ # @option attributes [BOOLEAN] :block_traffic The value to assign to the {#block_traffic} property
73
+ def initialize(attributes = {})
74
+ return unless attributes.is_a?(Hash)
75
+
76
+ # convert string to symbol for hash key
77
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
78
+
79
+ self.defined_tags = attributes[:'definedTags'] if attributes[:'definedTags']
80
+
81
+ raise 'You cannot provide both :definedTags and :defined_tags' if attributes.key?(:'definedTags') && attributes.key?(:'defined_tags')
82
+
83
+ self.defined_tags = attributes[:'defined_tags'] if attributes[:'defined_tags']
84
+
85
+ self.display_name = attributes[:'displayName'] if attributes[:'displayName']
86
+
87
+ raise 'You cannot provide both :displayName and :display_name' if attributes.key?(:'displayName') && attributes.key?(:'display_name')
88
+
89
+ self.display_name = attributes[:'display_name'] if attributes[:'display_name']
90
+
91
+ self.freeform_tags = attributes[:'freeformTags'] if attributes[:'freeformTags']
92
+
93
+ raise 'You cannot provide both :freeformTags and :freeform_tags' if attributes.key?(:'freeformTags') && attributes.key?(:'freeform_tags')
94
+
95
+ self.freeform_tags = attributes[:'freeform_tags'] if attributes[:'freeform_tags']
96
+
97
+ self.block_traffic = attributes[:'blockTraffic'] unless attributes[:'blockTraffic'].nil?
98
+ self.block_traffic = false if block_traffic.nil? && !attributes.key?(:'blockTraffic') # rubocop:disable Style/StringLiterals
99
+
100
+ raise 'You cannot provide both :blockTraffic and :block_traffic' if attributes.key?(:'blockTraffic') && attributes.key?(:'block_traffic')
101
+
102
+ self.block_traffic = attributes[:'block_traffic'] unless attributes[:'block_traffic'].nil?
103
+ self.block_traffic = false if block_traffic.nil? && !attributes.key?(:'blockTraffic') && !attributes.key?(:'block_traffic') # rubocop:disable Style/StringLiterals
104
+ end
105
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
106
+ # rubocop:enable Metrics/LineLength, Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
107
+
108
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
109
+
110
+
111
+ # Checks equality by comparing each attribute.
112
+ # @param [Object] other the other object to be compared
113
+ def ==(other)
114
+ return true if equal?(other)
115
+ self.class == other.class &&
116
+ defined_tags == other.defined_tags &&
117
+ display_name == other.display_name &&
118
+ freeform_tags == other.freeform_tags &&
119
+ block_traffic == other.block_traffic
120
+ end
121
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
122
+
123
+ # @see the `==` method
124
+ # @param [Object] other the other object to be compared
125
+ def eql?(other)
126
+ self == other
127
+ end
128
+
129
+ # rubocop:disable Metrics/AbcSize, Metrics/LineLength, Layout/EmptyLines
130
+
131
+
132
+ # Calculates hash code according to all attributes.
133
+ # @return [Fixnum] Hash code
134
+ def hash
135
+ [defined_tags, display_name, freeform_tags, block_traffic].hash
136
+ end
137
+ # rubocop:enable Metrics/AbcSize, Metrics/LineLength, Layout/EmptyLines
138
+
139
+ # rubocop:disable Metrics/AbcSize, Layout/EmptyLines
140
+
141
+
142
+ # Builds the object from hash
143
+ # @param [Hash] attributes Model attributes in the form of hash
144
+ # @return [Object] Returns the model itself
145
+ def build_from_hash(attributes)
146
+ return nil unless attributes.is_a?(Hash)
147
+ self.class.swagger_types.each_pair do |key, type|
148
+ if type =~ /^Array<(.*)>/i
149
+ # check to ensure the input is an array given that the the attribute
150
+ # is documented as an array but the input is not
151
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
152
+ public_method("#{key}=").call(
153
+ attributes[self.class.attribute_map[key]]
154
+ .map { |v| OCI::Internal::Util.convert_to_type(Regexp.last_match(1), v) }
155
+ )
156
+ end
157
+ elsif !attributes[self.class.attribute_map[key]].nil?
158
+ public_method("#{key}=").call(
159
+ OCI::Internal::Util.convert_to_type(type, attributes[self.class.attribute_map[key]])
160
+ )
161
+ end
162
+ # or else data not found in attributes(hash), not an issue as the data can be optional
163
+ end
164
+
165
+ self
166
+ end
167
+ # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
168
+
169
+ # Returns the string representation of the object
170
+ # @return [String] String presentation of the object
171
+ def to_s
172
+ to_hash.to_s
173
+ end
174
+
175
+ # Returns the object in the form of hash
176
+ # @return [Hash] Returns the object in the form of hash
177
+ def to_hash
178
+ hash = {}
179
+ self.class.attribute_map.each_pair do |attr, param|
180
+ value = public_method(attr).call
181
+ next if value.nil? && !instance_variable_defined?("@#{attr}")
182
+ hash[param] = _to_hash(value)
183
+ end
184
+ hash
185
+ end
186
+
187
+ private
188
+
189
+ # Outputs non-array value in the form of hash
190
+ # For object, use to_hash. Otherwise, just return the value
191
+ # @param [Object] value Any valid value
192
+ # @return [Hash] Returns the value in the form of hash
193
+ def _to_hash(value)
194
+ if value.is_a?(Array)
195
+ value.compact.map { |v| _to_hash(v) }
196
+ elsif value.is_a?(Hash)
197
+ {}.tap do |hash|
198
+ value.each { |k, v| hash[k] = _to_hash(v) }
199
+ end
200
+ elsif value.respond_to? :to_hash
201
+ value.to_hash
202
+ else
203
+ value
204
+ end
205
+ end
206
+ end
207
+ end
208
+ # rubocop:enable Lint/UnneededCopDisableDirective
@@ -14,8 +14,10 @@ module OCI
14
14
  # @return [BOOLEAN]
15
15
  attr_accessor :block_traffic
16
16
 
17
- # Usage of predefined tag keys. These predefined keys are scoped to namespaces.
18
- # Example: `{\"foo-namespace\": {\"bar-key\": \"foo-value\"}}`
17
+ # Defined tags for this resource. Each key is predefined and scoped to a namespace.
18
+ # For more information, see [Resource Tags](https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/resourcetags.htm).
19
+ #
20
+ # Example: `{\"Operations\": {\"CostCenter\": \"42\"}}`
19
21
  #
20
22
  # @return [Hash<String, Hash<String, Object>>]
21
23
  attr_accessor :defined_tags
@@ -26,8 +28,11 @@ module OCI
26
28
  # @return [String]
27
29
  attr_accessor :display_name
28
30
 
29
- # Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only.
30
- # Example: `{\"bar-key\": \"value\"}`
31
+ # Free-form tags for this resource. Each tag is a simple key-value pair with no
32
+ # predefined name, type, or namespace. For more information, see
33
+ # [Resource Tags](https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/resourcetags.htm).
34
+ #
35
+ # Example: `{\"Department\": \"Finance\"}`
31
36
  #
32
37
  # @return [Hash<String, String>]
33
38
  attr_accessor :freeform_tags
@@ -1063,6 +1063,66 @@ module OCI
1063
1063
  # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
1064
1064
 
1065
1065
 
1066
+ # Creates a new NAT gateway for the specified VCN. You must also set up a route rule with the
1067
+ # NAT gateway as the rule's target. See {RouteTable}.
1068
+ #
1069
+ # @param [OCI::Core::Models::CreateNatGatewayDetails] create_nat_gateway_details Details for creating a NAT gateway.
1070
+ # @param [Hash] opts the optional parameters
1071
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
1072
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
1073
+ # @option opts [String] :opc_retry_token A token that uniquely identifies a request so it can be retried in case of a timeout or
1074
+ # server error without risk of executing that same action again. Retry tokens expire after 24
1075
+ # hours, but can be invalidated before then due to conflicting operations (for example, if a resource
1076
+ # has been deleted and purged from the system, then a retry of the original creation request
1077
+ # may be rejected).
1078
+ #
1079
+ # @return [Response] A Response object with data of type {OCI::Core::Models::NatGateway NatGateway}
1080
+ def create_nat_gateway(create_nat_gateway_details, opts = {})
1081
+ logger.debug 'Calling operation VirtualNetworkClient#create_nat_gateway.' if logger
1082
+
1083
+ raise "Missing the required parameter 'create_nat_gateway_details' when calling create_nat_gateway." if create_nat_gateway_details.nil?
1084
+
1085
+ path = '/natGateways'
1086
+ operation_signing_strategy = :standard
1087
+
1088
+ # rubocop:disable Style/NegatedIf
1089
+ # Query Params
1090
+ query_params = {}
1091
+
1092
+ # Header Params
1093
+ header_params = {}
1094
+ header_params[:accept] = 'application/json'
1095
+ header_params[:'content-type'] = 'application/json'
1096
+ header_params[:'opc-retry-token'] = opts[:opc_retry_token] if opts[:opc_retry_token]
1097
+ # rubocop:enable Style/NegatedIf
1098
+ header_params[:'opc-retry-token'] ||= OCI::Retry.generate_opc_retry_token
1099
+
1100
+ post_body = @api_client.object_to_http_body(create_nat_gateway_details)
1101
+
1102
+ # rubocop:disable Metrics/BlockLength
1103
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'VirtualNetworkClient#create_nat_gateway') do
1104
+ @api_client.call_api(
1105
+ :POST,
1106
+ path,
1107
+ endpoint,
1108
+ header_params: header_params,
1109
+ query_params: query_params,
1110
+ operation_signing_strategy: operation_signing_strategy,
1111
+ body: post_body,
1112
+ return_type: 'OCI::Core::Models::NatGateway'
1113
+ )
1114
+ end
1115
+ # rubocop:enable Metrics/BlockLength
1116
+ end
1117
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
1118
+ # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
1119
+ # rubocop:enable Metrics/MethodLength, Layout/EmptyLines
1120
+
1121
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
1122
+ # rubocop:disable Style/IfUnlessModifier, Metrics/ParameterLists
1123
+ # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
1124
+
1125
+
1066
1126
  # Creates a secondary private IP for the specified VNIC.
1067
1127
  # For more information about secondary private IPs, see
1068
1128
  # [IP Addresses](https://docs.us-phoenix-1.oraclecloud.com/Content/Network/Tasks/managingIPaddresses.htm).
@@ -1128,11 +1188,12 @@ module OCI
1128
1188
  # reserved public IP. For information about limits on how many you can create, see
1129
1189
  # [Public IP Addresses](https://docs.us-phoenix-1.oraclecloud.com/Content/Network/Tasks/managingpublicIPs.htm).
1130
1190
  #
1131
- # * **For an ephemeral public IP:** You must also specify a `privateIpId` with the OCID of
1132
- # the primary private IP you want to assign the public IP to. The public IP is created in
1133
- # the same availability domain as the private IP. An ephemeral public IP must always be
1191
+ # * **For an ephemeral public IP assigned to a private IP:** You must also specify a `privateIpId`
1192
+ # with the OCID of the primary private IP you want to assign the public IP to. The public IP is
1193
+ # created in the same availability domain as the private IP. An ephemeral public IP must always be
1134
1194
  # assigned to a private IP, and only to the *primary* private IP on a VNIC, not a secondary
1135
- # private IP.
1195
+ # private IP. Exception: If you create a {NatGateway}, Oracle
1196
+ # automatically assigns the NAT gateway a regional ephemeral public IP that you cannot remove.
1136
1197
  #
1137
1198
  # * **For a reserved public IP:** You may also optionally assign the public IP to a private
1138
1199
  # IP by specifying `privateIpId`. Or you can later assign the public IP with
@@ -2260,6 +2321,66 @@ module OCI
2260
2321
  # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
2261
2322
 
2262
2323
 
2324
+ # Deletes the specified NAT gateway. The NAT gateway does not have to be disabled, but there
2325
+ # must not be a route rule that lists the NAT gateway as a target.
2326
+ #
2327
+ # This is an asynchronous operation. The NAT gateway's `lifecycleState` will change to
2328
+ # TERMINATING temporarily until the NAT gateway is completely removed.
2329
+ #
2330
+ # @param [String] nat_gateway_id The NAT gateway's [OCID](https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/identifiers.htm).
2331
+ # @param [Hash] opts the optional parameters
2332
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
2333
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
2334
+ # @option opts [String] :if_match For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match`
2335
+ # parameter to the value of the etag from a previous GET or POST response for that resource. The resource
2336
+ # will be updated or deleted only if the etag you provide matches the resource's current etag value.
2337
+ #
2338
+ # @return [Response] A Response object with data of type nil
2339
+ def delete_nat_gateway(nat_gateway_id, opts = {})
2340
+ logger.debug 'Calling operation VirtualNetworkClient#delete_nat_gateway.' if logger
2341
+
2342
+ raise "Missing the required parameter 'nat_gateway_id' when calling delete_nat_gateway." if nat_gateway_id.nil?
2343
+ raise "Parameter value for 'nat_gateway_id' must not be blank" if OCI::Internal::Util.blank_string?(nat_gateway_id)
2344
+
2345
+ path = '/natGateways/{natGatewayId}'.sub('{natGatewayId}', nat_gateway_id.to_s)
2346
+ operation_signing_strategy = :standard
2347
+
2348
+ # rubocop:disable Style/NegatedIf
2349
+ # Query Params
2350
+ query_params = {}
2351
+
2352
+ # Header Params
2353
+ header_params = {}
2354
+ header_params[:accept] = 'application/json'
2355
+ header_params[:'content-type'] = 'application/json'
2356
+ header_params[:'if-match'] = opts[:if_match] if opts[:if_match]
2357
+ # rubocop:enable Style/NegatedIf
2358
+
2359
+ post_body = nil
2360
+
2361
+ # rubocop:disable Metrics/BlockLength
2362
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'VirtualNetworkClient#delete_nat_gateway') do
2363
+ @api_client.call_api(
2364
+ :DELETE,
2365
+ path,
2366
+ endpoint,
2367
+ header_params: header_params,
2368
+ query_params: query_params,
2369
+ operation_signing_strategy: operation_signing_strategy,
2370
+ body: post_body
2371
+ )
2372
+ end
2373
+ # rubocop:enable Metrics/BlockLength
2374
+ end
2375
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
2376
+ # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
2377
+ # rubocop:enable Metrics/MethodLength, Layout/EmptyLines
2378
+
2379
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
2380
+ # rubocop:disable Style/IfUnlessModifier, Metrics/ParameterLists
2381
+ # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
2382
+
2383
+
2263
2384
  # Unassigns and deletes the specified private IP. You must
2264
2385
  # specify the object's OCID. The private IP address is returned to
2265
2386
  # the subnet's pool of available addresses.
@@ -2330,6 +2451,10 @@ module OCI
2330
2451
  # You must specify the object's OCID. The public IP address is returned to the
2331
2452
  # Oracle Cloud Infrastructure public IP pool.
2332
2453
  #
2454
+ # **Note:** You cannot update, unassign, or delete the public IP that Oracle automatically
2455
+ # assigned to an entity for you (such as a load balancer or NAT gateway). The public IP is
2456
+ # automatically deleted if the assigned entity is terminated.
2457
+ #
2333
2458
  # For an assigned reserved public IP, the initial unassignment portion of this operation
2334
2459
  # is asynchronous. Poll the public IP's `lifecycleState` to determine
2335
2460
  # if the operation succeeded.
@@ -3627,6 +3752,59 @@ module OCI
3627
3752
  # rubocop:disable Lint/UnusedMethodArgument
3628
3753
 
3629
3754
 
3755
+ # Gets the specified NAT gateway's information.
3756
+ # @param [String] nat_gateway_id The NAT gateway's [OCID](https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/identifiers.htm).
3757
+ # @param [Hash] opts the optional parameters
3758
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
3759
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
3760
+ # @return [Response] A Response object with data of type {OCI::Core::Models::NatGateway NatGateway}
3761
+ def get_nat_gateway(nat_gateway_id, opts = {})
3762
+ logger.debug 'Calling operation VirtualNetworkClient#get_nat_gateway.' if logger
3763
+
3764
+ raise "Missing the required parameter 'nat_gateway_id' when calling get_nat_gateway." if nat_gateway_id.nil?
3765
+ raise "Parameter value for 'nat_gateway_id' must not be blank" if OCI::Internal::Util.blank_string?(nat_gateway_id)
3766
+
3767
+ path = '/natGateways/{natGatewayId}'.sub('{natGatewayId}', nat_gateway_id.to_s)
3768
+ operation_signing_strategy = :standard
3769
+
3770
+ # rubocop:disable Style/NegatedIf
3771
+ # Query Params
3772
+ query_params = {}
3773
+
3774
+ # Header Params
3775
+ header_params = {}
3776
+ header_params[:accept] = 'application/json'
3777
+ header_params[:'content-type'] = 'application/json'
3778
+ # rubocop:enable Style/NegatedIf
3779
+
3780
+ post_body = nil
3781
+
3782
+ # rubocop:disable Metrics/BlockLength
3783
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'VirtualNetworkClient#get_nat_gateway') do
3784
+ @api_client.call_api(
3785
+ :GET,
3786
+ path,
3787
+ endpoint,
3788
+ header_params: header_params,
3789
+ query_params: query_params,
3790
+ operation_signing_strategy: operation_signing_strategy,
3791
+ body: post_body,
3792
+ return_type: 'OCI::Core::Models::NatGateway'
3793
+ )
3794
+ end
3795
+ # rubocop:enable Metrics/BlockLength
3796
+ end
3797
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
3798
+ # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
3799
+ # rubocop:enable Metrics/MethodLength, Layout/EmptyLines
3800
+ # rubocop:enable Lint/UnusedMethodArgument
3801
+
3802
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
3803
+ # rubocop:disable Style/IfUnlessModifier, Metrics/ParameterLists
3804
+ # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
3805
+ # rubocop:disable Lint/UnusedMethodArgument
3806
+
3807
+
3630
3808
  # Gets the specified private IP. You must specify the object's OCID.
3631
3809
  # Alternatively, you can get the object by using
3632
3810
  # {#list_private_ips list_private_ips}
@@ -3694,7 +3872,7 @@ module OCI
3694
3872
  #
3695
3873
  # **Note:** If you're fetching a reserved public IP that is in the process of being
3696
3874
  # moved to a different private IP, the service returns the public IP object with
3697
- # `lifecycleState` = ASSIGNING and `privateIpId` = OCID of the target private IP.
3875
+ # `lifecycleState` = ASSIGNING and `assignedEntityId` = OCID of the target private IP.
3698
3876
  #
3699
3877
  # @param [String] public_ip_id The OCID of the public IP.
3700
3878
  # @param [Hash] opts the optional parameters
@@ -3752,7 +3930,7 @@ module OCI
3752
3930
  #
3753
3931
  # **Note:** If you're fetching a reserved public IP that is in the process of being
3754
3932
  # moved to a different private IP, the service returns the public IP object with
3755
- # `lifecycleState` = ASSIGNING and `privateIpId` = OCID of the target private IP.
3933
+ # `lifecycleState` = ASSIGNING and `assignedEntityId` = OCID of the target private IP.
3756
3934
  #
3757
3935
  # @param [OCI::Core::Models::GetPublicIpByIpAddressDetails] get_public_ip_by_ip_address_details IP address details for fetching the public IP.
3758
3936
  # @param [Hash] opts the optional parameters
@@ -3814,8 +3992,8 @@ module OCI
3814
3992
  # private IP, or if you instead call
3815
3993
  # {#get_public_ip get_public_ip} or
3816
3994
  # {#get_public_ip_by_ip_address get_public_ip_by_ip_address}, the
3817
- # service returns the public IP object with `lifecycleState` = ASSIGNING and `privateIpId` = OCID
3818
- # of the target private IP.
3995
+ # service returns the public IP object with `lifecycleState` = ASSIGNING and
3996
+ # `assignedEntityId` = OCID of the target private IP.
3819
3997
  #
3820
3998
  # @param [OCI::Core::Models::GetPublicIpByPrivateIpIdDetails] get_public_ip_by_private_ip_id_details Private IP details for fetching the public IP.
3821
3999
  # @param [Hash] opts the optional parameters
@@ -4408,11 +4586,15 @@ module OCI
4408
4586
  # @param [Hash] opts the optional parameters
4409
4587
  # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
4410
4588
  # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
4411
- # @option opts [Integer] :limit The maximum number of items to return in a paginated \"List\" call.
4589
+ # @option opts [Integer] :limit For list pagination. The maximum number of results per page, or items to return in a paginated
4590
+ # \"List\" call. For important details about how pagination works, see
4591
+ # [List Pagination](https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine).
4412
4592
  #
4413
- # Example: `500`
4593
+ # Example: `50`
4414
4594
  #
4415
- # @option opts [String] :page The value of the `opc-next-page` response header from the previous \"List\" call.
4595
+ # @option opts [String] :page For list pagination. The value of the `opc-next-page` response header from the previous \"List\"
4596
+ # call. For important details about how pagination works, see
4597
+ # [List Pagination](https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine).
4416
4598
  #
4417
4599
  # @return [Response] A Response object with data of type Array<{OCI::Core::Models::Cpe Cpe}>
4418
4600
  def list_cpes(compartment_id, opts = {})
@@ -4468,11 +4650,15 @@ module OCI
4468
4650
  # @param [Hash] opts the optional parameters
4469
4651
  # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
4470
4652
  # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
4471
- # @option opts [Integer] :limit The maximum number of items to return in a paginated \"List\" call.
4653
+ # @option opts [Integer] :limit For list pagination. The maximum number of results per page, or items to return in a paginated
4654
+ # \"List\" call. For important details about how pagination works, see
4655
+ # [List Pagination](https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine).
4472
4656
  #
4473
- # Example: `500`
4657
+ # Example: `50`
4474
4658
  #
4475
- # @option opts [String] :page The value of the `opc-next-page` response header from the previous \"List\" call.
4659
+ # @option opts [String] :page For list pagination. The value of the `opc-next-page` response header from the previous \"List\"
4660
+ # call. For important details about how pagination works, see
4661
+ # [List Pagination](https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine).
4476
4662
  #
4477
4663
  # @option opts [String] :display_name A filter to return only resources that match the given display name exactly.
4478
4664
  #
@@ -4563,11 +4749,15 @@ module OCI
4563
4749
  # @param [Hash] opts the optional parameters
4564
4750
  # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
4565
4751
  # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
4566
- # @option opts [Integer] :limit The maximum number of items to return in a paginated \"List\" call.
4752
+ # @option opts [Integer] :limit For list pagination. The maximum number of results per page, or items to return in a paginated
4753
+ # \"List\" call. For important details about how pagination works, see
4754
+ # [List Pagination](https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine).
4567
4755
  #
4568
- # Example: `500`
4756
+ # Example: `50`
4569
4757
  #
4570
- # @option opts [String] :page The value of the `opc-next-page` response header from the previous \"List\" call.
4758
+ # @option opts [String] :page For list pagination. The value of the `opc-next-page` response header from the previous \"List\"
4759
+ # call. For important details about how pagination works, see
4760
+ # [List Pagination](https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine).
4571
4761
  #
4572
4762
  # @return [Response] A Response object with data of type Array<{OCI::Core::Models::CrossConnectLocation CrossConnectLocation}>
4573
4763
  def list_cross_connect_locations(compartment_id, opts = {})
@@ -4625,11 +4815,15 @@ module OCI
4625
4815
  # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
4626
4816
  # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
4627
4817
  # @option opts [String] :cross_connect_group_id The OCID of the cross-connect group.
4628
- # @option opts [Integer] :limit The maximum number of items to return in a paginated \"List\" call.
4818
+ # @option opts [Integer] :limit For list pagination. The maximum number of results per page, or items to return in a paginated
4819
+ # \"List\" call. For important details about how pagination works, see
4820
+ # [List Pagination](https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine).
4629
4821
  #
4630
- # Example: `500`
4822
+ # Example: `50`
4631
4823
  #
4632
- # @option opts [String] :page The value of the `opc-next-page` response header from the previous \"List\" call.
4824
+ # @option opts [String] :page For list pagination. The value of the `opc-next-page` response header from the previous \"List\"
4825
+ # call. For important details about how pagination works, see
4826
+ # [List Pagination](https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine).
4633
4827
  #
4634
4828
  # @option opts [String] :display_name A filter to return only resources that match the given display name exactly.
4635
4829
  #
@@ -4722,11 +4916,15 @@ module OCI
4722
4916
  # @param [Hash] opts the optional parameters
4723
4917
  # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
4724
4918
  # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
4725
- # @option opts [Integer] :limit The maximum number of items to return in a paginated \"List\" call.
4919
+ # @option opts [Integer] :limit For list pagination. The maximum number of results per page, or items to return in a paginated
4920
+ # \"List\" call. For important details about how pagination works, see
4921
+ # [List Pagination](https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine).
4726
4922
  #
4727
- # Example: `500`
4923
+ # Example: `50`
4728
4924
  #
4729
- # @option opts [String] :page The value of the `opc-next-page` response header from the previous \"List\" call.
4925
+ # @option opts [String] :page For list pagination. The value of the `opc-next-page` response header from the previous \"List\"
4926
+ # call. For important details about how pagination works, see
4927
+ # [List Pagination](https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine).
4730
4928
  #
4731
4929
  # @return [Response] A Response object with data of type Array<{OCI::Core::Models::CrossConnectPortSpeedShape CrossConnectPortSpeedShape}>
4732
4930
  def list_crossconnect_port_speed_shapes(compartment_id, opts = {})
@@ -4785,11 +4983,15 @@ module OCI
4785
4983
  # @param [Hash] opts the optional parameters
4786
4984
  # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
4787
4985
  # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
4788
- # @option opts [Integer] :limit The maximum number of items to return in a paginated \"List\" call.
4986
+ # @option opts [Integer] :limit For list pagination. The maximum number of results per page, or items to return in a paginated
4987
+ # \"List\" call. For important details about how pagination works, see
4988
+ # [List Pagination](https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine).
4789
4989
  #
4790
- # Example: `500`
4990
+ # Example: `50`
4791
4991
  #
4792
- # @option opts [String] :page The value of the `opc-next-page` response header from the previous \"List\" call.
4992
+ # @option opts [String] :page For list pagination. The value of the `opc-next-page` response header from the previous \"List\"
4993
+ # call. For important details about how pagination works, see
4994
+ # [List Pagination](https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine).
4793
4995
  #
4794
4996
  # @option opts [String] :display_name A filter to return only resources that match the given display name exactly.
4795
4997
  #
@@ -4884,11 +5086,15 @@ module OCI
4884
5086
  # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
4885
5087
  # @option opts [String] :vcn_id The OCID of the VCN.
4886
5088
  # @option opts [String] :drg_id The OCID of the DRG.
4887
- # @option opts [Integer] :limit The maximum number of items to return in a paginated \"List\" call.
5089
+ # @option opts [Integer] :limit For list pagination. The maximum number of results per page, or items to return in a paginated
5090
+ # \"List\" call. For important details about how pagination works, see
5091
+ # [List Pagination](https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine).
4888
5092
  #
4889
- # Example: `500`
5093
+ # Example: `50`
4890
5094
  #
4891
- # @option opts [String] :page The value of the `opc-next-page` response header from the previous \"List\" call.
5095
+ # @option opts [String] :page For list pagination. The value of the `opc-next-page` response header from the previous \"List\"
5096
+ # call. For important details about how pagination works, see
5097
+ # [List Pagination](https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine).
4892
5098
  #
4893
5099
  # @return [Response] A Response object with data of type Array<{OCI::Core::Models::DrgAttachment DrgAttachment}>
4894
5100
  def list_drg_attachments(compartment_id, opts = {})
@@ -4946,11 +5152,15 @@ module OCI
4946
5152
  # @param [Hash] opts the optional parameters
4947
5153
  # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
4948
5154
  # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
4949
- # @option opts [Integer] :limit The maximum number of items to return in a paginated \"List\" call.
5155
+ # @option opts [Integer] :limit For list pagination. The maximum number of results per page, or items to return in a paginated
5156
+ # \"List\" call. For important details about how pagination works, see
5157
+ # [List Pagination](https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine).
4950
5158
  #
4951
- # Example: `500`
5159
+ # Example: `50`
4952
5160
  #
4953
- # @option opts [String] :page The value of the `opc-next-page` response header from the previous \"List\" call.
5161
+ # @option opts [String] :page For list pagination. The value of the `opc-next-page` response header from the previous \"List\"
5162
+ # call. For important details about how pagination works, see
5163
+ # [List Pagination](https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine).
4954
5164
  #
4955
5165
  # @return [Response] A Response object with data of type Array<{OCI::Core::Models::Drg Drg}>
4956
5166
  def list_drgs(compartment_id, opts = {})
@@ -5012,11 +5222,15 @@ module OCI
5012
5222
  # @param [Hash] opts the optional parameters
5013
5223
  # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
5014
5224
  # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
5015
- # @option opts [Integer] :limit The maximum number of items to return in a paginated \"List\" call.
5225
+ # @option opts [Integer] :limit For list pagination. The maximum number of results per page, or items to return in a paginated
5226
+ # \"List\" call. For important details about how pagination works, see
5227
+ # [List Pagination](https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine).
5016
5228
  #
5017
- # Example: `500`
5229
+ # Example: `50`
5018
5230
  #
5019
- # @option opts [String] :page The value of the `opc-next-page` response header from the previous \"List\" call.
5231
+ # @option opts [String] :page For list pagination. The value of the `opc-next-page` response header from the previous \"List\"
5232
+ # call. For important details about how pagination works, see
5233
+ # [List Pagination](https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine).
5020
5234
  #
5021
5235
  # @return [Response] A Response object with data of type Array<{OCI::Core::Models::FastConnectProviderService FastConnectProviderService}>
5022
5236
  def list_fast_connect_provider_services(compartment_id, opts = {})
@@ -5075,11 +5289,15 @@ module OCI
5075
5289
  # @param [Hash] opts the optional parameters
5076
5290
  # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
5077
5291
  # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
5078
- # @option opts [Integer] :limit The maximum number of items to return in a paginated \"List\" call.
5292
+ # @option opts [Integer] :limit For list pagination. The maximum number of results per page, or items to return in a paginated
5293
+ # \"List\" call. For important details about how pagination works, see
5294
+ # [List Pagination](https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine).
5079
5295
  #
5080
- # Example: `500`
5296
+ # Example: `50`
5081
5297
  #
5082
- # @option opts [String] :page The value of the `opc-next-page` response header from the previous \"List\" call.
5298
+ # @option opts [String] :page For list pagination. The value of the `opc-next-page` response header from the previous \"List\"
5299
+ # call. For important details about how pagination works, see
5300
+ # [List Pagination](https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine).
5083
5301
  #
5084
5302
  # @return [Response] A Response object with data of type Array<{OCI::Core::Models::VirtualCircuitBandwidthShape VirtualCircuitBandwidthShape}>
5085
5303
  def list_fast_connect_provider_virtual_circuit_bandwidth_shapes(provider_service_id, opts = {})
@@ -5136,11 +5354,15 @@ module OCI
5136
5354
  # @param [Hash] opts the optional parameters
5137
5355
  # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
5138
5356
  # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
5139
- # @option opts [Integer] :limit The maximum number of items to return in a paginated \"List\" call.
5357
+ # @option opts [Integer] :limit For list pagination. The maximum number of results per page, or items to return in a paginated
5358
+ # \"List\" call. For important details about how pagination works, see
5359
+ # [List Pagination](https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine).
5140
5360
  #
5141
- # Example: `500`
5361
+ # Example: `50`
5142
5362
  #
5143
- # @option opts [String] :page The value of the `opc-next-page` response header from the previous \"List\" call.
5363
+ # @option opts [String] :page For list pagination. The value of the `opc-next-page` response header from the previous \"List\"
5364
+ # call. For important details about how pagination works, see
5365
+ # [List Pagination](https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine).
5144
5366
  #
5145
5367
  # @option opts [String] :display_name A filter to return only resources that match the given display name exactly.
5146
5368
  #
@@ -5235,11 +5457,15 @@ module OCI
5235
5457
  # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
5236
5458
  # @option opts [String] :drg_id The OCID of the DRG.
5237
5459
  # @option opts [String] :cpe_id The OCID of the CPE.
5238
- # @option opts [Integer] :limit The maximum number of items to return in a paginated \"List\" call.
5460
+ # @option opts [Integer] :limit For list pagination. The maximum number of results per page, or items to return in a paginated
5461
+ # \"List\" call. For important details about how pagination works, see
5462
+ # [List Pagination](https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine).
5239
5463
  #
5240
- # Example: `500`
5464
+ # Example: `50`
5241
5465
  #
5242
- # @option opts [String] :page The value of the `opc-next-page` response header from the previous \"List\" call.
5466
+ # @option opts [String] :page For list pagination. The value of the `opc-next-page` response header from the previous \"List\"
5467
+ # call. For important details about how pagination works, see
5468
+ # [List Pagination](https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine).
5243
5469
  #
5244
5470
  # @return [Response] A Response object with data of type Array<{OCI::Core::Models::IPSecConnection IPSecConnection}>
5245
5471
  def list_ip_sec_connections(compartment_id, opts = {})
@@ -5299,11 +5525,15 @@ module OCI
5299
5525
  # @param [Hash] opts the optional parameters
5300
5526
  # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
5301
5527
  # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
5302
- # @option opts [Integer] :limit The maximum number of items to return in a paginated \"List\" call.
5528
+ # @option opts [Integer] :limit For list pagination. The maximum number of results per page, or items to return in a paginated
5529
+ # \"List\" call. For important details about how pagination works, see
5530
+ # [List Pagination](https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine).
5303
5531
  #
5304
- # Example: `500`
5532
+ # Example: `50`
5305
5533
  #
5306
- # @option opts [String] :page The value of the `opc-next-page` response header from the previous \"List\" call.
5534
+ # @option opts [String] :page For list pagination. The value of the `opc-next-page` response header from the previous \"List\"
5535
+ # call. For important details about how pagination works, see
5536
+ # [List Pagination](https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine).
5307
5537
  #
5308
5538
  # @return [Response] A Response object with data of type Array<{OCI::Core::Models::LocalPeeringGateway LocalPeeringGateway}>
5309
5539
  def list_local_peering_gateways(compartment_id, vcn_id, opts = {})
@@ -5355,6 +5585,107 @@ module OCI
5355
5585
  # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
5356
5586
 
5357
5587
 
5588
+ # Lists the NAT gateways in the specified compartment. You may optionally specify a VCN OCID
5589
+ # to filter the results by VCN.
5590
+ #
5591
+ # @param [String] compartment_id The OCID of the compartment.
5592
+ # @param [Hash] opts the optional parameters
5593
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
5594
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
5595
+ # @option opts [String] :vcn_id The OCID of the VCN.
5596
+ # @option opts [Integer] :limit For list pagination. The maximum number of results per page, or items to return in a paginated
5597
+ # \"List\" call. For important details about how pagination works, see
5598
+ # [List Pagination](https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine).
5599
+ #
5600
+ # Example: `50`
5601
+ #
5602
+ # @option opts [String] :page For list pagination. The value of the `opc-next-page` response header from the previous \"List\"
5603
+ # call. For important details about how pagination works, see
5604
+ # [List Pagination](https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine).
5605
+ #
5606
+ # @option opts [String] :display_name A filter to return only resources that match the given display name exactly.
5607
+ #
5608
+ # @option opts [String] :sort_by The field to sort by. You can provide one sort order (`sortOrder`). Default order for
5609
+ # TIMECREATED is descending. Default order for DISPLAYNAME is ascending. The DISPLAYNAME
5610
+ # sort order is case sensitive.
5611
+ #
5612
+ # **Note:** In general, some \"List\" operations (for example, `ListInstances`) let you
5613
+ # optionally filter by availability domain if the scope of the resource type is within a
5614
+ # single availability domain. If you call one of these \"List\" operations without specifying
5615
+ # an availability domain, the resources are grouped by availability domain, then sorted.
5616
+ #
5617
+ # Allowed values are: TIMECREATED, DISPLAYNAME
5618
+ # @option opts [String] :sort_order The sort order to use, either ascending (`ASC`) or descending (`DESC`). The DISPLAYNAME sort order
5619
+ # is case sensitive.
5620
+ #
5621
+ # Allowed values are: ASC, DESC
5622
+ # @option opts [String] :lifecycle_state A filter to return only resources that match the specified lifecycle state. The value is case insensitive.
5623
+ #
5624
+ # @return [Response] A Response object with data of type Array<{OCI::Core::Models::NatGateway NatGateway}>
5625
+ def list_nat_gateways(compartment_id, opts = {})
5626
+ logger.debug 'Calling operation VirtualNetworkClient#list_nat_gateways.' if logger
5627
+
5628
+ raise "Missing the required parameter 'compartment_id' when calling list_nat_gateways." if compartment_id.nil?
5629
+
5630
+ if opts[:sort_by] && !%w[TIMECREATED DISPLAYNAME].include?(opts[:sort_by])
5631
+ raise 'Invalid value for "sort_by", must be one of TIMECREATED, DISPLAYNAME.'
5632
+ end
5633
+
5634
+ if opts[:sort_order] && !%w[ASC DESC].include?(opts[:sort_order])
5635
+ raise 'Invalid value for "sort_order", must be one of ASC, DESC.'
5636
+ end
5637
+
5638
+ if opts[:lifecycle_state] && !OCI::Core::Models::NatGateway::LIFECYCLE_STATE_ENUM.include?(opts[:lifecycle_state])
5639
+ raise 'Invalid value for "lifecycle_state", must be one of the values in OCI::Core::Models::NatGateway::LIFECYCLE_STATE_ENUM.'
5640
+ end
5641
+
5642
+ path = '/natGateways'
5643
+ operation_signing_strategy = :standard
5644
+
5645
+ # rubocop:disable Style/NegatedIf
5646
+ # Query Params
5647
+ query_params = {}
5648
+ query_params[:compartmentId] = compartment_id
5649
+ query_params[:vcnId] = opts[:vcn_id] if opts[:vcn_id]
5650
+ query_params[:limit] = opts[:limit] if opts[:limit]
5651
+ query_params[:page] = opts[:page] if opts[:page]
5652
+ query_params[:displayName] = opts[:display_name] if opts[:display_name]
5653
+ query_params[:sortBy] = opts[:sort_by] if opts[:sort_by]
5654
+ query_params[:sortOrder] = opts[:sort_order] if opts[:sort_order]
5655
+ query_params[:lifecycleState] = opts[:lifecycle_state] if opts[:lifecycle_state]
5656
+
5657
+ # Header Params
5658
+ header_params = {}
5659
+ header_params[:accept] = 'application/json'
5660
+ header_params[:'content-type'] = 'application/json'
5661
+ # rubocop:enable Style/NegatedIf
5662
+
5663
+ post_body = nil
5664
+
5665
+ # rubocop:disable Metrics/BlockLength
5666
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'VirtualNetworkClient#list_nat_gateways') do
5667
+ @api_client.call_api(
5668
+ :GET,
5669
+ path,
5670
+ endpoint,
5671
+ header_params: header_params,
5672
+ query_params: query_params,
5673
+ operation_signing_strategy: operation_signing_strategy,
5674
+ body: post_body,
5675
+ return_type: 'Array<OCI::Core::Models::NatGateway>'
5676
+ )
5677
+ end
5678
+ # rubocop:enable Metrics/BlockLength
5679
+ end
5680
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
5681
+ # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
5682
+ # rubocop:enable Metrics/MethodLength, Layout/EmptyLines
5683
+
5684
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
5685
+ # rubocop:disable Style/IfUnlessModifier, Metrics/ParameterLists
5686
+ # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
5687
+
5688
+
5358
5689
  # Lists the {PrivateIp} objects based
5359
5690
  # on one of these filters:
5360
5691
  #
@@ -5372,11 +5703,15 @@ module OCI
5372
5703
  # @param [Hash] opts the optional parameters
5373
5704
  # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
5374
5705
  # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
5375
- # @option opts [Integer] :limit The maximum number of items to return in a paginated \"List\" call.
5706
+ # @option opts [Integer] :limit For list pagination. The maximum number of results per page, or items to return in a paginated
5707
+ # \"List\" call. For important details about how pagination works, see
5708
+ # [List Pagination](https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine).
5376
5709
  #
5377
- # Example: `500`
5710
+ # Example: `50`
5378
5711
  #
5379
- # @option opts [String] :page The value of the `opc-next-page` response header from the previous \"List\" call.
5712
+ # @option opts [String] :page For list pagination. The value of the `opc-next-page` response header from the previous \"List\"
5713
+ # call. For important details about how pagination works, see
5714
+ # [List Pagination](https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine).
5380
5715
  #
5381
5716
  # @option opts [String] :ip_address An IP address.
5382
5717
  #
@@ -5433,40 +5768,60 @@ module OCI
5433
5768
  # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
5434
5769
 
5435
5770
 
5436
- # Lists either the ephemeral or reserved {PublicIp} objects
5437
- # in the specified compartment.
5771
+ # Lists the {PublicIp} objects
5772
+ # in the specified compartment. You can filter the list by using query parameters.
5438
5773
  #
5439
- # To list your reserved public IPs, set `scope` = `REGION`, and leave the
5440
- # `availabilityDomain` parameter empty.
5774
+ # To list your reserved public IPs:
5775
+ # * Set `scope` = `REGION` (required)
5776
+ # * Leave the `availabilityDomain` parameter empty
5777
+ # * Set `lifetime` = `RESERVED`
5441
5778
  #
5442
- # To list your ephemeral public IPs, set `scope` = `AVAILABILITY_DOMAIN`, and set the
5443
- # `availabilityDomain` parameter to the desired availability domain. An ephemeral public IP
5444
- # is always in the same availability domain and compartment as the private IP it's assigned to.
5779
+ # To list the ephemeral public IPs assigned to a regional entity such as a NAT gateway:
5780
+ # * Set `scope` = `REGION` (required)
5781
+ # * Leave the `availabilityDomain` parameter empty
5782
+ # * Set `lifetime` = `EPHEMERAL`
5783
+ #
5784
+ # To list the ephemeral public IPs assigned to private IPs:
5785
+ # * Set `scope` = `AVAILABILITY_DOMAIN` (required)
5786
+ # * Set the `availabilityDomain` parameter to the desired availability domain (required)
5787
+ # * Set `lifetime` = `EPHEMERAL`
5788
+ #
5789
+ # **Note:** An ephemeral public IP assigned to a private IP
5790
+ # is always in the same availability domain and compartment as the private IP.
5445
5791
  #
5446
5792
  # @param [String] scope Whether the public IP is regional or specific to a particular availability domain.
5447
5793
  #
5448
- # * `REGION`: The public IP exists within a region and can be assigned to a private IP
5449
- # in any availability domain in the region. Reserved public IPs have `scope` = `REGION`.
5794
+ # * `REGION`: The public IP exists within a region and is assigned to a regional entity
5795
+ # (such as a {NatGateway}), or can be assigned to a private IP
5796
+ # in any availability domain in the region. Reserved public IPs have `scope` = `REGION`, as do
5797
+ # ephemeral public IPs assigned to a regional entity.
5450
5798
  #
5451
- # * `AVAILABILITY_DOMAIN`: The public IP exists within the availability domain of the private IP
5799
+ # * `AVAILABILITY_DOMAIN`: The public IP exists within the availability domain of the entity
5452
5800
  # it's assigned to, which is specified by the `availabilityDomain` property of the public IP object.
5453
- # Ephemeral public IPs have `scope` = `AVAILABILITY_DOMAIN`.
5801
+ # Ephemeral public IPs that are assigned to private IPs have `scope` = `AVAILABILITY_DOMAIN`.
5454
5802
  #
5455
5803
  # Allowed values are: REGION, AVAILABILITY_DOMAIN
5456
5804
  # @param [String] compartment_id The OCID of the compartment.
5457
5805
  # @param [Hash] opts the optional parameters
5458
5806
  # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
5459
5807
  # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
5460
- # @option opts [Integer] :limit The maximum number of items to return in a paginated \"List\" call.
5808
+ # @option opts [Integer] :limit For list pagination. The maximum number of results per page, or items to return in a paginated
5809
+ # \"List\" call. For important details about how pagination works, see
5810
+ # [List Pagination](https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine).
5461
5811
  #
5462
- # Example: `500`
5812
+ # Example: `50`
5463
5813
  #
5464
- # @option opts [String] :page The value of the `opc-next-page` response header from the previous \"List\" call.
5814
+ # @option opts [String] :page For list pagination. The value of the `opc-next-page` response header from the previous \"List\"
5815
+ # call. For important details about how pagination works, see
5816
+ # [List Pagination](https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine).
5465
5817
  #
5466
5818
  # @option opts [String] :availability_domain The name of the availability domain.
5467
5819
  #
5468
5820
  # Example: `Uocm:PHX-AD-1`
5469
5821
  #
5822
+ # @option opts [String] :lifetime A filter to return only public IPs that match given lifetime.
5823
+ #
5824
+ # Allowed values are: EPHEMERAL, RESERVED
5470
5825
  # @return [Response] A Response object with data of type Array<{OCI::Core::Models::PublicIp PublicIp}>
5471
5826
  def list_public_ips(scope, compartment_id, opts = {})
5472
5827
  logger.debug 'Calling operation VirtualNetworkClient#list_public_ips.' if logger
@@ -5477,6 +5832,10 @@ module OCI
5477
5832
  end
5478
5833
  raise "Missing the required parameter 'compartment_id' when calling list_public_ips." if compartment_id.nil?
5479
5834
 
5835
+ if opts[:lifetime] && !%w[EPHEMERAL RESERVED].include?(opts[:lifetime])
5836
+ raise 'Invalid value for "lifetime", must be one of EPHEMERAL, RESERVED.'
5837
+ end
5838
+
5480
5839
  path = '/publicIps'
5481
5840
  operation_signing_strategy = :standard
5482
5841
 
@@ -5488,6 +5847,7 @@ module OCI
5488
5847
  query_params[:limit] = opts[:limit] if opts[:limit]
5489
5848
  query_params[:page] = opts[:page] if opts[:page]
5490
5849
  query_params[:availabilityDomain] = opts[:availability_domain] if opts[:availability_domain]
5850
+ query_params[:lifetime] = opts[:lifetime] if opts[:lifetime]
5491
5851
 
5492
5852
  # Header Params
5493
5853
  header_params = {}
@@ -5529,11 +5889,15 @@ module OCI
5529
5889
  # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
5530
5890
  # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
5531
5891
  # @option opts [String] :drg_id The OCID of the DRG.
5532
- # @option opts [Integer] :limit The maximum number of items to return in a paginated \"List\" call.
5892
+ # @option opts [Integer] :limit For list pagination. The maximum number of results per page, or items to return in a paginated
5893
+ # \"List\" call. For important details about how pagination works, see
5894
+ # [List Pagination](https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine).
5533
5895
  #
5534
- # Example: `500`
5896
+ # Example: `50`
5535
5897
  #
5536
- # @option opts [String] :page The value of the `opc-next-page` response header from the previous \"List\" call.
5898
+ # @option opts [String] :page For list pagination. The value of the `opc-next-page` response header from the previous \"List\"
5899
+ # call. For important details about how pagination works, see
5900
+ # [List Pagination](https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine).
5537
5901
  #
5538
5902
  # @return [Response] A Response object with data of type Array<{OCI::Core::Models::RemotePeeringConnection RemotePeeringConnection}>
5539
5903
  def list_remote_peering_connections(compartment_id, opts = {})
@@ -5593,11 +5957,15 @@ module OCI
5593
5957
  # @param [Hash] opts the optional parameters
5594
5958
  # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
5595
5959
  # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
5596
- # @option opts [Integer] :limit The maximum number of items to return in a paginated \"List\" call.
5960
+ # @option opts [Integer] :limit For list pagination. The maximum number of results per page, or items to return in a paginated
5961
+ # \"List\" call. For important details about how pagination works, see
5962
+ # [List Pagination](https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine).
5597
5963
  #
5598
- # Example: `500`
5964
+ # Example: `50`
5599
5965
  #
5600
- # @option opts [String] :page The value of the `opc-next-page` response header from the previous \"List\" call.
5966
+ # @option opts [String] :page For list pagination. The value of the `opc-next-page` response header from the previous \"List\"
5967
+ # call. For important details about how pagination works, see
5968
+ # [List Pagination](https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine).
5601
5969
  #
5602
5970
  # @option opts [String] :display_name A filter to return only resources that match the given display name exactly.
5603
5971
  #
@@ -5690,11 +6058,15 @@ module OCI
5690
6058
  # @param [Hash] opts the optional parameters
5691
6059
  # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
5692
6060
  # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
5693
- # @option opts [Integer] :limit The maximum number of items to return in a paginated \"List\" call.
6061
+ # @option opts [Integer] :limit For list pagination. The maximum number of results per page, or items to return in a paginated
6062
+ # \"List\" call. For important details about how pagination works, see
6063
+ # [List Pagination](https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine).
5694
6064
  #
5695
- # Example: `500`
6065
+ # Example: `50`
5696
6066
  #
5697
- # @option opts [String] :page The value of the `opc-next-page` response header from the previous \"List\" call.
6067
+ # @option opts [String] :page For list pagination. The value of the `opc-next-page` response header from the previous \"List\"
6068
+ # call. For important details about how pagination works, see
6069
+ # [List Pagination](https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine).
5698
6070
  #
5699
6071
  # @option opts [String] :display_name A filter to return only resources that match the given display name exactly.
5700
6072
  #
@@ -5788,11 +6160,15 @@ module OCI
5788
6160
  # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
5789
6161
  # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
5790
6162
  # @option opts [String] :vcn_id The OCID of the VCN.
5791
- # @option opts [Integer] :limit The maximum number of items to return in a paginated \"List\" call.
6163
+ # @option opts [Integer] :limit For list pagination. The maximum number of results per page, or items to return in a paginated
6164
+ # \"List\" call. For important details about how pagination works, see
6165
+ # [List Pagination](https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine).
5792
6166
  #
5793
- # Example: `500`
6167
+ # Example: `50`
5794
6168
  #
5795
- # @option opts [String] :page The value of the `opc-next-page` response header from the previous \"List\" call.
6169
+ # @option opts [String] :page For list pagination. The value of the `opc-next-page` response header from the previous \"List\"
6170
+ # call. For important details about how pagination works, see
6171
+ # [List Pagination](https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine).
5796
6172
  #
5797
6173
  # @option opts [String] :sort_by The field to sort by. You can provide one sort order (`sortOrder`). Default order for
5798
6174
  # TIMECREATED is descending. Default order for DISPLAYNAME is ascending. The DISPLAYNAME
@@ -5879,11 +6255,15 @@ module OCI
5879
6255
  # @param [Hash] opts the optional parameters
5880
6256
  # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
5881
6257
  # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
5882
- # @option opts [Integer] :limit The maximum number of items to return in a paginated \"List\" call.
6258
+ # @option opts [Integer] :limit For list pagination. The maximum number of results per page, or items to return in a paginated
6259
+ # \"List\" call. For important details about how pagination works, see
6260
+ # [List Pagination](https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine).
5883
6261
  #
5884
- # Example: `500`
6262
+ # Example: `50`
5885
6263
  #
5886
- # @option opts [String] :page The value of the `opc-next-page` response header from the previous \"List\" call.
6264
+ # @option opts [String] :page For list pagination. The value of the `opc-next-page` response header from the previous \"List\"
6265
+ # call. For important details about how pagination works, see
6266
+ # [List Pagination](https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine).
5887
6267
  #
5888
6268
  # @return [Response] A Response object with data of type Array<{OCI::Core::Models::Service Service}>
5889
6269
  def list_services(opts = {})
@@ -5938,11 +6318,15 @@ module OCI
5938
6318
  # @param [Hash] opts the optional parameters
5939
6319
  # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
5940
6320
  # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
5941
- # @option opts [Integer] :limit The maximum number of items to return in a paginated \"List\" call.
6321
+ # @option opts [Integer] :limit For list pagination. The maximum number of results per page, or items to return in a paginated
6322
+ # \"List\" call. For important details about how pagination works, see
6323
+ # [List Pagination](https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine).
5942
6324
  #
5943
- # Example: `500`
6325
+ # Example: `50`
5944
6326
  #
5945
- # @option opts [String] :page The value of the `opc-next-page` response header from the previous \"List\" call.
6327
+ # @option opts [String] :page For list pagination. The value of the `opc-next-page` response header from the previous \"List\"
6328
+ # call. For important details about how pagination works, see
6329
+ # [List Pagination](https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine).
5946
6330
  #
5947
6331
  # @option opts [String] :display_name A filter to return only resources that match the given display name exactly.
5948
6332
  #
@@ -6034,11 +6418,15 @@ module OCI
6034
6418
  # @param [Hash] opts the optional parameters
6035
6419
  # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
6036
6420
  # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
6037
- # @option opts [Integer] :limit The maximum number of items to return in a paginated \"List\" call.
6421
+ # @option opts [Integer] :limit For list pagination. The maximum number of results per page, or items to return in a paginated
6422
+ # \"List\" call. For important details about how pagination works, see
6423
+ # [List Pagination](https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine).
6038
6424
  #
6039
- # Example: `500`
6425
+ # Example: `50`
6040
6426
  #
6041
- # @option opts [String] :page The value of the `opc-next-page` response header from the previous \"List\" call.
6427
+ # @option opts [String] :page For list pagination. The value of the `opc-next-page` response header from the previous \"List\"
6428
+ # call. For important details about how pagination works, see
6429
+ # [List Pagination](https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine).
6042
6430
  #
6043
6431
  # @option opts [String] :display_name A filter to return only resources that match the given display name exactly.
6044
6432
  #
@@ -6128,11 +6516,15 @@ module OCI
6128
6516
  # @param [Hash] opts the optional parameters
6129
6517
  # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
6130
6518
  # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
6131
- # @option opts [Integer] :limit The maximum number of items to return in a paginated \"List\" call.
6519
+ # @option opts [Integer] :limit For list pagination. The maximum number of results per page, or items to return in a paginated
6520
+ # \"List\" call. For important details about how pagination works, see
6521
+ # [List Pagination](https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine).
6132
6522
  #
6133
- # Example: `500`
6523
+ # Example: `50`
6134
6524
  #
6135
- # @option opts [String] :page The value of the `opc-next-page` response header from the previous \"List\" call.
6525
+ # @option opts [String] :page For list pagination. The value of the `opc-next-page` response header from the previous \"List\"
6526
+ # call. For important details about how pagination works, see
6527
+ # [List Pagination](https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine).
6136
6528
  #
6137
6529
  # @return [Response] A Response object with data of type Array<{OCI::Core::Models::VirtualCircuitBandwidthShape VirtualCircuitBandwidthShape}>
6138
6530
  def list_virtual_circuit_bandwidth_shapes(compartment_id, opts = {})
@@ -6249,11 +6641,15 @@ module OCI
6249
6641
  # @param [Hash] opts the optional parameters
6250
6642
  # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
6251
6643
  # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
6252
- # @option opts [Integer] :limit The maximum number of items to return in a paginated \"List\" call.
6644
+ # @option opts [Integer] :limit For list pagination. The maximum number of results per page, or items to return in a paginated
6645
+ # \"List\" call. For important details about how pagination works, see
6646
+ # [List Pagination](https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine).
6253
6647
  #
6254
- # Example: `500`
6648
+ # Example: `50`
6255
6649
  #
6256
- # @option opts [String] :page The value of the `opc-next-page` response header from the previous \"List\" call.
6650
+ # @option opts [String] :page For list pagination. The value of the `opc-next-page` response header from the previous \"List\"
6651
+ # call. For important details about how pagination works, see
6652
+ # [List Pagination](https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine).
6257
6653
  #
6258
6654
  # @option opts [String] :display_name A filter to return only resources that match the given display name exactly.
6259
6655
  #
@@ -6878,6 +7274,65 @@ module OCI
6878
7274
  # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
6879
7275
 
6880
7276
 
7277
+ # Updates the specified NAT gateway.
7278
+ #
7279
+ # @param [String] nat_gateway_id The NAT gateway's [OCID](https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/identifiers.htm).
7280
+ # @param [OCI::Core::Models::UpdateNatGatewayDetails] update_nat_gateway_details Details object for updating a NAT gateway.
7281
+ # @param [Hash] opts the optional parameters
7282
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
7283
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
7284
+ # @option opts [String] :if_match For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match`
7285
+ # parameter to the value of the etag from a previous GET or POST response for that resource. The resource
7286
+ # will be updated or deleted only if the etag you provide matches the resource's current etag value.
7287
+ #
7288
+ # @return [Response] A Response object with data of type {OCI::Core::Models::NatGateway NatGateway}
7289
+ def update_nat_gateway(nat_gateway_id, update_nat_gateway_details, opts = {})
7290
+ logger.debug 'Calling operation VirtualNetworkClient#update_nat_gateway.' if logger
7291
+
7292
+ raise "Missing the required parameter 'nat_gateway_id' when calling update_nat_gateway." if nat_gateway_id.nil?
7293
+ raise "Missing the required parameter 'update_nat_gateway_details' when calling update_nat_gateway." if update_nat_gateway_details.nil?
7294
+ raise "Parameter value for 'nat_gateway_id' must not be blank" if OCI::Internal::Util.blank_string?(nat_gateway_id)
7295
+
7296
+ path = '/natGateways/{natGatewayId}'.sub('{natGatewayId}', nat_gateway_id.to_s)
7297
+ operation_signing_strategy = :standard
7298
+
7299
+ # rubocop:disable Style/NegatedIf
7300
+ # Query Params
7301
+ query_params = {}
7302
+
7303
+ # Header Params
7304
+ header_params = {}
7305
+ header_params[:accept] = 'application/json'
7306
+ header_params[:'content-type'] = 'application/json'
7307
+ header_params[:'if-match'] = opts[:if_match] if opts[:if_match]
7308
+ # rubocop:enable Style/NegatedIf
7309
+
7310
+ post_body = @api_client.object_to_http_body(update_nat_gateway_details)
7311
+
7312
+ # rubocop:disable Metrics/BlockLength
7313
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'VirtualNetworkClient#update_nat_gateway') do
7314
+ @api_client.call_api(
7315
+ :PUT,
7316
+ path,
7317
+ endpoint,
7318
+ header_params: header_params,
7319
+ query_params: query_params,
7320
+ operation_signing_strategy: operation_signing_strategy,
7321
+ body: post_body,
7322
+ return_type: 'OCI::Core::Models::NatGateway'
7323
+ )
7324
+ end
7325
+ # rubocop:enable Metrics/BlockLength
7326
+ end
7327
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
7328
+ # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
7329
+ # rubocop:enable Metrics/MethodLength, Layout/EmptyLines
7330
+
7331
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
7332
+ # rubocop:disable Style/IfUnlessModifier, Metrics/ParameterLists
7333
+ # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
7334
+
7335
+
6881
7336
  # Updates the specified private IP. You must specify the object's OCID.
6882
7337
  # Use this operation if you want to:
6883
7338
  #