oci 2.5.9 → 2.5.10

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 (129) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +1 -1
  3. data/lib/oci/autoscaling/auto_scaling_client.rb +73 -0
  4. data/lib/oci/autoscaling/autoscaling.rb +1 -0
  5. data/lib/oci/autoscaling/models/change_auto_scaling_compartment_details.rb +154 -0
  6. data/lib/oci/autoscaling/models/create_auto_scaling_configuration_details.rb +0 -1
  7. data/lib/oci/container_engine/models/work_request_error.rb +0 -1
  8. data/lib/oci/core/blockstorage_client.rb +342 -0
  9. data/lib/oci/core/compute_client.rb +77 -5
  10. data/lib/oci/core/compute_client_composite_operations.rb +3 -3
  11. data/lib/oci/core/compute_management_client.rb +211 -0
  12. data/lib/oci/core/core.rb +27 -0
  13. data/lib/oci/core/models/add_network_security_group_security_rules_details.rb +153 -0
  14. data/lib/oci/core/models/add_security_rule_details.rb +388 -0
  15. data/lib/oci/core/models/added_network_security_group_security_rules.rb +153 -0
  16. data/lib/oci/core/models/change_boot_volume_backup_compartment_details.rb +153 -0
  17. data/lib/oci/core/models/change_boot_volume_compartment_details.rb +153 -0
  18. data/lib/oci/core/models/change_image_compartment_details.rb +154 -0
  19. data/lib/oci/core/models/change_instance_configuration_compartment_details.rb +155 -0
  20. data/lib/oci/core/models/change_instance_pool_compartment_details.rb +155 -0
  21. data/lib/oci/core/models/change_nat_gateway_compartment_details.rb +153 -0
  22. data/lib/oci/core/models/change_route_table_compartment_details.rb +155 -0
  23. data/lib/oci/core/models/change_security_list_compartment_details.rb +155 -0
  24. data/lib/oci/core/models/change_service_gateway_compartment_details.rb +155 -0
  25. data/lib/oci/core/models/change_subnet_compartment_details.rb +155 -0
  26. data/lib/oci/core/models/change_vcn_compartment_details.rb +155 -0
  27. data/lib/oci/core/models/change_volume_backup_compartment_details.rb +153 -0
  28. data/lib/oci/core/models/change_volume_compartment_details.rb +153 -0
  29. data/lib/oci/core/models/change_volume_group_backup_compartment_details.rb +153 -0
  30. data/lib/oci/core/models/change_volume_group_compartment_details.rb +153 -0
  31. data/lib/oci/core/models/create_network_security_group_details.rb +223 -0
  32. data/lib/oci/core/models/create_vnic_details.rb +18 -1
  33. data/lib/oci/core/models/image.rb +2 -1
  34. data/lib/oci/core/models/instance_configuration.rb +3 -1
  35. data/lib/oci/core/models/instance_configuration_create_vnic_details.rb +18 -1
  36. data/lib/oci/core/models/instance_configuration_instance_source_via_image_details.rb +15 -1
  37. data/lib/oci/core/models/instance_configuration_summary.rb +3 -3
  38. data/lib/oci/core/models/instance_pool.rb +4 -1
  39. data/lib/oci/core/models/instance_pool_summary.rb +3 -3
  40. data/lib/oci/core/models/network_security_group.rb +324 -0
  41. data/lib/oci/core/models/network_security_group_vnic.rb +188 -0
  42. data/lib/oci/core/models/remove_network_security_group_security_rules_details.rb +154 -0
  43. data/lib/oci/core/models/security_list.rb +5 -0
  44. data/lib/oci/core/models/security_rule.rb +455 -0
  45. data/lib/oci/core/models/update_network_security_group_details.rb +189 -0
  46. data/lib/oci/core/models/update_network_security_group_security_rules_details.rb +153 -0
  47. data/lib/oci/core/models/update_security_rule_details.rb +404 -0
  48. data/lib/oci/core/models/update_vnic_details.rb +20 -1
  49. data/lib/oci/core/models/updated_network_security_group_security_rules.rb +153 -0
  50. data/lib/oci/core/models/vnic.rb +18 -1
  51. data/lib/oci/core/virtual_network_client.rb +1228 -132
  52. data/lib/oci/core/virtual_network_client_composite_operations.rb +119 -0
  53. data/lib/oci/database/database.rb +19 -0
  54. data/lib/oci/database/database_client.rb +1066 -46
  55. data/lib/oci/database/database_client_composite_operations.rb +317 -0
  56. data/lib/oci/database/models/autonomous_container_database.rb +416 -0
  57. data/lib/oci/database/models/autonomous_container_database_backup_config.rb +157 -0
  58. data/lib/oci/database/models/autonomous_container_database_summary.rb +420 -0
  59. data/lib/oci/database/models/autonomous_database.rb +58 -1
  60. data/lib/oci/database/models/autonomous_database_backup.rb +16 -1
  61. data/lib/oci/database/models/autonomous_database_backup_summary.rb +16 -1
  62. data/lib/oci/database/models/autonomous_database_connection_strings.rb +11 -1
  63. data/lib/oci/database/models/autonomous_database_connection_urls.rb +170 -0
  64. data/lib/oci/database/models/autonomous_database_summary.rb +58 -1
  65. data/lib/oci/database/models/autonomous_db_preview_version_summary.rb +224 -0
  66. data/lib/oci/database/models/autonomous_exadata_infrastructure.rb +419 -0
  67. data/lib/oci/database/models/autonomous_exadata_infrastructure_maintenance_window.rb +186 -0
  68. data/lib/oci/database/models/autonomous_exadata_infrastructure_shape_summary.rb +224 -0
  69. data/lib/oci/database/models/autonomous_exadata_infrastructure_summary.rb +436 -0
  70. data/lib/oci/database/models/backup.rb +1 -0
  71. data/lib/oci/database/models/backup_summary.rb +1 -0
  72. data/lib/oci/database/models/create_autonomous_container_database_details.rb +284 -0
  73. data/lib/oci/database/models/create_autonomous_database_base.rb +46 -1
  74. data/lib/oci/database/models/create_autonomous_database_clone_details.rb +13 -1
  75. data/lib/oci/database/models/create_autonomous_database_details.rb +13 -1
  76. data/lib/oci/database/models/create_data_guard_association_with_new_db_system_details.rb +34 -1
  77. data/lib/oci/database/models/create_db_home_with_db_system_id_base.rb +1 -1
  78. data/lib/oci/database/models/day_of_week.rb +174 -0
  79. data/lib/oci/database/models/db_system.rb +34 -1
  80. data/lib/oci/database/models/db_system_summary.rb +34 -1
  81. data/lib/oci/database/models/launch_autonomous_exadata_infrastructure_details.rb +304 -0
  82. data/lib/oci/database/models/launch_db_system_base.rb +35 -2
  83. data/lib/oci/database/models/launch_db_system_details.rb +11 -2
  84. data/lib/oci/database/models/launch_db_system_from_backup_details.rb +11 -2
  85. data/lib/oci/database/models/maintenance_run.rb +392 -0
  86. data/lib/oci/database/models/maintenance_run_summary.rb +395 -0
  87. data/lib/oci/database/models/maintenance_window.rb +226 -0
  88. data/lib/oci/database/models/month.rb +179 -0
  89. data/lib/oci/database/models/restore_autonomous_database_details.rb +30 -4
  90. data/lib/oci/database/models/update_autonomous_container_database_details.rb +230 -0
  91. data/lib/oci/database/models/update_autonomous_database_details.rb +18 -1
  92. data/lib/oci/database/models/update_autonomous_exadata_infrastructure_details.rb +203 -0
  93. data/lib/oci/database/models/update_db_system_details.rb +37 -4
  94. data/lib/oci/database/models/update_maintenance_run_details.rb +154 -0
  95. data/lib/oci/email/email.rb +1 -0
  96. data/lib/oci/email/email_client.rb +62 -0
  97. data/lib/oci/email/models/change_sender_compartment_details.rb +157 -0
  98. data/lib/oci/key_management/key_management.rb +1 -0
  99. data/lib/oci/key_management/kms_crypto_client.rb +4 -4
  100. data/lib/oci/key_management/kms_management_client.rb +161 -10
  101. data/lib/oci/key_management/kms_management_client_composite_operations.rb +79 -0
  102. data/lib/oci/key_management/kms_vault_client.rb +16 -11
  103. data/lib/oci/key_management/models/key.rb +17 -1
  104. data/lib/oci/key_management/models/schedule_key_deletion_details.rb +156 -0
  105. data/lib/oci/load_balancer/load_balancer.rb +1 -0
  106. data/lib/oci/load_balancer/load_balancer_client.rb +64 -0
  107. data/lib/oci/load_balancer/load_balancer_client_composite_operations.rb +50 -0
  108. data/lib/oci/load_balancer/models/create_load_balancer_details.rb +16 -1
  109. data/lib/oci/load_balancer/models/load_balancer.rb +16 -1
  110. data/lib/oci/load_balancer/models/remove_http_request_header_rule.rb +1 -1
  111. data/lib/oci/load_balancer/models/remove_http_response_header_rule.rb +1 -1
  112. data/lib/oci/load_balancer/models/session_persistence_configuration_details.rb +9 -5
  113. data/lib/oci/load_balancer/models/update_backend_set_details.rb +2 -0
  114. data/lib/oci/load_balancer/models/update_network_security_groups_details.rb +154 -0
  115. data/lib/oci/monitoring/models/metric.rb +1 -0
  116. data/lib/oci/object_storage/models/work_request_error.rb +1 -0
  117. data/lib/oci/resource_manager/models/change_stack_compartment_details.rb +155 -0
  118. data/lib/oci/resource_manager/models/work_request.rb +293 -0
  119. data/lib/oci/resource_manager/models/work_request_error.rb +170 -0
  120. data/lib/oci/resource_manager/models/work_request_log_entry.rb +159 -0
  121. data/lib/oci/resource_manager/models/work_request_resource.rb +217 -0
  122. data/lib/oci/resource_manager/models/work_request_summary.rb +254 -0
  123. data/lib/oci/resource_manager/resource_manager.rb +6 -0
  124. data/lib/oci/resource_manager/resource_manager_client.rb +338 -0
  125. data/lib/oci/resource_manager/resource_manager_client_composite_operations.rb +50 -0
  126. data/lib/oci/streaming/stream_admin_client.rb +2 -2
  127. data/lib/oci/streaming/stream_client.rb +1 -1
  128. data/lib/oci/version.rb +1 -1
  129. metadata +58 -2
@@ -43,6 +43,15 @@ module OCI
43
43
  # @return [String]
44
44
  attr_accessor :hostname_label
45
45
 
46
+ # A list of the OCIDs of the network security groups (NSGs) to add the VNIC to. Setting this as
47
+ # an empty array removes the VNIC from all network security groups.
48
+ #
49
+ # For more information about NSGs, see
50
+ # {NetworkSecurityGroup}.
51
+ #
52
+ # @return [Array<String>]
53
+ attr_accessor :nsg_ids
54
+
46
55
  # Whether the source/destination check is disabled on the VNIC.
47
56
  # Defaults to `false`, which means the check is performed. For information
48
57
  # about why you would skip the source/destination check, see
@@ -61,6 +70,7 @@ module OCI
61
70
  'display_name': :'displayName',
62
71
  'freeform_tags': :'freeformTags',
63
72
  'hostname_label': :'hostnameLabel',
73
+ 'nsg_ids': :'nsgIds',
64
74
  'skip_source_dest_check': :'skipSourceDestCheck'
65
75
  # rubocop:enable Style/SymbolLiteral
66
76
  }
@@ -74,6 +84,7 @@ module OCI
74
84
  'display_name': :'String',
75
85
  'freeform_tags': :'Hash<String, String>',
76
86
  'hostname_label': :'String',
87
+ 'nsg_ids': :'Array<String>',
77
88
  'skip_source_dest_check': :'BOOLEAN'
78
89
  # rubocop:enable Style/SymbolLiteral
79
90
  }
@@ -89,6 +100,7 @@ module OCI
89
100
  # @option attributes [String] :display_name The value to assign to the {#display_name} property
90
101
  # @option attributes [Hash<String, String>] :freeform_tags The value to assign to the {#freeform_tags} property
91
102
  # @option attributes [String] :hostname_label The value to assign to the {#hostname_label} property
103
+ # @option attributes [Array<String>] :nsg_ids The value to assign to the {#nsg_ids} property
92
104
  # @option attributes [BOOLEAN] :skip_source_dest_check The value to assign to the {#skip_source_dest_check} property
93
105
  def initialize(attributes = {})
94
106
  return unless attributes.is_a?(Hash)
@@ -120,6 +132,12 @@ module OCI
120
132
 
121
133
  self.hostname_label = attributes[:'hostname_label'] if attributes[:'hostname_label']
122
134
 
135
+ self.nsg_ids = attributes[:'nsgIds'] if attributes[:'nsgIds']
136
+
137
+ raise 'You cannot provide both :nsgIds and :nsg_ids' if attributes.key?(:'nsgIds') && attributes.key?(:'nsg_ids')
138
+
139
+ self.nsg_ids = attributes[:'nsg_ids'] if attributes[:'nsg_ids']
140
+
123
141
  self.skip_source_dest_check = attributes[:'skipSourceDestCheck'] unless attributes[:'skipSourceDestCheck'].nil?
124
142
 
125
143
  raise 'You cannot provide both :skipSourceDestCheck and :skip_source_dest_check' if attributes.key?(:'skipSourceDestCheck') && attributes.key?(:'skip_source_dest_check')
@@ -142,6 +160,7 @@ module OCI
142
160
  display_name == other.display_name &&
143
161
  freeform_tags == other.freeform_tags &&
144
162
  hostname_label == other.hostname_label &&
163
+ nsg_ids == other.nsg_ids &&
145
164
  skip_source_dest_check == other.skip_source_dest_check
146
165
  end
147
166
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
@@ -158,7 +177,7 @@ module OCI
158
177
  # Calculates hash code according to all attributes.
159
178
  # @return [Fixnum] Hash code
160
179
  def hash
161
- [defined_tags, display_name, freeform_tags, hostname_label, skip_source_dest_check].hash
180
+ [defined_tags, display_name, freeform_tags, hostname_label, nsg_ids, skip_source_dest_check].hash
162
181
  end
163
182
  # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
164
183
 
@@ -0,0 +1,153 @@
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
+ # UpdatedNetworkSecurityGroupSecurityRules model.
8
+ class Core::Models::UpdatedNetworkSecurityGroupSecurityRules
9
+ # The NSG security rules that were updated.
10
+ # @return [Array<OCI::Core::Models::SecurityRule>]
11
+ attr_accessor :security_rules
12
+
13
+ # Attribute mapping from ruby-style variable name to JSON key.
14
+ def self.attribute_map
15
+ {
16
+ # rubocop:disable Style/SymbolLiteral
17
+ 'security_rules': :'securityRules'
18
+ # rubocop:enable Style/SymbolLiteral
19
+ }
20
+ end
21
+
22
+ # Attribute type mapping.
23
+ def self.swagger_types
24
+ {
25
+ # rubocop:disable Style/SymbolLiteral
26
+ 'security_rules': :'Array<OCI::Core::Models::SecurityRule>'
27
+ # rubocop:enable Style/SymbolLiteral
28
+ }
29
+ end
30
+
31
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
32
+ # rubocop:disable Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
33
+
34
+
35
+ # Initializes the object
36
+ # @param [Hash] attributes Model attributes in the form of hash
37
+ # @option attributes [Array<OCI::Core::Models::SecurityRule>] :security_rules The value to assign to the {#security_rules} property
38
+ def initialize(attributes = {})
39
+ return unless attributes.is_a?(Hash)
40
+
41
+ # convert string to symbol for hash key
42
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
43
+
44
+ self.security_rules = attributes[:'securityRules'] if attributes[:'securityRules']
45
+
46
+ raise 'You cannot provide both :securityRules and :security_rules' if attributes.key?(:'securityRules') && attributes.key?(:'security_rules')
47
+
48
+ self.security_rules = attributes[:'security_rules'] if attributes[:'security_rules']
49
+ end
50
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
51
+ # rubocop:enable Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
52
+
53
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
54
+
55
+
56
+ # Checks equality by comparing each attribute.
57
+ # @param [Object] other the other object to be compared
58
+ def ==(other)
59
+ return true if equal?(other)
60
+
61
+ self.class == other.class &&
62
+ security_rules == other.security_rules
63
+ end
64
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
65
+
66
+ # @see the `==` method
67
+ # @param [Object] other the other object to be compared
68
+ def eql?(other)
69
+ self == other
70
+ end
71
+
72
+ # rubocop:disable Metrics/AbcSize, Layout/EmptyLines
73
+
74
+
75
+ # Calculates hash code according to all attributes.
76
+ # @return [Fixnum] Hash code
77
+ def hash
78
+ [security_rules].hash
79
+ end
80
+ # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
81
+
82
+ # rubocop:disable Metrics/AbcSize, Layout/EmptyLines
83
+
84
+
85
+ # Builds the object from hash
86
+ # @param [Hash] attributes Model attributes in the form of hash
87
+ # @return [Object] Returns the model itself
88
+ def build_from_hash(attributes)
89
+ return nil unless attributes.is_a?(Hash)
90
+
91
+ self.class.swagger_types.each_pair do |key, type|
92
+ if type =~ /^Array<(.*)>/i
93
+ # check to ensure the input is an array given that the the attribute
94
+ # is documented as an array but the input is not
95
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
96
+ public_method("#{key}=").call(
97
+ attributes[self.class.attribute_map[key]]
98
+ .map { |v| OCI::Internal::Util.convert_to_type(Regexp.last_match(1), v) }
99
+ )
100
+ end
101
+ elsif !attributes[self.class.attribute_map[key]].nil?
102
+ public_method("#{key}=").call(
103
+ OCI::Internal::Util.convert_to_type(type, attributes[self.class.attribute_map[key]])
104
+ )
105
+ end
106
+ # or else data not found in attributes(hash), not an issue as the data can be optional
107
+ end
108
+
109
+ self
110
+ end
111
+ # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
112
+
113
+ # Returns the string representation of the object
114
+ # @return [String] String presentation of the object
115
+ def to_s
116
+ to_hash.to_s
117
+ end
118
+
119
+ # Returns the object in the form of hash
120
+ # @return [Hash] Returns the object in the form of hash
121
+ def to_hash
122
+ hash = {}
123
+ self.class.attribute_map.each_pair do |attr, param|
124
+ value = public_method(attr).call
125
+ next if value.nil? && !instance_variable_defined?("@#{attr}")
126
+
127
+ hash[param] = _to_hash(value)
128
+ end
129
+ hash
130
+ end
131
+
132
+ private
133
+
134
+ # Outputs non-array value in the form of hash
135
+ # For object, use to_hash. Otherwise, just return the value
136
+ # @param [Object] value Any valid value
137
+ # @return [Hash] Returns the value in the form of hash
138
+ def _to_hash(value)
139
+ if value.is_a?(Array)
140
+ value.compact.map { |v| _to_hash(v) }
141
+ elsif value.is_a?(Hash)
142
+ {}.tap do |hash|
143
+ value.each { |k, v| hash[k] = _to_hash(v) }
144
+ end
145
+ elsif value.respond_to? :to_hash
146
+ value.to_hash
147
+ else
148
+ value
149
+ end
150
+ end
151
+ end
152
+ end
153
+ # rubocop:enable Lint/UnneededCopDisableDirective, Metrics/LineLength
@@ -102,6 +102,13 @@ module OCI
102
102
  # @return [String]
103
103
  attr_accessor :mac_address
104
104
 
105
+ # A list of the OCIDs of the network security groups that the VNIC belongs to. For more
106
+ # information about NSGs, see
107
+ # {NetworkSecurityGroup}.
108
+ #
109
+ # @return [Array<String>]
110
+ attr_accessor :nsg_ids
111
+
105
112
  # The private IP address of the primary `privateIp` object on the VNIC.
106
113
  # The address is within the CIDR of the VNIC's subnet.
107
114
  #
@@ -150,6 +157,7 @@ module OCI
150
157
  'is_primary': :'isPrimary',
151
158
  'lifecycle_state': :'lifecycleState',
152
159
  'mac_address': :'macAddress',
160
+ 'nsg_ids': :'nsgIds',
153
161
  'private_ip': :'privateIp',
154
162
  'public_ip': :'publicIp',
155
163
  'skip_source_dest_check': :'skipSourceDestCheck',
@@ -173,6 +181,7 @@ module OCI
173
181
  'is_primary': :'BOOLEAN',
174
182
  'lifecycle_state': :'String',
175
183
  'mac_address': :'String',
184
+ 'nsg_ids': :'Array<String>',
176
185
  'private_ip': :'String',
177
186
  'public_ip': :'String',
178
187
  'skip_source_dest_check': :'BOOLEAN',
@@ -198,6 +207,7 @@ module OCI
198
207
  # @option attributes [BOOLEAN] :is_primary The value to assign to the {#is_primary} property
199
208
  # @option attributes [String] :lifecycle_state The value to assign to the {#lifecycle_state} property
200
209
  # @option attributes [String] :mac_address The value to assign to the {#mac_address} property
210
+ # @option attributes [Array<String>] :nsg_ids The value to assign to the {#nsg_ids} property
201
211
  # @option attributes [String] :private_ip The value to assign to the {#private_ip} property
202
212
  # @option attributes [String] :public_ip The value to assign to the {#public_ip} property
203
213
  # @option attributes [BOOLEAN] :skip_source_dest_check The value to assign to the {#skip_source_dest_check} property
@@ -265,6 +275,12 @@ module OCI
265
275
 
266
276
  self.mac_address = attributes[:'mac_address'] if attributes[:'mac_address']
267
277
 
278
+ self.nsg_ids = attributes[:'nsgIds'] if attributes[:'nsgIds']
279
+
280
+ raise 'You cannot provide both :nsgIds and :nsg_ids' if attributes.key?(:'nsgIds') && attributes.key?(:'nsg_ids')
281
+
282
+ self.nsg_ids = attributes[:'nsg_ids'] if attributes[:'nsg_ids']
283
+
268
284
  self.private_ip = attributes[:'privateIp'] if attributes[:'privateIp']
269
285
 
270
286
  raise 'You cannot provide both :privateIp and :private_ip' if attributes.key?(:'privateIp') && attributes.key?(:'private_ip')
@@ -330,6 +346,7 @@ module OCI
330
346
  is_primary == other.is_primary &&
331
347
  lifecycle_state == other.lifecycle_state &&
332
348
  mac_address == other.mac_address &&
349
+ nsg_ids == other.nsg_ids &&
333
350
  private_ip == other.private_ip &&
334
351
  public_ip == other.public_ip &&
335
352
  skip_source_dest_check == other.skip_source_dest_check &&
@@ -350,7 +367,7 @@ module OCI
350
367
  # Calculates hash code according to all attributes.
351
368
  # @return [Fixnum] Hash code
352
369
  def hash
353
- [availability_domain, compartment_id, defined_tags, display_name, freeform_tags, hostname_label, id, is_primary, lifecycle_state, mac_address, private_ip, public_ip, skip_source_dest_check, subnet_id, time_created].hash
370
+ [availability_domain, compartment_id, defined_tags, display_name, freeform_tags, hostname_label, id, is_primary, lifecycle_state, mac_address, nsg_ids, private_ip, public_ip, skip_source_dest_check, subnet_id, time_created].hash
354
371
  end
355
372
  # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
356
373
 
@@ -110,37 +110,476 @@ module OCI
110
110
  # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
111
111
  # rubocop:disable Style/IfUnlessModifier, Metrics/ParameterLists
112
112
  # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
113
+ # rubocop:disable Lint/UnusedMethodArgument
114
+
115
+
116
+ # Adds one or more security rules to the specified network security group.
117
+ #
118
+ # @param [String] network_security_group_id The [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) of the network security group.
119
+ # @param [OCI::Core::Models::AddNetworkSecurityGroupSecurityRulesDetails] add_network_security_group_security_rules_details Request with one or more security rules to be associated with the network security group.
120
+ # @param [Hash] opts the optional parameters
121
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
122
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
123
+ # @return [Response] A Response object with data of type {OCI::Core::Models::AddedNetworkSecurityGroupSecurityRules AddedNetworkSecurityGroupSecurityRules}
124
+ def add_network_security_group_security_rules(network_security_group_id, add_network_security_group_security_rules_details, opts = {})
125
+ logger.debug 'Calling operation VirtualNetworkClient#add_network_security_group_security_rules.' if logger
126
+
127
+ raise "Missing the required parameter 'network_security_group_id' when calling add_network_security_group_security_rules." if network_security_group_id.nil?
128
+ raise "Missing the required parameter 'add_network_security_group_security_rules_details' when calling add_network_security_group_security_rules." if add_network_security_group_security_rules_details.nil?
129
+ raise "Parameter value for 'network_security_group_id' must not be blank" if OCI::Internal::Util.blank_string?(network_security_group_id)
130
+
131
+ path = '/networkSecurityGroups/{networkSecurityGroupId}/actions/addSecurityRules'.sub('{networkSecurityGroupId}', network_security_group_id.to_s)
132
+ operation_signing_strategy = :standard
133
+
134
+ # rubocop:disable Style/NegatedIf
135
+ # Query Params
136
+ query_params = {}
137
+
138
+ # Header Params
139
+ header_params = {}
140
+ header_params[:accept] = 'application/json'
141
+ header_params[:'content-type'] = 'application/json'
142
+ # rubocop:enable Style/NegatedIf
143
+
144
+ post_body = @api_client.object_to_http_body(add_network_security_group_security_rules_details)
145
+
146
+ # rubocop:disable Metrics/BlockLength
147
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'VirtualNetworkClient#add_network_security_group_security_rules') do
148
+ @api_client.call_api(
149
+ :POST,
150
+ path,
151
+ endpoint,
152
+ header_params: header_params,
153
+ query_params: query_params,
154
+ operation_signing_strategy: operation_signing_strategy,
155
+ body: post_body,
156
+ return_type: 'OCI::Core::Models::AddedNetworkSecurityGroupSecurityRules'
157
+ )
158
+ end
159
+ # rubocop:enable Metrics/BlockLength
160
+ end
161
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
162
+ # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
163
+ # rubocop:enable Metrics/MethodLength, Layout/EmptyLines
164
+ # rubocop:enable Lint/UnusedMethodArgument
165
+
166
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
167
+ # rubocop:disable Style/IfUnlessModifier, Metrics/ParameterLists
168
+ # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
169
+
170
+
171
+ # Adds the specified {Service} to the list of enabled
172
+ # `Service` objects for the specified gateway. You must also set up a route rule with the
173
+ # `cidrBlock` of the `Service` as the rule's destination and the service gateway as the rule's
174
+ # target. See {RouteTable}.
175
+ #
176
+ # **Note:** The `AttachServiceId` operation is an easy way to add an individual `Service` to
177
+ # the service gateway. Compare it with
178
+ # {#update_service_gateway update_service_gateway}, which replaces
179
+ # the entire existing list of enabled `Service` objects with the list that you provide in the
180
+ # `Update` call.
181
+ #
182
+ # @param [String] service_gateway_id The service gateway's [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm).
183
+ # @param [OCI::Core::Models::ServiceIdRequestDetails] attach_service_details ServiceId of Service to be attached to a service gateway.
184
+ # @param [Hash] opts the optional parameters
185
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
186
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
187
+ # @option opts [String] :if_match For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match`
188
+ # parameter to the value of the etag from a previous GET or POST response for that resource. The resource
189
+ # will be updated or deleted only if the etag you provide matches the resource's current etag value.
190
+ #
191
+ # @return [Response] A Response object with data of type {OCI::Core::Models::ServiceGateway ServiceGateway}
192
+ def attach_service_id(service_gateway_id, attach_service_details, opts = {})
193
+ logger.debug 'Calling operation VirtualNetworkClient#attach_service_id.' if logger
194
+
195
+ raise "Missing the required parameter 'service_gateway_id' when calling attach_service_id." if service_gateway_id.nil?
196
+ raise "Missing the required parameter 'attach_service_details' when calling attach_service_id." if attach_service_details.nil?
197
+ raise "Parameter value for 'service_gateway_id' must not be blank" if OCI::Internal::Util.blank_string?(service_gateway_id)
198
+
199
+ path = '/serviceGateways/{serviceGatewayId}/actions/attachService'.sub('{serviceGatewayId}', service_gateway_id.to_s)
200
+ operation_signing_strategy = :standard
201
+
202
+ # rubocop:disable Style/NegatedIf
203
+ # Query Params
204
+ query_params = {}
205
+
206
+ # Header Params
207
+ header_params = {}
208
+ header_params[:accept] = 'application/json'
209
+ header_params[:'content-type'] = 'application/json'
210
+ header_params[:'if-match'] = opts[:if_match] if opts[:if_match]
211
+ # rubocop:enable Style/NegatedIf
212
+
213
+ post_body = @api_client.object_to_http_body(attach_service_details)
214
+
215
+ # rubocop:disable Metrics/BlockLength
216
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'VirtualNetworkClient#attach_service_id') do
217
+ @api_client.call_api(
218
+ :POST,
219
+ path,
220
+ endpoint,
221
+ header_params: header_params,
222
+ query_params: query_params,
223
+ operation_signing_strategy: operation_signing_strategy,
224
+ body: post_body,
225
+ return_type: 'OCI::Core::Models::ServiceGateway'
226
+ )
227
+ end
228
+ # rubocop:enable Metrics/BlockLength
229
+ end
230
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
231
+ # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
232
+ # rubocop:enable Metrics/MethodLength, Layout/EmptyLines
233
+
234
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
235
+ # rubocop:disable Style/IfUnlessModifier, Metrics/ParameterLists
236
+ # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
237
+ # rubocop:disable Lint/UnusedMethodArgument
238
+
239
+
240
+ # Adds one or more customer public IP prefixes to the specified public virtual circuit.
241
+ # Use this operation (and not {#update_virtual_circuit update_virtual_circuit})
242
+ # to add prefixes to the virtual circuit. Oracle must verify the customer's ownership
243
+ # of each prefix before traffic for that prefix will flow across the virtual circuit.
244
+ #
245
+ # @param [String] virtual_circuit_id The OCID of the virtual circuit.
246
+ # @param [OCI::Core::Models::BulkAddVirtualCircuitPublicPrefixesDetails] bulk_add_virtual_circuit_public_prefixes_details Request with publix prefixes to be added to the virtual circuit
247
+ # @param [Hash] opts the optional parameters
248
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
249
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
250
+ # @return [Response] A Response object with data of type nil
251
+ def bulk_add_virtual_circuit_public_prefixes(virtual_circuit_id, bulk_add_virtual_circuit_public_prefixes_details, opts = {})
252
+ logger.debug 'Calling operation VirtualNetworkClient#bulk_add_virtual_circuit_public_prefixes.' if logger
253
+
254
+ raise "Missing the required parameter 'virtual_circuit_id' when calling bulk_add_virtual_circuit_public_prefixes." if virtual_circuit_id.nil?
255
+ raise "Missing the required parameter 'bulk_add_virtual_circuit_public_prefixes_details' when calling bulk_add_virtual_circuit_public_prefixes." if bulk_add_virtual_circuit_public_prefixes_details.nil?
256
+ raise "Parameter value for 'virtual_circuit_id' must not be blank" if OCI::Internal::Util.blank_string?(virtual_circuit_id)
257
+
258
+ path = '/virtualCircuits/{virtualCircuitId}/actions/bulkAddPublicPrefixes'.sub('{virtualCircuitId}', virtual_circuit_id.to_s)
259
+ operation_signing_strategy = :standard
260
+
261
+ # rubocop:disable Style/NegatedIf
262
+ # Query Params
263
+ query_params = {}
264
+
265
+ # Header Params
266
+ header_params = {}
267
+ header_params[:accept] = 'application/json'
268
+ header_params[:'content-type'] = 'application/json'
269
+ # rubocop:enable Style/NegatedIf
270
+
271
+ post_body = @api_client.object_to_http_body(bulk_add_virtual_circuit_public_prefixes_details)
272
+
273
+ # rubocop:disable Metrics/BlockLength
274
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'VirtualNetworkClient#bulk_add_virtual_circuit_public_prefixes') do
275
+ @api_client.call_api(
276
+ :POST,
277
+ path,
278
+ endpoint,
279
+ header_params: header_params,
280
+ query_params: query_params,
281
+ operation_signing_strategy: operation_signing_strategy,
282
+ body: post_body
283
+ )
284
+ end
285
+ # rubocop:enable Metrics/BlockLength
286
+ end
287
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
288
+ # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
289
+ # rubocop:enable Metrics/MethodLength, Layout/EmptyLines
290
+ # rubocop:enable Lint/UnusedMethodArgument
291
+
292
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
293
+ # rubocop:disable Style/IfUnlessModifier, Metrics/ParameterLists
294
+ # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
295
+ # rubocop:disable Lint/UnusedMethodArgument
296
+
297
+
298
+ # Removes one or more customer public IP prefixes from the specified public virtual circuit.
299
+ # Use this operation (and not {#update_virtual_circuit update_virtual_circuit})
300
+ # to remove prefixes from the virtual circuit. When the virtual circuit's state switches
301
+ # back to PROVISIONED, Oracle stops advertising the specified prefixes across the connection.
302
+ #
303
+ # @param [String] virtual_circuit_id The OCID of the virtual circuit.
304
+ # @param [OCI::Core::Models::BulkDeleteVirtualCircuitPublicPrefixesDetails] bulk_delete_virtual_circuit_public_prefixes_details Request with publix prefixes to be deleted from the virtual circuit
305
+ # @param [Hash] opts the optional parameters
306
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
307
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
308
+ # @return [Response] A Response object with data of type nil
309
+ def bulk_delete_virtual_circuit_public_prefixes(virtual_circuit_id, bulk_delete_virtual_circuit_public_prefixes_details, opts = {})
310
+ logger.debug 'Calling operation VirtualNetworkClient#bulk_delete_virtual_circuit_public_prefixes.' if logger
311
+
312
+ raise "Missing the required parameter 'virtual_circuit_id' when calling bulk_delete_virtual_circuit_public_prefixes." if virtual_circuit_id.nil?
313
+ raise "Missing the required parameter 'bulk_delete_virtual_circuit_public_prefixes_details' when calling bulk_delete_virtual_circuit_public_prefixes." if bulk_delete_virtual_circuit_public_prefixes_details.nil?
314
+ raise "Parameter value for 'virtual_circuit_id' must not be blank" if OCI::Internal::Util.blank_string?(virtual_circuit_id)
315
+
316
+ path = '/virtualCircuits/{virtualCircuitId}/actions/bulkDeletePublicPrefixes'.sub('{virtualCircuitId}', virtual_circuit_id.to_s)
317
+ operation_signing_strategy = :standard
318
+
319
+ # rubocop:disable Style/NegatedIf
320
+ # Query Params
321
+ query_params = {}
322
+
323
+ # Header Params
324
+ header_params = {}
325
+ header_params[:accept] = 'application/json'
326
+ header_params[:'content-type'] = 'application/json'
327
+ # rubocop:enable Style/NegatedIf
328
+
329
+ post_body = @api_client.object_to_http_body(bulk_delete_virtual_circuit_public_prefixes_details)
330
+
331
+ # rubocop:disable Metrics/BlockLength
332
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'VirtualNetworkClient#bulk_delete_virtual_circuit_public_prefixes') do
333
+ @api_client.call_api(
334
+ :POST,
335
+ path,
336
+ endpoint,
337
+ header_params: header_params,
338
+ query_params: query_params,
339
+ operation_signing_strategy: operation_signing_strategy,
340
+ body: post_body
341
+ )
342
+ end
343
+ # rubocop:enable Metrics/BlockLength
344
+ end
345
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
346
+ # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
347
+ # rubocop:enable Metrics/MethodLength, Layout/EmptyLines
348
+ # rubocop:enable Lint/UnusedMethodArgument
349
+
350
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
351
+ # rubocop:disable Style/IfUnlessModifier, Metrics/ParameterLists
352
+ # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
353
+
354
+
355
+ # Moves a NAT gateway into a different compartment within the same tenancy. For information
356
+ # about moving resources between compartments, see
357
+ # [Moving Resources to a Different Compartment](https://docs.cloud.oracle.com/iaas/Content/Identity/Tasks/managingcompartments.htm#moveRes).
358
+ #
359
+ # @param [String] nat_gateway_id The NAT gateway's [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm).
360
+ # @param [OCI::Core::Models::ChangeNatGatewayCompartmentDetails] change_nat_gateway_compartment_details Request to change the compartment of a given NAT Gateway.
361
+ # @param [Hash] opts the optional parameters
362
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
363
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
364
+ # @option opts [String] :opc_request_id Unique identifier for the request.
365
+ # If you need to contact Oracle about a particular request, please provide the request ID.
366
+ #
367
+ # @option opts [String] :opc_retry_token A token that uniquely identifies a request so it can be retried in case of a timeout or
368
+ # server error without risk of executing that same action again. Retry tokens expire after 24
369
+ # hours, but can be invalidated before then due to conflicting operations (for example, if a resource
370
+ # has been deleted and purged from the system, then a retry of the original creation request
371
+ # may be rejected).
372
+ #
373
+ # @return [Response] A Response object with data of type nil
374
+ def change_nat_gateway_compartment(nat_gateway_id, change_nat_gateway_compartment_details, opts = {})
375
+ logger.debug 'Calling operation VirtualNetworkClient#change_nat_gateway_compartment.' if logger
376
+
377
+ raise "Missing the required parameter 'nat_gateway_id' when calling change_nat_gateway_compartment." if nat_gateway_id.nil?
378
+ raise "Missing the required parameter 'change_nat_gateway_compartment_details' when calling change_nat_gateway_compartment." if change_nat_gateway_compartment_details.nil?
379
+ raise "Parameter value for 'nat_gateway_id' must not be blank" if OCI::Internal::Util.blank_string?(nat_gateway_id)
380
+
381
+ path = '/natGateways/{natGatewayId}/actions/changeCompartment'.sub('{natGatewayId}', nat_gateway_id.to_s)
382
+ operation_signing_strategy = :standard
383
+
384
+ # rubocop:disable Style/NegatedIf
385
+ # Query Params
386
+ query_params = {}
387
+
388
+ # Header Params
389
+ header_params = {}
390
+ header_params[:accept] = 'application/json'
391
+ header_params[:'content-type'] = 'application/json'
392
+ header_params[:'opc-request-id'] = opts[:opc_request_id] if opts[:opc_request_id]
393
+ header_params[:'opc-retry-token'] = opts[:opc_retry_token] if opts[:opc_retry_token]
394
+ # rubocop:enable Style/NegatedIf
395
+ header_params[:'opc-retry-token'] ||= OCI::Retry.generate_opc_retry_token
396
+
397
+ post_body = @api_client.object_to_http_body(change_nat_gateway_compartment_details)
398
+
399
+ # rubocop:disable Metrics/BlockLength
400
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'VirtualNetworkClient#change_nat_gateway_compartment') do
401
+ @api_client.call_api(
402
+ :POST,
403
+ path,
404
+ endpoint,
405
+ header_params: header_params,
406
+ query_params: query_params,
407
+ operation_signing_strategy: operation_signing_strategy,
408
+ body: post_body
409
+ )
410
+ end
411
+ # rubocop:enable Metrics/BlockLength
412
+ end
413
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
414
+ # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
415
+ # rubocop:enable Metrics/MethodLength, Layout/EmptyLines
416
+
417
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
418
+ # rubocop:disable Style/IfUnlessModifier, Metrics/ParameterLists
419
+ # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
420
+
421
+
422
+ # Moves a route table into a different compartment within the same tenancy. For information
423
+ # about moving resources between compartments, see
424
+ # [Moving Resources to a Different Compartment](https://docs.cloud.oracle.com/iaas/Content/Identity/Tasks/managingcompartments.htm#moveRes).
425
+ #
426
+ # @param [String] rt_id The OCID of the route table.
427
+ # @param [OCI::Core::Models::ChangeRouteTableCompartmentDetails] change_route_table_compartment_details Request to change the compartment of a given route table.
428
+ # @param [Hash] opts the optional parameters
429
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
430
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
431
+ # @option opts [String] :opc_request_id Unique identifier for the request.
432
+ # If you need to contact Oracle about a particular request, please provide the request ID.
433
+ #
434
+ # @option opts [String] :opc_retry_token A token that uniquely identifies a request so it can be retried in case of a timeout or
435
+ # server error without risk of executing that same action again. Retry tokens expire after 24
436
+ # hours, but can be invalidated before then due to conflicting operations (for example, if a resource
437
+ # has been deleted and purged from the system, then a retry of the original creation request
438
+ # may be rejected).
439
+ #
440
+ # @return [Response] A Response object with data of type nil
441
+ def change_route_table_compartment(rt_id, change_route_table_compartment_details, opts = {})
442
+ logger.debug 'Calling operation VirtualNetworkClient#change_route_table_compartment.' if logger
443
+
444
+ raise "Missing the required parameter 'rt_id' when calling change_route_table_compartment." if rt_id.nil?
445
+ raise "Missing the required parameter 'change_route_table_compartment_details' when calling change_route_table_compartment." if change_route_table_compartment_details.nil?
446
+ raise "Parameter value for 'rt_id' must not be blank" if OCI::Internal::Util.blank_string?(rt_id)
447
+
448
+ path = '/routeTables/{rtId}/actions/changeCompartment'.sub('{rtId}', rt_id.to_s)
449
+ operation_signing_strategy = :standard
450
+
451
+ # rubocop:disable Style/NegatedIf
452
+ # Query Params
453
+ query_params = {}
454
+
455
+ # Header Params
456
+ header_params = {}
457
+ header_params[:accept] = 'application/json'
458
+ header_params[:'content-type'] = 'application/json'
459
+ header_params[:'opc-request-id'] = opts[:opc_request_id] if opts[:opc_request_id]
460
+ header_params[:'opc-retry-token'] = opts[:opc_retry_token] if opts[:opc_retry_token]
461
+ # rubocop:enable Style/NegatedIf
462
+ header_params[:'opc-retry-token'] ||= OCI::Retry.generate_opc_retry_token
463
+
464
+ post_body = @api_client.object_to_http_body(change_route_table_compartment_details)
465
+
466
+ # rubocop:disable Metrics/BlockLength
467
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'VirtualNetworkClient#change_route_table_compartment') do
468
+ @api_client.call_api(
469
+ :POST,
470
+ path,
471
+ endpoint,
472
+ header_params: header_params,
473
+ query_params: query_params,
474
+ operation_signing_strategy: operation_signing_strategy,
475
+ body: post_body
476
+ )
477
+ end
478
+ # rubocop:enable Metrics/BlockLength
479
+ end
480
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
481
+ # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
482
+ # rubocop:enable Metrics/MethodLength, Layout/EmptyLines
483
+
484
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
485
+ # rubocop:disable Style/IfUnlessModifier, Metrics/ParameterLists
486
+ # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
487
+
488
+
489
+ # Moves a security list into a different compartment within the same tenancy. For information
490
+ # about moving resources between compartments, see
491
+ # [Moving Resources to a Different Compartment](https://docs.cloud.oracle.com/iaas/Content/Identity/Tasks/managingcompartments.htm#moveRes).
492
+ #
493
+ # @param [String] security_list_id The OCID of the security list.
494
+ # @param [OCI::Core::Models::ChangeSecurityListCompartmentDetails] change_security_list_compartment_details Request to change the compartment of a given security list.
495
+ # @param [Hash] opts the optional parameters
496
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
497
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
498
+ # @option opts [String] :opc_request_id Unique identifier for the request.
499
+ # If you need to contact Oracle about a particular request, please provide the request ID.
500
+ #
501
+ # @option opts [String] :opc_retry_token A token that uniquely identifies a request so it can be retried in case of a timeout or
502
+ # server error without risk of executing that same action again. Retry tokens expire after 24
503
+ # hours, but can be invalidated before then due to conflicting operations (for example, if a resource
504
+ # has been deleted and purged from the system, then a retry of the original creation request
505
+ # may be rejected).
506
+ #
507
+ # @return [Response] A Response object with data of type nil
508
+ def change_security_list_compartment(security_list_id, change_security_list_compartment_details, opts = {})
509
+ logger.debug 'Calling operation VirtualNetworkClient#change_security_list_compartment.' if logger
510
+
511
+ raise "Missing the required parameter 'security_list_id' when calling change_security_list_compartment." if security_list_id.nil?
512
+ raise "Missing the required parameter 'change_security_list_compartment_details' when calling change_security_list_compartment." if change_security_list_compartment_details.nil?
513
+ raise "Parameter value for 'security_list_id' must not be blank" if OCI::Internal::Util.blank_string?(security_list_id)
514
+
515
+ path = '/securityLists/{securityListId}/actions/changeCompartment'.sub('{securityListId}', security_list_id.to_s)
516
+ operation_signing_strategy = :standard
517
+
518
+ # rubocop:disable Style/NegatedIf
519
+ # Query Params
520
+ query_params = {}
521
+
522
+ # Header Params
523
+ header_params = {}
524
+ header_params[:accept] = 'application/json'
525
+ header_params[:'content-type'] = 'application/json'
526
+ header_params[:'opc-request-id'] = opts[:opc_request_id] if opts[:opc_request_id]
527
+ header_params[:'opc-retry-token'] = opts[:opc_retry_token] if opts[:opc_retry_token]
528
+ # rubocop:enable Style/NegatedIf
529
+ header_params[:'opc-retry-token'] ||= OCI::Retry.generate_opc_retry_token
530
+
531
+ post_body = @api_client.object_to_http_body(change_security_list_compartment_details)
532
+
533
+ # rubocop:disable Metrics/BlockLength
534
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'VirtualNetworkClient#change_security_list_compartment') do
535
+ @api_client.call_api(
536
+ :POST,
537
+ path,
538
+ endpoint,
539
+ header_params: header_params,
540
+ query_params: query_params,
541
+ operation_signing_strategy: operation_signing_strategy,
542
+ body: post_body
543
+ )
544
+ end
545
+ # rubocop:enable Metrics/BlockLength
546
+ end
547
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
548
+ # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
549
+ # rubocop:enable Metrics/MethodLength, Layout/EmptyLines
113
550
 
551
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
552
+ # rubocop:disable Style/IfUnlessModifier, Metrics/ParameterLists
553
+ # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
114
554
 
115
- # Adds the specified {Service} to the list of enabled
116
- # `Service` objects for the specified gateway. You must also set up a route rule with the
117
- # `cidrBlock` of the `Service` as the rule's destination and the service gateway as the rule's
118
- # target. See {RouteTable}.
119
- #
120
- # **Note:** The `AttachServiceId` operation is an easy way to add an individual `Service` to
121
- # the service gateway. Compare it with
122
- # {#update_service_gateway update_service_gateway}, which replaces
123
- # the entire existing list of enabled `Service` objects with the list that you provide in the
124
- # `Update` call.
555
+
556
+ # Moves a service gateway into a different compartment within the same tenancy. For information
557
+ # about moving resources between compartments, see
558
+ # [Moving Resources to a Different Compartment](https://docs.cloud.oracle.com/iaas/Content/Identity/Tasks/managingcompartments.htm#moveRes).
125
559
  #
126
560
  # @param [String] service_gateway_id The service gateway's [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm).
127
- # @param [OCI::Core::Models::ServiceIdRequestDetails] attach_service_details ServiceId of Service to be attached to a service gateway.
561
+ # @param [OCI::Core::Models::ChangeServiceGatewayCompartmentDetails] change_service_gateway_compartment_details Request to change the compartment of a given Service Gateway.
128
562
  # @param [Hash] opts the optional parameters
129
563
  # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
130
564
  # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
131
- # @option opts [String] :if_match For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match`
132
- # parameter to the value of the etag from a previous GET or POST response for that resource. The resource
133
- # will be updated or deleted only if the etag you provide matches the resource's current etag value.
565
+ # @option opts [String] :opc_request_id Unique identifier for the request.
566
+ # If you need to contact Oracle about a particular request, please provide the request ID.
134
567
  #
135
- # @return [Response] A Response object with data of type {OCI::Core::Models::ServiceGateway ServiceGateway}
136
- def attach_service_id(service_gateway_id, attach_service_details, opts = {})
137
- logger.debug 'Calling operation VirtualNetworkClient#attach_service_id.' if logger
568
+ # @option opts [String] :opc_retry_token A token that uniquely identifies a request so it can be retried in case of a timeout or
569
+ # server error without risk of executing that same action again. Retry tokens expire after 24
570
+ # hours, but can be invalidated before then due to conflicting operations (for example, if a resource
571
+ # has been deleted and purged from the system, then a retry of the original creation request
572
+ # may be rejected).
573
+ #
574
+ # @return [Response] A Response object with data of type nil
575
+ def change_service_gateway_compartment(service_gateway_id, change_service_gateway_compartment_details, opts = {})
576
+ logger.debug 'Calling operation VirtualNetworkClient#change_service_gateway_compartment.' if logger
138
577
 
139
- raise "Missing the required parameter 'service_gateway_id' when calling attach_service_id." if service_gateway_id.nil?
140
- raise "Missing the required parameter 'attach_service_details' when calling attach_service_id." if attach_service_details.nil?
578
+ raise "Missing the required parameter 'service_gateway_id' when calling change_service_gateway_compartment." if service_gateway_id.nil?
579
+ raise "Missing the required parameter 'change_service_gateway_compartment_details' when calling change_service_gateway_compartment." if change_service_gateway_compartment_details.nil?
141
580
  raise "Parameter value for 'service_gateway_id' must not be blank" if OCI::Internal::Util.blank_string?(service_gateway_id)
142
581
 
143
- path = '/serviceGateways/{serviceGatewayId}/actions/attachService'.sub('{serviceGatewayId}', service_gateway_id.to_s)
582
+ path = '/serviceGateways/{serviceGatewayId}/actions/changeCompartment'.sub('{serviceGatewayId}', service_gateway_id.to_s)
144
583
  operation_signing_strategy = :standard
145
584
 
146
585
  # rubocop:disable Style/NegatedIf
@@ -151,13 +590,15 @@ module OCI
151
590
  header_params = {}
152
591
  header_params[:accept] = 'application/json'
153
592
  header_params[:'content-type'] = 'application/json'
154
- header_params[:'if-match'] = opts[:if_match] if opts[:if_match]
593
+ header_params[:'opc-request-id'] = opts[:opc_request_id] if opts[:opc_request_id]
594
+ header_params[:'opc-retry-token'] = opts[:opc_retry_token] if opts[:opc_retry_token]
155
595
  # rubocop:enable Style/NegatedIf
596
+ header_params[:'opc-retry-token'] ||= OCI::Retry.generate_opc_retry_token
156
597
 
157
- post_body = @api_client.object_to_http_body(attach_service_details)
598
+ post_body = @api_client.object_to_http_body(change_service_gateway_compartment_details)
158
599
 
159
600
  # rubocop:disable Metrics/BlockLength
160
- OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'VirtualNetworkClient#attach_service_id') do
601
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'VirtualNetworkClient#change_service_gateway_compartment') do
161
602
  @api_client.call_api(
162
603
  :POST,
163
604
  path,
@@ -165,8 +606,7 @@ module OCI
165
606
  header_params: header_params,
166
607
  query_params: query_params,
167
608
  operation_signing_strategy: operation_signing_strategy,
168
- body: post_body,
169
- return_type: 'OCI::Core::Models::ServiceGateway'
609
+ body: post_body
170
610
  )
171
611
  end
172
612
  # rubocop:enable Metrics/BlockLength
@@ -178,28 +618,35 @@ module OCI
178
618
  # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
179
619
  # rubocop:disable Style/IfUnlessModifier, Metrics/ParameterLists
180
620
  # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
181
- # rubocop:disable Lint/UnusedMethodArgument
182
621
 
183
622
 
184
- # Adds one or more customer public IP prefixes to the specified public virtual circuit.
185
- # Use this operation (and not {#update_virtual_circuit update_virtual_circuit})
186
- # to add prefixes to the virtual circuit. Oracle must verify the customer's ownership
187
- # of each prefix before traffic for that prefix will flow across the virtual circuit.
623
+ # Moves a subnet into a different compartment within the same tenancy. For information
624
+ # about moving resources between compartments, see
625
+ # [Moving Resources to a Different Compartment](https://docs.cloud.oracle.com/iaas/Content/Identity/Tasks/managingcompartments.htm#moveRes).
188
626
  #
189
- # @param [String] virtual_circuit_id The OCID of the virtual circuit.
190
- # @param [OCI::Core::Models::BulkAddVirtualCircuitPublicPrefixesDetails] bulk_add_virtual_circuit_public_prefixes_details Request with publix prefixes to be added to the virtual circuit
627
+ # @param [String] subnet_id The OCID of the subnet.
628
+ # @param [OCI::Core::Models::ChangeSubnetCompartmentDetails] change_subnet_compartment_details Request to change the compartment of a given subnet.
191
629
  # @param [Hash] opts the optional parameters
192
630
  # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
193
631
  # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
632
+ # @option opts [String] :opc_request_id Unique identifier for the request.
633
+ # If you need to contact Oracle about a particular request, please provide the request ID.
634
+ #
635
+ # @option opts [String] :opc_retry_token A token that uniquely identifies a request so it can be retried in case of a timeout or
636
+ # server error without risk of executing that same action again. Retry tokens expire after 24
637
+ # hours, but can be invalidated before then due to conflicting operations (for example, if a resource
638
+ # has been deleted and purged from the system, then a retry of the original creation request
639
+ # may be rejected).
640
+ #
194
641
  # @return [Response] A Response object with data of type nil
195
- def bulk_add_virtual_circuit_public_prefixes(virtual_circuit_id, bulk_add_virtual_circuit_public_prefixes_details, opts = {})
196
- logger.debug 'Calling operation VirtualNetworkClient#bulk_add_virtual_circuit_public_prefixes.' if logger
642
+ def change_subnet_compartment(subnet_id, change_subnet_compartment_details, opts = {})
643
+ logger.debug 'Calling operation VirtualNetworkClient#change_subnet_compartment.' if logger
197
644
 
198
- raise "Missing the required parameter 'virtual_circuit_id' when calling bulk_add_virtual_circuit_public_prefixes." if virtual_circuit_id.nil?
199
- raise "Missing the required parameter 'bulk_add_virtual_circuit_public_prefixes_details' when calling bulk_add_virtual_circuit_public_prefixes." if bulk_add_virtual_circuit_public_prefixes_details.nil?
200
- raise "Parameter value for 'virtual_circuit_id' must not be blank" if OCI::Internal::Util.blank_string?(virtual_circuit_id)
645
+ raise "Missing the required parameter 'subnet_id' when calling change_subnet_compartment." if subnet_id.nil?
646
+ raise "Missing the required parameter 'change_subnet_compartment_details' when calling change_subnet_compartment." if change_subnet_compartment_details.nil?
647
+ raise "Parameter value for 'subnet_id' must not be blank" if OCI::Internal::Util.blank_string?(subnet_id)
201
648
 
202
- path = '/virtualCircuits/{virtualCircuitId}/actions/bulkAddPublicPrefixes'.sub('{virtualCircuitId}', virtual_circuit_id.to_s)
649
+ path = '/subnets/{subnetId}/actions/changeCompartment'.sub('{subnetId}', subnet_id.to_s)
203
650
  operation_signing_strategy = :standard
204
651
 
205
652
  # rubocop:disable Style/NegatedIf
@@ -210,12 +657,15 @@ module OCI
210
657
  header_params = {}
211
658
  header_params[:accept] = 'application/json'
212
659
  header_params[:'content-type'] = 'application/json'
660
+ header_params[:'opc-request-id'] = opts[:opc_request_id] if opts[:opc_request_id]
661
+ header_params[:'opc-retry-token'] = opts[:opc_retry_token] if opts[:opc_retry_token]
213
662
  # rubocop:enable Style/NegatedIf
663
+ header_params[:'opc-retry-token'] ||= OCI::Retry.generate_opc_retry_token
214
664
 
215
- post_body = @api_client.object_to_http_body(bulk_add_virtual_circuit_public_prefixes_details)
665
+ post_body = @api_client.object_to_http_body(change_subnet_compartment_details)
216
666
 
217
667
  # rubocop:disable Metrics/BlockLength
218
- OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'VirtualNetworkClient#bulk_add_virtual_circuit_public_prefixes') do
668
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'VirtualNetworkClient#change_subnet_compartment') do
219
669
  @api_client.call_api(
220
670
  :POST,
221
671
  path,
@@ -231,33 +681,39 @@ module OCI
231
681
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
232
682
  # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
233
683
  # rubocop:enable Metrics/MethodLength, Layout/EmptyLines
234
- # rubocop:enable Lint/UnusedMethodArgument
235
684
 
236
685
  # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
237
686
  # rubocop:disable Style/IfUnlessModifier, Metrics/ParameterLists
238
687
  # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
239
- # rubocop:disable Lint/UnusedMethodArgument
240
688
 
241
689
 
242
- # Removes one or more customer public IP prefixes from the specified public virtual circuit.
243
- # Use this operation (and not {#update_virtual_circuit update_virtual_circuit})
244
- # to remove prefixes from the virtual circuit. When the virtual circuit's state switches
245
- # back to PROVISIONED, Oracle stops advertising the specified prefixes across the connection.
690
+ # Moves a VCN into a different compartment within the same tenancy. For information
691
+ # about moving resources between compartments, see
692
+ # [Moving Resources to a Different Compartment](https://docs.cloud.oracle.com/iaas/Content/Identity/Tasks/managingcompartments.htm#moveRes).
246
693
  #
247
- # @param [String] virtual_circuit_id The OCID of the virtual circuit.
248
- # @param [OCI::Core::Models::BulkDeleteVirtualCircuitPublicPrefixesDetails] bulk_delete_virtual_circuit_public_prefixes_details Request with publix prefixes to be deleted from the virtual circuit
694
+ # @param [String] vcn_id The [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) of the VCN.
695
+ # @param [OCI::Core::Models::ChangeVcnCompartmentDetails] change_vcn_compartment_details Request to change the compartment of a given VCN.
249
696
  # @param [Hash] opts the optional parameters
250
697
  # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
251
698
  # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
699
+ # @option opts [String] :opc_request_id Unique identifier for the request.
700
+ # If you need to contact Oracle about a particular request, please provide the request ID.
701
+ #
702
+ # @option opts [String] :opc_retry_token A token that uniquely identifies a request so it can be retried in case of a timeout or
703
+ # server error without risk of executing that same action again. Retry tokens expire after 24
704
+ # hours, but can be invalidated before then due to conflicting operations (for example, if a resource
705
+ # has been deleted and purged from the system, then a retry of the original creation request
706
+ # may be rejected).
707
+ #
252
708
  # @return [Response] A Response object with data of type nil
253
- def bulk_delete_virtual_circuit_public_prefixes(virtual_circuit_id, bulk_delete_virtual_circuit_public_prefixes_details, opts = {})
254
- logger.debug 'Calling operation VirtualNetworkClient#bulk_delete_virtual_circuit_public_prefixes.' if logger
709
+ def change_vcn_compartment(vcn_id, change_vcn_compartment_details, opts = {})
710
+ logger.debug 'Calling operation VirtualNetworkClient#change_vcn_compartment.' if logger
255
711
 
256
- raise "Missing the required parameter 'virtual_circuit_id' when calling bulk_delete_virtual_circuit_public_prefixes." if virtual_circuit_id.nil?
257
- raise "Missing the required parameter 'bulk_delete_virtual_circuit_public_prefixes_details' when calling bulk_delete_virtual_circuit_public_prefixes." if bulk_delete_virtual_circuit_public_prefixes_details.nil?
258
- raise "Parameter value for 'virtual_circuit_id' must not be blank" if OCI::Internal::Util.blank_string?(virtual_circuit_id)
712
+ raise "Missing the required parameter 'vcn_id' when calling change_vcn_compartment." if vcn_id.nil?
713
+ raise "Missing the required parameter 'change_vcn_compartment_details' when calling change_vcn_compartment." if change_vcn_compartment_details.nil?
714
+ raise "Parameter value for 'vcn_id' must not be blank" if OCI::Internal::Util.blank_string?(vcn_id)
259
715
 
260
- path = '/virtualCircuits/{virtualCircuitId}/actions/bulkDeletePublicPrefixes'.sub('{virtualCircuitId}', virtual_circuit_id.to_s)
716
+ path = '/vcns/{vcnId}/actions/changeCompartment'.sub('{vcnId}', vcn_id.to_s)
261
717
  operation_signing_strategy = :standard
262
718
 
263
719
  # rubocop:disable Style/NegatedIf
@@ -268,12 +724,15 @@ module OCI
268
724
  header_params = {}
269
725
  header_params[:accept] = 'application/json'
270
726
  header_params[:'content-type'] = 'application/json'
727
+ header_params[:'opc-request-id'] = opts[:opc_request_id] if opts[:opc_request_id]
728
+ header_params[:'opc-retry-token'] = opts[:opc_retry_token] if opts[:opc_retry_token]
271
729
  # rubocop:enable Style/NegatedIf
730
+ header_params[:'opc-retry-token'] ||= OCI::Retry.generate_opc_retry_token
272
731
 
273
- post_body = @api_client.object_to_http_body(bulk_delete_virtual_circuit_public_prefixes_details)
732
+ post_body = @api_client.object_to_http_body(change_vcn_compartment_details)
274
733
 
275
734
  # rubocop:disable Metrics/BlockLength
276
- OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'VirtualNetworkClient#bulk_delete_virtual_circuit_public_prefixes') do
735
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'VirtualNetworkClient#change_vcn_compartment') do
277
736
  @api_client.call_api(
278
737
  :POST,
279
738
  path,
@@ -289,7 +748,6 @@ module OCI
289
748
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
290
749
  # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
291
750
  # rubocop:enable Metrics/MethodLength, Layout/EmptyLines
292
- # rubocop:enable Lint/UnusedMethodArgument
293
751
 
294
752
  # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
295
753
  # rubocop:disable Style/IfUnlessModifier, Metrics/ParameterLists
@@ -1137,6 +1595,65 @@ module OCI
1137
1595
  # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
1138
1596
 
1139
1597
 
1598
+ # Creates a new network security group for the specified VCN.
1599
+ #
1600
+ # @param [OCI::Core::Models::CreateNetworkSecurityGroupDetails] create_network_security_group_details Details for creating a network security group.
1601
+ # @param [Hash] opts the optional parameters
1602
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
1603
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
1604
+ # @option opts [String] :opc_retry_token A token that uniquely identifies a request so it can be retried in case of a timeout or
1605
+ # server error without risk of executing that same action again. Retry tokens expire after 24
1606
+ # hours, but can be invalidated before then due to conflicting operations (for example, if a resource
1607
+ # has been deleted and purged from the system, then a retry of the original creation request
1608
+ # may be rejected).
1609
+ #
1610
+ # @return [Response] A Response object with data of type {OCI::Core::Models::NetworkSecurityGroup NetworkSecurityGroup}
1611
+ def create_network_security_group(create_network_security_group_details, opts = {})
1612
+ logger.debug 'Calling operation VirtualNetworkClient#create_network_security_group.' if logger
1613
+
1614
+ raise "Missing the required parameter 'create_network_security_group_details' when calling create_network_security_group." if create_network_security_group_details.nil?
1615
+
1616
+ path = '/networkSecurityGroups'
1617
+ operation_signing_strategy = :standard
1618
+
1619
+ # rubocop:disable Style/NegatedIf
1620
+ # Query Params
1621
+ query_params = {}
1622
+
1623
+ # Header Params
1624
+ header_params = {}
1625
+ header_params[:accept] = 'application/json'
1626
+ header_params[:'content-type'] = 'application/json'
1627
+ header_params[:'opc-retry-token'] = opts[:opc_retry_token] if opts[:opc_retry_token]
1628
+ # rubocop:enable Style/NegatedIf
1629
+ header_params[:'opc-retry-token'] ||= OCI::Retry.generate_opc_retry_token
1630
+
1631
+ post_body = @api_client.object_to_http_body(create_network_security_group_details)
1632
+
1633
+ # rubocop:disable Metrics/BlockLength
1634
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'VirtualNetworkClient#create_network_security_group') do
1635
+ @api_client.call_api(
1636
+ :POST,
1637
+ path,
1638
+ endpoint,
1639
+ header_params: header_params,
1640
+ query_params: query_params,
1641
+ operation_signing_strategy: operation_signing_strategy,
1642
+ body: post_body,
1643
+ return_type: 'OCI::Core::Models::NetworkSecurityGroup'
1644
+ )
1645
+ end
1646
+ # rubocop:enable Metrics/BlockLength
1647
+ end
1648
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
1649
+ # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
1650
+ # rubocop:enable Metrics/MethodLength, Layout/EmptyLines
1651
+
1652
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
1653
+ # rubocop:disable Style/IfUnlessModifier, Metrics/ParameterLists
1654
+ # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
1655
+
1656
+
1140
1657
  # Creates a secondary private IP for the specified VNIC.
1141
1658
  # For more information about secondary private IPs, see
1142
1659
  # [IP Addresses](https://docs.cloud.oracle.com/Content/Network/Tasks/managingIPaddresses.htm).
@@ -2395,6 +2912,68 @@ module OCI
2395
2912
  # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
2396
2913
 
2397
2914
 
2915
+ # Deletes the specified network security group. The group must not contain any VNICs.
2916
+ #
2917
+ # To get a list of the VNICs in a network security group, use
2918
+ # {#list_network_security_group_vnics list_network_security_group_vnics}.
2919
+ # Each returned {NetworkSecurityGroupVnic} object
2920
+ # contains both the OCID of the VNIC and the OCID of the VNIC's parent resource (for example,
2921
+ # the Compute instance that the VNIC is attached to).
2922
+ #
2923
+ # @param [String] network_security_group_id The [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) of the network security group.
2924
+ # @param [Hash] opts the optional parameters
2925
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
2926
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
2927
+ # @option opts [String] :if_match For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match`
2928
+ # parameter to the value of the etag from a previous GET or POST response for that resource. The resource
2929
+ # will be updated or deleted only if the etag you provide matches the resource's current etag value.
2930
+ #
2931
+ # @return [Response] A Response object with data of type nil
2932
+ def delete_network_security_group(network_security_group_id, opts = {})
2933
+ logger.debug 'Calling operation VirtualNetworkClient#delete_network_security_group.' if logger
2934
+
2935
+ raise "Missing the required parameter 'network_security_group_id' when calling delete_network_security_group." if network_security_group_id.nil?
2936
+ raise "Parameter value for 'network_security_group_id' must not be blank" if OCI::Internal::Util.blank_string?(network_security_group_id)
2937
+
2938
+ path = '/networkSecurityGroups/{networkSecurityGroupId}'.sub('{networkSecurityGroupId}', network_security_group_id.to_s)
2939
+ operation_signing_strategy = :standard
2940
+
2941
+ # rubocop:disable Style/NegatedIf
2942
+ # Query Params
2943
+ query_params = {}
2944
+
2945
+ # Header Params
2946
+ header_params = {}
2947
+ header_params[:accept] = 'application/json'
2948
+ header_params[:'content-type'] = 'application/json'
2949
+ header_params[:'if-match'] = opts[:if_match] if opts[:if_match]
2950
+ # rubocop:enable Style/NegatedIf
2951
+
2952
+ post_body = nil
2953
+
2954
+ # rubocop:disable Metrics/BlockLength
2955
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'VirtualNetworkClient#delete_network_security_group') do
2956
+ @api_client.call_api(
2957
+ :DELETE,
2958
+ path,
2959
+ endpoint,
2960
+ header_params: header_params,
2961
+ query_params: query_params,
2962
+ operation_signing_strategy: operation_signing_strategy,
2963
+ body: post_body
2964
+ )
2965
+ end
2966
+ # rubocop:enable Metrics/BlockLength
2967
+ end
2968
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
2969
+ # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
2970
+ # rubocop:enable Metrics/MethodLength, Layout/EmptyLines
2971
+
2972
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
2973
+ # rubocop:disable Style/IfUnlessModifier, Metrics/ParameterLists
2974
+ # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
2975
+
2976
+
2398
2977
  # Unassigns and deletes the specified private IP. You must
2399
2978
  # specify the object's OCID. The private IP address is returned to
2400
2979
  # the subnet's pool of available addresses.
@@ -3853,7 +4432,60 @@ module OCI
3853
4432
  raise "Parameter value for 'ipsc_id' must not be blank" if OCI::Internal::Util.blank_string?(ipsc_id)
3854
4433
  raise "Parameter value for 'tunnel_id' must not be blank" if OCI::Internal::Util.blank_string?(tunnel_id)
3855
4434
 
3856
- path = '/ipsecConnections/{ipscId}/tunnels/{tunnelId}/sharedSecret'.sub('{ipscId}', ipsc_id.to_s).sub('{tunnelId}', tunnel_id.to_s)
4435
+ path = '/ipsecConnections/{ipscId}/tunnels/{tunnelId}/sharedSecret'.sub('{ipscId}', ipsc_id.to_s).sub('{tunnelId}', tunnel_id.to_s)
4436
+ operation_signing_strategy = :standard
4437
+
4438
+ # rubocop:disable Style/NegatedIf
4439
+ # Query Params
4440
+ query_params = {}
4441
+
4442
+ # Header Params
4443
+ header_params = {}
4444
+ header_params[:accept] = 'application/json'
4445
+ header_params[:'content-type'] = 'application/json'
4446
+ # rubocop:enable Style/NegatedIf
4447
+
4448
+ post_body = nil
4449
+
4450
+ # rubocop:disable Metrics/BlockLength
4451
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'VirtualNetworkClient#get_ip_sec_connection_tunnel_shared_secret') do
4452
+ @api_client.call_api(
4453
+ :GET,
4454
+ path,
4455
+ endpoint,
4456
+ header_params: header_params,
4457
+ query_params: query_params,
4458
+ operation_signing_strategy: operation_signing_strategy,
4459
+ body: post_body,
4460
+ return_type: 'OCI::Core::Models::IPSecConnectionTunnelSharedSecret'
4461
+ )
4462
+ end
4463
+ # rubocop:enable Metrics/BlockLength
4464
+ end
4465
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
4466
+ # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
4467
+ # rubocop:enable Metrics/MethodLength, Layout/EmptyLines
4468
+ # rubocop:enable Lint/UnusedMethodArgument
4469
+
4470
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
4471
+ # rubocop:disable Style/IfUnlessModifier, Metrics/ParameterLists
4472
+ # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
4473
+ # rubocop:disable Lint/UnusedMethodArgument
4474
+
4475
+
4476
+ # Gets the specified local peering gateway's information.
4477
+ # @param [String] local_peering_gateway_id The OCID of the local peering gateway.
4478
+ # @param [Hash] opts the optional parameters
4479
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
4480
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
4481
+ # @return [Response] A Response object with data of type {OCI::Core::Models::LocalPeeringGateway LocalPeeringGateway}
4482
+ def get_local_peering_gateway(local_peering_gateway_id, opts = {})
4483
+ logger.debug 'Calling operation VirtualNetworkClient#get_local_peering_gateway.' if logger
4484
+
4485
+ raise "Missing the required parameter 'local_peering_gateway_id' when calling get_local_peering_gateway." if local_peering_gateway_id.nil?
4486
+ raise "Parameter value for 'local_peering_gateway_id' must not be blank" if OCI::Internal::Util.blank_string?(local_peering_gateway_id)
4487
+
4488
+ path = '/localPeeringGateways/{localPeeringGatewayId}'.sub('{localPeeringGatewayId}', local_peering_gateway_id.to_s)
3857
4489
  operation_signing_strategy = :standard
3858
4490
 
3859
4491
  # rubocop:disable Style/NegatedIf
@@ -3869,7 +4501,7 @@ module OCI
3869
4501
  post_body = nil
3870
4502
 
3871
4503
  # rubocop:disable Metrics/BlockLength
3872
- OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'VirtualNetworkClient#get_ip_sec_connection_tunnel_shared_secret') do
4504
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'VirtualNetworkClient#get_local_peering_gateway') do
3873
4505
  @api_client.call_api(
3874
4506
  :GET,
3875
4507
  path,
@@ -3878,7 +4510,7 @@ module OCI
3878
4510
  query_params: query_params,
3879
4511
  operation_signing_strategy: operation_signing_strategy,
3880
4512
  body: post_body,
3881
- return_type: 'OCI::Core::Models::IPSecConnectionTunnelSharedSecret'
4513
+ return_type: 'OCI::Core::Models::LocalPeeringGateway'
3882
4514
  )
3883
4515
  end
3884
4516
  # rubocop:enable Metrics/BlockLength
@@ -3894,19 +4526,19 @@ module OCI
3894
4526
  # rubocop:disable Lint/UnusedMethodArgument
3895
4527
 
3896
4528
 
3897
- # Gets the specified local peering gateway's information.
3898
- # @param [String] local_peering_gateway_id The OCID of the local peering gateway.
4529
+ # Gets the specified NAT gateway's information.
4530
+ # @param [String] nat_gateway_id The NAT gateway's [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm).
3899
4531
  # @param [Hash] opts the optional parameters
3900
4532
  # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
3901
4533
  # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
3902
- # @return [Response] A Response object with data of type {OCI::Core::Models::LocalPeeringGateway LocalPeeringGateway}
3903
- def get_local_peering_gateway(local_peering_gateway_id, opts = {})
3904
- logger.debug 'Calling operation VirtualNetworkClient#get_local_peering_gateway.' if logger
4534
+ # @return [Response] A Response object with data of type {OCI::Core::Models::NatGateway NatGateway}
4535
+ def get_nat_gateway(nat_gateway_id, opts = {})
4536
+ logger.debug 'Calling operation VirtualNetworkClient#get_nat_gateway.' if logger
3905
4537
 
3906
- raise "Missing the required parameter 'local_peering_gateway_id' when calling get_local_peering_gateway." if local_peering_gateway_id.nil?
3907
- raise "Parameter value for 'local_peering_gateway_id' must not be blank" if OCI::Internal::Util.blank_string?(local_peering_gateway_id)
4538
+ raise "Missing the required parameter 'nat_gateway_id' when calling get_nat_gateway." if nat_gateway_id.nil?
4539
+ raise "Parameter value for 'nat_gateway_id' must not be blank" if OCI::Internal::Util.blank_string?(nat_gateway_id)
3908
4540
 
3909
- path = '/localPeeringGateways/{localPeeringGatewayId}'.sub('{localPeeringGatewayId}', local_peering_gateway_id.to_s)
4541
+ path = '/natGateways/{natGatewayId}'.sub('{natGatewayId}', nat_gateway_id.to_s)
3910
4542
  operation_signing_strategy = :standard
3911
4543
 
3912
4544
  # rubocop:disable Style/NegatedIf
@@ -3922,7 +4554,7 @@ module OCI
3922
4554
  post_body = nil
3923
4555
 
3924
4556
  # rubocop:disable Metrics/BlockLength
3925
- OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'VirtualNetworkClient#get_local_peering_gateway') do
4557
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'VirtualNetworkClient#get_nat_gateway') do
3926
4558
  @api_client.call_api(
3927
4559
  :GET,
3928
4560
  path,
@@ -3931,7 +4563,7 @@ module OCI
3931
4563
  query_params: query_params,
3932
4564
  operation_signing_strategy: operation_signing_strategy,
3933
4565
  body: post_body,
3934
- return_type: 'OCI::Core::Models::LocalPeeringGateway'
4566
+ return_type: 'OCI::Core::Models::NatGateway'
3935
4567
  )
3936
4568
  end
3937
4569
  # rubocop:enable Metrics/BlockLength
@@ -3947,19 +4579,26 @@ module OCI
3947
4579
  # rubocop:disable Lint/UnusedMethodArgument
3948
4580
 
3949
4581
 
3950
- # Gets the specified NAT gateway's information.
3951
- # @param [String] nat_gateway_id The NAT gateway's [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm).
4582
+ # Gets the specified network security group's information.
4583
+ #
4584
+ # To list the VNICs in an NSG, see
4585
+ # {#list_network_security_group_vnics list_network_security_group_vnics}.
4586
+ #
4587
+ # To list the security rules in an NSG, see
4588
+ # {#list_network_security_group_security_rules list_network_security_group_security_rules}.
4589
+ #
4590
+ # @param [String] network_security_group_id The [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) of the network security group.
3952
4591
  # @param [Hash] opts the optional parameters
3953
4592
  # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
3954
4593
  # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
3955
- # @return [Response] A Response object with data of type {OCI::Core::Models::NatGateway NatGateway}
3956
- def get_nat_gateway(nat_gateway_id, opts = {})
3957
- logger.debug 'Calling operation VirtualNetworkClient#get_nat_gateway.' if logger
4594
+ # @return [Response] A Response object with data of type {OCI::Core::Models::NetworkSecurityGroup NetworkSecurityGroup}
4595
+ def get_network_security_group(network_security_group_id, opts = {})
4596
+ logger.debug 'Calling operation VirtualNetworkClient#get_network_security_group.' if logger
3958
4597
 
3959
- raise "Missing the required parameter 'nat_gateway_id' when calling get_nat_gateway." if nat_gateway_id.nil?
3960
- raise "Parameter value for 'nat_gateway_id' must not be blank" if OCI::Internal::Util.blank_string?(nat_gateway_id)
4598
+ raise "Missing the required parameter 'network_security_group_id' when calling get_network_security_group." if network_security_group_id.nil?
4599
+ raise "Parameter value for 'network_security_group_id' must not be blank" if OCI::Internal::Util.blank_string?(network_security_group_id)
3961
4600
 
3962
- path = '/natGateways/{natGatewayId}'.sub('{natGatewayId}', nat_gateway_id.to_s)
4601
+ path = '/networkSecurityGroups/{networkSecurityGroupId}'.sub('{networkSecurityGroupId}', network_security_group_id.to_s)
3963
4602
  operation_signing_strategy = :standard
3964
4603
 
3965
4604
  # rubocop:disable Style/NegatedIf
@@ -3975,7 +4614,7 @@ module OCI
3975
4614
  post_body = nil
3976
4615
 
3977
4616
  # rubocop:disable Metrics/BlockLength
3978
- OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'VirtualNetworkClient#get_nat_gateway') do
4617
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'VirtualNetworkClient#get_network_security_group') do
3979
4618
  @api_client.call_api(
3980
4619
  :GET,
3981
4620
  path,
@@ -3984,7 +4623,7 @@ module OCI
3984
4623
  query_params: query_params,
3985
4624
  operation_signing_strategy: operation_signing_strategy,
3986
4625
  body: post_body,
3987
- return_type: 'OCI::Core::Models::NatGateway'
4626
+ return_type: 'OCI::Core::Models::NetworkSecurityGroup'
3988
4627
  )
3989
4628
  end
3990
4629
  # rubocop:enable Metrics/BlockLength
@@ -5653,27 +6292,265 @@ module OCI
5653
6292
  # \"List\" call. For important details about how pagination works, see
5654
6293
  # [List Pagination](https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine).
5655
6294
  #
5656
- # Example: `50`
6295
+ # Example: `50`
6296
+ #
6297
+ # @option opts [String] :page For list pagination. The value of the `opc-next-page` response header from the previous \"List\"
6298
+ # call. For important details about how pagination works, see
6299
+ # [List Pagination](https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine).
6300
+ #
6301
+ # @return [Response] A Response object with data of type Array<{OCI::Core::Models::IPSecConnectionTunnel IPSecConnectionTunnel}>
6302
+ def list_ip_sec_connection_tunnels(ipsc_id, opts = {})
6303
+ logger.debug 'Calling operation VirtualNetworkClient#list_ip_sec_connection_tunnels.' if logger
6304
+
6305
+ raise "Missing the required parameter 'ipsc_id' when calling list_ip_sec_connection_tunnels." if ipsc_id.nil?
6306
+ raise "Parameter value for 'ipsc_id' must not be blank" if OCI::Internal::Util.blank_string?(ipsc_id)
6307
+
6308
+ path = '/ipsecConnections/{ipscId}/tunnels'.sub('{ipscId}', ipsc_id.to_s)
6309
+ operation_signing_strategy = :standard
6310
+
6311
+ # rubocop:disable Style/NegatedIf
6312
+ # Query Params
6313
+ query_params = {}
6314
+ query_params[:limit] = opts[:limit] if opts[:limit]
6315
+ query_params[:page] = opts[:page] if opts[:page]
6316
+
6317
+ # Header Params
6318
+ header_params = {}
6319
+ header_params[:accept] = 'application/json'
6320
+ header_params[:'content-type'] = 'application/json'
6321
+ # rubocop:enable Style/NegatedIf
6322
+
6323
+ post_body = nil
6324
+
6325
+ # rubocop:disable Metrics/BlockLength
6326
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'VirtualNetworkClient#list_ip_sec_connection_tunnels') do
6327
+ @api_client.call_api(
6328
+ :GET,
6329
+ path,
6330
+ endpoint,
6331
+ header_params: header_params,
6332
+ query_params: query_params,
6333
+ operation_signing_strategy: operation_signing_strategy,
6334
+ body: post_body,
6335
+ return_type: 'Array<OCI::Core::Models::IPSecConnectionTunnel>'
6336
+ )
6337
+ end
6338
+ # rubocop:enable Metrics/BlockLength
6339
+ end
6340
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
6341
+ # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
6342
+ # rubocop:enable Metrics/MethodLength, Layout/EmptyLines
6343
+
6344
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
6345
+ # rubocop:disable Style/IfUnlessModifier, Metrics/ParameterLists
6346
+ # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
6347
+
6348
+
6349
+ # Lists the IPSec connections for the specified compartment. You can filter the
6350
+ # results by DRG or CPE.
6351
+ #
6352
+ # @param [String] compartment_id The [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) of the compartment.
6353
+ # @param [Hash] opts the optional parameters
6354
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
6355
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
6356
+ # @option opts [String] :drg_id The OCID of the DRG.
6357
+ # @option opts [String] :cpe_id The OCID of the CPE.
6358
+ # @option opts [Integer] :limit For list pagination. The maximum number of results per page, or items to return in a paginated
6359
+ # \"List\" call. For important details about how pagination works, see
6360
+ # [List Pagination](https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine).
6361
+ #
6362
+ # Example: `50`
6363
+ #
6364
+ # @option opts [String] :page For list pagination. The value of the `opc-next-page` response header from the previous \"List\"
6365
+ # call. For important details about how pagination works, see
6366
+ # [List Pagination](https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine).
6367
+ #
6368
+ # @return [Response] A Response object with data of type Array<{OCI::Core::Models::IPSecConnection IPSecConnection}>
6369
+ def list_ip_sec_connections(compartment_id, opts = {})
6370
+ logger.debug 'Calling operation VirtualNetworkClient#list_ip_sec_connections.' if logger
6371
+
6372
+ raise "Missing the required parameter 'compartment_id' when calling list_ip_sec_connections." if compartment_id.nil?
6373
+
6374
+ path = '/ipsecConnections'
6375
+ operation_signing_strategy = :standard
6376
+
6377
+ # rubocop:disable Style/NegatedIf
6378
+ # Query Params
6379
+ query_params = {}
6380
+ query_params[:compartmentId] = compartment_id
6381
+ query_params[:drgId] = opts[:drg_id] if opts[:drg_id]
6382
+ query_params[:cpeId] = opts[:cpe_id] if opts[:cpe_id]
6383
+ query_params[:limit] = opts[:limit] if opts[:limit]
6384
+ query_params[:page] = opts[:page] if opts[:page]
6385
+
6386
+ # Header Params
6387
+ header_params = {}
6388
+ header_params[:accept] = 'application/json'
6389
+ header_params[:'content-type'] = 'application/json'
6390
+ # rubocop:enable Style/NegatedIf
6391
+
6392
+ post_body = nil
6393
+
6394
+ # rubocop:disable Metrics/BlockLength
6395
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'VirtualNetworkClient#list_ip_sec_connections') do
6396
+ @api_client.call_api(
6397
+ :GET,
6398
+ path,
6399
+ endpoint,
6400
+ header_params: header_params,
6401
+ query_params: query_params,
6402
+ operation_signing_strategy: operation_signing_strategy,
6403
+ body: post_body,
6404
+ return_type: 'Array<OCI::Core::Models::IPSecConnection>'
6405
+ )
6406
+ end
6407
+ # rubocop:enable Metrics/BlockLength
6408
+ end
6409
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
6410
+ # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
6411
+ # rubocop:enable Metrics/MethodLength, Layout/EmptyLines
6412
+
6413
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
6414
+ # rubocop:disable Style/IfUnlessModifier, Metrics/ParameterLists
6415
+ # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
6416
+
6417
+
6418
+ # Lists the local peering gateways (LPGs) for the specified VCN and compartment
6419
+ # (the LPG's compartment).
6420
+ #
6421
+ # @param [String] compartment_id The [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) of the compartment.
6422
+ # @param [String] vcn_id The [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) of the VCN.
6423
+ # @param [Hash] opts the optional parameters
6424
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
6425
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
6426
+ # @option opts [Integer] :limit For list pagination. The maximum number of results per page, or items to return in a paginated
6427
+ # \"List\" call. For important details about how pagination works, see
6428
+ # [List Pagination](https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine).
6429
+ #
6430
+ # Example: `50`
6431
+ #
6432
+ # @option opts [String] :page For list pagination. The value of the `opc-next-page` response header from the previous \"List\"
6433
+ # call. For important details about how pagination works, see
6434
+ # [List Pagination](https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine).
6435
+ #
6436
+ # @return [Response] A Response object with data of type Array<{OCI::Core::Models::LocalPeeringGateway LocalPeeringGateway}>
6437
+ def list_local_peering_gateways(compartment_id, vcn_id, opts = {})
6438
+ logger.debug 'Calling operation VirtualNetworkClient#list_local_peering_gateways.' if logger
6439
+
6440
+ raise "Missing the required parameter 'compartment_id' when calling list_local_peering_gateways." if compartment_id.nil?
6441
+ raise "Missing the required parameter 'vcn_id' when calling list_local_peering_gateways." if vcn_id.nil?
6442
+
6443
+ path = '/localPeeringGateways'
6444
+ operation_signing_strategy = :standard
6445
+
6446
+ # rubocop:disable Style/NegatedIf
6447
+ # Query Params
6448
+ query_params = {}
6449
+ query_params[:compartmentId] = compartment_id
6450
+ query_params[:vcnId] = vcn_id
6451
+ query_params[:limit] = opts[:limit] if opts[:limit]
6452
+ query_params[:page] = opts[:page] if opts[:page]
6453
+
6454
+ # Header Params
6455
+ header_params = {}
6456
+ header_params[:accept] = 'application/json'
6457
+ header_params[:'content-type'] = 'application/json'
6458
+ # rubocop:enable Style/NegatedIf
6459
+
6460
+ post_body = nil
6461
+
6462
+ # rubocop:disable Metrics/BlockLength
6463
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'VirtualNetworkClient#list_local_peering_gateways') do
6464
+ @api_client.call_api(
6465
+ :GET,
6466
+ path,
6467
+ endpoint,
6468
+ header_params: header_params,
6469
+ query_params: query_params,
6470
+ operation_signing_strategy: operation_signing_strategy,
6471
+ body: post_body,
6472
+ return_type: 'Array<OCI::Core::Models::LocalPeeringGateway>'
6473
+ )
6474
+ end
6475
+ # rubocop:enable Metrics/BlockLength
6476
+ end
6477
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
6478
+ # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
6479
+ # rubocop:enable Metrics/MethodLength, Layout/EmptyLines
6480
+
6481
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
6482
+ # rubocop:disable Style/IfUnlessModifier, Metrics/ParameterLists
6483
+ # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
6484
+
6485
+
6486
+ # Lists the NAT gateways in the specified compartment. You may optionally specify a VCN OCID
6487
+ # to filter the results by VCN.
6488
+ #
6489
+ # @param [String] compartment_id The [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) of the compartment.
6490
+ # @param [Hash] opts the optional parameters
6491
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
6492
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
6493
+ # @option opts [String] :vcn_id The [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) of the VCN.
6494
+ # @option opts [Integer] :limit For list pagination. The maximum number of results per page, or items to return in a paginated
6495
+ # \"List\" call. For important details about how pagination works, see
6496
+ # [List Pagination](https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine).
6497
+ #
6498
+ # Example: `50`
6499
+ #
6500
+ # @option opts [String] :page For list pagination. The value of the `opc-next-page` response header from the previous \"List\"
6501
+ # call. For important details about how pagination works, see
6502
+ # [List Pagination](https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine).
6503
+ #
6504
+ # @option opts [String] :display_name A filter to return only resources that match the given display name exactly.
6505
+ #
6506
+ # @option opts [String] :sort_by The field to sort by. You can provide one sort order (`sortOrder`). Default order for
6507
+ # TIMECREATED is descending. Default order for DISPLAYNAME is ascending. The DISPLAYNAME
6508
+ # sort order is case sensitive.
6509
+ #
6510
+ # **Note:** In general, some \"List\" operations (for example, `ListInstances`) let you
6511
+ # optionally filter by availability domain if the scope of the resource type is within a
6512
+ # single availability domain. If you call one of these \"List\" operations without specifying
6513
+ # an availability domain, the resources are grouped by availability domain, then sorted.
5657
6514
  #
5658
- # @option opts [String] :page For list pagination. The value of the `opc-next-page` response header from the previous \"List\"
5659
- # call. For important details about how pagination works, see
5660
- # [List Pagination](https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine).
6515
+ # Allowed values are: TIMECREATED, DISPLAYNAME
6516
+ # @option opts [String] :sort_order The sort order to use, either ascending (`ASC`) or descending (`DESC`). The DISPLAYNAME sort order
6517
+ # is case sensitive.
5661
6518
  #
5662
- # @return [Response] A Response object with data of type Array<{OCI::Core::Models::IPSecConnectionTunnel IPSecConnectionTunnel}>
5663
- def list_ip_sec_connection_tunnels(ipsc_id, opts = {})
5664
- logger.debug 'Calling operation VirtualNetworkClient#list_ip_sec_connection_tunnels.' if logger
6519
+ # Allowed values are: ASC, DESC
6520
+ # @option opts [String] :lifecycle_state A filter to return only resources that match the specified lifecycle state. The value is case insensitive.
6521
+ #
6522
+ # @return [Response] A Response object with data of type Array<{OCI::Core::Models::NatGateway NatGateway}>
6523
+ def list_nat_gateways(compartment_id, opts = {})
6524
+ logger.debug 'Calling operation VirtualNetworkClient#list_nat_gateways.' if logger
5665
6525
 
5666
- raise "Missing the required parameter 'ipsc_id' when calling list_ip_sec_connection_tunnels." if ipsc_id.nil?
5667
- raise "Parameter value for 'ipsc_id' must not be blank" if OCI::Internal::Util.blank_string?(ipsc_id)
6526
+ raise "Missing the required parameter 'compartment_id' when calling list_nat_gateways." if compartment_id.nil?
5668
6527
 
5669
- path = '/ipsecConnections/{ipscId}/tunnels'.sub('{ipscId}', ipsc_id.to_s)
6528
+ if opts[:sort_by] && !%w[TIMECREATED DISPLAYNAME].include?(opts[:sort_by])
6529
+ raise 'Invalid value for "sort_by", must be one of TIMECREATED, DISPLAYNAME.'
6530
+ end
6531
+
6532
+ if opts[:sort_order] && !%w[ASC DESC].include?(opts[:sort_order])
6533
+ raise 'Invalid value for "sort_order", must be one of ASC, DESC.'
6534
+ end
6535
+
6536
+ if opts[:lifecycle_state] && !OCI::Core::Models::NatGateway::LIFECYCLE_STATE_ENUM.include?(opts[:lifecycle_state])
6537
+ raise 'Invalid value for "lifecycle_state", must be one of the values in OCI::Core::Models::NatGateway::LIFECYCLE_STATE_ENUM.'
6538
+ end
6539
+
6540
+ path = '/natGateways'
5670
6541
  operation_signing_strategy = :standard
5671
6542
 
5672
6543
  # rubocop:disable Style/NegatedIf
5673
6544
  # Query Params
5674
6545
  query_params = {}
6546
+ query_params[:compartmentId] = compartment_id
6547
+ query_params[:vcnId] = opts[:vcn_id] if opts[:vcn_id]
5675
6548
  query_params[:limit] = opts[:limit] if opts[:limit]
5676
6549
  query_params[:page] = opts[:page] if opts[:page]
6550
+ query_params[:displayName] = opts[:display_name] if opts[:display_name]
6551
+ query_params[:sortBy] = opts[:sort_by] if opts[:sort_by]
6552
+ query_params[:sortOrder] = opts[:sort_order] if opts[:sort_order]
6553
+ query_params[:lifecycleState] = opts[:lifecycle_state] if opts[:lifecycle_state]
5677
6554
 
5678
6555
  # Header Params
5679
6556
  header_params = {}
@@ -5684,7 +6561,7 @@ module OCI
5684
6561
  post_body = nil
5685
6562
 
5686
6563
  # rubocop:disable Metrics/BlockLength
5687
- OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'VirtualNetworkClient#list_ip_sec_connection_tunnels') do
6564
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'VirtualNetworkClient#list_nat_gateways') do
5688
6565
  @api_client.call_api(
5689
6566
  :GET,
5690
6567
  path,
@@ -5693,7 +6570,7 @@ module OCI
5693
6570
  query_params: query_params,
5694
6571
  operation_signing_strategy: operation_signing_strategy,
5695
6572
  body: post_body,
5696
- return_type: 'Array<OCI::Core::Models::IPSecConnectionTunnel>'
6573
+ return_type: 'Array<OCI::Core::Models::NatGateway>'
5697
6574
  )
5698
6575
  end
5699
6576
  # rubocop:enable Metrics/BlockLength
@@ -5707,15 +6584,16 @@ module OCI
5707
6584
  # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
5708
6585
 
5709
6586
 
5710
- # Lists the IPSec connections for the specified compartment. You can filter the
5711
- # results by DRG or CPE.
6587
+ # Lists the security rules in the specified network security group.
5712
6588
  #
5713
- # @param [String] compartment_id The [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) of the compartment.
6589
+ # @param [String] network_security_group_id The [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) of the network security group.
5714
6590
  # @param [Hash] opts the optional parameters
5715
6591
  # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
5716
6592
  # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
5717
- # @option opts [String] :drg_id The OCID of the DRG.
5718
- # @option opts [String] :cpe_id The OCID of the CPE.
6593
+ # @option opts [String] :direction Direction of the security rule. Set to `EGRESS` for rules that allow outbound IP packets,
6594
+ # or `INGRESS` for rules that allow inbound IP packets.
6595
+ #
6596
+ # Allowed values are: EGRESS, INGRESS
5719
6597
  # @option opts [Integer] :limit For list pagination. The maximum number of results per page, or items to return in a paginated
5720
6598
  # \"List\" call. For important details about how pagination works, see
5721
6599
  # [List Pagination](https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine).
@@ -5726,23 +6604,42 @@ module OCI
5726
6604
  # call. For important details about how pagination works, see
5727
6605
  # [List Pagination](https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine).
5728
6606
  #
5729
- # @return [Response] A Response object with data of type Array<{OCI::Core::Models::IPSecConnection IPSecConnection}>
5730
- def list_ip_sec_connections(compartment_id, opts = {})
5731
- logger.debug 'Calling operation VirtualNetworkClient#list_ip_sec_connections.' if logger
6607
+ # @option opts [String] :sort_by The field to sort by.
6608
+ # Allowed values are: TIMECREATED
6609
+ # @option opts [String] :sort_order The sort order to use, either ascending (`ASC`) or descending (`DESC`). The DISPLAYNAME sort order
6610
+ # is case sensitive.
6611
+ #
6612
+ # Allowed values are: ASC, DESC
6613
+ # @return [Response] A Response object with data of type Array<{OCI::Core::Models::SecurityRule SecurityRule}>
6614
+ def list_network_security_group_security_rules(network_security_group_id, opts = {})
6615
+ logger.debug 'Calling operation VirtualNetworkClient#list_network_security_group_security_rules.' if logger
5732
6616
 
5733
- raise "Missing the required parameter 'compartment_id' when calling list_ip_sec_connections." if compartment_id.nil?
6617
+ raise "Missing the required parameter 'network_security_group_id' when calling list_network_security_group_security_rules." if network_security_group_id.nil?
5734
6618
 
5735
- path = '/ipsecConnections'
6619
+ if opts[:direction] && !%w[EGRESS INGRESS].include?(opts[:direction])
6620
+ raise 'Invalid value for "direction", must be one of EGRESS, INGRESS.'
6621
+ end
6622
+
6623
+ if opts[:sort_by] && !%w[TIMECREATED].include?(opts[:sort_by])
6624
+ raise 'Invalid value for "sort_by", must be one of TIMECREATED.'
6625
+ end
6626
+
6627
+ if opts[:sort_order] && !%w[ASC DESC].include?(opts[:sort_order])
6628
+ raise 'Invalid value for "sort_order", must be one of ASC, DESC.'
6629
+ end
6630
+ raise "Parameter value for 'network_security_group_id' must not be blank" if OCI::Internal::Util.blank_string?(network_security_group_id)
6631
+
6632
+ path = '/networkSecurityGroups/{networkSecurityGroupId}/securityRules'.sub('{networkSecurityGroupId}', network_security_group_id.to_s)
5736
6633
  operation_signing_strategy = :standard
5737
6634
 
5738
6635
  # rubocop:disable Style/NegatedIf
5739
6636
  # Query Params
5740
6637
  query_params = {}
5741
- query_params[:compartmentId] = compartment_id
5742
- query_params[:drgId] = opts[:drg_id] if opts[:drg_id]
5743
- query_params[:cpeId] = opts[:cpe_id] if opts[:cpe_id]
6638
+ query_params[:direction] = opts[:direction] if opts[:direction]
5744
6639
  query_params[:limit] = opts[:limit] if opts[:limit]
5745
6640
  query_params[:page] = opts[:page] if opts[:page]
6641
+ query_params[:sortBy] = opts[:sort_by] if opts[:sort_by]
6642
+ query_params[:sortOrder] = opts[:sort_order] if opts[:sort_order]
5746
6643
 
5747
6644
  # Header Params
5748
6645
  header_params = {}
@@ -5753,7 +6650,7 @@ module OCI
5753
6650
  post_body = nil
5754
6651
 
5755
6652
  # rubocop:disable Metrics/BlockLength
5756
- OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'VirtualNetworkClient#list_ip_sec_connections') do
6653
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'VirtualNetworkClient#list_network_security_group_security_rules') do
5757
6654
  @api_client.call_api(
5758
6655
  :GET,
5759
6656
  path,
@@ -5762,7 +6659,7 @@ module OCI
5762
6659
  query_params: query_params,
5763
6660
  operation_signing_strategy: operation_signing_strategy,
5764
6661
  body: post_body,
5765
- return_type: 'Array<OCI::Core::Models::IPSecConnection>'
6662
+ return_type: 'Array<OCI::Core::Models::SecurityRule>'
5766
6663
  )
5767
6664
  end
5768
6665
  # rubocop:enable Metrics/BlockLength
@@ -5776,11 +6673,9 @@ module OCI
5776
6673
  # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
5777
6674
 
5778
6675
 
5779
- # Lists the local peering gateways (LPGs) for the specified VCN and compartment
5780
- # (the LPG's compartment).
6676
+ # Lists the VNICs in the specified network security group.
5781
6677
  #
5782
- # @param [String] compartment_id The [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) of the compartment.
5783
- # @param [String] vcn_id The [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) of the VCN.
6678
+ # @param [String] network_security_group_id The [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) of the network security group.
5784
6679
  # @param [Hash] opts the optional parameters
5785
6680
  # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
5786
6681
  # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
@@ -5794,23 +6689,37 @@ module OCI
5794
6689
  # call. For important details about how pagination works, see
5795
6690
  # [List Pagination](https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine).
5796
6691
  #
5797
- # @return [Response] A Response object with data of type Array<{OCI::Core::Models::LocalPeeringGateway LocalPeeringGateway}>
5798
- def list_local_peering_gateways(compartment_id, vcn_id, opts = {})
5799
- logger.debug 'Calling operation VirtualNetworkClient#list_local_peering_gateways.' if logger
6692
+ # @option opts [String] :sort_by The field to sort by.
6693
+ # Allowed values are: TIMEASSOCIATED
6694
+ # @option opts [String] :sort_order The sort order to use, either ascending (`ASC`) or descending (`DESC`). The DISPLAYNAME sort order
6695
+ # is case sensitive.
6696
+ #
6697
+ # Allowed values are: ASC, DESC
6698
+ # @return [Response] A Response object with data of type Array<{OCI::Core::Models::NetworkSecurityGroupVnic NetworkSecurityGroupVnic}>
6699
+ def list_network_security_group_vnics(network_security_group_id, opts = {})
6700
+ logger.debug 'Calling operation VirtualNetworkClient#list_network_security_group_vnics.' if logger
5800
6701
 
5801
- raise "Missing the required parameter 'compartment_id' when calling list_local_peering_gateways." if compartment_id.nil?
5802
- raise "Missing the required parameter 'vcn_id' when calling list_local_peering_gateways." if vcn_id.nil?
6702
+ raise "Missing the required parameter 'network_security_group_id' when calling list_network_security_group_vnics." if network_security_group_id.nil?
5803
6703
 
5804
- path = '/localPeeringGateways'
6704
+ if opts[:sort_by] && !%w[TIMEASSOCIATED].include?(opts[:sort_by])
6705
+ raise 'Invalid value for "sort_by", must be one of TIMEASSOCIATED.'
6706
+ end
6707
+
6708
+ if opts[:sort_order] && !%w[ASC DESC].include?(opts[:sort_order])
6709
+ raise 'Invalid value for "sort_order", must be one of ASC, DESC.'
6710
+ end
6711
+ raise "Parameter value for 'network_security_group_id' must not be blank" if OCI::Internal::Util.blank_string?(network_security_group_id)
6712
+
6713
+ path = '/networkSecurityGroups/{networkSecurityGroupId}/vnics'.sub('{networkSecurityGroupId}', network_security_group_id.to_s)
5805
6714
  operation_signing_strategy = :standard
5806
6715
 
5807
6716
  # rubocop:disable Style/NegatedIf
5808
6717
  # Query Params
5809
6718
  query_params = {}
5810
- query_params[:compartmentId] = compartment_id
5811
- query_params[:vcnId] = vcn_id
5812
6719
  query_params[:limit] = opts[:limit] if opts[:limit]
5813
6720
  query_params[:page] = opts[:page] if opts[:page]
6721
+ query_params[:sortBy] = opts[:sort_by] if opts[:sort_by]
6722
+ query_params[:sortOrder] = opts[:sort_order] if opts[:sort_order]
5814
6723
 
5815
6724
  # Header Params
5816
6725
  header_params = {}
@@ -5821,7 +6730,7 @@ module OCI
5821
6730
  post_body = nil
5822
6731
 
5823
6732
  # rubocop:disable Metrics/BlockLength
5824
- OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'VirtualNetworkClient#list_local_peering_gateways') do
6733
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'VirtualNetworkClient#list_network_security_group_vnics') do
5825
6734
  @api_client.call_api(
5826
6735
  :GET,
5827
6736
  path,
@@ -5830,7 +6739,7 @@ module OCI
5830
6739
  query_params: query_params,
5831
6740
  operation_signing_strategy: operation_signing_strategy,
5832
6741
  body: post_body,
5833
- return_type: 'Array<OCI::Core::Models::LocalPeeringGateway>'
6742
+ return_type: 'Array<OCI::Core::Models::NetworkSecurityGroupVnic>'
5834
6743
  )
5835
6744
  end
5836
6745
  # rubocop:enable Metrics/BlockLength
@@ -5844,8 +6753,7 @@ module OCI
5844
6753
  # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
5845
6754
 
5846
6755
 
5847
- # Lists the NAT gateways in the specified compartment. You may optionally specify a VCN OCID
5848
- # to filter the results by VCN.
6756
+ # Lists the network security groups in the specified compartment.
5849
6757
  #
5850
6758
  # @param [String] compartment_id The [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) of the compartment.
5851
6759
  # @param [Hash] opts the optional parameters
@@ -5880,11 +6788,11 @@ module OCI
5880
6788
  # Allowed values are: ASC, DESC
5881
6789
  # @option opts [String] :lifecycle_state A filter to return only resources that match the specified lifecycle state. The value is case insensitive.
5882
6790
  #
5883
- # @return [Response] A Response object with data of type Array<{OCI::Core::Models::NatGateway NatGateway}>
5884
- def list_nat_gateways(compartment_id, opts = {})
5885
- logger.debug 'Calling operation VirtualNetworkClient#list_nat_gateways.' if logger
6791
+ # @return [Response] A Response object with data of type Array<{OCI::Core::Models::NetworkSecurityGroup NetworkSecurityGroup}>
6792
+ def list_network_security_groups(compartment_id, opts = {})
6793
+ logger.debug 'Calling operation VirtualNetworkClient#list_network_security_groups.' if logger
5886
6794
 
5887
- raise "Missing the required parameter 'compartment_id' when calling list_nat_gateways." if compartment_id.nil?
6795
+ raise "Missing the required parameter 'compartment_id' when calling list_network_security_groups." if compartment_id.nil?
5888
6796
 
5889
6797
  if opts[:sort_by] && !%w[TIMECREATED DISPLAYNAME].include?(opts[:sort_by])
5890
6798
  raise 'Invalid value for "sort_by", must be one of TIMECREATED, DISPLAYNAME.'
@@ -5894,11 +6802,11 @@ module OCI
5894
6802
  raise 'Invalid value for "sort_order", must be one of ASC, DESC.'
5895
6803
  end
5896
6804
 
5897
- if opts[:lifecycle_state] && !OCI::Core::Models::NatGateway::LIFECYCLE_STATE_ENUM.include?(opts[:lifecycle_state])
5898
- raise 'Invalid value for "lifecycle_state", must be one of the values in OCI::Core::Models::NatGateway::LIFECYCLE_STATE_ENUM.'
6805
+ if opts[:lifecycle_state] && !OCI::Core::Models::NetworkSecurityGroup::LIFECYCLE_STATE_ENUM.include?(opts[:lifecycle_state])
6806
+ raise 'Invalid value for "lifecycle_state", must be one of the values in OCI::Core::Models::NetworkSecurityGroup::LIFECYCLE_STATE_ENUM.'
5899
6807
  end
5900
6808
 
5901
- path = '/natGateways'
6809
+ path = '/networkSecurityGroups'
5902
6810
  operation_signing_strategy = :standard
5903
6811
 
5904
6812
  # rubocop:disable Style/NegatedIf
@@ -5922,7 +6830,7 @@ module OCI
5922
6830
  post_body = nil
5923
6831
 
5924
6832
  # rubocop:disable Metrics/BlockLength
5925
- OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'VirtualNetworkClient#list_nat_gateways') do
6833
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'VirtualNetworkClient#list_network_security_groups') do
5926
6834
  @api_client.call_api(
5927
6835
  :GET,
5928
6836
  path,
@@ -5931,7 +6839,7 @@ module OCI
5931
6839
  query_params: query_params,
5932
6840
  operation_signing_strategy: operation_signing_strategy,
5933
6841
  body: post_body,
5934
- return_type: 'Array<OCI::Core::Models::NatGateway>'
6842
+ return_type: 'Array<OCI::Core::Models::NetworkSecurityGroup>'
5935
6843
  )
5936
6844
  end
5937
6845
  # rubocop:enable Metrics/BlockLength
@@ -6987,6 +7895,63 @@ module OCI
6987
7895
  # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
6988
7896
  # rubocop:enable Metrics/MethodLength, Layout/EmptyLines
6989
7897
 
7898
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
7899
+ # rubocop:disable Style/IfUnlessModifier, Metrics/ParameterLists
7900
+ # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
7901
+ # rubocop:disable Lint/UnusedMethodArgument
7902
+
7903
+
7904
+ # Removes one or more security rules from the specified network security group.
7905
+ #
7906
+ # @param [String] network_security_group_id The [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) of the network security group.
7907
+ # @param [OCI::Core::Models::RemoveNetworkSecurityGroupSecurityRulesDetails] remove_network_security_group_security_rules_details Request with one or more security rules associated with the network security group that
7908
+ # will be removed.
7909
+ #
7910
+ # @param [Hash] opts the optional parameters
7911
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
7912
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
7913
+ # @return [Response] A Response object with data of type nil
7914
+ def remove_network_security_group_security_rules(network_security_group_id, remove_network_security_group_security_rules_details, opts = {})
7915
+ logger.debug 'Calling operation VirtualNetworkClient#remove_network_security_group_security_rules.' if logger
7916
+
7917
+ raise "Missing the required parameter 'network_security_group_id' when calling remove_network_security_group_security_rules." if network_security_group_id.nil?
7918
+ raise "Missing the required parameter 'remove_network_security_group_security_rules_details' when calling remove_network_security_group_security_rules." if remove_network_security_group_security_rules_details.nil?
7919
+ raise "Parameter value for 'network_security_group_id' must not be blank" if OCI::Internal::Util.blank_string?(network_security_group_id)
7920
+
7921
+ path = '/networkSecurityGroups/{networkSecurityGroupId}/actions/removeSecurityRules'.sub('{networkSecurityGroupId}', network_security_group_id.to_s)
7922
+ operation_signing_strategy = :standard
7923
+
7924
+ # rubocop:disable Style/NegatedIf
7925
+ # Query Params
7926
+ query_params = {}
7927
+
7928
+ # Header Params
7929
+ header_params = {}
7930
+ header_params[:accept] = 'application/json'
7931
+ header_params[:'content-type'] = 'application/json'
7932
+ # rubocop:enable Style/NegatedIf
7933
+
7934
+ post_body = @api_client.object_to_http_body(remove_network_security_group_security_rules_details)
7935
+
7936
+ # rubocop:disable Metrics/BlockLength
7937
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'VirtualNetworkClient#remove_network_security_group_security_rules') do
7938
+ @api_client.call_api(
7939
+ :POST,
7940
+ path,
7941
+ endpoint,
7942
+ header_params: header_params,
7943
+ query_params: query_params,
7944
+ operation_signing_strategy: operation_signing_strategy,
7945
+ body: post_body
7946
+ )
7947
+ end
7948
+ # rubocop:enable Metrics/BlockLength
7949
+ end
7950
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
7951
+ # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
7952
+ # rubocop:enable Metrics/MethodLength, Layout/EmptyLines
7953
+ # rubocop:enable Lint/UnusedMethodArgument
7954
+
6990
7955
  # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
6991
7956
  # rubocop:disable Style/IfUnlessModifier, Metrics/ParameterLists
6992
7957
  # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
@@ -7735,6 +8700,137 @@ module OCI
7735
8700
  # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
7736
8701
 
7737
8702
 
8703
+ # Updates the specified network security group.
8704
+ #
8705
+ # To add or remove an existing VNIC from the group, use
8706
+ # {#update_vnic update_vnic}.
8707
+ #
8708
+ # To add a VNIC to the group *when you create the VNIC*, specify the NSG's OCID during creation.
8709
+ # For example, see the `nsgIds` attribute in {#create_vnic_details create_vnic_details}.
8710
+ #
8711
+ # To add or remove security rules from the group, use
8712
+ # {#add_network_security_group_security_rules add_network_security_group_security_rules}
8713
+ # or
8714
+ # {#remove_network_security_group_security_rules remove_network_security_group_security_rules}.
8715
+ #
8716
+ # To edit the contents of existing security rules in the group, use
8717
+ # {#update_network_security_group_security_rules update_network_security_group_security_rules}.
8718
+ #
8719
+ # @param [String] network_security_group_id The [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) of the network security group.
8720
+ # @param [OCI::Core::Models::UpdateNetworkSecurityGroupDetails] update_network_security_group_details Details object for updating a network security group.
8721
+ # @param [Hash] opts the optional parameters
8722
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
8723
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
8724
+ # @option opts [String] :if_match For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match`
8725
+ # parameter to the value of the etag from a previous GET or POST response for that resource. The resource
8726
+ # will be updated or deleted only if the etag you provide matches the resource's current etag value.
8727
+ #
8728
+ # @return [Response] A Response object with data of type {OCI::Core::Models::NetworkSecurityGroup NetworkSecurityGroup}
8729
+ def update_network_security_group(network_security_group_id, update_network_security_group_details, opts = {})
8730
+ logger.debug 'Calling operation VirtualNetworkClient#update_network_security_group.' if logger
8731
+
8732
+ raise "Missing the required parameter 'network_security_group_id' when calling update_network_security_group." if network_security_group_id.nil?
8733
+ raise "Missing the required parameter 'update_network_security_group_details' when calling update_network_security_group." if update_network_security_group_details.nil?
8734
+ raise "Parameter value for 'network_security_group_id' must not be blank" if OCI::Internal::Util.blank_string?(network_security_group_id)
8735
+
8736
+ path = '/networkSecurityGroups/{networkSecurityGroupId}'.sub('{networkSecurityGroupId}', network_security_group_id.to_s)
8737
+ operation_signing_strategy = :standard
8738
+
8739
+ # rubocop:disable Style/NegatedIf
8740
+ # Query Params
8741
+ query_params = {}
8742
+
8743
+ # Header Params
8744
+ header_params = {}
8745
+ header_params[:accept] = 'application/json'
8746
+ header_params[:'content-type'] = 'application/json'
8747
+ header_params[:'if-match'] = opts[:if_match] if opts[:if_match]
8748
+ # rubocop:enable Style/NegatedIf
8749
+
8750
+ post_body = @api_client.object_to_http_body(update_network_security_group_details)
8751
+
8752
+ # rubocop:disable Metrics/BlockLength
8753
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'VirtualNetworkClient#update_network_security_group') do
8754
+ @api_client.call_api(
8755
+ :PUT,
8756
+ path,
8757
+ endpoint,
8758
+ header_params: header_params,
8759
+ query_params: query_params,
8760
+ operation_signing_strategy: operation_signing_strategy,
8761
+ body: post_body,
8762
+ return_type: 'OCI::Core::Models::NetworkSecurityGroup'
8763
+ )
8764
+ end
8765
+ # rubocop:enable Metrics/BlockLength
8766
+ end
8767
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
8768
+ # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
8769
+ # rubocop:enable Metrics/MethodLength, Layout/EmptyLines
8770
+
8771
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
8772
+ # rubocop:disable Style/IfUnlessModifier, Metrics/ParameterLists
8773
+ # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
8774
+ # rubocop:disable Lint/UnusedMethodArgument
8775
+
8776
+
8777
+ # Updates one or more security rules in the specified network security group.
8778
+ #
8779
+ # @param [String] network_security_group_id The [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) of the network security group.
8780
+ # @param [OCI::Core::Models::UpdateNetworkSecurityGroupSecurityRulesDetails] update_network_security_group_security_rules_details Request with one or more security rules associated with the network security group that
8781
+ # will be updated.
8782
+ #
8783
+ # @param [Hash] opts the optional parameters
8784
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
8785
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
8786
+ # @return [Response] A Response object with data of type {OCI::Core::Models::UpdatedNetworkSecurityGroupSecurityRules UpdatedNetworkSecurityGroupSecurityRules}
8787
+ def update_network_security_group_security_rules(network_security_group_id, update_network_security_group_security_rules_details, opts = {})
8788
+ logger.debug 'Calling operation VirtualNetworkClient#update_network_security_group_security_rules.' if logger
8789
+
8790
+ raise "Missing the required parameter 'network_security_group_id' when calling update_network_security_group_security_rules." if network_security_group_id.nil?
8791
+ raise "Missing the required parameter 'update_network_security_group_security_rules_details' when calling update_network_security_group_security_rules." if update_network_security_group_security_rules_details.nil?
8792
+ raise "Parameter value for 'network_security_group_id' must not be blank" if OCI::Internal::Util.blank_string?(network_security_group_id)
8793
+
8794
+ path = '/networkSecurityGroups/{networkSecurityGroupId}/actions/updateSecurityRules'.sub('{networkSecurityGroupId}', network_security_group_id.to_s)
8795
+ operation_signing_strategy = :standard
8796
+
8797
+ # rubocop:disable Style/NegatedIf
8798
+ # Query Params
8799
+ query_params = {}
8800
+
8801
+ # Header Params
8802
+ header_params = {}
8803
+ header_params[:accept] = 'application/json'
8804
+ header_params[:'content-type'] = 'application/json'
8805
+ # rubocop:enable Style/NegatedIf
8806
+
8807
+ post_body = @api_client.object_to_http_body(update_network_security_group_security_rules_details)
8808
+
8809
+ # rubocop:disable Metrics/BlockLength
8810
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'VirtualNetworkClient#update_network_security_group_security_rules') do
8811
+ @api_client.call_api(
8812
+ :POST,
8813
+ path,
8814
+ endpoint,
8815
+ header_params: header_params,
8816
+ query_params: query_params,
8817
+ operation_signing_strategy: operation_signing_strategy,
8818
+ body: post_body,
8819
+ return_type: 'OCI::Core::Models::UpdatedNetworkSecurityGroupSecurityRules'
8820
+ )
8821
+ end
8822
+ # rubocop:enable Metrics/BlockLength
8823
+ end
8824
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
8825
+ # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
8826
+ # rubocop:enable Metrics/MethodLength, Layout/EmptyLines
8827
+ # rubocop:enable Lint/UnusedMethodArgument
8828
+
8829
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
8830
+ # rubocop:disable Style/IfUnlessModifier, Metrics/ParameterLists
8831
+ # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
8832
+
8833
+
7738
8834
  # Updates the specified private IP. You must specify the object's OCID.
7739
8835
  # Use this operation if you want to:
7740
8836
  #