oci 2.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (217) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE.txt +82 -0
  3. data/README.md +262 -0
  4. data/lib/oci.rb +25 -0
  5. data/lib/oci/api_client.rb +389 -0
  6. data/lib/oci/config.rb +118 -0
  7. data/lib/oci/config_file_loader.rb +96 -0
  8. data/lib/oci/core/blockstorage_client.rb +462 -0
  9. data/lib/oci/core/compute_client.rb +1415 -0
  10. data/lib/oci/core/core.rb +114 -0
  11. data/lib/oci/core/models/attach_i_scsi_volume_details.rb +137 -0
  12. data/lib/oci/core/models/attach_vnic_details.rb +144 -0
  13. data/lib/oci/core/models/attach_volume_details.rb +165 -0
  14. data/lib/oci/core/models/capture_console_history_details.rb +120 -0
  15. data/lib/oci/core/models/console_history.rb +213 -0
  16. data/lib/oci/core/models/cpe.rb +169 -0
  17. data/lib/oci/core/models/create_cpe_details.rb +145 -0
  18. data/lib/oci/core/models/create_cross_connect_details.rb +204 -0
  19. data/lib/oci/core/models/create_cross_connect_group_details.rb +133 -0
  20. data/lib/oci/core/models/create_dhcp_details.rb +153 -0
  21. data/lib/oci/core/models/create_drg_attachment_details.rb +142 -0
  22. data/lib/oci/core/models/create_drg_details.rb +131 -0
  23. data/lib/oci/core/models/create_image_details.rb +159 -0
  24. data/lib/oci/core/models/create_instance_console_connection_details.rb +131 -0
  25. data/lib/oci/core/models/create_internet_gateway_details.rb +153 -0
  26. data/lib/oci/core/models/create_ip_sec_connection_details.rb +168 -0
  27. data/lib/oci/core/models/create_private_ip_details.rb +173 -0
  28. data/lib/oci/core/models/create_route_table_details.rb +153 -0
  29. data/lib/oci/core/models/create_security_list_details.rb +164 -0
  30. data/lib/oci/core/models/create_subnet_details.rb +257 -0
  31. data/lib/oci/core/models/create_vcn_details.rb +171 -0
  32. data/lib/oci/core/models/create_virtual_circuit_details.rb +260 -0
  33. data/lib/oci/core/models/create_vnic_details.rb +214 -0
  34. data/lib/oci/core/models/create_volume_backup_details.rb +133 -0
  35. data/lib/oci/core/models/create_volume_details.rb +170 -0
  36. data/lib/oci/core/models/cross_connect.rb +235 -0
  37. data/lib/oci/core/models/cross_connect_group.rb +187 -0
  38. data/lib/oci/core/models/cross_connect_location.rb +134 -0
  39. data/lib/oci/core/models/cross_connect_mapping.rb +190 -0
  40. data/lib/oci/core/models/cross_connect_port_speed_shape.rb +137 -0
  41. data/lib/oci/core/models/cross_connect_status.rb +200 -0
  42. data/lib/oci/core/models/dhcp_dns_option.rb +171 -0
  43. data/lib/oci/core/models/dhcp_option.rb +135 -0
  44. data/lib/oci/core/models/dhcp_options.rb +208 -0
  45. data/lib/oci/core/models/dhcp_search_domain_option.rb +141 -0
  46. data/lib/oci/core/models/drg.rb +186 -0
  47. data/lib/oci/core/models/drg_attachment.rb +208 -0
  48. data/lib/oci/core/models/egress_security_rule.rb +198 -0
  49. data/lib/oci/core/models/export_image_details.rb +134 -0
  50. data/lib/oci/core/models/export_image_via_object_storage_tuple_details.rb +150 -0
  51. data/lib/oci/core/models/export_image_via_object_storage_uri_details.rb +130 -0
  52. data/lib/oci/core/models/fast_connect_provider_service.rb +145 -0
  53. data/lib/oci/core/models/i_scsi_volume_attachment.rb +212 -0
  54. data/lib/oci/core/models/icmp_options.rb +131 -0
  55. data/lib/oci/core/models/image.rb +245 -0
  56. data/lib/oci/core/models/image_source_details.rb +134 -0
  57. data/lib/oci/core/models/image_source_via_object_storage_tuple_details.rb +150 -0
  58. data/lib/oci/core/models/image_source_via_object_storage_uri_details.rb +128 -0
  59. data/lib/oci/core/models/ingress_security_rule.rb +198 -0
  60. data/lib/oci/core/models/instance.rb +307 -0
  61. data/lib/oci/core/models/instance_console_connection.rb +193 -0
  62. data/lib/oci/core/models/instance_credentials.rb +131 -0
  63. data/lib/oci/core/models/internet_gateway.rb +210 -0
  64. data/lib/oci/core/models/ip_sec_connection.rb +223 -0
  65. data/lib/oci/core/models/ip_sec_connection_device_config.rb +153 -0
  66. data/lib/oci/core/models/ip_sec_connection_device_status.rb +156 -0
  67. data/lib/oci/core/models/launch_instance_details.rb +336 -0
  68. data/lib/oci/core/models/letter_of_authority.rb +194 -0
  69. data/lib/oci/core/models/port_range.rb +133 -0
  70. data/lib/oci/core/models/private_ip.rb +248 -0
  71. data/lib/oci/core/models/route_rule.rb +135 -0
  72. data/lib/oci/core/models/route_table.rb +208 -0
  73. data/lib/oci/core/models/security_list.rb +219 -0
  74. data/lib/oci/core/models/shape.rb +122 -0
  75. data/lib/oci/core/models/subnet.rb +351 -0
  76. data/lib/oci/core/models/tcp_options.rb +135 -0
  77. data/lib/oci/core/models/tunnel_config.rb +151 -0
  78. data/lib/oci/core/models/tunnel_status.rb +178 -0
  79. data/lib/oci/core/models/udp_options.rb +135 -0
  80. data/lib/oci/core/models/update_cpe_details.rb +122 -0
  81. data/lib/oci/core/models/update_cross_connect_details.rb +138 -0
  82. data/lib/oci/core/models/update_cross_connect_group_details.rb +122 -0
  83. data/lib/oci/core/models/update_dhcp_details.rb +132 -0
  84. data/lib/oci/core/models/update_drg_attachment_details.rb +122 -0
  85. data/lib/oci/core/models/update_drg_details.rb +122 -0
  86. data/lib/oci/core/models/update_image_details.rb +124 -0
  87. data/lib/oci/core/models/update_instance_details.rb +124 -0
  88. data/lib/oci/core/models/update_internet_gateway_details.rb +133 -0
  89. data/lib/oci/core/models/update_ip_sec_connection_details.rb +122 -0
  90. data/lib/oci/core/models/update_private_ip_details.rb +157 -0
  91. data/lib/oci/core/models/update_route_table_details.rb +133 -0
  92. data/lib/oci/core/models/update_security_list_details.rb +144 -0
  93. data/lib/oci/core/models/update_subnet_details.rb +122 -0
  94. data/lib/oci/core/models/update_vcn_details.rb +122 -0
  95. data/lib/oci/core/models/update_virtual_circuit_details.rb +240 -0
  96. data/lib/oci/core/models/update_vnic_details.rb +144 -0
  97. data/lib/oci/core/models/update_volume_backup_details.rb +122 -0
  98. data/lib/oci/core/models/update_volume_details.rb +122 -0
  99. data/lib/oci/core/models/vcn.rb +276 -0
  100. data/lib/oci/core/models/virtual_circuit.rb +395 -0
  101. data/lib/oci/core/models/virtual_circuit_bandwidth_shape.rb +137 -0
  102. data/lib/oci/core/models/vnic.rb +287 -0
  103. data/lib/oci/core/models/vnic_attachment.rb +250 -0
  104. data/lib/oci/core/models/volume.rb +210 -0
  105. data/lib/oci/core/models/volume_attachment.rb +246 -0
  106. data/lib/oci/core/models/volume_backup.rb +235 -0
  107. data/lib/oci/core/util.rb +1 -0
  108. data/lib/oci/core/virtual_network_client.rb +3421 -0
  109. data/lib/oci/errors.rb +78 -0
  110. data/lib/oci/global_context.rb +20 -0
  111. data/lib/oci/identity/identity.rb +55 -0
  112. data/lib/oci/identity/identity_client.rb +2148 -0
  113. data/lib/oci/identity/models/add_user_to_group_details.rb +131 -0
  114. data/lib/oci/identity/models/api_key.rb +211 -0
  115. data/lib/oci/identity/models/availability_domain.rb +131 -0
  116. data/lib/oci/identity/models/compartment.rb +211 -0
  117. data/lib/oci/identity/models/create_api_key_details.rb +120 -0
  118. data/lib/oci/identity/models/create_compartment_details.rb +145 -0
  119. data/lib/oci/identity/models/create_customer_secret_key_details.rb +121 -0
  120. data/lib/oci/identity/models/create_group_details.rb +144 -0
  121. data/lib/oci/identity/models/create_identity_provider_details.rb +215 -0
  122. data/lib/oci/identity/models/create_idp_group_mapping_details.rb +133 -0
  123. data/lib/oci/identity/models/create_policy_details.rb +173 -0
  124. data/lib/oci/identity/models/create_region_subscription_details.rb +128 -0
  125. data/lib/oci/identity/models/create_saml2_identity_provider_details.rb +154 -0
  126. data/lib/oci/identity/models/create_swift_password_details.rb +121 -0
  127. data/lib/oci/identity/models/create_user_details.rb +144 -0
  128. data/lib/oci/identity/models/customer_secret_key.rb +225 -0
  129. data/lib/oci/identity/models/customer_secret_key_summary.rb +213 -0
  130. data/lib/oci/identity/models/group.rb +211 -0
  131. data/lib/oci/identity/models/identity_provider.rb +261 -0
  132. data/lib/oci/identity/models/idp_group_mapping.rb +220 -0
  133. data/lib/oci/identity/models/policy.rb +237 -0
  134. data/lib/oci/identity/models/region.rb +143 -0
  135. data/lib/oci/identity/models/region_subscription.rb +180 -0
  136. data/lib/oci/identity/models/saml2_identity_provider.rb +180 -0
  137. data/lib/oci/identity/models/swift_password.rb +226 -0
  138. data/lib/oci/identity/models/tenancy.rb +159 -0
  139. data/lib/oci/identity/models/ui_password.rb +187 -0
  140. data/lib/oci/identity/models/update_compartment_details.rb +132 -0
  141. data/lib/oci/identity/models/update_customer_secret_key_details.rb +120 -0
  142. data/lib/oci/identity/models/update_group_details.rb +120 -0
  143. data/lib/oci/identity/models/update_identity_provider_details.rb +160 -0
  144. data/lib/oci/identity/models/update_idp_group_mapping_details.rb +131 -0
  145. data/lib/oci/identity/models/update_policy_details.rb +148 -0
  146. data/lib/oci/identity/models/update_saml2_identity_provider_details.rb +145 -0
  147. data/lib/oci/identity/models/update_state_details.rb +121 -0
  148. data/lib/oci/identity/models/update_swift_password_details.rb +120 -0
  149. data/lib/oci/identity/models/update_user_details.rb +120 -0
  150. data/lib/oci/identity/models/user.rb +217 -0
  151. data/lib/oci/identity/models/user_group_membership.rb +209 -0
  152. data/lib/oci/identity/util.rb +1 -0
  153. data/lib/oci/internal/internal.rb +10 -0
  154. data/lib/oci/internal/util.rb +69 -0
  155. data/lib/oci/load_balancer/load_balancer.rb +51 -0
  156. data/lib/oci/load_balancer/load_balancer_client.rb +1449 -0
  157. data/lib/oci/load_balancer/models/backend.rb +220 -0
  158. data/lib/oci/load_balancer/models/backend_details.rb +206 -0
  159. data/lib/oci/load_balancer/models/backend_health.rb +158 -0
  160. data/lib/oci/load_balancer/models/backend_set.rb +182 -0
  161. data/lib/oci/load_balancer/models/backend_set_details.rb +165 -0
  162. data/lib/oci/load_balancer/models/backend_set_health.rb +207 -0
  163. data/lib/oci/load_balancer/models/certificate.rb +169 -0
  164. data/lib/oci/load_balancer/models/certificate_details.rb +205 -0
  165. data/lib/oci/load_balancer/models/create_backend_details.rb +206 -0
  166. data/lib/oci/load_balancer/models/create_backend_set_details.rb +181 -0
  167. data/lib/oci/load_balancer/models/create_certificate_details.rb +205 -0
  168. data/lib/oci/load_balancer/models/create_listener_details.rb +175 -0
  169. data/lib/oci/load_balancer/models/create_load_balancer_details.rb +220 -0
  170. data/lib/oci/load_balancer/models/health_check_result.rb +183 -0
  171. data/lib/oci/load_balancer/models/health_checker.rb +224 -0
  172. data/lib/oci/load_balancer/models/health_checker_details.rb +223 -0
  173. data/lib/oci/load_balancer/models/ip_address.rb +139 -0
  174. data/lib/oci/load_balancer/models/listener.rb +174 -0
  175. data/lib/oci/load_balancer/models/listener_details.rb +160 -0
  176. data/lib/oci/load_balancer/models/load_balancer.rb +280 -0
  177. data/lib/oci/load_balancer/models/load_balancer_health.rb +215 -0
  178. data/lib/oci/load_balancer/models/load_balancer_health_summary.rb +168 -0
  179. data/lib/oci/load_balancer/models/load_balancer_policy.rb +120 -0
  180. data/lib/oci/load_balancer/models/load_balancer_protocol.rb +120 -0
  181. data/lib/oci/load_balancer/models/load_balancer_shape.rb +120 -0
  182. data/lib/oci/load_balancer/models/session_persistence_configuration_details.rb +141 -0
  183. data/lib/oci/load_balancer/models/ssl_configuration.rb +155 -0
  184. data/lib/oci/load_balancer/models/ssl_configuration_details.rb +155 -0
  185. data/lib/oci/load_balancer/models/update_backend_details.rb +178 -0
  186. data/lib/oci/load_balancer/models/update_backend_set_details.rb +165 -0
  187. data/lib/oci/load_balancer/models/update_health_checker_details.rb +222 -0
  188. data/lib/oci/load_balancer/models/update_listener_details.rb +160 -0
  189. data/lib/oci/load_balancer/models/update_load_balancer_details.rb +124 -0
  190. data/lib/oci/load_balancer/models/work_request.rb +229 -0
  191. data/lib/oci/load_balancer/models/work_request_error.rb +145 -0
  192. data/lib/oci/load_balancer/util.rb +58 -0
  193. data/lib/oci/object_storage/models/bucket.rb +216 -0
  194. data/lib/oci/object_storage/models/bucket_summary.rb +175 -0
  195. data/lib/oci/object_storage/models/commit_multipart_upload_details.rb +133 -0
  196. data/lib/oci/object_storage/models/commit_multipart_upload_part_details.rb +131 -0
  197. data/lib/oci/object_storage/models/create_bucket_details.rb +173 -0
  198. data/lib/oci/object_storage/models/create_multipart_upload_details.rb +166 -0
  199. data/lib/oci/object_storage/models/create_preauthenticated_request_details.rb +171 -0
  200. data/lib/oci/object_storage/models/list_objects.rb +146 -0
  201. data/lib/oci/object_storage/models/multipart_upload.rb +164 -0
  202. data/lib/oci/object_storage/models/multipart_upload_part_summary.rb +153 -0
  203. data/lib/oci/object_storage/models/object_summary.rb +153 -0
  204. data/lib/oci/object_storage/models/preauthenticated_request.rb +207 -0
  205. data/lib/oci/object_storage/models/preauthenticated_request_summary.rb +196 -0
  206. data/lib/oci/object_storage/models/update_bucket_details.rb +171 -0
  207. data/lib/oci/object_storage/object_storage.rb +30 -0
  208. data/lib/oci/object_storage/object_storage_client.rb +1185 -0
  209. data/lib/oci/object_storage/util.rb +1 -0
  210. data/lib/oci/regions.rb +43 -0
  211. data/lib/oci/response.rb +80 -0
  212. data/lib/oci/response_headers.rb +144 -0
  213. data/lib/oci/signer.rb +157 -0
  214. data/lib/oci/version.rb +5 -0
  215. data/lib/oci/waiter.rb +101 -0
  216. data/lib/oraclebmc.rb +3 -0
  217. metadata +375 -0
@@ -0,0 +1,235 @@
1
+ # Copyright (c) 2016, 2017, Oracle and/or its affiliates. All rights reserved.
2
+
3
+ require 'date'
4
+
5
+ module OCI
6
+ class Core::Models::VolumeBackup
7
+
8
+ LIFECYCLE_STATE_ENUM = [LIFECYCLE_STATE_CREATING = 'CREATING',
9
+ LIFECYCLE_STATE_AVAILABLE = 'AVAILABLE',
10
+ LIFECYCLE_STATE_TERMINATING = 'TERMINATING',
11
+ LIFECYCLE_STATE_TERMINATED = 'TERMINATED',
12
+ LIFECYCLE_STATE_FAULTY = 'FAULTY',
13
+ LIFECYCLE_STATE_REQUEST_RECEIVED = 'REQUEST_RECEIVED',
14
+ LIFECYCLE_STATE_UNKNOWN_ENUM_VALUE = 'UNKNOWN_ENUM_VALUE']
15
+
16
+ # The OCID of the compartment that contains the volume backup.
17
+ # @return [String]
18
+ attr_accessor :compartment_id
19
+
20
+ # A user-friendly name for the volume backup. Does not have to be unique and it's changeable.
21
+ # Avoid entering confidential information.
22
+ #
23
+ # @return [String]
24
+ attr_accessor :display_name
25
+
26
+ # The OCID of the volume backup.
27
+ # @return [String]
28
+ attr_accessor :id
29
+
30
+ # The current state of a volume backup.
31
+ # @return [String]
32
+ attr_accessor :lifecycle_state
33
+
34
+ # The size of the volume, in MBs. The value must be a multiple of 1024.
35
+ #
36
+ # @return [Integer]
37
+ attr_accessor :size_in_mbs
38
+
39
+ # The date and time the volume backup was created. This is the time the actual point-in-time image
40
+ # of the volume data was taken. Format defined by RFC3339.
41
+ #
42
+ # @return [DateTime]
43
+ attr_accessor :time_created
44
+
45
+ # The date and time the request to create the volume backup was received. Format defined by RFC3339.
46
+ #
47
+ # @return [DateTime]
48
+ attr_accessor :time_request_received
49
+
50
+ # The size used by the backup, in MBs. It is typically smaller than sizeInMBs, depending on the space
51
+ # consumed on the volume and whether the backup is full or incremental.
52
+ #
53
+ # @return [Integer]
54
+ attr_accessor :unique_size_in_mbs
55
+
56
+ # The OCID of the volume.
57
+ # @return [String]
58
+ attr_accessor :volume_id
59
+
60
+
61
+ # Initializes the object
62
+ # @param [Hash] attributes Model attributes in the form of hash
63
+ def initialize(attributes = {})
64
+ return unless attributes.is_a?(Hash)
65
+
66
+ # convert string to symbol for hash key
67
+ attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
68
+
69
+ if attributes[:'compartmentId']
70
+ self.compartment_id = attributes[:'compartmentId']
71
+ end
72
+
73
+ if attributes[:'displayName']
74
+ self.display_name = attributes[:'displayName']
75
+ end
76
+
77
+ if attributes[:'id']
78
+ self.id = attributes[:'id']
79
+ end
80
+
81
+ if attributes[:'lifecycleState']
82
+ self.lifecycle_state = attributes[:'lifecycleState']
83
+ end
84
+
85
+ if attributes[:'sizeInMBs']
86
+ self.size_in_mbs = attributes[:'sizeInMBs']
87
+ end
88
+
89
+ if attributes[:'timeCreated']
90
+ self.time_created = attributes[:'timeCreated']
91
+ end
92
+
93
+ if attributes[:'timeRequestReceived']
94
+ self.time_request_received = attributes[:'timeRequestReceived']
95
+ end
96
+
97
+ if attributes[:'uniqueSizeInMbs']
98
+ self.unique_size_in_mbs = attributes[:'uniqueSizeInMbs']
99
+ end
100
+
101
+ if attributes[:'volumeId']
102
+ self.volume_id = attributes[:'volumeId']
103
+ end
104
+
105
+ end
106
+
107
+ # Custom attribute writer method checking allowed values (enum).
108
+ # @param [Object] lifecycle_state Object to be assigned
109
+ def lifecycle_state=(lifecycle_state)
110
+ if lifecycle_state && !LIFECYCLE_STATE_ENUM.include?(lifecycle_state)
111
+ @lifecycle_state = LIFECYCLE_STATE_UNKNOWN_ENUM_VALUE
112
+ else
113
+ @lifecycle_state = lifecycle_state
114
+ end
115
+ end
116
+
117
+ # Checks equality by comparing each attribute.
118
+ # @param [Object] other_object to be compared
119
+ def ==(other_object)
120
+ return true if self.equal?(other_object)
121
+ self.class == other_object.class &&
122
+ compartment_id == other_object.compartment_id &&
123
+ display_name == other_object.display_name &&
124
+ id == other_object.id &&
125
+ lifecycle_state == other_object.lifecycle_state &&
126
+ size_in_mbs == other_object.size_in_mbs &&
127
+ time_created == other_object.time_created &&
128
+ time_request_received == other_object.time_request_received &&
129
+ unique_size_in_mbs == other_object.unique_size_in_mbs &&
130
+ volume_id == other_object.volume_id
131
+ end
132
+
133
+ # @see the `==` method
134
+ # @param [Object] other_object to be compared
135
+ def eql?(other_object)
136
+ self == other_object
137
+ end
138
+
139
+ # Calculates hash code according to all attributes.
140
+ # @return [Fixnum] Hash code
141
+ def hash
142
+ [compartment_id, display_name, id, lifecycle_state, size_in_mbs, time_created, time_request_received, unique_size_in_mbs, volume_id].hash
143
+ end
144
+
145
+ # Builds the object from hash
146
+ # @param [Hash] attributes Model attributes in the form of hash
147
+ # @return [Object] Returns the model itself
148
+ def build_from_hash(attributes)
149
+ return nil unless attributes.is_a?(Hash)
150
+ self.class.swagger_types.each_pair do |key, type|
151
+ if type =~ /^Array<(.*)>/i
152
+ # check to ensure the input is an array given that the the attribute
153
+ # is documented as an array but the input is not
154
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
155
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| OCI::Internal::Util.convert_to_type($1, v) } )
156
+ end
157
+ elsif !attributes[self.class.attribute_map[key]].nil?
158
+ self.send("#{key}=", OCI::Internal::Util.convert_to_type(type, attributes[self.class.attribute_map[key]]))
159
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
160
+ end
161
+
162
+ self
163
+ end
164
+
165
+ # Returns the string representation of the object
166
+ # @return [String] String presentation of the object
167
+ def to_s
168
+ to_hash.to_s
169
+ end
170
+
171
+ # Returns the object in the form of hash
172
+ # @return [Hash] Returns the object in the form of hash
173
+ def to_hash
174
+ hash = {}
175
+ self.class.attribute_map.each_pair do |attr, param|
176
+ value = self.send(attr)
177
+ next if value.nil?
178
+ hash[param] = _to_hash(value)
179
+ end
180
+ hash
181
+ end
182
+
183
+ private
184
+
185
+ # Outputs non-array value in the form of hash
186
+ # For object, use to_hash. Otherwise, just return the value
187
+ # @param [Object] value Any valid value
188
+ # @return [Hash] Returns the value in the form of hash
189
+ def _to_hash(value)
190
+ if value.is_a?(Array)
191
+ value.compact.map{ |v| _to_hash(v) }
192
+ elsif value.is_a?(Hash)
193
+ {}.tap do |hash|
194
+ value.each { |k, v| hash[k] = _to_hash(v) }
195
+ end
196
+ elsif value.respond_to? :to_hash
197
+ value.to_hash
198
+ else
199
+ value
200
+ end
201
+ end
202
+
203
+
204
+
205
+ # Attribute mapping from ruby-style variable name to JSON key.
206
+ def self.attribute_map
207
+ {
208
+ :'compartment_id' => :'compartmentId',
209
+ :'display_name' => :'displayName',
210
+ :'id' => :'id',
211
+ :'lifecycle_state' => :'lifecycleState',
212
+ :'size_in_mbs' => :'sizeInMBs',
213
+ :'time_created' => :'timeCreated',
214
+ :'time_request_received' => :'timeRequestReceived',
215
+ :'unique_size_in_mbs' => :'uniqueSizeInMbs',
216
+ :'volume_id' => :'volumeId'
217
+ }
218
+ end
219
+
220
+ # Attribute type mapping.
221
+ def self.swagger_types
222
+ {
223
+ :'compartment_id' => :'String',
224
+ :'display_name' => :'String',
225
+ :'id' => :'String',
226
+ :'lifecycle_state' => :'String',
227
+ :'size_in_mbs' => :'Integer',
228
+ :'time_created' => :'DateTime',
229
+ :'time_request_received' => :'DateTime',
230
+ :'unique_size_in_mbs' => :'Integer',
231
+ :'volume_id' => :'String'
232
+ }
233
+ end
234
+ end
235
+ end
@@ -0,0 +1 @@
1
+ # Copyright (c) 2016, 2017, Oracle and/or its affiliates. All rights reserved.
@@ -0,0 +1,3421 @@
1
+ # Copyright (c) 2016, 2017, Oracle and/or its affiliates. All rights reserved.
2
+
3
+ require "uri"
4
+ require "logger"
5
+
6
+ module OCI
7
+
8
+ class Core::VirtualNetworkClient
9
+
10
+ # Client used to make HTTP requests.
11
+ # @return [OCI::ApiClient]
12
+ attr_reader :api_client
13
+
14
+ # Fully qualified endpoint URL
15
+ # @return [String]
16
+ attr_reader :endpoint
17
+
18
+ # The region, which will usually correspond to a value in {OCI::Regions::REGION_ENUM}.
19
+ # @return [String]
20
+ attr_accessor :region
21
+
22
+ # Creates a new VirtualNetworkClient.
23
+ # If a config is not specified, then the global OCI.config will be used.
24
+ #
25
+ # A region must be specified in either the config or the region parameter. If specified
26
+ # in both, then the region parameter will be used.
27
+ #
28
+ # @param [Config] config A Config object.
29
+ # @param [String] region A region used to determine the service endpoint. This will usually
30
+ # correspond to a value in {OCI::Regions::REGION_ENUM}, but may be an arbitrary string.
31
+ #
32
+ def initialize(config:nil, region:nil)
33
+ config ||= OCI.config
34
+ config.validate
35
+
36
+ signer = Signer.new(config.user, config.fingerprint, config.tenancy, config.key_file, pass_phrase: config.pass_phrase, private_key_content: config.key_content)
37
+ @api_client = ApiClient.new(config, signer)
38
+
39
+ region ||= config.region
40
+ self.region = region
41
+ end
42
+
43
+ # Set the region that will be used to determine the service endpoint.
44
+ # This will usually correspond to a value in {OCI::Regions::REGION_ENUM},
45
+ # but may be an arbitrary string.
46
+ def region=(r)
47
+ @region = r
48
+
49
+ fail 'A region must be specified.' unless @region
50
+
51
+ @endpoint = OCI::Regions.get_service_endpoint(@region, :VirtualNetworkClient) + '/20160918'
52
+ logger.info "VirtualNetworkClient endpoint set to '#{endpoint}'." if logger
53
+ end
54
+
55
+ # @return [Logger] The logger for this client. May be nil.
56
+ def logger
57
+ @api_client.config.logger
58
+ end
59
+
60
+
61
+ # Creates a new virtual Customer-Premises Equipment (CPE) object in the specified compartment. For
62
+ # more information, see [IPSec VPNs](https://docs.us-phoenix-1.oraclecloud.com/Content/Network/Tasks/managingIPsec.htm).
63
+ #
64
+ # For the purposes of access control, you must provide the OCID of the compartment where you want
65
+ # the CPE to reside. Notice that the CPE doesn't have to be in the same compartment as the IPSec
66
+ # connection or other Networking Service components. If you're not sure which compartment to
67
+ # use, put the CPE in the same compartment as the DRG. For more information about
68
+ # compartments and access control, see [Overview of the IAM Service](https://docs.us-phoenix-1.oraclecloud.com/Content/Identity/Concepts/overview.htm).
69
+ # For information about OCIDs, see [Resource Identifiers](https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/identifiers.htm).
70
+ #
71
+ # You must provide the public IP address of your on-premises router. See
72
+ # [Configuring Your On-Premises Router for an IPSec VPN](https://docs.us-phoenix-1.oraclecloud.com/Content/Network/Tasks/configuringCPE.htm).
73
+ #
74
+ # You may optionally specify a *display name* for the CPE, otherwise a default is provided. It does not have to
75
+ # be unique, and you can change it. Avoid entering confidential information.
76
+ #
77
+ # @param [CreateCpeDetails] create_cpe_details Details for creating a CPE.
78
+ # @param [Hash] opts the optional parameters
79
+ # @option opts [String] :opc_retry_token A token that uniquely identifies a request so it can be retried in case of a timeout or
80
+ # server error without risk of executing that same action again. Retry tokens expire after 24
81
+ # hours, but can be invalidated before then due to conflicting operations (for example, if a resource
82
+ # has been deleted and purged from the system, then a retry of the original creation request
83
+ # may be rejected).
84
+ #
85
+ # @return [Response] A Response object with data of type OCI::Core::Models::Cpe
86
+ def create_cpe(create_cpe_details, opts = {})
87
+ logger.debug "Calling operation VirtualNetworkClient#create_cpe." if logger
88
+
89
+ fail "Missing the required parameter 'create_cpe_details' when calling create_cpe." if create_cpe_details.nil?
90
+
91
+ path = "/cpes"
92
+
93
+ # Query Params
94
+ query_params = {}
95
+
96
+ # Header Params
97
+ header_params = {}
98
+ header_params['accept'] = 'application/json'
99
+ header_params['content-type'] = 'application/json'
100
+ header_params[:'opc-retry-token'] = opts[:'opc_retry_token'] if opts[:'opc_retry_token']
101
+
102
+ post_body = @api_client.object_to_http_body(create_cpe_details)
103
+
104
+ return @api_client.call_api(
105
+ :POST,
106
+ path,
107
+ endpoint,
108
+ :header_params => header_params,
109
+ :query_params => query_params,
110
+ :body => post_body,
111
+ :return_type => 'OCI::Core::Models::Cpe')
112
+ end
113
+
114
+ # Creates a new cross-connect. Oracle recommends you create each cross-connect in a
115
+ # {CrossConnectGroup} so you can use link aggregation
116
+ # with the connection.
117
+ #
118
+ # After creating the `CrossConnect` object, you need to go the FastConnect location
119
+ # and request to have the physical cable installed. For more information, see
120
+ # [FastConnect Overview](https://docs.us-phoenix-1.oraclecloud.com/Content/Network/Concepts/fastconnect.htm).
121
+ #
122
+ # For the purposes of access control, you must provide the OCID of the
123
+ # compartment where you want the cross-connect to reside. If you're
124
+ # not sure which compartment to use, put the cross-connect in the
125
+ # same compartment with your VCN. For more information about
126
+ # compartments and access control, see
127
+ # [Overview of the IAM Service](https://docs.us-phoenix-1.oraclecloud.com/Content/Identity/Concepts/overview.htm).
128
+ # For information about OCIDs, see
129
+ # [Resource Identifiers](https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/identifiers.htm).
130
+ #
131
+ # You may optionally specify a *display name* for the cross-connect.
132
+ # It does not have to be unique, and you can change it. Avoid entering confidential information.
133
+ #
134
+ # @param [CreateCrossConnectDetails] create_cross_connect_details Details to create a CrossConnect
135
+ # @param [Hash] opts the optional parameters
136
+ # @option opts [String] :opc_retry_token A token that uniquely identifies a request so it can be retried in case of a timeout or
137
+ # server error without risk of executing that same action again. Retry tokens expire after 24
138
+ # hours, but can be invalidated before then due to conflicting operations (for example, if a resource
139
+ # has been deleted and purged from the system, then a retry of the original creation request
140
+ # may be rejected).
141
+ #
142
+ # @return [Response] A Response object with data of type OCI::Core::Models::CrossConnect
143
+ def create_cross_connect(create_cross_connect_details, opts = {})
144
+ logger.debug "Calling operation VirtualNetworkClient#create_cross_connect." if logger
145
+
146
+ fail "Missing the required parameter 'create_cross_connect_details' when calling create_cross_connect." if create_cross_connect_details.nil?
147
+
148
+ path = "/crossConnects"
149
+
150
+ # Query Params
151
+ query_params = {}
152
+
153
+ # Header Params
154
+ header_params = {}
155
+ header_params['accept'] = 'application/json'
156
+ header_params['content-type'] = 'application/json'
157
+ header_params[:'opc-retry-token'] = opts[:'opc_retry_token'] if opts[:'opc_retry_token']
158
+
159
+ post_body = @api_client.object_to_http_body(create_cross_connect_details)
160
+
161
+ return @api_client.call_api(
162
+ :POST,
163
+ path,
164
+ endpoint,
165
+ :header_params => header_params,
166
+ :query_params => query_params,
167
+ :body => post_body,
168
+ :return_type => 'OCI::Core::Models::CrossConnect')
169
+ end
170
+
171
+ # Creates a new cross-connect group to use with Oracle Bare Metal Cloud Services
172
+ # FastConnect. For more information, see
173
+ # [FastConnect Overview](https://docs.us-phoenix-1.oraclecloud.com/Content/Network/Concepts/fastconnect.htm).
174
+ #
175
+ # For the purposes of access control, you must provide the OCID of the
176
+ # compartment where you want the cross-connect group to reside. If you're
177
+ # not sure which compartment to use, put the cross-connect group in the
178
+ # same compartment with your VCN. For more information about
179
+ # compartments and access control, see
180
+ # [Overview of the IAM Service](https://docs.us-phoenix-1.oraclecloud.com/Content/Identity/Concepts/overview.htm).
181
+ # For information about OCIDs, see
182
+ # [Resource Identifiers](https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/identifiers.htm).
183
+ #
184
+ # You may optionally specify a *display name* for the cross-connect group.
185
+ # It does not have to be unique, and you can change it. Avoid entering confidential information.
186
+ #
187
+ # @param [CreateCrossConnectGroupDetails] create_cross_connect_group_details Details to create a CrossConnectGroup
188
+ # @param [Hash] opts the optional parameters
189
+ # @option opts [String] :opc_retry_token A token that uniquely identifies a request so it can be retried in case of a timeout or
190
+ # server error without risk of executing that same action again. Retry tokens expire after 24
191
+ # hours, but can be invalidated before then due to conflicting operations (for example, if a resource
192
+ # has been deleted and purged from the system, then a retry of the original creation request
193
+ # may be rejected).
194
+ #
195
+ # @return [Response] A Response object with data of type OCI::Core::Models::CrossConnectGroup
196
+ def create_cross_connect_group(create_cross_connect_group_details, opts = {})
197
+ logger.debug "Calling operation VirtualNetworkClient#create_cross_connect_group." if logger
198
+
199
+ fail "Missing the required parameter 'create_cross_connect_group_details' when calling create_cross_connect_group." if create_cross_connect_group_details.nil?
200
+
201
+ path = "/crossConnectGroups"
202
+
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[:'opc-retry-token'] = opts[:'opc_retry_token'] if opts[:'opc_retry_token']
211
+
212
+ post_body = @api_client.object_to_http_body(create_cross_connect_group_details)
213
+
214
+ return @api_client.call_api(
215
+ :POST,
216
+ path,
217
+ endpoint,
218
+ :header_params => header_params,
219
+ :query_params => query_params,
220
+ :body => post_body,
221
+ :return_type => 'OCI::Core::Models::CrossConnectGroup')
222
+ end
223
+
224
+ # Creates a new set of DHCP options for the specified VCN. For more information, see
225
+ # {DhcpOptions}.
226
+ #
227
+ # For the purposes of access control, you must provide the OCID of the compartment where you want the set of
228
+ # DHCP options to reside. Notice that the set of options doesn't have to be in the same compartment as the VCN,
229
+ # subnets, or other Networking Service components. If you're not sure which compartment to use, put the set
230
+ # of DHCP options in the same compartment as the VCN. For more information about compartments and access control, see
231
+ # [Overview of the IAM Service](https://docs.us-phoenix-1.oraclecloud.com/Content/Identity/Concepts/overview.htm). For information about OCIDs, see
232
+ # [Resource Identifiers](https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/identifiers.htm).
233
+ #
234
+ # You may optionally specify a *display name* for the set of DHCP options, otherwise a default is provided.
235
+ # It does not have to be unique, and you can change it. Avoid entering confidential information.
236
+ #
237
+ # @param [CreateDhcpDetails] create_dhcp_details Request object for creating a new set of DHCP options.
238
+ # @param [Hash] opts the optional parameters
239
+ # @option opts [String] :opc_retry_token A token that uniquely identifies a request so it can be retried in case of a timeout or
240
+ # server error without risk of executing that same action again. Retry tokens expire after 24
241
+ # hours, but can be invalidated before then due to conflicting operations (for example, if a resource
242
+ # has been deleted and purged from the system, then a retry of the original creation request
243
+ # may be rejected).
244
+ #
245
+ # @return [Response] A Response object with data of type OCI::Core::Models::DhcpOptions
246
+ def create_dhcp_options(create_dhcp_details, opts = {})
247
+ logger.debug "Calling operation VirtualNetworkClient#create_dhcp_options." if logger
248
+
249
+ fail "Missing the required parameter 'create_dhcp_details' when calling create_dhcp_options." if create_dhcp_details.nil?
250
+
251
+ path = "/dhcps"
252
+
253
+ # Query Params
254
+ query_params = {}
255
+
256
+ # Header Params
257
+ header_params = {}
258
+ header_params['accept'] = 'application/json'
259
+ header_params['content-type'] = 'application/json'
260
+ header_params[:'opc-retry-token'] = opts[:'opc_retry_token'] if opts[:'opc_retry_token']
261
+
262
+ post_body = @api_client.object_to_http_body(create_dhcp_details)
263
+
264
+ return @api_client.call_api(
265
+ :POST,
266
+ path,
267
+ endpoint,
268
+ :header_params => header_params,
269
+ :query_params => query_params,
270
+ :body => post_body,
271
+ :return_type => 'OCI::Core::Models::DhcpOptions')
272
+ end
273
+
274
+ # Creates a new Dynamic Routing Gateway (DRG) in the specified compartment. For more information,
275
+ # see [Dynamic Routing Gateways (DRGs)](https://docs.us-phoenix-1.oraclecloud.com/Content/Network/Tasks/managingDRGs.htm).
276
+ #
277
+ # For the purposes of access control, you must provide the OCID of the compartment where you want
278
+ # the DRG to reside. Notice that the DRG doesn't have to be in the same compartment as the VCN,
279
+ # the DRG attachment, or other Networking Service components. If you're not sure which compartment
280
+ # to use, put the DRG in the same compartment as the VCN. For more information about compartments
281
+ # and access control, see [Overview of the IAM Service](https://docs.us-phoenix-1.oraclecloud.com/Content/Identity/Concepts/overview.htm).
282
+ # For information about OCIDs, see [Resource Identifiers](https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/identifiers.htm).
283
+ #
284
+ # You may optionally specify a *display name* for the DRG, otherwise a default is provided.
285
+ # It does not have to be unique, and you can change it. Avoid entering confidential information.
286
+ #
287
+ # @param [CreateDrgDetails] create_drg_details Details for creating a DRG.
288
+ # @param [Hash] opts the optional parameters
289
+ # @option opts [String] :opc_retry_token A token that uniquely identifies a request so it can be retried in case of a timeout or
290
+ # server error without risk of executing that same action again. Retry tokens expire after 24
291
+ # hours, but can be invalidated before then due to conflicting operations (for example, if a resource
292
+ # has been deleted and purged from the system, then a retry of the original creation request
293
+ # may be rejected).
294
+ #
295
+ # @return [Response] A Response object with data of type OCI::Core::Models::Drg
296
+ def create_drg(create_drg_details, opts = {})
297
+ logger.debug "Calling operation VirtualNetworkClient#create_drg." if logger
298
+
299
+ fail "Missing the required parameter 'create_drg_details' when calling create_drg." if create_drg_details.nil?
300
+
301
+ path = "/drgs"
302
+
303
+ # Query Params
304
+ query_params = {}
305
+
306
+ # Header Params
307
+ header_params = {}
308
+ header_params['accept'] = 'application/json'
309
+ header_params['content-type'] = 'application/json'
310
+ header_params[:'opc-retry-token'] = opts[:'opc_retry_token'] if opts[:'opc_retry_token']
311
+
312
+ post_body = @api_client.object_to_http_body(create_drg_details)
313
+
314
+ return @api_client.call_api(
315
+ :POST,
316
+ path,
317
+ endpoint,
318
+ :header_params => header_params,
319
+ :query_params => query_params,
320
+ :body => post_body,
321
+ :return_type => 'OCI::Core::Models::Drg')
322
+ end
323
+
324
+ # Attaches the specified DRG to the specified VCN. A VCN can be attached to only one DRG at a time,
325
+ # and vice versa. The response includes a `DrgAttachment` object with its own OCID. For more
326
+ # information about DRGs, see
327
+ # [Dynamic Routing Gateways (DRGs)](https://docs.us-phoenix-1.oraclecloud.com/Content/Network/Tasks/managingDRGs.htm).
328
+ #
329
+ # You may optionally specify a *display name* for the attachment, otherwise a default is provided.
330
+ # It does not have to be unique, and you can change it. Avoid entering confidential information.
331
+ #
332
+ # For the purposes of access control, the DRG attachment is automatically placed into the same compartment
333
+ # as the VCN. For more information about compartments and access control, see
334
+ # [Overview of the IAM Service](https://docs.us-phoenix-1.oraclecloud.com/Content/Identity/Concepts/overview.htm).
335
+ #
336
+ # @param [CreateDrgAttachmentDetails] create_drg_attachment_details Details for creating a `DrgAttachment`.
337
+ # @param [Hash] opts the optional parameters
338
+ # @option opts [String] :opc_retry_token A token that uniquely identifies a request so it can be retried in case of a timeout or
339
+ # server error without risk of executing that same action again. Retry tokens expire after 24
340
+ # hours, but can be invalidated before then due to conflicting operations (for example, if a resource
341
+ # has been deleted and purged from the system, then a retry of the original creation request
342
+ # may be rejected).
343
+ #
344
+ # @return [Response] A Response object with data of type OCI::Core::Models::DrgAttachment
345
+ def create_drg_attachment(create_drg_attachment_details, opts = {})
346
+ logger.debug "Calling operation VirtualNetworkClient#create_drg_attachment." if logger
347
+
348
+ fail "Missing the required parameter 'create_drg_attachment_details' when calling create_drg_attachment." if create_drg_attachment_details.nil?
349
+
350
+ path = "/drgAttachments"
351
+
352
+ # Query Params
353
+ query_params = {}
354
+
355
+ # Header Params
356
+ header_params = {}
357
+ header_params['accept'] = 'application/json'
358
+ header_params['content-type'] = 'application/json'
359
+ header_params[:'opc-retry-token'] = opts[:'opc_retry_token'] if opts[:'opc_retry_token']
360
+
361
+ post_body = @api_client.object_to_http_body(create_drg_attachment_details)
362
+
363
+ return @api_client.call_api(
364
+ :POST,
365
+ path,
366
+ endpoint,
367
+ :header_params => header_params,
368
+ :query_params => query_params,
369
+ :body => post_body,
370
+ :return_type => 'OCI::Core::Models::DrgAttachment')
371
+ end
372
+
373
+ # Creates a new Internet Gateway for the specified VCN. For more information, see
374
+ # [Connectivity to the Internet](https://docs.us-phoenix-1.oraclecloud.com/Content/Network/Tasks/managingIGs.htm).
375
+ #
376
+ # For the purposes of access control, you must provide the OCID of the compartment where you want the Internet
377
+ # Gateway to reside. Notice that the Internet Gateway doesn't have to be in the same compartment as the VCN or
378
+ # other Networking Service components. If you're not sure which compartment to use, put the Internet
379
+ # Gateway in the same compartment with the VCN. For more information about compartments and access control, see
380
+ # [Overview of the IAM Service](https://docs.us-phoenix-1.oraclecloud.com/Content/Identity/Concepts/overview.htm). For information about OCIDs, see
381
+ # [Resource Identifiers](https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/identifiers.htm).
382
+ #
383
+ # You may optionally specify a *display name* for the Internet Gateway, otherwise a default is provided. It
384
+ # does not have to be unique, and you can change it. Avoid entering confidential information.
385
+ #
386
+ # For traffic to flow between a subnet and an Internet Gateway, you must create a route rule accordingly in
387
+ # the subnet's route table (for example, 0.0.0.0/0 > Internet Gateway). See
388
+ # {#update_route_table update_route_table}.
389
+ #
390
+ # You must specify whether the Internet Gateway is enabled when you create it. If it's disabled, that means no
391
+ # traffic will flow to/from the internet even if there's a route rule that enables that traffic. You can later
392
+ # use {#update_internet_gateway update_internet_gateway} to easily disable/enable
393
+ # the gateway without changing the route rule.
394
+ #
395
+ # @param [CreateInternetGatewayDetails] create_internet_gateway_details Details for creating a new Internet Gateway.
396
+ # @param [Hash] opts the optional parameters
397
+ # @option opts [String] :opc_retry_token A token that uniquely identifies a request so it can be retried in case of a timeout or
398
+ # server error without risk of executing that same action again. Retry tokens expire after 24
399
+ # hours, but can be invalidated before then due to conflicting operations (for example, if a resource
400
+ # has been deleted and purged from the system, then a retry of the original creation request
401
+ # may be rejected).
402
+ #
403
+ # @return [Response] A Response object with data of type OCI::Core::Models::InternetGateway
404
+ def create_internet_gateway(create_internet_gateway_details, opts = {})
405
+ logger.debug "Calling operation VirtualNetworkClient#create_internet_gateway." if logger
406
+
407
+ fail "Missing the required parameter 'create_internet_gateway_details' when calling create_internet_gateway." if create_internet_gateway_details.nil?
408
+
409
+ path = "/internetGateways"
410
+
411
+ # Query Params
412
+ query_params = {}
413
+
414
+ # Header Params
415
+ header_params = {}
416
+ header_params['accept'] = 'application/json'
417
+ header_params['content-type'] = 'application/json'
418
+ header_params[:'opc-retry-token'] = opts[:'opc_retry_token'] if opts[:'opc_retry_token']
419
+
420
+ post_body = @api_client.object_to_http_body(create_internet_gateway_details)
421
+
422
+ return @api_client.call_api(
423
+ :POST,
424
+ path,
425
+ endpoint,
426
+ :header_params => header_params,
427
+ :query_params => query_params,
428
+ :body => post_body,
429
+ :return_type => 'OCI::Core::Models::InternetGateway')
430
+ end
431
+
432
+ # Creates a new IPSec connection between the specified DRG and CPE. For more information, see
433
+ # [IPSec VPNs](https://docs.us-phoenix-1.oraclecloud.com/Content/Network/Tasks/managingIPsec.htm).
434
+ #
435
+ # In the request, you must include at least one static route to the CPE object (you're allowed a maximum
436
+ # of 10). For example: 10.0.8.0/16.
437
+ #
438
+ # For the purposes of access control, you must provide the OCID of the compartment where you want the
439
+ # IPSec connection to reside. Notice that the IPSec connection doesn't have to be in the same compartment
440
+ # as the DRG, CPE, or other Networking Service components. If you're not sure which compartment to
441
+ # use, put the IPSec connection in the same compartment as the DRG. For more information about
442
+ # compartments and access control, see
443
+ # [Overview of the IAM Service](https://docs.us-phoenix-1.oraclecloud.com/Content/Identity/Concepts/overview.htm).
444
+ # For information about OCIDs, see [Resource Identifiers](https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/identifiers.htm).
445
+ #
446
+ # You may optionally specify a *display name* for the IPSec connection, otherwise a default is provided.
447
+ # It does not have to be unique, and you can change it. Avoid entering confidential information.
448
+ #
449
+ # After creating the IPSec connection, you need to configure your on-premises router
450
+ # with tunnel-specific information returned by
451
+ # {#get_ip_sec_connection_device_config get_ip_sec_connection_device_config}.
452
+ # For each tunnel, that operation gives you the IP address of Oracle's VPN headend and the shared secret
453
+ # (that is, the pre-shared key). For more information, see
454
+ # [Configuring Your On-Premises Router for an IPSec VPN](https://docs.us-phoenix-1.oraclecloud.com/Content/Network/Tasks/configuringCPE.htm).
455
+ #
456
+ # To get the status of the tunnels (whether they're up or down), use
457
+ # {#get_ip_sec_connection_device_status get_ip_sec_connection_device_status}.
458
+ #
459
+ # @param [CreateIPSecConnectionDetails] create_ip_sec_connection_details Details for creating an `IPSecConnection`.
460
+ # @param [Hash] opts the optional parameters
461
+ # @option opts [String] :opc_retry_token A token that uniquely identifies a request so it can be retried in case of a timeout or
462
+ # server error without risk of executing that same action again. Retry tokens expire after 24
463
+ # hours, but can be invalidated before then due to conflicting operations (for example, if a resource
464
+ # has been deleted and purged from the system, then a retry of the original creation request
465
+ # may be rejected).
466
+ #
467
+ # @return [Response] A Response object with data of type OCI::Core::Models::IPSecConnection
468
+ def create_ip_sec_connection(create_ip_sec_connection_details, opts = {})
469
+ logger.debug "Calling operation VirtualNetworkClient#create_ip_sec_connection." if logger
470
+
471
+ fail "Missing the required parameter 'create_ip_sec_connection_details' when calling create_ip_sec_connection." if create_ip_sec_connection_details.nil?
472
+
473
+ path = "/ipsecConnections"
474
+
475
+ # Query Params
476
+ query_params = {}
477
+
478
+ # Header Params
479
+ header_params = {}
480
+ header_params['accept'] = 'application/json'
481
+ header_params['content-type'] = 'application/json'
482
+ header_params[:'opc-retry-token'] = opts[:'opc_retry_token'] if opts[:'opc_retry_token']
483
+
484
+ post_body = @api_client.object_to_http_body(create_ip_sec_connection_details)
485
+
486
+ return @api_client.call_api(
487
+ :POST,
488
+ path,
489
+ endpoint,
490
+ :header_params => header_params,
491
+ :query_params => query_params,
492
+ :body => post_body,
493
+ :return_type => 'OCI::Core::Models::IPSecConnection')
494
+ end
495
+
496
+ # Creates a secondary private IP for the specified VNIC.
497
+ # For more information about secondary private IPs, see
498
+ # [IP Addresses](https://docs.us-phoenix-1.oraclecloud.com/Content/Network/Tasks/managingIPaddresses.htm).
499
+ #
500
+ # @param [CreatePrivateIpDetails] create_private_ip_details Create private IP details.
501
+ # @param [Hash] opts the optional parameters
502
+ # @option opts [String] :opc_retry_token A token that uniquely identifies a request so it can be retried in case of a timeout or
503
+ # server error without risk of executing that same action again. Retry tokens expire after 24
504
+ # hours, but can be invalidated before then due to conflicting operations (for example, if a resource
505
+ # has been deleted and purged from the system, then a retry of the original creation request
506
+ # may be rejected).
507
+ #
508
+ # @return [Response] A Response object with data of type OCI::Core::Models::PrivateIp
509
+ def create_private_ip(create_private_ip_details, opts = {})
510
+ logger.debug "Calling operation VirtualNetworkClient#create_private_ip." if logger
511
+
512
+ fail "Missing the required parameter 'create_private_ip_details' when calling create_private_ip." if create_private_ip_details.nil?
513
+
514
+ path = "/privateIps"
515
+
516
+ # Query Params
517
+ query_params = {}
518
+
519
+ # Header Params
520
+ header_params = {}
521
+ header_params['accept'] = 'application/json'
522
+ header_params['content-type'] = 'application/json'
523
+ header_params[:'opc-retry-token'] = opts[:'opc_retry_token'] if opts[:'opc_retry_token']
524
+
525
+ post_body = @api_client.object_to_http_body(create_private_ip_details)
526
+
527
+ return @api_client.call_api(
528
+ :POST,
529
+ path,
530
+ endpoint,
531
+ :header_params => header_params,
532
+ :query_params => query_params,
533
+ :body => post_body,
534
+ :return_type => 'OCI::Core::Models::PrivateIp')
535
+ end
536
+
537
+ # Creates a new route table for the specified VCN. In the request you must also include at least one route
538
+ # rule for the new route table. For information on the number of rules you can have in a route table, see
539
+ # [Service Limits](https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/servicelimits.htm). For general information about route
540
+ # tables in your VCN, see [Route Tables](https://docs.us-phoenix-1.oraclecloud.com/Content/Network/Tasks/managingroutetables.htm).
541
+ #
542
+ # For the purposes of access control, you must provide the OCID of the compartment where you want the route
543
+ # table to reside. Notice that the route table doesn't have to be in the same compartment as the VCN, subnets,
544
+ # or other Networking Service components. If you're not sure which compartment to use, put the route
545
+ # table in the same compartment as the VCN. For more information about compartments and access control, see
546
+ # [Overview of the IAM Service](https://docs.us-phoenix-1.oraclecloud.com/Content/Identity/Concepts/overview.htm). For information about OCIDs, see
547
+ # [Resource Identifiers](https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/identifiers.htm).
548
+ #
549
+ # You may optionally specify a *display name* for the route table, otherwise a default is provided.
550
+ # It does not have to be unique, and you can change it. Avoid entering confidential information.
551
+ #
552
+ # @param [CreateRouteTableDetails] create_route_table_details Details for creating a new route table.
553
+ # @param [Hash] opts the optional parameters
554
+ # @option opts [String] :opc_retry_token A token that uniquely identifies a request so it can be retried in case of a timeout or
555
+ # server error without risk of executing that same action again. Retry tokens expire after 24
556
+ # hours, but can be invalidated before then due to conflicting operations (for example, if a resource
557
+ # has been deleted and purged from the system, then a retry of the original creation request
558
+ # may be rejected).
559
+ #
560
+ # @return [Response] A Response object with data of type OCI::Core::Models::RouteTable
561
+ def create_route_table(create_route_table_details, opts = {})
562
+ logger.debug "Calling operation VirtualNetworkClient#create_route_table." if logger
563
+
564
+ fail "Missing the required parameter 'create_route_table_details' when calling create_route_table." if create_route_table_details.nil?
565
+
566
+ path = "/routeTables"
567
+
568
+ # Query Params
569
+ query_params = {}
570
+
571
+ # Header Params
572
+ header_params = {}
573
+ header_params['accept'] = 'application/json'
574
+ header_params['content-type'] = 'application/json'
575
+ header_params[:'opc-retry-token'] = opts[:'opc_retry_token'] if opts[:'opc_retry_token']
576
+
577
+ post_body = @api_client.object_to_http_body(create_route_table_details)
578
+
579
+ return @api_client.call_api(
580
+ :POST,
581
+ path,
582
+ endpoint,
583
+ :header_params => header_params,
584
+ :query_params => query_params,
585
+ :body => post_body,
586
+ :return_type => 'OCI::Core::Models::RouteTable')
587
+ end
588
+
589
+ # Creates a new security list for the specified VCN. For more information
590
+ # about security lists, see [Security Lists](https://docs.us-phoenix-1.oraclecloud.com/Content/Network/Concepts/securitylists.htm).
591
+ # For information on the number of rules you can have in a security list, see
592
+ # [Service Limits](https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/servicelimits.htm).
593
+ #
594
+ # For the purposes of access control, you must provide the OCID of the compartment where you want the security
595
+ # list to reside. Notice that the security list doesn't have to be in the same compartment as the VCN, subnets,
596
+ # or other Networking Service components. If you're not sure which compartment to use, put the security
597
+ # list in the same compartment as the VCN. For more information about compartments and access control, see
598
+ # [Overview of the IAM Service](https://docs.us-phoenix-1.oraclecloud.com/Content/Identity/Concepts/overview.htm). For information about OCIDs, see
599
+ # [Resource Identifiers](https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/identifiers.htm).
600
+ #
601
+ # You may optionally specify a *display name* for the security list, otherwise a default is provided.
602
+ # It does not have to be unique, and you can change it. Avoid entering confidential information.
603
+ #
604
+ # @param [CreateSecurityListDetails] create_security_list_details Details regarding the security list to create.
605
+ # @param [Hash] opts the optional parameters
606
+ # @option opts [String] :opc_retry_token A token that uniquely identifies a request so it can be retried in case of a timeout or
607
+ # server error without risk of executing that same action again. Retry tokens expire after 24
608
+ # hours, but can be invalidated before then due to conflicting operations (for example, if a resource
609
+ # has been deleted and purged from the system, then a retry of the original creation request
610
+ # may be rejected).
611
+ #
612
+ # @return [Response] A Response object with data of type OCI::Core::Models::SecurityList
613
+ def create_security_list(create_security_list_details, opts = {})
614
+ logger.debug "Calling operation VirtualNetworkClient#create_security_list." if logger
615
+
616
+ fail "Missing the required parameter 'create_security_list_details' when calling create_security_list." if create_security_list_details.nil?
617
+
618
+ path = "/securityLists"
619
+
620
+ # Query Params
621
+ query_params = {}
622
+
623
+ # Header Params
624
+ header_params = {}
625
+ header_params['accept'] = 'application/json'
626
+ header_params['content-type'] = 'application/json'
627
+ header_params[:'opc-retry-token'] = opts[:'opc_retry_token'] if opts[:'opc_retry_token']
628
+
629
+ post_body = @api_client.object_to_http_body(create_security_list_details)
630
+
631
+ return @api_client.call_api(
632
+ :POST,
633
+ path,
634
+ endpoint,
635
+ :header_params => header_params,
636
+ :query_params => query_params,
637
+ :body => post_body,
638
+ :return_type => 'OCI::Core::Models::SecurityList')
639
+ end
640
+
641
+ # Creates a new subnet in the specified VCN. You can't change the size of the subnet after creation,
642
+ # so it's important to think about the size of subnets you need before creating them.
643
+ # For more information, see [VCNs and Subnets](https://docs.us-phoenix-1.oraclecloud.com/Content/Network/Tasks/managingVCNs.htm).
644
+ # For information on the number of subnets you can have in a VCN, see
645
+ # [Service Limits](https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/servicelimits.htm).
646
+ #
647
+ # For the purposes of access control, you must provide the OCID of the compartment where you want the subnet
648
+ # to reside. Notice that the subnet doesn't have to be in the same compartment as the VCN, route tables, or
649
+ # other Networking Service components. If you're not sure which compartment to use, put the subnet in
650
+ # the same compartment as the VCN. For more information about compartments and access control, see
651
+ # [Overview of the IAM Service](https://docs.us-phoenix-1.oraclecloud.com/Content/Identity/Concepts/overview.htm). For information about OCIDs,
652
+ # see [Resource Identifiers](https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/identifiers.htm).
653
+ #
654
+ # You may optionally associate a route table with the subnet. If you don't, the subnet will use the
655
+ # VCN's default route table. For more information about route tables, see
656
+ # [Route Tables](https://docs.us-phoenix-1.oraclecloud.com/Content/Network/Tasks/managingroutetables.htm).
657
+ #
658
+ # You may optionally associate a security list with the subnet. If you don't, the subnet will use the
659
+ # VCN's default security list. For more information about security lists, see
660
+ # [Security Lists](https://docs.us-phoenix-1.oraclecloud.com/Content/Network/Concepts/securitylists.htm).
661
+ #
662
+ # You may optionally associate a set of DHCP options with the subnet. If you don't, the subnet will use the
663
+ # VCN's default set. For more information about DHCP options, see
664
+ # [DHCP Options](https://docs.us-phoenix-1.oraclecloud.com/Content/Network/Tasks/managingDHCP.htm).
665
+ #
666
+ # You may optionally specify a *display name* for the subnet, otherwise a default is provided.
667
+ # It does not have to be unique, and you can change it. Avoid entering confidential information.
668
+ #
669
+ # You can also add a DNS label for the subnet, which is required if you want the Internet and
670
+ # VCN Resolver to resolve hostnames for instances in the subnet. For more information, see
671
+ # [DNS in Your Virtual Cloud Network](https://docs.us-phoenix-1.oraclecloud.com/Content/Network/Concepts/dns.htm).
672
+ #
673
+ # @param [CreateSubnetDetails] create_subnet_details Details for creating a subnet.
674
+ # @param [Hash] opts the optional parameters
675
+ # @option opts [String] :opc_retry_token A token that uniquely identifies a request so it can be retried in case of a timeout or
676
+ # server error without risk of executing that same action again. Retry tokens expire after 24
677
+ # hours, but can be invalidated before then due to conflicting operations (for example, if a resource
678
+ # has been deleted and purged from the system, then a retry of the original creation request
679
+ # may be rejected).
680
+ #
681
+ # @return [Response] A Response object with data of type OCI::Core::Models::Subnet
682
+ def create_subnet(create_subnet_details, opts = {})
683
+ logger.debug "Calling operation VirtualNetworkClient#create_subnet." if logger
684
+
685
+ fail "Missing the required parameter 'create_subnet_details' when calling create_subnet." if create_subnet_details.nil?
686
+
687
+ path = "/subnets"
688
+
689
+ # Query Params
690
+ query_params = {}
691
+
692
+ # Header Params
693
+ header_params = {}
694
+ header_params['accept'] = 'application/json'
695
+ header_params['content-type'] = 'application/json'
696
+ header_params[:'opc-retry-token'] = opts[:'opc_retry_token'] if opts[:'opc_retry_token']
697
+
698
+ post_body = @api_client.object_to_http_body(create_subnet_details)
699
+
700
+ return @api_client.call_api(
701
+ :POST,
702
+ path,
703
+ endpoint,
704
+ :header_params => header_params,
705
+ :query_params => query_params,
706
+ :body => post_body,
707
+ :return_type => 'OCI::Core::Models::Subnet')
708
+ end
709
+
710
+ # Creates a new Virtual Cloud Network (VCN). For more information, see
711
+ # [VCNs and Subnets](https://docs.us-phoenix-1.oraclecloud.com/Content/Network/Tasks/managingVCNs.htm).
712
+ #
713
+ # For the VCN you must specify a single, contiguous IPv4 CIDR block. Oracle recommends using one of the
714
+ # private IP address ranges specified in [RFC 1918](https://tools.ietf.org/html/rfc1918) (10.0.0.0/8,
715
+ # 172.16/12, and 192.168/16). Example: 172.16.0.0/16. The CIDR block can range from /16 to /30, and it
716
+ # must not overlap with your on-premises network. You can't change the size of the VCN after creation.
717
+ #
718
+ # For the purposes of access control, you must provide the OCID of the compartment where you want the VCN to
719
+ # reside. Consult an Oracle Bare Metal Cloud Services administrator in your organization if you're not sure which
720
+ # compartment to use. Notice that the VCN doesn't have to be in the same compartment as the subnets or other
721
+ # Networking Service components. For more information about compartments and access control, see
722
+ # [Overview of the IAM Service](https://docs.us-phoenix-1.oraclecloud.com/Content/Identity/Concepts/overview.htm). For information about OCIDs, see
723
+ # [Resource Identifiers](https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/identifiers.htm).
724
+ #
725
+ # You may optionally specify a *display name* for the VCN, otherwise a default is provided. It does not have to
726
+ # be unique, and you can change it. Avoid entering confidential information.
727
+ #
728
+ # You can also add a DNS label for the VCN, which is required if you want the instances to use the
729
+ # Interent and VCN Resolver option for DNS in the VCN. For more information, see
730
+ # [DNS in Your Virtual Cloud Network](https://docs.us-phoenix-1.oraclecloud.com/Content/Network/Concepts/dns.htm).
731
+ #
732
+ # The VCN automatically comes with a default route table, default security list, and default set of DHCP options.
733
+ # The OCID for each is returned in the response. You can't delete these default objects, but you can change their
734
+ # contents (that is, change the route rules, security list rules, and so on).
735
+ #
736
+ # The VCN and subnets you create are not accessible until you attach an Internet Gateway or set up an IPSec VPN
737
+ # or FastConnect. For more information, see
738
+ # [Overview of the Networking Service](https://docs.us-phoenix-1.oraclecloud.com/Content/Network/Concepts/overview.htm).
739
+ #
740
+ # @param [CreateVcnDetails] create_vcn_details Details for creating a new VCN.
741
+ # @param [Hash] opts the optional parameters
742
+ # @option opts [String] :opc_retry_token A token that uniquely identifies a request so it can be retried in case of a timeout or
743
+ # server error without risk of executing that same action again. Retry tokens expire after 24
744
+ # hours, but can be invalidated before then due to conflicting operations (for example, if a resource
745
+ # has been deleted and purged from the system, then a retry of the original creation request
746
+ # may be rejected).
747
+ #
748
+ # @return [Response] A Response object with data of type OCI::Core::Models::Vcn
749
+ def create_vcn(create_vcn_details, opts = {})
750
+ logger.debug "Calling operation VirtualNetworkClient#create_vcn." if logger
751
+
752
+ fail "Missing the required parameter 'create_vcn_details' when calling create_vcn." if create_vcn_details.nil?
753
+
754
+ path = "/vcns"
755
+
756
+ # Query Params
757
+ query_params = {}
758
+
759
+ # Header Params
760
+ header_params = {}
761
+ header_params['accept'] = 'application/json'
762
+ header_params['content-type'] = 'application/json'
763
+ header_params[:'opc-retry-token'] = opts[:'opc_retry_token'] if opts[:'opc_retry_token']
764
+
765
+ post_body = @api_client.object_to_http_body(create_vcn_details)
766
+
767
+ return @api_client.call_api(
768
+ :POST,
769
+ path,
770
+ endpoint,
771
+ :header_params => header_params,
772
+ :query_params => query_params,
773
+ :body => post_body,
774
+ :return_type => 'OCI::Core::Models::Vcn')
775
+ end
776
+
777
+ # Creates a new virtual circuit to use with Oracle Bare Metal Cloud
778
+ # Services FastConnect. For more information, see
779
+ # [FastConnect Overview](https://docs.us-phoenix-1.oraclecloud.com/Content/Network/Concepts/fastconnect.htm).
780
+ #
781
+ # For the purposes of access control, you must provide the OCID of the
782
+ # compartment where you want the virtual circuit to reside. If you're
783
+ # not sure which compartment to use, put the virtual circuit in the
784
+ # same compartment with the DRG it's using. For more information about
785
+ # compartments and access control, see
786
+ # [Overview of the IAM Service](https://docs.us-phoenix-1.oraclecloud.com/Content/Identity/Concepts/overview.htm).
787
+ # For information about OCIDs, see
788
+ # [Resource Identifiers](https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/identifiers.htm).
789
+ #
790
+ # You may optionally specify a *display name* for the virtual circuit.
791
+ # It does not have to be unique, and you can change it. Avoid entering confidential information.
792
+ #
793
+ # **Important:** When creating a virtual circuit, you specify a DRG for
794
+ # the traffic to flow through. Make sure you attach the DRG to your
795
+ # VCN and confirm the VCN's routing sends traffic to the DRG. Otherwise
796
+ # traffic will not flow. For more information, see
797
+ # [Route Tables](https://docs.us-phoenix-1.oraclecloud.com/Content/Network/Tasks/managingroutetables.htm).
798
+ #
799
+ # @param [CreateVirtualCircuitDetails] create_virtual_circuit_details Details to create a VirtualCircuit.
800
+ # @param [Hash] opts the optional parameters
801
+ # @option opts [String] :opc_retry_token A token that uniquely identifies a request so it can be retried in case of a timeout or
802
+ # server error without risk of executing that same action again. Retry tokens expire after 24
803
+ # hours, but can be invalidated before then due to conflicting operations (for example, if a resource
804
+ # has been deleted and purged from the system, then a retry of the original creation request
805
+ # may be rejected).
806
+ #
807
+ # @return [Response] A Response object with data of type OCI::Core::Models::VirtualCircuit
808
+ def create_virtual_circuit(create_virtual_circuit_details, opts = {})
809
+ logger.debug "Calling operation VirtualNetworkClient#create_virtual_circuit." if logger
810
+
811
+ fail "Missing the required parameter 'create_virtual_circuit_details' when calling create_virtual_circuit." if create_virtual_circuit_details.nil?
812
+
813
+ path = "/virtualCircuits"
814
+
815
+ # Query Params
816
+ query_params = {}
817
+
818
+ # Header Params
819
+ header_params = {}
820
+ header_params['accept'] = 'application/json'
821
+ header_params['content-type'] = 'application/json'
822
+ header_params[:'opc-retry-token'] = opts[:'opc_retry_token'] if opts[:'opc_retry_token']
823
+
824
+ post_body = @api_client.object_to_http_body(create_virtual_circuit_details)
825
+
826
+ return @api_client.call_api(
827
+ :POST,
828
+ path,
829
+ endpoint,
830
+ :header_params => header_params,
831
+ :query_params => query_params,
832
+ :body => post_body,
833
+ :return_type => 'OCI::Core::Models::VirtualCircuit')
834
+ end
835
+
836
+ # Deletes the specified CPE object. The CPE must not be connected to a DRG. This is an asynchronous
837
+ # operation. The CPE's `lifecycleState` will change to TERMINATING temporarily until the CPE is completely
838
+ # removed.
839
+ #
840
+ # @param [String] cpe_id The OCID of the CPE.
841
+ # @param [Hash] opts the optional parameters
842
+ # @option opts [String] :if_match For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match`
843
+ # parameter to the value of the etag from a previous GET or POST response for that resource. The resource
844
+ # will be updated or deleted only if the etag you provide matches the resource's current etag value.
845
+ #
846
+ # @return [Response] A Response object with data of type nil
847
+ def delete_cpe(cpe_id, opts = {})
848
+ logger.debug "Calling operation VirtualNetworkClient#delete_cpe." if logger
849
+
850
+ fail "Missing the required parameter 'cpe_id' when calling delete_cpe." if cpe_id.nil?
851
+
852
+ path = "/cpes/{cpeId}".sub('{cpeId}', cpe_id.to_s)
853
+
854
+ # Query Params
855
+ query_params = {}
856
+
857
+ # Header Params
858
+ header_params = {}
859
+ header_params['accept'] = 'application/json'
860
+ header_params['content-type'] = 'application/json'
861
+ header_params[:'if-match'] = opts[:'if_match'] if opts[:'if_match']
862
+
863
+ post_body = nil
864
+
865
+ return @api_client.call_api(
866
+ :DELETE,
867
+ path,
868
+ endpoint,
869
+ :header_params => header_params,
870
+ :query_params => query_params,
871
+ :body => post_body)
872
+ end
873
+
874
+ # Deletes the specified cross-connect. It must not be mapped to a
875
+ # {VirtualCircuit}.
876
+ #
877
+ # @param [String] cross_connect_id The OCID of the cross-connect.
878
+ # @param [Hash] opts the optional parameters
879
+ # @option opts [String] :if_match For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match`
880
+ # parameter to the value of the etag from a previous GET or POST response for that resource. The resource
881
+ # will be updated or deleted only if the etag you provide matches the resource's current etag value.
882
+ #
883
+ # @return [Response] A Response object with data of type nil
884
+ def delete_cross_connect(cross_connect_id, opts = {})
885
+ logger.debug "Calling operation VirtualNetworkClient#delete_cross_connect." if logger
886
+
887
+ fail "Missing the required parameter 'cross_connect_id' when calling delete_cross_connect." if cross_connect_id.nil?
888
+
889
+ path = "/crossConnects/{crossConnectId}".sub('{crossConnectId}', cross_connect_id.to_s)
890
+
891
+ # Query Params
892
+ query_params = {}
893
+
894
+ # Header Params
895
+ header_params = {}
896
+ header_params['accept'] = 'application/json'
897
+ header_params['content-type'] = 'application/json'
898
+ header_params[:'if-match'] = opts[:'if_match'] if opts[:'if_match']
899
+
900
+ post_body = nil
901
+
902
+ return @api_client.call_api(
903
+ :DELETE,
904
+ path,
905
+ endpoint,
906
+ :header_params => header_params,
907
+ :query_params => query_params,
908
+ :body => post_body)
909
+ end
910
+
911
+ # Deletes the specified cross-connect group. It must not contain any
912
+ # cross-connects, and it cannot be mapped to a
913
+ # {VirtualCircuit}.
914
+ #
915
+ # @param [String] cross_connect_group_id The OCID of the cross-connect group.
916
+ # @param [Hash] opts the optional parameters
917
+ # @option opts [String] :if_match For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match`
918
+ # parameter to the value of the etag from a previous GET or POST response for that resource. The resource
919
+ # will be updated or deleted only if the etag you provide matches the resource's current etag value.
920
+ #
921
+ # @return [Response] A Response object with data of type nil
922
+ def delete_cross_connect_group(cross_connect_group_id, opts = {})
923
+ logger.debug "Calling operation VirtualNetworkClient#delete_cross_connect_group." if logger
924
+
925
+ fail "Missing the required parameter 'cross_connect_group_id' when calling delete_cross_connect_group." if cross_connect_group_id.nil?
926
+
927
+ path = "/crossConnectGroups/{crossConnectGroupId}".sub('{crossConnectGroupId}', cross_connect_group_id.to_s)
928
+
929
+ # Query Params
930
+ query_params = {}
931
+
932
+ # Header Params
933
+ header_params = {}
934
+ header_params['accept'] = 'application/json'
935
+ header_params['content-type'] = 'application/json'
936
+ header_params[:'if-match'] = opts[:'if_match'] if opts[:'if_match']
937
+
938
+ post_body = nil
939
+
940
+ return @api_client.call_api(
941
+ :DELETE,
942
+ path,
943
+ endpoint,
944
+ :header_params => header_params,
945
+ :query_params => query_params,
946
+ :body => post_body)
947
+ end
948
+
949
+ # Deletes the specified set of DHCP options, but only if it's not associated with a subnet. You can't delete a
950
+ # VCN's default set of DHCP options.
951
+ #
952
+ # This is an asynchronous operation. The state of the set of options will switch to TERMINATING temporarily
953
+ # until the set is completely removed.
954
+ #
955
+ # @param [String] dhcp_id The OCID for the set of DHCP options.
956
+ # @param [Hash] opts the optional parameters
957
+ # @option opts [String] :if_match For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match`
958
+ # parameter to the value of the etag from a previous GET or POST response for that resource. The resource
959
+ # will be updated or deleted only if the etag you provide matches the resource's current etag value.
960
+ #
961
+ # @return [Response] A Response object with data of type nil
962
+ def delete_dhcp_options(dhcp_id, opts = {})
963
+ logger.debug "Calling operation VirtualNetworkClient#delete_dhcp_options." if logger
964
+
965
+ fail "Missing the required parameter 'dhcp_id' when calling delete_dhcp_options." if dhcp_id.nil?
966
+
967
+ path = "/dhcps/{dhcpId}".sub('{dhcpId}', dhcp_id.to_s)
968
+
969
+ # Query Params
970
+ query_params = {}
971
+
972
+ # Header Params
973
+ header_params = {}
974
+ header_params['accept'] = 'application/json'
975
+ header_params['content-type'] = 'application/json'
976
+ header_params[:'if-match'] = opts[:'if_match'] if opts[:'if_match']
977
+
978
+ post_body = nil
979
+
980
+ return @api_client.call_api(
981
+ :DELETE,
982
+ path,
983
+ endpoint,
984
+ :header_params => header_params,
985
+ :query_params => query_params,
986
+ :body => post_body)
987
+ end
988
+
989
+ # Deletes the specified DRG. The DRG must not be attached to a VCN or be connected to your on-premise
990
+ # network. Also, there must not be a route table that lists the DRG as a target. This is an asynchronous
991
+ # operation. The DRG's `lifecycleState` will change to TERMINATING temporarily until the DRG is completely
992
+ # removed.
993
+ #
994
+ # @param [String] drg_id The OCID of the DRG.
995
+ # @param [Hash] opts the optional parameters
996
+ # @option opts [String] :if_match For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match`
997
+ # parameter to the value of the etag from a previous GET or POST response for that resource. The resource
998
+ # will be updated or deleted only if the etag you provide matches the resource's current etag value.
999
+ #
1000
+ # @return [Response] A Response object with data of type nil
1001
+ def delete_drg(drg_id, opts = {})
1002
+ logger.debug "Calling operation VirtualNetworkClient#delete_drg." if logger
1003
+
1004
+ fail "Missing the required parameter 'drg_id' when calling delete_drg." if drg_id.nil?
1005
+
1006
+ path = "/drgs/{drgId}".sub('{drgId}', drg_id.to_s)
1007
+
1008
+ # Query Params
1009
+ query_params = {}
1010
+
1011
+ # Header Params
1012
+ header_params = {}
1013
+ header_params['accept'] = 'application/json'
1014
+ header_params['content-type'] = 'application/json'
1015
+ header_params[:'if-match'] = opts[:'if_match'] if opts[:'if_match']
1016
+
1017
+ post_body = nil
1018
+
1019
+ return @api_client.call_api(
1020
+ :DELETE,
1021
+ path,
1022
+ endpoint,
1023
+ :header_params => header_params,
1024
+ :query_params => query_params,
1025
+ :body => post_body)
1026
+ end
1027
+
1028
+ # Detaches a DRG from a VCN by deleting the corresponding `DrgAttachment`. This is an asynchronous
1029
+ # operation. The attachment's `lifecycleState` will change to DETACHING temporarily until the attachment
1030
+ # is completely removed.
1031
+ #
1032
+ # @param [String] drg_attachment_id The OCID of the DRG attachment.
1033
+ # @param [Hash] opts the optional parameters
1034
+ # @option opts [String] :if_match For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match`
1035
+ # parameter to the value of the etag from a previous GET or POST response for that resource. The resource
1036
+ # will be updated or deleted only if the etag you provide matches the resource's current etag value.
1037
+ #
1038
+ # @return [Response] A Response object with data of type nil
1039
+ def delete_drg_attachment(drg_attachment_id, opts = {})
1040
+ logger.debug "Calling operation VirtualNetworkClient#delete_drg_attachment." if logger
1041
+
1042
+ fail "Missing the required parameter 'drg_attachment_id' when calling delete_drg_attachment." if drg_attachment_id.nil?
1043
+
1044
+ path = "/drgAttachments/{drgAttachmentId}".sub('{drgAttachmentId}', drg_attachment_id.to_s)
1045
+
1046
+ # Query Params
1047
+ query_params = {}
1048
+
1049
+ # Header Params
1050
+ header_params = {}
1051
+ header_params['accept'] = 'application/json'
1052
+ header_params['content-type'] = 'application/json'
1053
+ header_params[:'if-match'] = opts[:'if_match'] if opts[:'if_match']
1054
+
1055
+ post_body = nil
1056
+
1057
+ return @api_client.call_api(
1058
+ :DELETE,
1059
+ path,
1060
+ endpoint,
1061
+ :header_params => header_params,
1062
+ :query_params => query_params,
1063
+ :body => post_body)
1064
+ end
1065
+
1066
+ # Deletes the specified Internet Gateway. The Internet Gateway does not have to be disabled, but
1067
+ # there must not be a route table that lists it as a target.
1068
+ #
1069
+ # This is an asynchronous operation. The gateway's `lifecycleState` will change to TERMINATING temporarily
1070
+ # until the gateway is completely removed.
1071
+ #
1072
+ # @param [String] ig_id The OCID of the Internet Gateway.
1073
+ # @param [Hash] opts the optional parameters
1074
+ # @option opts [String] :if_match For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match`
1075
+ # parameter to the value of the etag from a previous GET or POST response for that resource. The resource
1076
+ # will be updated or deleted only if the etag you provide matches the resource's current etag value.
1077
+ #
1078
+ # @return [Response] A Response object with data of type nil
1079
+ def delete_internet_gateway(ig_id, opts = {})
1080
+ logger.debug "Calling operation VirtualNetworkClient#delete_internet_gateway." if logger
1081
+
1082
+ fail "Missing the required parameter 'ig_id' when calling delete_internet_gateway." if ig_id.nil?
1083
+
1084
+ path = "/internetGateways/{igId}".sub('{igId}', ig_id.to_s)
1085
+
1086
+ # Query Params
1087
+ query_params = {}
1088
+
1089
+ # Header Params
1090
+ header_params = {}
1091
+ header_params['accept'] = 'application/json'
1092
+ header_params['content-type'] = 'application/json'
1093
+ header_params[:'if-match'] = opts[:'if_match'] if opts[:'if_match']
1094
+
1095
+ post_body = nil
1096
+
1097
+ return @api_client.call_api(
1098
+ :DELETE,
1099
+ path,
1100
+ endpoint,
1101
+ :header_params => header_params,
1102
+ :query_params => query_params,
1103
+ :body => post_body)
1104
+ end
1105
+
1106
+ # Deletes the specified IPSec connection. If your goal is to disable the IPSec VPN between your VCN and
1107
+ # on-premises network, it's easiest to simply detach the DRG but keep all the IPSec VPN components intact.
1108
+ # If you were to delete all the components and then later need to create an IPSec VPN again, you would
1109
+ # need to configure your on-premises router again with the new information returned from
1110
+ # {#create_ip_sec_connection create_ip_sec_connection}.
1111
+ #
1112
+ # This is an asynchronous operation. The connection's `lifecycleState` will change to TERMINATING temporarily
1113
+ # until the connection is completely removed.
1114
+ #
1115
+ # @param [String] ipsc_id The OCID of the IPSec connection.
1116
+ # @param [Hash] opts the optional parameters
1117
+ # @option opts [String] :if_match For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match`
1118
+ # parameter to the value of the etag from a previous GET or POST response for that resource. The resource
1119
+ # will be updated or deleted only if the etag you provide matches the resource's current etag value.
1120
+ #
1121
+ # @return [Response] A Response object with data of type nil
1122
+ def delete_ip_sec_connection(ipsc_id, opts = {})
1123
+ logger.debug "Calling operation VirtualNetworkClient#delete_ip_sec_connection." if logger
1124
+
1125
+ fail "Missing the required parameter 'ipsc_id' when calling delete_ip_sec_connection." if ipsc_id.nil?
1126
+
1127
+ path = "/ipsecConnections/{ipscId}".sub('{ipscId}', ipsc_id.to_s)
1128
+
1129
+ # Query Params
1130
+ query_params = {}
1131
+
1132
+ # Header Params
1133
+ header_params = {}
1134
+ header_params['accept'] = 'application/json'
1135
+ header_params['content-type'] = 'application/json'
1136
+ header_params[:'if-match'] = opts[:'if_match'] if opts[:'if_match']
1137
+
1138
+ post_body = nil
1139
+
1140
+ return @api_client.call_api(
1141
+ :DELETE,
1142
+ path,
1143
+ endpoint,
1144
+ :header_params => header_params,
1145
+ :query_params => query_params,
1146
+ :body => post_body)
1147
+ end
1148
+
1149
+ # Unassigns and deletes the specified private IP. You must
1150
+ # specify the object's OCID. The private IP address is returned to
1151
+ # the subnet's pool of available addresses.
1152
+ #
1153
+ # This operation cannot be used with primary private IPs, which are
1154
+ # automatically unassigned and deleted when the VNIC is terminated.
1155
+ #
1156
+ # @param [String] private_ip_id The private IP's OCID.
1157
+ # @param [Hash] opts the optional parameters
1158
+ # @option opts [String] :if_match For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match`
1159
+ # parameter to the value of the etag from a previous GET or POST response for that resource. The resource
1160
+ # will be updated or deleted only if the etag you provide matches the resource's current etag value.
1161
+ #
1162
+ # @return [Response] A Response object with data of type nil
1163
+ def delete_private_ip(private_ip_id, opts = {})
1164
+ logger.debug "Calling operation VirtualNetworkClient#delete_private_ip." if logger
1165
+
1166
+ fail "Missing the required parameter 'private_ip_id' when calling delete_private_ip." if private_ip_id.nil?
1167
+
1168
+ path = "/privateIps/{privateIpId}".sub('{privateIpId}', private_ip_id.to_s)
1169
+
1170
+ # Query Params
1171
+ query_params = {}
1172
+
1173
+ # Header Params
1174
+ header_params = {}
1175
+ header_params['accept'] = 'application/json'
1176
+ header_params['content-type'] = 'application/json'
1177
+ header_params[:'if-match'] = opts[:'if_match'] if opts[:'if_match']
1178
+
1179
+ post_body = nil
1180
+
1181
+ return @api_client.call_api(
1182
+ :DELETE,
1183
+ path,
1184
+ endpoint,
1185
+ :header_params => header_params,
1186
+ :query_params => query_params,
1187
+ :body => post_body)
1188
+ end
1189
+
1190
+ # Deletes the specified route table, but only if it's not associated with a subnet. You can't delete a
1191
+ # VCN's default route table.
1192
+ #
1193
+ # This is an asynchronous operation. The route table's `lifecycleState` will change to TERMINATING temporarily
1194
+ # until the route table is completely removed.
1195
+ #
1196
+ # @param [String] rt_id The OCID of the route table.
1197
+ # @param [Hash] opts the optional parameters
1198
+ # @option opts [String] :if_match For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match`
1199
+ # parameter to the value of the etag from a previous GET or POST response for that resource. The resource
1200
+ # will be updated or deleted only if the etag you provide matches the resource's current etag value.
1201
+ #
1202
+ # @return [Response] A Response object with data of type nil
1203
+ def delete_route_table(rt_id, opts = {})
1204
+ logger.debug "Calling operation VirtualNetworkClient#delete_route_table." if logger
1205
+
1206
+ fail "Missing the required parameter 'rt_id' when calling delete_route_table." if rt_id.nil?
1207
+
1208
+ path = "/routeTables/{rtId}".sub('{rtId}', rt_id.to_s)
1209
+
1210
+ # Query Params
1211
+ query_params = {}
1212
+
1213
+ # Header Params
1214
+ header_params = {}
1215
+ header_params['accept'] = 'application/json'
1216
+ header_params['content-type'] = 'application/json'
1217
+ header_params[:'if-match'] = opts[:'if_match'] if opts[:'if_match']
1218
+
1219
+ post_body = nil
1220
+
1221
+ return @api_client.call_api(
1222
+ :DELETE,
1223
+ path,
1224
+ endpoint,
1225
+ :header_params => header_params,
1226
+ :query_params => query_params,
1227
+ :body => post_body)
1228
+ end
1229
+
1230
+ # Deletes the specified security list, but only if it's not associated with a subnet. You can't delete
1231
+ # a VCN's default security list.
1232
+ #
1233
+ # This is an asynchronous operation. The security list's `lifecycleState` will change to TERMINATING temporarily
1234
+ # until the security list is completely removed.
1235
+ #
1236
+ # @param [String] security_list_id The OCID of the security list.
1237
+ # @param [Hash] opts the optional parameters
1238
+ # @option opts [String] :if_match For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match`
1239
+ # parameter to the value of the etag from a previous GET or POST response for that resource. The resource
1240
+ # will be updated or deleted only if the etag you provide matches the resource's current etag value.
1241
+ #
1242
+ # @return [Response] A Response object with data of type nil
1243
+ def delete_security_list(security_list_id, opts = {})
1244
+ logger.debug "Calling operation VirtualNetworkClient#delete_security_list." if logger
1245
+
1246
+ fail "Missing the required parameter 'security_list_id' when calling delete_security_list." if security_list_id.nil?
1247
+
1248
+ path = "/securityLists/{securityListId}".sub('{securityListId}', security_list_id.to_s)
1249
+
1250
+ # Query Params
1251
+ query_params = {}
1252
+
1253
+ # Header Params
1254
+ header_params = {}
1255
+ header_params['accept'] = 'application/json'
1256
+ header_params['content-type'] = 'application/json'
1257
+ header_params[:'if-match'] = opts[:'if_match'] if opts[:'if_match']
1258
+
1259
+ post_body = nil
1260
+
1261
+ return @api_client.call_api(
1262
+ :DELETE,
1263
+ path,
1264
+ endpoint,
1265
+ :header_params => header_params,
1266
+ :query_params => query_params,
1267
+ :body => post_body)
1268
+ end
1269
+
1270
+ # Deletes the specified subnet, but only if there are no instances in the subnet. This is an asynchronous
1271
+ # operation. The subnet's `lifecycleState` will change to TERMINATING temporarily. If there are any
1272
+ # instances in the subnet, the state will instead change back to AVAILABLE.
1273
+ #
1274
+ # @param [String] subnet_id The OCID of the subnet.
1275
+ # @param [Hash] opts the optional parameters
1276
+ # @option opts [String] :if_match For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match`
1277
+ # parameter to the value of the etag from a previous GET or POST response for that resource. The resource
1278
+ # will be updated or deleted only if the etag you provide matches the resource's current etag value.
1279
+ #
1280
+ # @return [Response] A Response object with data of type nil
1281
+ def delete_subnet(subnet_id, opts = {})
1282
+ logger.debug "Calling operation VirtualNetworkClient#delete_subnet." if logger
1283
+
1284
+ fail "Missing the required parameter 'subnet_id' when calling delete_subnet." if subnet_id.nil?
1285
+
1286
+ path = "/subnets/{subnetId}".sub('{subnetId}', subnet_id.to_s)
1287
+
1288
+ # Query Params
1289
+ query_params = {}
1290
+
1291
+ # Header Params
1292
+ header_params = {}
1293
+ header_params['accept'] = 'application/json'
1294
+ header_params['content-type'] = 'application/json'
1295
+ header_params[:'if-match'] = opts[:'if_match'] if opts[:'if_match']
1296
+
1297
+ post_body = nil
1298
+
1299
+ return @api_client.call_api(
1300
+ :DELETE,
1301
+ path,
1302
+ endpoint,
1303
+ :header_params => header_params,
1304
+ :query_params => query_params,
1305
+ :body => post_body)
1306
+ end
1307
+
1308
+ # Deletes the specified VCN. The VCN must be empty and have no attached gateways. This is an asynchronous
1309
+ # operation. The VCN's `lifecycleState` will change to TERMINATING temporarily until the VCN is completely
1310
+ # removed.
1311
+ #
1312
+ # @param [String] vcn_id The OCID of the VCN.
1313
+ # @param [Hash] opts the optional parameters
1314
+ # @option opts [String] :if_match For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match`
1315
+ # parameter to the value of the etag from a previous GET or POST response for that resource. The resource
1316
+ # will be updated or deleted only if the etag you provide matches the resource's current etag value.
1317
+ #
1318
+ # @return [Response] A Response object with data of type nil
1319
+ def delete_vcn(vcn_id, opts = {})
1320
+ logger.debug "Calling operation VirtualNetworkClient#delete_vcn." if logger
1321
+
1322
+ fail "Missing the required parameter 'vcn_id' when calling delete_vcn." if vcn_id.nil?
1323
+
1324
+ path = "/vcns/{vcnId}".sub('{vcnId}', vcn_id.to_s)
1325
+
1326
+ # Query Params
1327
+ query_params = {}
1328
+
1329
+ # Header Params
1330
+ header_params = {}
1331
+ header_params['accept'] = 'application/json'
1332
+ header_params['content-type'] = 'application/json'
1333
+ header_params[:'if-match'] = opts[:'if_match'] if opts[:'if_match']
1334
+
1335
+ post_body = nil
1336
+
1337
+ return @api_client.call_api(
1338
+ :DELETE,
1339
+ path,
1340
+ endpoint,
1341
+ :header_params => header_params,
1342
+ :query_params => query_params,
1343
+ :body => post_body)
1344
+ end
1345
+
1346
+ # Deletes the specified virtual circuit.
1347
+ #
1348
+ # **Important:** If you're using FastConnect via a provider,
1349
+ # make sure to also terminate the connection with
1350
+ # the provider, or else the provider may continue to bill you.
1351
+ #
1352
+ # @param [String] virtual_circuit_id The OCID of the virtual circuit.
1353
+ # @param [Hash] opts the optional parameters
1354
+ # @option opts [String] :if_match For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match`
1355
+ # parameter to the value of the etag from a previous GET or POST response for that resource. The resource
1356
+ # will be updated or deleted only if the etag you provide matches the resource's current etag value.
1357
+ #
1358
+ # @return [Response] A Response object with data of type nil
1359
+ def delete_virtual_circuit(virtual_circuit_id, opts = {})
1360
+ logger.debug "Calling operation VirtualNetworkClient#delete_virtual_circuit." if logger
1361
+
1362
+ fail "Missing the required parameter 'virtual_circuit_id' when calling delete_virtual_circuit." if virtual_circuit_id.nil?
1363
+
1364
+ path = "/virtualCircuits/{virtualCircuitId}".sub('{virtualCircuitId}', virtual_circuit_id.to_s)
1365
+
1366
+ # Query Params
1367
+ query_params = {}
1368
+
1369
+ # Header Params
1370
+ header_params = {}
1371
+ header_params['accept'] = 'application/json'
1372
+ header_params['content-type'] = 'application/json'
1373
+ header_params[:'if-match'] = opts[:'if_match'] if opts[:'if_match']
1374
+
1375
+ post_body = nil
1376
+
1377
+ return @api_client.call_api(
1378
+ :DELETE,
1379
+ path,
1380
+ endpoint,
1381
+ :header_params => header_params,
1382
+ :query_params => query_params,
1383
+ :body => post_body)
1384
+ end
1385
+
1386
+ # Gets the specified CPE's information.
1387
+ # @param [String] cpe_id The OCID of the CPE.
1388
+ # @param [Hash] opts the optional parameters
1389
+ # @return [Response] A Response object with data of type OCI::Core::Models::Cpe
1390
+ def get_cpe(cpe_id, opts = {})
1391
+ logger.debug "Calling operation VirtualNetworkClient#get_cpe." if logger
1392
+
1393
+ fail "Missing the required parameter 'cpe_id' when calling get_cpe." if cpe_id.nil?
1394
+
1395
+ path = "/cpes/{cpeId}".sub('{cpeId}', cpe_id.to_s)
1396
+
1397
+ # Query Params
1398
+ query_params = {}
1399
+
1400
+ # Header Params
1401
+ header_params = {}
1402
+ header_params['accept'] = 'application/json'
1403
+ header_params['content-type'] = 'application/json'
1404
+
1405
+ post_body = nil
1406
+
1407
+ return @api_client.call_api(
1408
+ :GET,
1409
+ path,
1410
+ endpoint,
1411
+ :header_params => header_params,
1412
+ :query_params => query_params,
1413
+ :body => post_body,
1414
+ :return_type => 'OCI::Core::Models::Cpe')
1415
+ end
1416
+
1417
+ # Gets the specified cross-connect's information.
1418
+ # @param [String] cross_connect_id The OCID of the cross-connect.
1419
+ # @param [Hash] opts the optional parameters
1420
+ # @return [Response] A Response object with data of type OCI::Core::Models::CrossConnect
1421
+ def get_cross_connect(cross_connect_id, opts = {})
1422
+ logger.debug "Calling operation VirtualNetworkClient#get_cross_connect." if logger
1423
+
1424
+ fail "Missing the required parameter 'cross_connect_id' when calling get_cross_connect." if cross_connect_id.nil?
1425
+
1426
+ path = "/crossConnects/{crossConnectId}".sub('{crossConnectId}', cross_connect_id.to_s)
1427
+
1428
+ # Query Params
1429
+ query_params = {}
1430
+
1431
+ # Header Params
1432
+ header_params = {}
1433
+ header_params['accept'] = 'application/json'
1434
+ header_params['content-type'] = 'application/json'
1435
+
1436
+ post_body = nil
1437
+
1438
+ return @api_client.call_api(
1439
+ :GET,
1440
+ path,
1441
+ endpoint,
1442
+ :header_params => header_params,
1443
+ :query_params => query_params,
1444
+ :body => post_body,
1445
+ :return_type => 'OCI::Core::Models::CrossConnect')
1446
+ end
1447
+
1448
+ # Gets the specified cross-connect group's information.
1449
+ # @param [String] cross_connect_group_id The OCID of the cross-connect group.
1450
+ # @param [Hash] opts the optional parameters
1451
+ # @return [Response] A Response object with data of type OCI::Core::Models::CrossConnectGroup
1452
+ def get_cross_connect_group(cross_connect_group_id, opts = {})
1453
+ logger.debug "Calling operation VirtualNetworkClient#get_cross_connect_group." if logger
1454
+
1455
+ fail "Missing the required parameter 'cross_connect_group_id' when calling get_cross_connect_group." if cross_connect_group_id.nil?
1456
+
1457
+ path = "/crossConnectGroups/{crossConnectGroupId}".sub('{crossConnectGroupId}', cross_connect_group_id.to_s)
1458
+
1459
+ # Query Params
1460
+ query_params = {}
1461
+
1462
+ # Header Params
1463
+ header_params = {}
1464
+ header_params['accept'] = 'application/json'
1465
+ header_params['content-type'] = 'application/json'
1466
+
1467
+ post_body = nil
1468
+
1469
+ return @api_client.call_api(
1470
+ :GET,
1471
+ path,
1472
+ endpoint,
1473
+ :header_params => header_params,
1474
+ :query_params => query_params,
1475
+ :body => post_body,
1476
+ :return_type => 'OCI::Core::Models::CrossConnectGroup')
1477
+ end
1478
+
1479
+ # Gets the Letter of Authority for the specified cross-connect.
1480
+ # @param [String] cross_connect_id The OCID of the cross-connect.
1481
+ # @param [Hash] opts the optional parameters
1482
+ # @return [Response] A Response object with data of type OCI::Core::Models::LetterOfAuthority
1483
+ def get_cross_connect_letter_of_authority(cross_connect_id, opts = {})
1484
+ logger.debug "Calling operation VirtualNetworkClient#get_cross_connect_letter_of_authority." if logger
1485
+
1486
+ fail "Missing the required parameter 'cross_connect_id' when calling get_cross_connect_letter_of_authority." if cross_connect_id.nil?
1487
+
1488
+ path = "/crossConnects/{crossConnectId}/letterOfAuthority".sub('{crossConnectId}', cross_connect_id.to_s)
1489
+
1490
+ # Query Params
1491
+ query_params = {}
1492
+
1493
+ # Header Params
1494
+ header_params = {}
1495
+ header_params['accept'] = 'application/json'
1496
+ header_params['content-type'] = 'application/json'
1497
+
1498
+ post_body = nil
1499
+
1500
+ return @api_client.call_api(
1501
+ :GET,
1502
+ path,
1503
+ endpoint,
1504
+ :header_params => header_params,
1505
+ :query_params => query_params,
1506
+ :body => post_body,
1507
+ :return_type => 'OCI::Core::Models::LetterOfAuthority')
1508
+ end
1509
+
1510
+ # Gets the status of the specified cross-connect.
1511
+ #
1512
+ # @param [String] cross_connect_id The OCID of the cross-connect.
1513
+ # @param [Hash] opts the optional parameters
1514
+ # @return [Response] A Response object with data of type OCI::Core::Models::CrossConnectStatus
1515
+ def get_cross_connect_status(cross_connect_id, opts = {})
1516
+ logger.debug "Calling operation VirtualNetworkClient#get_cross_connect_status." if logger
1517
+
1518
+ fail "Missing the required parameter 'cross_connect_id' when calling get_cross_connect_status." if cross_connect_id.nil?
1519
+
1520
+ path = "/crossConnects/{crossConnectId}/status".sub('{crossConnectId}', cross_connect_id.to_s)
1521
+
1522
+ # Query Params
1523
+ query_params = {}
1524
+
1525
+ # Header Params
1526
+ header_params = {}
1527
+ header_params['accept'] = 'application/json'
1528
+ header_params['content-type'] = 'application/json'
1529
+
1530
+ post_body = nil
1531
+
1532
+ return @api_client.call_api(
1533
+ :GET,
1534
+ path,
1535
+ endpoint,
1536
+ :header_params => header_params,
1537
+ :query_params => query_params,
1538
+ :body => post_body,
1539
+ :return_type => 'OCI::Core::Models::CrossConnectStatus')
1540
+ end
1541
+
1542
+ # Gets the specified set of DHCP options.
1543
+ # @param [String] dhcp_id The OCID for the set of DHCP options.
1544
+ # @param [Hash] opts the optional parameters
1545
+ # @return [Response] A Response object with data of type OCI::Core::Models::DhcpOptions
1546
+ def get_dhcp_options(dhcp_id, opts = {})
1547
+ logger.debug "Calling operation VirtualNetworkClient#get_dhcp_options." if logger
1548
+
1549
+ fail "Missing the required parameter 'dhcp_id' when calling get_dhcp_options." if dhcp_id.nil?
1550
+
1551
+ path = "/dhcps/{dhcpId}".sub('{dhcpId}', dhcp_id.to_s)
1552
+
1553
+ # Query Params
1554
+ query_params = {}
1555
+
1556
+ # Header Params
1557
+ header_params = {}
1558
+ header_params['accept'] = 'application/json'
1559
+ header_params['content-type'] = 'application/json'
1560
+
1561
+ post_body = nil
1562
+
1563
+ return @api_client.call_api(
1564
+ :GET,
1565
+ path,
1566
+ endpoint,
1567
+ :header_params => header_params,
1568
+ :query_params => query_params,
1569
+ :body => post_body,
1570
+ :return_type => 'OCI::Core::Models::DhcpOptions')
1571
+ end
1572
+
1573
+ # Gets the specified DRG's information.
1574
+ # @param [String] drg_id The OCID of the DRG.
1575
+ # @param [Hash] opts the optional parameters
1576
+ # @return [Response] A Response object with data of type OCI::Core::Models::Drg
1577
+ def get_drg(drg_id, opts = {})
1578
+ logger.debug "Calling operation VirtualNetworkClient#get_drg." if logger
1579
+
1580
+ fail "Missing the required parameter 'drg_id' when calling get_drg." if drg_id.nil?
1581
+
1582
+ path = "/drgs/{drgId}".sub('{drgId}', drg_id.to_s)
1583
+
1584
+ # Query Params
1585
+ query_params = {}
1586
+
1587
+ # Header Params
1588
+ header_params = {}
1589
+ header_params['accept'] = 'application/json'
1590
+ header_params['content-type'] = 'application/json'
1591
+
1592
+ post_body = nil
1593
+
1594
+ return @api_client.call_api(
1595
+ :GET,
1596
+ path,
1597
+ endpoint,
1598
+ :header_params => header_params,
1599
+ :query_params => query_params,
1600
+ :body => post_body,
1601
+ :return_type => 'OCI::Core::Models::Drg')
1602
+ end
1603
+
1604
+ # Gets the information for the specified `DrgAttachment`.
1605
+ # @param [String] drg_attachment_id The OCID of the DRG attachment.
1606
+ # @param [Hash] opts the optional parameters
1607
+ # @return [Response] A Response object with data of type OCI::Core::Models::DrgAttachment
1608
+ def get_drg_attachment(drg_attachment_id, opts = {})
1609
+ logger.debug "Calling operation VirtualNetworkClient#get_drg_attachment." if logger
1610
+
1611
+ fail "Missing the required parameter 'drg_attachment_id' when calling get_drg_attachment." if drg_attachment_id.nil?
1612
+
1613
+ path = "/drgAttachments/{drgAttachmentId}".sub('{drgAttachmentId}', drg_attachment_id.to_s)
1614
+
1615
+ # Query Params
1616
+ query_params = {}
1617
+
1618
+ # Header Params
1619
+ header_params = {}
1620
+ header_params['accept'] = 'application/json'
1621
+ header_params['content-type'] = 'application/json'
1622
+
1623
+ post_body = nil
1624
+
1625
+ return @api_client.call_api(
1626
+ :GET,
1627
+ path,
1628
+ endpoint,
1629
+ :header_params => header_params,
1630
+ :query_params => query_params,
1631
+ :body => post_body,
1632
+ :return_type => 'OCI::Core::Models::DrgAttachment')
1633
+ end
1634
+
1635
+ # Gets the specified Internet Gateway's information.
1636
+ # @param [String] ig_id The OCID of the Internet Gateway.
1637
+ # @param [Hash] opts the optional parameters
1638
+ # @return [Response] A Response object with data of type OCI::Core::Models::InternetGateway
1639
+ def get_internet_gateway(ig_id, opts = {})
1640
+ logger.debug "Calling operation VirtualNetworkClient#get_internet_gateway." if logger
1641
+
1642
+ fail "Missing the required parameter 'ig_id' when calling get_internet_gateway." if ig_id.nil?
1643
+
1644
+ path = "/internetGateways/{igId}".sub('{igId}', ig_id.to_s)
1645
+
1646
+ # Query Params
1647
+ query_params = {}
1648
+
1649
+ # Header Params
1650
+ header_params = {}
1651
+ header_params['accept'] = 'application/json'
1652
+ header_params['content-type'] = 'application/json'
1653
+
1654
+ post_body = nil
1655
+
1656
+ return @api_client.call_api(
1657
+ :GET,
1658
+ path,
1659
+ endpoint,
1660
+ :header_params => header_params,
1661
+ :query_params => query_params,
1662
+ :body => post_body,
1663
+ :return_type => 'OCI::Core::Models::InternetGateway')
1664
+ end
1665
+
1666
+ # Gets the specified IPSec connection's basic information, including the static routes for the
1667
+ # on-premises router. If you want the status of the connection (whether it's up or down), use
1668
+ # {#get_ip_sec_connection_device_status get_ip_sec_connection_device_status}.
1669
+ #
1670
+ # @param [String] ipsc_id The OCID of the IPSec connection.
1671
+ # @param [Hash] opts the optional parameters
1672
+ # @return [Response] A Response object with data of type OCI::Core::Models::IPSecConnection
1673
+ def get_ip_sec_connection(ipsc_id, opts = {})
1674
+ logger.debug "Calling operation VirtualNetworkClient#get_ip_sec_connection." if logger
1675
+
1676
+ fail "Missing the required parameter 'ipsc_id' when calling get_ip_sec_connection." if ipsc_id.nil?
1677
+
1678
+ path = "/ipsecConnections/{ipscId}".sub('{ipscId}', ipsc_id.to_s)
1679
+
1680
+ # Query Params
1681
+ query_params = {}
1682
+
1683
+ # Header Params
1684
+ header_params = {}
1685
+ header_params['accept'] = 'application/json'
1686
+ header_params['content-type'] = 'application/json'
1687
+
1688
+ post_body = nil
1689
+
1690
+ return @api_client.call_api(
1691
+ :GET,
1692
+ path,
1693
+ endpoint,
1694
+ :header_params => header_params,
1695
+ :query_params => query_params,
1696
+ :body => post_body,
1697
+ :return_type => 'OCI::Core::Models::IPSecConnection')
1698
+ end
1699
+
1700
+ # Gets the configuration information for the specified IPSec connection. For each tunnel, the
1701
+ # response includes the IP address of Oracle's VPN headend and the shared secret.
1702
+ #
1703
+ # @param [String] ipsc_id The OCID of the IPSec connection.
1704
+ # @param [Hash] opts the optional parameters
1705
+ # @return [Response] A Response object with data of type OCI::Core::Models::IPSecConnectionDeviceConfig
1706
+ def get_ip_sec_connection_device_config(ipsc_id, opts = {})
1707
+ logger.debug "Calling operation VirtualNetworkClient#get_ip_sec_connection_device_config." if logger
1708
+
1709
+ fail "Missing the required parameter 'ipsc_id' when calling get_ip_sec_connection_device_config." if ipsc_id.nil?
1710
+
1711
+ path = "/ipsecConnections/{ipscId}/deviceConfig".sub('{ipscId}', ipsc_id.to_s)
1712
+
1713
+ # Query Params
1714
+ query_params = {}
1715
+
1716
+ # Header Params
1717
+ header_params = {}
1718
+ header_params['accept'] = 'application/json'
1719
+ header_params['content-type'] = 'application/json'
1720
+
1721
+ post_body = nil
1722
+
1723
+ return @api_client.call_api(
1724
+ :GET,
1725
+ path,
1726
+ endpoint,
1727
+ :header_params => header_params,
1728
+ :query_params => query_params,
1729
+ :body => post_body,
1730
+ :return_type => 'OCI::Core::Models::IPSecConnectionDeviceConfig')
1731
+ end
1732
+
1733
+ # Gets the status of the specified IPSec connection (whether it's up or down).
1734
+ #
1735
+ # @param [String] ipsc_id The OCID of the IPSec connection.
1736
+ # @param [Hash] opts the optional parameters
1737
+ # @return [Response] A Response object with data of type OCI::Core::Models::IPSecConnectionDeviceStatus
1738
+ def get_ip_sec_connection_device_status(ipsc_id, opts = {})
1739
+ logger.debug "Calling operation VirtualNetworkClient#get_ip_sec_connection_device_status." if logger
1740
+
1741
+ fail "Missing the required parameter 'ipsc_id' when calling get_ip_sec_connection_device_status." if ipsc_id.nil?
1742
+
1743
+ path = "/ipsecConnections/{ipscId}/deviceStatus".sub('{ipscId}', ipsc_id.to_s)
1744
+
1745
+ # Query Params
1746
+ query_params = {}
1747
+
1748
+ # Header Params
1749
+ header_params = {}
1750
+ header_params['accept'] = 'application/json'
1751
+ header_params['content-type'] = 'application/json'
1752
+
1753
+ post_body = nil
1754
+
1755
+ return @api_client.call_api(
1756
+ :GET,
1757
+ path,
1758
+ endpoint,
1759
+ :header_params => header_params,
1760
+ :query_params => query_params,
1761
+ :body => post_body,
1762
+ :return_type => 'OCI::Core::Models::IPSecConnectionDeviceStatus')
1763
+ end
1764
+
1765
+ # Gets the specified private IP. You must specify the object's OCID.
1766
+ # Alternatively, you can get the object by using
1767
+ # {#list_private_ips list_private_ips}
1768
+ # with the private IP address (for example, 10.0.3.3) and subnet OCID.
1769
+ #
1770
+ # @param [String] private_ip_id The private IP's OCID.
1771
+ # @param [Hash] opts the optional parameters
1772
+ # @return [Response] A Response object with data of type OCI::Core::Models::PrivateIp
1773
+ def get_private_ip(private_ip_id, opts = {})
1774
+ logger.debug "Calling operation VirtualNetworkClient#get_private_ip." if logger
1775
+
1776
+ fail "Missing the required parameter 'private_ip_id' when calling get_private_ip." if private_ip_id.nil?
1777
+
1778
+ path = "/privateIps/{privateIpId}".sub('{privateIpId}', private_ip_id.to_s)
1779
+
1780
+ # Query Params
1781
+ query_params = {}
1782
+
1783
+ # Header Params
1784
+ header_params = {}
1785
+ header_params['accept'] = 'application/json'
1786
+ header_params['content-type'] = 'application/json'
1787
+
1788
+ post_body = nil
1789
+
1790
+ return @api_client.call_api(
1791
+ :GET,
1792
+ path,
1793
+ endpoint,
1794
+ :header_params => header_params,
1795
+ :query_params => query_params,
1796
+ :body => post_body,
1797
+ :return_type => 'OCI::Core::Models::PrivateIp')
1798
+ end
1799
+
1800
+ # Gets the specified route table's information.
1801
+ # @param [String] rt_id The OCID of the route table.
1802
+ # @param [Hash] opts the optional parameters
1803
+ # @return [Response] A Response object with data of type OCI::Core::Models::RouteTable
1804
+ def get_route_table(rt_id, opts = {})
1805
+ logger.debug "Calling operation VirtualNetworkClient#get_route_table." if logger
1806
+
1807
+ fail "Missing the required parameter 'rt_id' when calling get_route_table." if rt_id.nil?
1808
+
1809
+ path = "/routeTables/{rtId}".sub('{rtId}', rt_id.to_s)
1810
+
1811
+ # Query Params
1812
+ query_params = {}
1813
+
1814
+ # Header Params
1815
+ header_params = {}
1816
+ header_params['accept'] = 'application/json'
1817
+ header_params['content-type'] = 'application/json'
1818
+
1819
+ post_body = nil
1820
+
1821
+ return @api_client.call_api(
1822
+ :GET,
1823
+ path,
1824
+ endpoint,
1825
+ :header_params => header_params,
1826
+ :query_params => query_params,
1827
+ :body => post_body,
1828
+ :return_type => 'OCI::Core::Models::RouteTable')
1829
+ end
1830
+
1831
+ # Gets the specified security list's information.
1832
+ # @param [String] security_list_id The OCID of the security list.
1833
+ # @param [Hash] opts the optional parameters
1834
+ # @return [Response] A Response object with data of type OCI::Core::Models::SecurityList
1835
+ def get_security_list(security_list_id, opts = {})
1836
+ logger.debug "Calling operation VirtualNetworkClient#get_security_list." if logger
1837
+
1838
+ fail "Missing the required parameter 'security_list_id' when calling get_security_list." if security_list_id.nil?
1839
+
1840
+ path = "/securityLists/{securityListId}".sub('{securityListId}', security_list_id.to_s)
1841
+
1842
+ # Query Params
1843
+ query_params = {}
1844
+
1845
+ # Header Params
1846
+ header_params = {}
1847
+ header_params['accept'] = 'application/json'
1848
+ header_params['content-type'] = 'application/json'
1849
+
1850
+ post_body = nil
1851
+
1852
+ return @api_client.call_api(
1853
+ :GET,
1854
+ path,
1855
+ endpoint,
1856
+ :header_params => header_params,
1857
+ :query_params => query_params,
1858
+ :body => post_body,
1859
+ :return_type => 'OCI::Core::Models::SecurityList')
1860
+ end
1861
+
1862
+ # Gets the specified subnet's information.
1863
+ # @param [String] subnet_id The OCID of the subnet.
1864
+ # @param [Hash] opts the optional parameters
1865
+ # @return [Response] A Response object with data of type OCI::Core::Models::Subnet
1866
+ def get_subnet(subnet_id, opts = {})
1867
+ logger.debug "Calling operation VirtualNetworkClient#get_subnet." if logger
1868
+
1869
+ fail "Missing the required parameter 'subnet_id' when calling get_subnet." if subnet_id.nil?
1870
+
1871
+ path = "/subnets/{subnetId}".sub('{subnetId}', subnet_id.to_s)
1872
+
1873
+ # Query Params
1874
+ query_params = {}
1875
+
1876
+ # Header Params
1877
+ header_params = {}
1878
+ header_params['accept'] = 'application/json'
1879
+ header_params['content-type'] = 'application/json'
1880
+
1881
+ post_body = nil
1882
+
1883
+ return @api_client.call_api(
1884
+ :GET,
1885
+ path,
1886
+ endpoint,
1887
+ :header_params => header_params,
1888
+ :query_params => query_params,
1889
+ :body => post_body,
1890
+ :return_type => 'OCI::Core::Models::Subnet')
1891
+ end
1892
+
1893
+ # Gets the specified VCN's information.
1894
+ # @param [String] vcn_id The OCID of the VCN.
1895
+ # @param [Hash] opts the optional parameters
1896
+ # @return [Response] A Response object with data of type OCI::Core::Models::Vcn
1897
+ def get_vcn(vcn_id, opts = {})
1898
+ logger.debug "Calling operation VirtualNetworkClient#get_vcn." if logger
1899
+
1900
+ fail "Missing the required parameter 'vcn_id' when calling get_vcn." if vcn_id.nil?
1901
+
1902
+ path = "/vcns/{vcnId}".sub('{vcnId}', vcn_id.to_s)
1903
+
1904
+ # Query Params
1905
+ query_params = {}
1906
+
1907
+ # Header Params
1908
+ header_params = {}
1909
+ header_params['accept'] = 'application/json'
1910
+ header_params['content-type'] = 'application/json'
1911
+
1912
+ post_body = nil
1913
+
1914
+ return @api_client.call_api(
1915
+ :GET,
1916
+ path,
1917
+ endpoint,
1918
+ :header_params => header_params,
1919
+ :query_params => query_params,
1920
+ :body => post_body,
1921
+ :return_type => 'OCI::Core::Models::Vcn')
1922
+ end
1923
+
1924
+ # Gets the specified virtual circuit's information.
1925
+ # @param [String] virtual_circuit_id The OCID of the virtual circuit.
1926
+ # @param [Hash] opts the optional parameters
1927
+ # @return [Response] A Response object with data of type OCI::Core::Models::VirtualCircuit
1928
+ def get_virtual_circuit(virtual_circuit_id, opts = {})
1929
+ logger.debug "Calling operation VirtualNetworkClient#get_virtual_circuit." if logger
1930
+
1931
+ fail "Missing the required parameter 'virtual_circuit_id' when calling get_virtual_circuit." if virtual_circuit_id.nil?
1932
+
1933
+ path = "/virtualCircuits/{virtualCircuitId}".sub('{virtualCircuitId}', virtual_circuit_id.to_s)
1934
+
1935
+ # Query Params
1936
+ query_params = {}
1937
+
1938
+ # Header Params
1939
+ header_params = {}
1940
+ header_params['accept'] = 'application/json'
1941
+ header_params['content-type'] = 'application/json'
1942
+
1943
+ post_body = nil
1944
+
1945
+ return @api_client.call_api(
1946
+ :GET,
1947
+ path,
1948
+ endpoint,
1949
+ :header_params => header_params,
1950
+ :query_params => query_params,
1951
+ :body => post_body,
1952
+ :return_type => 'OCI::Core::Models::VirtualCircuit')
1953
+ end
1954
+
1955
+ # Gets the information for the specified virtual network interface card (VNIC).
1956
+ # You can get the VNIC OCID from the
1957
+ # {#list_vnic_attachments list_vnic_attachments}
1958
+ # operation.
1959
+ #
1960
+ # @param [String] vnic_id The OCID of the VNIC.
1961
+ # @param [Hash] opts the optional parameters
1962
+ # @return [Response] A Response object with data of type OCI::Core::Models::Vnic
1963
+ def get_vnic(vnic_id, opts = {})
1964
+ logger.debug "Calling operation VirtualNetworkClient#get_vnic." if logger
1965
+
1966
+ fail "Missing the required parameter 'vnic_id' when calling get_vnic." if vnic_id.nil?
1967
+
1968
+ path = "/vnics/{vnicId}".sub('{vnicId}', vnic_id.to_s)
1969
+
1970
+ # Query Params
1971
+ query_params = {}
1972
+
1973
+ # Header Params
1974
+ header_params = {}
1975
+ header_params['accept'] = 'application/json'
1976
+ header_params['content-type'] = 'application/json'
1977
+
1978
+ post_body = nil
1979
+
1980
+ return @api_client.call_api(
1981
+ :GET,
1982
+ path,
1983
+ endpoint,
1984
+ :header_params => header_params,
1985
+ :query_params => query_params,
1986
+ :body => post_body,
1987
+ :return_type => 'OCI::Core::Models::Vnic')
1988
+ end
1989
+
1990
+ # Lists the Customer-Premises Equipment objects (CPEs) in the specified compartment.
1991
+ #
1992
+ # @param [String] compartment_id The OCID of the compartment.
1993
+ # @param [Hash] opts the optional parameters
1994
+ # @option opts [Integer] :limit The maximum number of items to return in a paginated \"List\" call.
1995
+ #
1996
+ # Example: `500`
1997
+ #
1998
+ # @option opts [String] :page The value of the `opc-next-page` response header from the previous \"List\" call.
1999
+ #
2000
+ # @return [Response] A Response object with data of type Array<OCI::Core::Models::Cpe>
2001
+ def list_cpes(compartment_id, opts = {})
2002
+ logger.debug "Calling operation VirtualNetworkClient#list_cpes." if logger
2003
+
2004
+ fail "Missing the required parameter 'compartment_id' when calling list_cpes." if compartment_id.nil?
2005
+
2006
+ path = "/cpes"
2007
+
2008
+ # Query Params
2009
+ query_params = {}
2010
+ query_params[:'compartmentId'] = compartment_id
2011
+ query_params[:'limit'] = opts[:'limit'] if opts[:'limit']
2012
+ query_params[:'page'] = opts[:'page'] if opts[:'page']
2013
+
2014
+ # Header Params
2015
+ header_params = {}
2016
+ header_params['accept'] = 'application/json'
2017
+ header_params['content-type'] = 'application/json'
2018
+
2019
+ post_body = nil
2020
+
2021
+ return @api_client.call_api(
2022
+ :GET,
2023
+ path,
2024
+ endpoint,
2025
+ :header_params => header_params,
2026
+ :query_params => query_params,
2027
+ :body => post_body,
2028
+ :return_type => 'Array<OCI::Core::Models::Cpe>')
2029
+ end
2030
+
2031
+ # Lists the cross-connect groups in the specified compartment.
2032
+ #
2033
+ # @param [String] compartment_id The OCID of the compartment.
2034
+ # @param [Hash] opts the optional parameters
2035
+ # @option opts [Integer] :limit The maximum number of items to return in a paginated \"List\" call.
2036
+ #
2037
+ # Example: `500`
2038
+ #
2039
+ # @option opts [String] :page The value of the `opc-next-page` response header from the previous \"List\" call.
2040
+ #
2041
+ # @return [Response] A Response object with data of type Array<OCI::Core::Models::CrossConnectGroup>
2042
+ def list_cross_connect_groups(compartment_id, opts = {})
2043
+ logger.debug "Calling operation VirtualNetworkClient#list_cross_connect_groups." if logger
2044
+
2045
+ fail "Missing the required parameter 'compartment_id' when calling list_cross_connect_groups." if compartment_id.nil?
2046
+
2047
+ path = "/crossConnectGroups"
2048
+
2049
+ # Query Params
2050
+ query_params = {}
2051
+ query_params[:'compartmentId'] = compartment_id
2052
+ query_params[:'limit'] = opts[:'limit'] if opts[:'limit']
2053
+ query_params[:'page'] = opts[:'page'] if opts[:'page']
2054
+
2055
+ # Header Params
2056
+ header_params = {}
2057
+ header_params['accept'] = 'application/json'
2058
+ header_params['content-type'] = 'application/json'
2059
+
2060
+ post_body = nil
2061
+
2062
+ return @api_client.call_api(
2063
+ :GET,
2064
+ path,
2065
+ endpoint,
2066
+ :header_params => header_params,
2067
+ :query_params => query_params,
2068
+ :body => post_body,
2069
+ :return_type => 'Array<OCI::Core::Models::CrossConnectGroup>')
2070
+ end
2071
+
2072
+ # Lists the available FastConnect locations for cross-connect installation. You need
2073
+ # this information so you can specify your desired location when you create a cross-connect.
2074
+ #
2075
+ # @param [String] compartment_id The OCID of the compartment.
2076
+ # @param [Hash] opts the optional parameters
2077
+ # @option opts [Integer] :limit The maximum number of items to return in a paginated \"List\" call.
2078
+ #
2079
+ # Example: `500`
2080
+ #
2081
+ # @option opts [String] :page The value of the `opc-next-page` response header from the previous \"List\" call.
2082
+ #
2083
+ # @return [Response] A Response object with data of type Array<OCI::Core::Models::CrossConnectLocation>
2084
+ def list_cross_connect_locations(compartment_id, opts = {})
2085
+ logger.debug "Calling operation VirtualNetworkClient#list_cross_connect_locations." if logger
2086
+
2087
+ fail "Missing the required parameter 'compartment_id' when calling list_cross_connect_locations." if compartment_id.nil?
2088
+
2089
+ path = "/crossConnectLocations"
2090
+
2091
+ # Query Params
2092
+ query_params = {}
2093
+ query_params[:'compartmentId'] = compartment_id
2094
+ query_params[:'limit'] = opts[:'limit'] if opts[:'limit']
2095
+ query_params[:'page'] = opts[:'page'] if opts[:'page']
2096
+
2097
+ # Header Params
2098
+ header_params = {}
2099
+ header_params['accept'] = 'application/json'
2100
+ header_params['content-type'] = 'application/json'
2101
+
2102
+ post_body = nil
2103
+
2104
+ return @api_client.call_api(
2105
+ :GET,
2106
+ path,
2107
+ endpoint,
2108
+ :header_params => header_params,
2109
+ :query_params => query_params,
2110
+ :body => post_body,
2111
+ :return_type => 'Array<OCI::Core::Models::CrossConnectLocation>')
2112
+ end
2113
+
2114
+ # Lists the cross-connects in the specified compartment. You can filter the list
2115
+ # by specifying the OCID of a cross-connect group.
2116
+ #
2117
+ # @param [String] compartment_id The OCID of the compartment.
2118
+ # @param [Hash] opts the optional parameters
2119
+ # @option opts [String] :cross_connect_group_id The OCID of the cross-connect group.
2120
+ # @option opts [Integer] :limit The maximum number of items to return in a paginated \"List\" call.
2121
+ #
2122
+ # Example: `500`
2123
+ #
2124
+ # @option opts [String] :page The value of the `opc-next-page` response header from the previous \"List\" call.
2125
+ #
2126
+ # @return [Response] A Response object with data of type Array<OCI::Core::Models::CrossConnect>
2127
+ def list_cross_connects(compartment_id, opts = {})
2128
+ logger.debug "Calling operation VirtualNetworkClient#list_cross_connects." if logger
2129
+
2130
+ fail "Missing the required parameter 'compartment_id' when calling list_cross_connects." if compartment_id.nil?
2131
+
2132
+ path = "/crossConnects"
2133
+
2134
+ # Query Params
2135
+ query_params = {}
2136
+ query_params[:'compartmentId'] = compartment_id
2137
+ query_params[:'crossConnectGroupId'] = opts[:'cross_connect_group_id'] if opts[:'cross_connect_group_id']
2138
+ query_params[:'limit'] = opts[:'limit'] if opts[:'limit']
2139
+ query_params[:'page'] = opts[:'page'] if opts[:'page']
2140
+
2141
+ # Header Params
2142
+ header_params = {}
2143
+ header_params['accept'] = 'application/json'
2144
+ header_params['content-type'] = 'application/json'
2145
+
2146
+ post_body = nil
2147
+
2148
+ return @api_client.call_api(
2149
+ :GET,
2150
+ path,
2151
+ endpoint,
2152
+ :header_params => header_params,
2153
+ :query_params => query_params,
2154
+ :body => post_body,
2155
+ :return_type => 'Array<OCI::Core::Models::CrossConnect>')
2156
+ end
2157
+
2158
+ # Lists the available port speeds for cross-connects. You need this information
2159
+ # so you can specify your desired port speed (that is, shape) when you create a
2160
+ # cross-connect.
2161
+ #
2162
+ # @param [String] compartment_id The OCID of the compartment.
2163
+ # @param [Hash] opts the optional parameters
2164
+ # @option opts [Integer] :limit The maximum number of items to return in a paginated \"List\" call.
2165
+ #
2166
+ # Example: `500`
2167
+ #
2168
+ # @option opts [String] :page The value of the `opc-next-page` response header from the previous \"List\" call.
2169
+ #
2170
+ # @return [Response] A Response object with data of type Array<OCI::Core::Models::CrossConnectPortSpeedShape>
2171
+ def list_crossconnect_port_speed_shapes(compartment_id, opts = {})
2172
+ logger.debug "Calling operation VirtualNetworkClient#list_crossconnect_port_speed_shapes." if logger
2173
+
2174
+ fail "Missing the required parameter 'compartment_id' when calling list_crossconnect_port_speed_shapes." if compartment_id.nil?
2175
+
2176
+ path = "/crossConnectPortSpeedShapes"
2177
+
2178
+ # Query Params
2179
+ query_params = {}
2180
+ query_params[:'compartmentId'] = compartment_id
2181
+ query_params[:'limit'] = opts[:'limit'] if opts[:'limit']
2182
+ query_params[:'page'] = opts[:'page'] if opts[:'page']
2183
+
2184
+ # Header Params
2185
+ header_params = {}
2186
+ header_params['accept'] = 'application/json'
2187
+ header_params['content-type'] = 'application/json'
2188
+
2189
+ post_body = nil
2190
+
2191
+ return @api_client.call_api(
2192
+ :GET,
2193
+ path,
2194
+ endpoint,
2195
+ :header_params => header_params,
2196
+ :query_params => query_params,
2197
+ :body => post_body,
2198
+ :return_type => 'Array<OCI::Core::Models::CrossConnectPortSpeedShape>')
2199
+ end
2200
+
2201
+ # Lists the sets of DHCP options in the specified VCN and specified compartment.
2202
+ # The response includes the default set of options that automatically comes with each VCN,
2203
+ # plus any other sets you've created.
2204
+ #
2205
+ # @param [String] compartment_id The OCID of the compartment.
2206
+ # @param [String] vcn_id The OCID of the VCN.
2207
+ # @param [Hash] opts the optional parameters
2208
+ # @option opts [Integer] :limit The maximum number of items to return in a paginated \"List\" call.
2209
+ #
2210
+ # Example: `500`
2211
+ #
2212
+ # @option opts [String] :page The value of the `opc-next-page` response header from the previous \"List\" call.
2213
+ #
2214
+ # @return [Response] A Response object with data of type Array<OCI::Core::Models::DhcpOptions>
2215
+ def list_dhcp_options(compartment_id, vcn_id, opts = {})
2216
+ logger.debug "Calling operation VirtualNetworkClient#list_dhcp_options." if logger
2217
+
2218
+ fail "Missing the required parameter 'compartment_id' when calling list_dhcp_options." if compartment_id.nil?
2219
+ fail "Missing the required parameter 'vcn_id' when calling list_dhcp_options." if vcn_id.nil?
2220
+
2221
+ path = "/dhcps"
2222
+
2223
+ # Query Params
2224
+ query_params = {}
2225
+ query_params[:'compartmentId'] = compartment_id
2226
+ query_params[:'vcnId'] = vcn_id
2227
+ query_params[:'limit'] = opts[:'limit'] if opts[:'limit']
2228
+ query_params[:'page'] = opts[:'page'] if opts[:'page']
2229
+
2230
+ # Header Params
2231
+ header_params = {}
2232
+ header_params['accept'] = 'application/json'
2233
+ header_params['content-type'] = 'application/json'
2234
+
2235
+ post_body = nil
2236
+
2237
+ return @api_client.call_api(
2238
+ :GET,
2239
+ path,
2240
+ endpoint,
2241
+ :header_params => header_params,
2242
+ :query_params => query_params,
2243
+ :body => post_body,
2244
+ :return_type => 'Array<OCI::Core::Models::DhcpOptions>')
2245
+ end
2246
+
2247
+ # Lists the `DrgAttachment` objects for the specified compartment. You can filter the
2248
+ # results by VCN or DRG.
2249
+ #
2250
+ # @param [String] compartment_id The OCID of the compartment.
2251
+ # @param [Hash] opts the optional parameters
2252
+ # @option opts [String] :vcn_id The OCID of the VCN.
2253
+ # @option opts [String] :drg_id The OCID of the DRG.
2254
+ # @option opts [Integer] :limit The maximum number of items to return in a paginated \"List\" call.
2255
+ #
2256
+ # Example: `500`
2257
+ #
2258
+ # @option opts [String] :page The value of the `opc-next-page` response header from the previous \"List\" call.
2259
+ #
2260
+ # @return [Response] A Response object with data of type Array<OCI::Core::Models::DrgAttachment>
2261
+ def list_drg_attachments(compartment_id, opts = {})
2262
+ logger.debug "Calling operation VirtualNetworkClient#list_drg_attachments." if logger
2263
+
2264
+ fail "Missing the required parameter 'compartment_id' when calling list_drg_attachments." if compartment_id.nil?
2265
+
2266
+ path = "/drgAttachments"
2267
+
2268
+ # Query Params
2269
+ query_params = {}
2270
+ query_params[:'compartmentId'] = compartment_id
2271
+ query_params[:'vcnId'] = opts[:'vcn_id'] if opts[:'vcn_id']
2272
+ query_params[:'drgId'] = opts[:'drg_id'] if opts[:'drg_id']
2273
+ query_params[:'limit'] = opts[:'limit'] if opts[:'limit']
2274
+ query_params[:'page'] = opts[:'page'] if opts[:'page']
2275
+
2276
+ # Header Params
2277
+ header_params = {}
2278
+ header_params['accept'] = 'application/json'
2279
+ header_params['content-type'] = 'application/json'
2280
+
2281
+ post_body = nil
2282
+
2283
+ return @api_client.call_api(
2284
+ :GET,
2285
+ path,
2286
+ endpoint,
2287
+ :header_params => header_params,
2288
+ :query_params => query_params,
2289
+ :body => post_body,
2290
+ :return_type => 'Array<OCI::Core::Models::DrgAttachment>')
2291
+ end
2292
+
2293
+ # Lists the DRGs in the specified compartment.
2294
+ #
2295
+ # @param [String] compartment_id The OCID of the compartment.
2296
+ # @param [Hash] opts the optional parameters
2297
+ # @option opts [Integer] :limit The maximum number of items to return in a paginated \"List\" call.
2298
+ #
2299
+ # Example: `500`
2300
+ #
2301
+ # @option opts [String] :page The value of the `opc-next-page` response header from the previous \"List\" call.
2302
+ #
2303
+ # @return [Response] A Response object with data of type Array<OCI::Core::Models::Drg>
2304
+ def list_drgs(compartment_id, opts = {})
2305
+ logger.debug "Calling operation VirtualNetworkClient#list_drgs." if logger
2306
+
2307
+ fail "Missing the required parameter 'compartment_id' when calling list_drgs." if compartment_id.nil?
2308
+
2309
+ path = "/drgs"
2310
+
2311
+ # Query Params
2312
+ query_params = {}
2313
+ query_params[:'compartmentId'] = compartment_id
2314
+ query_params[:'limit'] = opts[:'limit'] if opts[:'limit']
2315
+ query_params[:'page'] = opts[:'page'] if opts[:'page']
2316
+
2317
+ # Header Params
2318
+ header_params = {}
2319
+ header_params['accept'] = 'application/json'
2320
+ header_params['content-type'] = 'application/json'
2321
+
2322
+ post_body = nil
2323
+
2324
+ return @api_client.call_api(
2325
+ :GET,
2326
+ path,
2327
+ endpoint,
2328
+ :header_params => header_params,
2329
+ :query_params => query_params,
2330
+ :body => post_body,
2331
+ :return_type => 'Array<OCI::Core::Models::Drg>')
2332
+ end
2333
+
2334
+ # Lists the service offerings from supported providers. You need this
2335
+ # information so you can specify your desired provider and service
2336
+ # offering when you create a virtual circuit.
2337
+ #
2338
+ # For the compartment ID, provide the OCID of your tenancy (the root compartment).
2339
+ #
2340
+ # For more information, see [FastConnect Overview](https://docs.us-phoenix-1.oraclecloud.com/Content/Network/Concepts/fastconnect.htm).
2341
+ #
2342
+ # @param [String] compartment_id The OCID of the compartment.
2343
+ # @param [Hash] opts the optional parameters
2344
+ # @option opts [Integer] :limit The maximum number of items to return in a paginated \"List\" call.
2345
+ #
2346
+ # Example: `500`
2347
+ #
2348
+ # @option opts [String] :page The value of the `opc-next-page` response header from the previous \"List\" call.
2349
+ #
2350
+ # @return [Response] A Response object with data of type Array<OCI::Core::Models::FastConnectProviderService>
2351
+ def list_fast_connect_provider_services(compartment_id, opts = {})
2352
+ logger.debug "Calling operation VirtualNetworkClient#list_fast_connect_provider_services." if logger
2353
+
2354
+ fail "Missing the required parameter 'compartment_id' when calling list_fast_connect_provider_services." if compartment_id.nil?
2355
+
2356
+ path = "/fastConnectProviderServices"
2357
+
2358
+ # Query Params
2359
+ query_params = {}
2360
+ query_params[:'compartmentId'] = compartment_id
2361
+ query_params[:'limit'] = opts[:'limit'] if opts[:'limit']
2362
+ query_params[:'page'] = opts[:'page'] if opts[:'page']
2363
+
2364
+ # Header Params
2365
+ header_params = {}
2366
+ header_params['accept'] = 'application/json'
2367
+ header_params['content-type'] = 'application/json'
2368
+
2369
+ post_body = nil
2370
+
2371
+ return @api_client.call_api(
2372
+ :GET,
2373
+ path,
2374
+ endpoint,
2375
+ :header_params => header_params,
2376
+ :query_params => query_params,
2377
+ :body => post_body,
2378
+ :return_type => 'Array<OCI::Core::Models::FastConnectProviderService>')
2379
+ end
2380
+
2381
+ # Lists the Internet Gateways in the specified VCN and the specified compartment.
2382
+ #
2383
+ # @param [String] compartment_id The OCID of the compartment.
2384
+ # @param [String] vcn_id The OCID of the VCN.
2385
+ # @param [Hash] opts the optional parameters
2386
+ # @option opts [Integer] :limit The maximum number of items to return in a paginated \"List\" call.
2387
+ #
2388
+ # Example: `500`
2389
+ #
2390
+ # @option opts [String] :page The value of the `opc-next-page` response header from the previous \"List\" call.
2391
+ #
2392
+ # @return [Response] A Response object with data of type Array<OCI::Core::Models::InternetGateway>
2393
+ def list_internet_gateways(compartment_id, vcn_id, opts = {})
2394
+ logger.debug "Calling operation VirtualNetworkClient#list_internet_gateways." if logger
2395
+
2396
+ fail "Missing the required parameter 'compartment_id' when calling list_internet_gateways." if compartment_id.nil?
2397
+ fail "Missing the required parameter 'vcn_id' when calling list_internet_gateways." if vcn_id.nil?
2398
+
2399
+ path = "/internetGateways"
2400
+
2401
+ # Query Params
2402
+ query_params = {}
2403
+ query_params[:'compartmentId'] = compartment_id
2404
+ query_params[:'vcnId'] = vcn_id
2405
+ query_params[:'limit'] = opts[:'limit'] if opts[:'limit']
2406
+ query_params[:'page'] = opts[:'page'] if opts[:'page']
2407
+
2408
+ # Header Params
2409
+ header_params = {}
2410
+ header_params['accept'] = 'application/json'
2411
+ header_params['content-type'] = 'application/json'
2412
+
2413
+ post_body = nil
2414
+
2415
+ return @api_client.call_api(
2416
+ :GET,
2417
+ path,
2418
+ endpoint,
2419
+ :header_params => header_params,
2420
+ :query_params => query_params,
2421
+ :body => post_body,
2422
+ :return_type => 'Array<OCI::Core::Models::InternetGateway>')
2423
+ end
2424
+
2425
+ # Lists the IPSec connections for the specified compartment. You can filter the
2426
+ # results by DRG or CPE.
2427
+ #
2428
+ # @param [String] compartment_id The OCID of the compartment.
2429
+ # @param [Hash] opts the optional parameters
2430
+ # @option opts [String] :drg_id The OCID of the DRG.
2431
+ # @option opts [String] :cpe_id The OCID of the CPE.
2432
+ # @option opts [Integer] :limit The maximum number of items to return in a paginated \"List\" call.
2433
+ #
2434
+ # Example: `500`
2435
+ #
2436
+ # @option opts [String] :page The value of the `opc-next-page` response header from the previous \"List\" call.
2437
+ #
2438
+ # @return [Response] A Response object with data of type Array<OCI::Core::Models::IPSecConnection>
2439
+ def list_ip_sec_connections(compartment_id, opts = {})
2440
+ logger.debug "Calling operation VirtualNetworkClient#list_ip_sec_connections." if logger
2441
+
2442
+ fail "Missing the required parameter 'compartment_id' when calling list_ip_sec_connections." if compartment_id.nil?
2443
+
2444
+ path = "/ipsecConnections"
2445
+
2446
+ # Query Params
2447
+ query_params = {}
2448
+ query_params[:'compartmentId'] = compartment_id
2449
+ query_params[:'drgId'] = opts[:'drg_id'] if opts[:'drg_id']
2450
+ query_params[:'cpeId'] = opts[:'cpe_id'] if opts[:'cpe_id']
2451
+ query_params[:'limit'] = opts[:'limit'] if opts[:'limit']
2452
+ query_params[:'page'] = opts[:'page'] if opts[:'page']
2453
+
2454
+ # Header Params
2455
+ header_params = {}
2456
+ header_params['accept'] = 'application/json'
2457
+ header_params['content-type'] = 'application/json'
2458
+
2459
+ post_body = nil
2460
+
2461
+ return @api_client.call_api(
2462
+ :GET,
2463
+ path,
2464
+ endpoint,
2465
+ :header_params => header_params,
2466
+ :query_params => query_params,
2467
+ :body => post_body,
2468
+ :return_type => 'Array<OCI::Core::Models::IPSecConnection>')
2469
+ end
2470
+
2471
+ # Lists the {PrivateIp} objects based
2472
+ # on one of these filters:
2473
+ #
2474
+ # - Subnet OCID.
2475
+ # - VNIC OCID.
2476
+ # - Both private IP address and subnet OCID: This lets
2477
+ # you get a `privateIP` object based on its private IP
2478
+ # address (for example, 10.0.3.3) and not its OCID. For comparison,
2479
+ # {#get_private_ip get_private_ip}
2480
+ # requires the OCID.
2481
+ #
2482
+ # If you're listing all the private IPs associated with a given subnet
2483
+ # or VNIC, the response includes both primary and secondary private IPs.
2484
+ #
2485
+ # @param [Hash] opts the optional parameters
2486
+ # @option opts [Integer] :limit The maximum number of items to return in a paginated \"List\" call.
2487
+ #
2488
+ # Example: `500`
2489
+ #
2490
+ # @option opts [String] :page The value of the `opc-next-page` response header from the previous \"List\" call.
2491
+ #
2492
+ # @option opts [String] :ip_address The private IP address of the `privateIp` object.
2493
+ #
2494
+ # Example: `10.0.3.3`
2495
+ #
2496
+ # @option opts [String] :subnet_id The OCID of the subnet.
2497
+ # @option opts [String] :vnic_id The OCID of the VNIC.
2498
+ # @return [Response] A Response object with data of type Array<OCI::Core::Models::PrivateIp>
2499
+ def list_private_ips(opts = {})
2500
+ logger.debug "Calling operation VirtualNetworkClient#list_private_ips." if logger
2501
+
2502
+
2503
+ path = "/privateIps"
2504
+
2505
+ # Query Params
2506
+ query_params = {}
2507
+ query_params[:'limit'] = opts[:'limit'] if opts[:'limit']
2508
+ query_params[:'page'] = opts[:'page'] if opts[:'page']
2509
+ query_params[:'ipAddress'] = opts[:'ip_address'] if opts[:'ip_address']
2510
+ query_params[:'subnetId'] = opts[:'subnet_id'] if opts[:'subnet_id']
2511
+ query_params[:'vnicId'] = opts[:'vnic_id'] if opts[:'vnic_id']
2512
+
2513
+ # Header Params
2514
+ header_params = {}
2515
+ header_params['accept'] = 'application/json'
2516
+ header_params['content-type'] = 'application/json'
2517
+
2518
+ post_body = nil
2519
+
2520
+ return @api_client.call_api(
2521
+ :GET,
2522
+ path,
2523
+ endpoint,
2524
+ :header_params => header_params,
2525
+ :query_params => query_params,
2526
+ :body => post_body,
2527
+ :return_type => 'Array<OCI::Core::Models::PrivateIp>')
2528
+ end
2529
+
2530
+ # Lists the route tables in the specified VCN and specified compartment. The response
2531
+ # includes the default route table that automatically comes with each VCN, plus any route tables
2532
+ # you've created.
2533
+ #
2534
+ # @param [String] compartment_id The OCID of the compartment.
2535
+ # @param [String] vcn_id The OCID of the VCN.
2536
+ # @param [Hash] opts the optional parameters
2537
+ # @option opts [Integer] :limit The maximum number of items to return in a paginated \"List\" call.
2538
+ #
2539
+ # Example: `500`
2540
+ #
2541
+ # @option opts [String] :page The value of the `opc-next-page` response header from the previous \"List\" call.
2542
+ #
2543
+ # @return [Response] A Response object with data of type Array<OCI::Core::Models::RouteTable>
2544
+ def list_route_tables(compartment_id, vcn_id, opts = {})
2545
+ logger.debug "Calling operation VirtualNetworkClient#list_route_tables." if logger
2546
+
2547
+ fail "Missing the required parameter 'compartment_id' when calling list_route_tables." if compartment_id.nil?
2548
+ fail "Missing the required parameter 'vcn_id' when calling list_route_tables." if vcn_id.nil?
2549
+
2550
+ path = "/routeTables"
2551
+
2552
+ # Query Params
2553
+ query_params = {}
2554
+ query_params[:'compartmentId'] = compartment_id
2555
+ query_params[:'vcnId'] = vcn_id
2556
+ query_params[:'limit'] = opts[:'limit'] if opts[:'limit']
2557
+ query_params[:'page'] = opts[:'page'] if opts[:'page']
2558
+
2559
+ # Header Params
2560
+ header_params = {}
2561
+ header_params['accept'] = 'application/json'
2562
+ header_params['content-type'] = 'application/json'
2563
+
2564
+ post_body = nil
2565
+
2566
+ return @api_client.call_api(
2567
+ :GET,
2568
+ path,
2569
+ endpoint,
2570
+ :header_params => header_params,
2571
+ :query_params => query_params,
2572
+ :body => post_body,
2573
+ :return_type => 'Array<OCI::Core::Models::RouteTable>')
2574
+ end
2575
+
2576
+ # Lists the security lists in the specified VCN and compartment.
2577
+ #
2578
+ # @param [String] compartment_id The OCID of the compartment.
2579
+ # @param [String] vcn_id The OCID of the VCN.
2580
+ # @param [Hash] opts the optional parameters
2581
+ # @option opts [Integer] :limit The maximum number of items to return in a paginated \"List\" call.
2582
+ #
2583
+ # Example: `500`
2584
+ #
2585
+ # @option opts [String] :page The value of the `opc-next-page` response header from the previous \"List\" call.
2586
+ #
2587
+ # @return [Response] A Response object with data of type Array<OCI::Core::Models::SecurityList>
2588
+ def list_security_lists(compartment_id, vcn_id, opts = {})
2589
+ logger.debug "Calling operation VirtualNetworkClient#list_security_lists." if logger
2590
+
2591
+ fail "Missing the required parameter 'compartment_id' when calling list_security_lists." if compartment_id.nil?
2592
+ fail "Missing the required parameter 'vcn_id' when calling list_security_lists." if vcn_id.nil?
2593
+
2594
+ path = "/securityLists"
2595
+
2596
+ # Query Params
2597
+ query_params = {}
2598
+ query_params[:'compartmentId'] = compartment_id
2599
+ query_params[:'vcnId'] = vcn_id
2600
+ query_params[:'limit'] = opts[:'limit'] if opts[:'limit']
2601
+ query_params[:'page'] = opts[:'page'] if opts[:'page']
2602
+
2603
+ # Header Params
2604
+ header_params = {}
2605
+ header_params['accept'] = 'application/json'
2606
+ header_params['content-type'] = 'application/json'
2607
+
2608
+ post_body = nil
2609
+
2610
+ return @api_client.call_api(
2611
+ :GET,
2612
+ path,
2613
+ endpoint,
2614
+ :header_params => header_params,
2615
+ :query_params => query_params,
2616
+ :body => post_body,
2617
+ :return_type => 'Array<OCI::Core::Models::SecurityList>')
2618
+ end
2619
+
2620
+ # Lists the subnets in the specified VCN and the specified compartment.
2621
+ #
2622
+ # @param [String] compartment_id The OCID of the compartment.
2623
+ # @param [String] vcn_id The OCID of the VCN.
2624
+ # @param [Hash] opts the optional parameters
2625
+ # @option opts [Integer] :limit The maximum number of items to return in a paginated \"List\" call.
2626
+ #
2627
+ # Example: `500`
2628
+ #
2629
+ # @option opts [String] :page The value of the `opc-next-page` response header from the previous \"List\" call.
2630
+ #
2631
+ # @return [Response] A Response object with data of type Array<OCI::Core::Models::Subnet>
2632
+ def list_subnets(compartment_id, vcn_id, opts = {})
2633
+ logger.debug "Calling operation VirtualNetworkClient#list_subnets." if logger
2634
+
2635
+ fail "Missing the required parameter 'compartment_id' when calling list_subnets." if compartment_id.nil?
2636
+ fail "Missing the required parameter 'vcn_id' when calling list_subnets." if vcn_id.nil?
2637
+
2638
+ path = "/subnets"
2639
+
2640
+ # Query Params
2641
+ query_params = {}
2642
+ query_params[:'compartmentId'] = compartment_id
2643
+ query_params[:'vcnId'] = vcn_id
2644
+ query_params[:'limit'] = opts[:'limit'] if opts[:'limit']
2645
+ query_params[:'page'] = opts[:'page'] if opts[:'page']
2646
+
2647
+ # Header Params
2648
+ header_params = {}
2649
+ header_params['accept'] = 'application/json'
2650
+ header_params['content-type'] = 'application/json'
2651
+
2652
+ post_body = nil
2653
+
2654
+ return @api_client.call_api(
2655
+ :GET,
2656
+ path,
2657
+ endpoint,
2658
+ :header_params => header_params,
2659
+ :query_params => query_params,
2660
+ :body => post_body,
2661
+ :return_type => 'Array<OCI::Core::Models::Subnet>')
2662
+ end
2663
+
2664
+ # Lists the Virtual Cloud Networks (VCNs) in the specified compartment.
2665
+ #
2666
+ # @param [String] compartment_id The OCID of the compartment.
2667
+ # @param [Hash] opts the optional parameters
2668
+ # @option opts [Integer] :limit The maximum number of items to return in a paginated \"List\" call.
2669
+ #
2670
+ # Example: `500`
2671
+ #
2672
+ # @option opts [String] :page The value of the `opc-next-page` response header from the previous \"List\" call.
2673
+ #
2674
+ # @return [Response] A Response object with data of type Array<OCI::Core::Models::Vcn>
2675
+ def list_vcns(compartment_id, opts = {})
2676
+ logger.debug "Calling operation VirtualNetworkClient#list_vcns." if logger
2677
+
2678
+ fail "Missing the required parameter 'compartment_id' when calling list_vcns." if compartment_id.nil?
2679
+
2680
+ path = "/vcns"
2681
+
2682
+ # Query Params
2683
+ query_params = {}
2684
+ query_params[:'compartmentId'] = compartment_id
2685
+ query_params[:'limit'] = opts[:'limit'] if opts[:'limit']
2686
+ query_params[:'page'] = opts[:'page'] if opts[:'page']
2687
+
2688
+ # Header Params
2689
+ header_params = {}
2690
+ header_params['accept'] = 'application/json'
2691
+ header_params['content-type'] = 'application/json'
2692
+
2693
+ post_body = nil
2694
+
2695
+ return @api_client.call_api(
2696
+ :GET,
2697
+ path,
2698
+ endpoint,
2699
+ :header_params => header_params,
2700
+ :query_params => query_params,
2701
+ :body => post_body,
2702
+ :return_type => 'Array<OCI::Core::Models::Vcn>')
2703
+ end
2704
+
2705
+ # Lists the available bandwidth levels for virtual circuits. You need this
2706
+ # information so you can specify your desired bandwidth level (that is, shape)
2707
+ # when you create a virtual circuit.
2708
+ #
2709
+ # For the compartment ID, provide the OCID of your tenancy (the root compartment).
2710
+ #
2711
+ # For more information about virtual circuits, see
2712
+ # [FastConnect Overview](https://docs.us-phoenix-1.oraclecloud.com/Content/Network/Concepts/fastconnect.htm).
2713
+ #
2714
+ # @param [String] compartment_id The OCID of the compartment.
2715
+ # @param [Hash] opts the optional parameters
2716
+ # @option opts [Integer] :limit The maximum number of items to return in a paginated \"List\" call.
2717
+ #
2718
+ # Example: `500`
2719
+ #
2720
+ # @option opts [String] :page The value of the `opc-next-page` response header from the previous \"List\" call.
2721
+ #
2722
+ # @return [Response] A Response object with data of type Array<OCI::Core::Models::VirtualCircuitBandwidthShape>
2723
+ def list_virtual_circuit_bandwidth_shapes(compartment_id, opts = {})
2724
+ logger.debug "Calling operation VirtualNetworkClient#list_virtual_circuit_bandwidth_shapes." if logger
2725
+
2726
+ fail "Missing the required parameter 'compartment_id' when calling list_virtual_circuit_bandwidth_shapes." if compartment_id.nil?
2727
+
2728
+ path = "/virtualCircuitBandwidthShapes"
2729
+
2730
+ # Query Params
2731
+ query_params = {}
2732
+ query_params[:'compartmentId'] = compartment_id
2733
+ query_params[:'limit'] = opts[:'limit'] if opts[:'limit']
2734
+ query_params[:'page'] = opts[:'page'] if opts[:'page']
2735
+
2736
+ # Header Params
2737
+ header_params = {}
2738
+ header_params['accept'] = 'application/json'
2739
+ header_params['content-type'] = 'application/json'
2740
+
2741
+ post_body = nil
2742
+
2743
+ return @api_client.call_api(
2744
+ :GET,
2745
+ path,
2746
+ endpoint,
2747
+ :header_params => header_params,
2748
+ :query_params => query_params,
2749
+ :body => post_body,
2750
+ :return_type => 'Array<OCI::Core::Models::VirtualCircuitBandwidthShape>')
2751
+ end
2752
+
2753
+ # Lists the virtual circuits in the specified compartment.
2754
+ #
2755
+ # @param [String] compartment_id The OCID of the compartment.
2756
+ # @param [Hash] opts the optional parameters
2757
+ # @option opts [Integer] :limit The maximum number of items to return in a paginated \"List\" call.
2758
+ #
2759
+ # Example: `500`
2760
+ #
2761
+ # @option opts [String] :page The value of the `opc-next-page` response header from the previous \"List\" call.
2762
+ #
2763
+ # @return [Response] A Response object with data of type Array<OCI::Core::Models::VirtualCircuit>
2764
+ def list_virtual_circuits(compartment_id, opts = {})
2765
+ logger.debug "Calling operation VirtualNetworkClient#list_virtual_circuits." if logger
2766
+
2767
+ fail "Missing the required parameter 'compartment_id' when calling list_virtual_circuits." if compartment_id.nil?
2768
+
2769
+ path = "/virtualCircuits"
2770
+
2771
+ # Query Params
2772
+ query_params = {}
2773
+ query_params[:'compartmentId'] = compartment_id
2774
+ query_params[:'limit'] = opts[:'limit'] if opts[:'limit']
2775
+ query_params[:'page'] = opts[:'page'] if opts[:'page']
2776
+
2777
+ # Header Params
2778
+ header_params = {}
2779
+ header_params['accept'] = 'application/json'
2780
+ header_params['content-type'] = 'application/json'
2781
+
2782
+ post_body = nil
2783
+
2784
+ return @api_client.call_api(
2785
+ :GET,
2786
+ path,
2787
+ endpoint,
2788
+ :header_params => header_params,
2789
+ :query_params => query_params,
2790
+ :body => post_body,
2791
+ :return_type => 'Array<OCI::Core::Models::VirtualCircuit>')
2792
+ end
2793
+
2794
+ # Updates the specified CPE's display name.
2795
+ # Avoid entering confidential information.
2796
+ #
2797
+ # @param [String] cpe_id The OCID of the CPE.
2798
+ # @param [UpdateCpeDetails] update_cpe_details Details object for updating a CPE.
2799
+ # @param [Hash] opts the optional parameters
2800
+ # @option opts [String] :if_match For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match`
2801
+ # parameter to the value of the etag from a previous GET or POST response for that resource. The resource
2802
+ # will be updated or deleted only if the etag you provide matches the resource's current etag value.
2803
+ #
2804
+ # @return [Response] A Response object with data of type OCI::Core::Models::Cpe
2805
+ def update_cpe(cpe_id, update_cpe_details, opts = {})
2806
+ logger.debug "Calling operation VirtualNetworkClient#update_cpe." if logger
2807
+
2808
+ fail "Missing the required parameter 'cpe_id' when calling update_cpe." if cpe_id.nil?
2809
+ fail "Missing the required parameter 'update_cpe_details' when calling update_cpe." if update_cpe_details.nil?
2810
+
2811
+ path = "/cpes/{cpeId}".sub('{cpeId}', cpe_id.to_s)
2812
+
2813
+ # Query Params
2814
+ query_params = {}
2815
+
2816
+ # Header Params
2817
+ header_params = {}
2818
+ header_params['accept'] = 'application/json'
2819
+ header_params['content-type'] = 'application/json'
2820
+ header_params[:'if-match'] = opts[:'if_match'] if opts[:'if_match']
2821
+
2822
+ post_body = @api_client.object_to_http_body(update_cpe_details)
2823
+
2824
+ return @api_client.call_api(
2825
+ :PUT,
2826
+ path,
2827
+ endpoint,
2828
+ :header_params => header_params,
2829
+ :query_params => query_params,
2830
+ :body => post_body,
2831
+ :return_type => 'OCI::Core::Models::Cpe')
2832
+ end
2833
+
2834
+ # Updates the specified cross-connect.
2835
+ # @param [String] cross_connect_id The OCID of the cross-connect.
2836
+ # @param [UpdateCrossConnectDetails] update_cross_connect_details Update CrossConnect fields.
2837
+ # @param [Hash] opts the optional parameters
2838
+ # @option opts [String] :if_match For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match`
2839
+ # parameter to the value of the etag from a previous GET or POST response for that resource. The resource
2840
+ # will be updated or deleted only if the etag you provide matches the resource's current etag value.
2841
+ #
2842
+ # @return [Response] A Response object with data of type OCI::Core::Models::CrossConnect
2843
+ def update_cross_connect(cross_connect_id, update_cross_connect_details, opts = {})
2844
+ logger.debug "Calling operation VirtualNetworkClient#update_cross_connect." if logger
2845
+
2846
+ fail "Missing the required parameter 'cross_connect_id' when calling update_cross_connect." if cross_connect_id.nil?
2847
+ fail "Missing the required parameter 'update_cross_connect_details' when calling update_cross_connect." if update_cross_connect_details.nil?
2848
+
2849
+ path = "/crossConnects/{crossConnectId}".sub('{crossConnectId}', cross_connect_id.to_s)
2850
+
2851
+ # Query Params
2852
+ query_params = {}
2853
+
2854
+ # Header Params
2855
+ header_params = {}
2856
+ header_params['accept'] = 'application/json'
2857
+ header_params['content-type'] = 'application/json'
2858
+ header_params[:'if-match'] = opts[:'if_match'] if opts[:'if_match']
2859
+
2860
+ post_body = @api_client.object_to_http_body(update_cross_connect_details)
2861
+
2862
+ return @api_client.call_api(
2863
+ :PUT,
2864
+ path,
2865
+ endpoint,
2866
+ :header_params => header_params,
2867
+ :query_params => query_params,
2868
+ :body => post_body,
2869
+ :return_type => 'OCI::Core::Models::CrossConnect')
2870
+ end
2871
+
2872
+ # Updates the specified cross-connect group's display name.
2873
+ # Avoid entering confidential information.
2874
+ #
2875
+ # @param [String] cross_connect_group_id The OCID of the cross-connect group.
2876
+ # @param [UpdateCrossConnectGroupDetails] update_cross_connect_group_details Update CrossConnectGroup fields
2877
+ # @param [Hash] opts the optional parameters
2878
+ # @option opts [String] :if_match For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match`
2879
+ # parameter to the value of the etag from a previous GET or POST response for that resource. The resource
2880
+ # will be updated or deleted only if the etag you provide matches the resource's current etag value.
2881
+ #
2882
+ # @return [Response] A Response object with data of type OCI::Core::Models::CrossConnectGroup
2883
+ def update_cross_connect_group(cross_connect_group_id, update_cross_connect_group_details, opts = {})
2884
+ logger.debug "Calling operation VirtualNetworkClient#update_cross_connect_group." if logger
2885
+
2886
+ fail "Missing the required parameter 'cross_connect_group_id' when calling update_cross_connect_group." if cross_connect_group_id.nil?
2887
+ fail "Missing the required parameter 'update_cross_connect_group_details' when calling update_cross_connect_group." if update_cross_connect_group_details.nil?
2888
+
2889
+ path = "/crossConnectGroups/{crossConnectGroupId}".sub('{crossConnectGroupId}', cross_connect_group_id.to_s)
2890
+
2891
+ # Query Params
2892
+ query_params = {}
2893
+
2894
+ # Header Params
2895
+ header_params = {}
2896
+ header_params['accept'] = 'application/json'
2897
+ header_params['content-type'] = 'application/json'
2898
+ header_params[:'if-match'] = opts[:'if_match'] if opts[:'if_match']
2899
+
2900
+ post_body = @api_client.object_to_http_body(update_cross_connect_group_details)
2901
+
2902
+ return @api_client.call_api(
2903
+ :PUT,
2904
+ path,
2905
+ endpoint,
2906
+ :header_params => header_params,
2907
+ :query_params => query_params,
2908
+ :body => post_body,
2909
+ :return_type => 'OCI::Core::Models::CrossConnectGroup')
2910
+ end
2911
+
2912
+ # Updates the specified set of DHCP options. You can update the display name or the options
2913
+ # themselves. Avoid entering confidential information.
2914
+ #
2915
+ # Note that the `options` object you provide replaces the entire existing set of options.
2916
+ #
2917
+ # @param [String] dhcp_id The OCID for the set of DHCP options.
2918
+ # @param [UpdateDhcpDetails] update_dhcp_details Request object for updating a set of DHCP options.
2919
+ # @param [Hash] opts the optional parameters
2920
+ # @option opts [String] :if_match For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match`
2921
+ # parameter to the value of the etag from a previous GET or POST response for that resource. The resource
2922
+ # will be updated or deleted only if the etag you provide matches the resource's current etag value.
2923
+ #
2924
+ # @return [Response] A Response object with data of type OCI::Core::Models::DhcpOptions
2925
+ def update_dhcp_options(dhcp_id, update_dhcp_details, opts = {})
2926
+ logger.debug "Calling operation VirtualNetworkClient#update_dhcp_options." if logger
2927
+
2928
+ fail "Missing the required parameter 'dhcp_id' when calling update_dhcp_options." if dhcp_id.nil?
2929
+ fail "Missing the required parameter 'update_dhcp_details' when calling update_dhcp_options." if update_dhcp_details.nil?
2930
+
2931
+ path = "/dhcps/{dhcpId}".sub('{dhcpId}', dhcp_id.to_s)
2932
+
2933
+ # Query Params
2934
+ query_params = {}
2935
+
2936
+ # Header Params
2937
+ header_params = {}
2938
+ header_params['accept'] = 'application/json'
2939
+ header_params['content-type'] = 'application/json'
2940
+ header_params[:'if-match'] = opts[:'if_match'] if opts[:'if_match']
2941
+
2942
+ post_body = @api_client.object_to_http_body(update_dhcp_details)
2943
+
2944
+ return @api_client.call_api(
2945
+ :PUT,
2946
+ path,
2947
+ endpoint,
2948
+ :header_params => header_params,
2949
+ :query_params => query_params,
2950
+ :body => post_body,
2951
+ :return_type => 'OCI::Core::Models::DhcpOptions')
2952
+ end
2953
+
2954
+ # Updates the specified DRG's display name. Avoid entering confidential information.
2955
+ #
2956
+ # @param [String] drg_id The OCID of the DRG.
2957
+ # @param [UpdateDrgDetails] update_drg_details Details object for updating a DRG.
2958
+ # @param [Hash] opts the optional parameters
2959
+ # @option opts [String] :if_match For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match`
2960
+ # parameter to the value of the etag from a previous GET or POST response for that resource. The resource
2961
+ # will be updated or deleted only if the etag you provide matches the resource's current etag value.
2962
+ #
2963
+ # @return [Response] A Response object with data of type OCI::Core::Models::Drg
2964
+ def update_drg(drg_id, update_drg_details, opts = {})
2965
+ logger.debug "Calling operation VirtualNetworkClient#update_drg." if logger
2966
+
2967
+ fail "Missing the required parameter 'drg_id' when calling update_drg." if drg_id.nil?
2968
+ fail "Missing the required parameter 'update_drg_details' when calling update_drg." if update_drg_details.nil?
2969
+
2970
+ path = "/drgs/{drgId}".sub('{drgId}', drg_id.to_s)
2971
+
2972
+ # Query Params
2973
+ query_params = {}
2974
+
2975
+ # Header Params
2976
+ header_params = {}
2977
+ header_params['accept'] = 'application/json'
2978
+ header_params['content-type'] = 'application/json'
2979
+ header_params[:'if-match'] = opts[:'if_match'] if opts[:'if_match']
2980
+
2981
+ post_body = @api_client.object_to_http_body(update_drg_details)
2982
+
2983
+ return @api_client.call_api(
2984
+ :PUT,
2985
+ path,
2986
+ endpoint,
2987
+ :header_params => header_params,
2988
+ :query_params => query_params,
2989
+ :body => post_body,
2990
+ :return_type => 'OCI::Core::Models::Drg')
2991
+ end
2992
+
2993
+ # Updates the display name for the specified `DrgAttachment`.
2994
+ # Avoid entering confidential information.
2995
+ #
2996
+ # @param [String] drg_attachment_id The OCID of the DRG attachment.
2997
+ # @param [UpdateDrgAttachmentDetails] update_drg_attachment_details Details object for updating a `DrgAttachment`.
2998
+ # @param [Hash] opts the optional parameters
2999
+ # @option opts [String] :if_match For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match`
3000
+ # parameter to the value of the etag from a previous GET or POST response for that resource. The resource
3001
+ # will be updated or deleted only if the etag you provide matches the resource's current etag value.
3002
+ #
3003
+ # @return [Response] A Response object with data of type OCI::Core::Models::DrgAttachment
3004
+ def update_drg_attachment(drg_attachment_id, update_drg_attachment_details, opts = {})
3005
+ logger.debug "Calling operation VirtualNetworkClient#update_drg_attachment." if logger
3006
+
3007
+ fail "Missing the required parameter 'drg_attachment_id' when calling update_drg_attachment." if drg_attachment_id.nil?
3008
+ fail "Missing the required parameter 'update_drg_attachment_details' when calling update_drg_attachment." if update_drg_attachment_details.nil?
3009
+
3010
+ path = "/drgAttachments/{drgAttachmentId}".sub('{drgAttachmentId}', drg_attachment_id.to_s)
3011
+
3012
+ # Query Params
3013
+ query_params = {}
3014
+
3015
+ # Header Params
3016
+ header_params = {}
3017
+ header_params['accept'] = 'application/json'
3018
+ header_params['content-type'] = 'application/json'
3019
+ header_params[:'if-match'] = opts[:'if_match'] if opts[:'if_match']
3020
+
3021
+ post_body = @api_client.object_to_http_body(update_drg_attachment_details)
3022
+
3023
+ return @api_client.call_api(
3024
+ :PUT,
3025
+ path,
3026
+ endpoint,
3027
+ :header_params => header_params,
3028
+ :query_params => query_params,
3029
+ :body => post_body,
3030
+ :return_type => 'OCI::Core::Models::DrgAttachment')
3031
+ end
3032
+
3033
+ # Updates the specified Internet Gateway. You can disable/enable it, or change its display name.
3034
+ # Avoid entering confidential information.
3035
+ #
3036
+ # If the gateway is disabled, that means no traffic will flow to/from the internet even if there's
3037
+ # a route rule that enables that traffic.
3038
+ #
3039
+ # @param [String] ig_id The OCID of the Internet Gateway.
3040
+ # @param [UpdateInternetGatewayDetails] update_internet_gateway_details Details for updating the Internet Gateway.
3041
+ # @param [Hash] opts the optional parameters
3042
+ # @option opts [String] :if_match For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match`
3043
+ # parameter to the value of the etag from a previous GET or POST response for that resource. The resource
3044
+ # will be updated or deleted only if the etag you provide matches the resource's current etag value.
3045
+ #
3046
+ # @return [Response] A Response object with data of type OCI::Core::Models::InternetGateway
3047
+ def update_internet_gateway(ig_id, update_internet_gateway_details, opts = {})
3048
+ logger.debug "Calling operation VirtualNetworkClient#update_internet_gateway." if logger
3049
+
3050
+ fail "Missing the required parameter 'ig_id' when calling update_internet_gateway." if ig_id.nil?
3051
+ fail "Missing the required parameter 'update_internet_gateway_details' when calling update_internet_gateway." if update_internet_gateway_details.nil?
3052
+
3053
+ path = "/internetGateways/{igId}".sub('{igId}', ig_id.to_s)
3054
+
3055
+ # Query Params
3056
+ query_params = {}
3057
+
3058
+ # Header Params
3059
+ header_params = {}
3060
+ header_params['accept'] = 'application/json'
3061
+ header_params['content-type'] = 'application/json'
3062
+ header_params[:'if-match'] = opts[:'if_match'] if opts[:'if_match']
3063
+
3064
+ post_body = @api_client.object_to_http_body(update_internet_gateway_details)
3065
+
3066
+ return @api_client.call_api(
3067
+ :PUT,
3068
+ path,
3069
+ endpoint,
3070
+ :header_params => header_params,
3071
+ :query_params => query_params,
3072
+ :body => post_body,
3073
+ :return_type => 'OCI::Core::Models::InternetGateway')
3074
+ end
3075
+
3076
+ # Updates the display name for the specified IPSec connection.
3077
+ # Avoid entering confidential information.
3078
+ #
3079
+ # @param [String] ipsc_id The OCID of the IPSec connection.
3080
+ # @param [UpdateIPSecConnectionDetails] update_ip_sec_connection_details Details object for updating a IPSec connection.
3081
+ # @param [Hash] opts the optional parameters
3082
+ # @option opts [String] :if_match For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match`
3083
+ # parameter to the value of the etag from a previous GET or POST response for that resource. The resource
3084
+ # will be updated or deleted only if the etag you provide matches the resource's current etag value.
3085
+ #
3086
+ # @return [Response] A Response object with data of type OCI::Core::Models::IPSecConnection
3087
+ def update_ip_sec_connection(ipsc_id, update_ip_sec_connection_details, opts = {})
3088
+ logger.debug "Calling operation VirtualNetworkClient#update_ip_sec_connection." if logger
3089
+
3090
+ fail "Missing the required parameter 'ipsc_id' when calling update_ip_sec_connection." if ipsc_id.nil?
3091
+ fail "Missing the required parameter 'update_ip_sec_connection_details' when calling update_ip_sec_connection." if update_ip_sec_connection_details.nil?
3092
+
3093
+ path = "/ipsecConnections/{ipscId}".sub('{ipscId}', ipsc_id.to_s)
3094
+
3095
+ # Query Params
3096
+ query_params = {}
3097
+
3098
+ # Header Params
3099
+ header_params = {}
3100
+ header_params['accept'] = 'application/json'
3101
+ header_params['content-type'] = 'application/json'
3102
+ header_params[:'if-match'] = opts[:'if_match'] if opts[:'if_match']
3103
+
3104
+ post_body = @api_client.object_to_http_body(update_ip_sec_connection_details)
3105
+
3106
+ return @api_client.call_api(
3107
+ :PUT,
3108
+ path,
3109
+ endpoint,
3110
+ :header_params => header_params,
3111
+ :query_params => query_params,
3112
+ :body => post_body,
3113
+ :return_type => 'OCI::Core::Models::IPSecConnection')
3114
+ end
3115
+
3116
+ # Updates the specified private IP. You must specify the object's OCID.
3117
+ # Use this operation if you want to:
3118
+ #
3119
+ # - Move a secondary private IP to a different VNIC in the same subnet.
3120
+ # - Change the display name for a secondary private IP.
3121
+ # - Change the hostname for a secondary private IP.
3122
+ #
3123
+ # This operation cannot be used with primary private IPs.
3124
+ # To update the hostname for the primary IP on a VNIC, use
3125
+ # {#update_vnic update_vnic}.
3126
+ #
3127
+ # @param [String] private_ip_id The private IP's OCID.
3128
+ # @param [UpdatePrivateIpDetails] update_private_ip_details Private IP details.
3129
+ # @param [Hash] opts the optional parameters
3130
+ # @option opts [String] :if_match For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match`
3131
+ # parameter to the value of the etag from a previous GET or POST response for that resource. The resource
3132
+ # will be updated or deleted only if the etag you provide matches the resource's current etag value.
3133
+ #
3134
+ # @return [Response] A Response object with data of type OCI::Core::Models::PrivateIp
3135
+ def update_private_ip(private_ip_id, update_private_ip_details, opts = {})
3136
+ logger.debug "Calling operation VirtualNetworkClient#update_private_ip." if logger
3137
+
3138
+ fail "Missing the required parameter 'private_ip_id' when calling update_private_ip." if private_ip_id.nil?
3139
+ fail "Missing the required parameter 'update_private_ip_details' when calling update_private_ip." if update_private_ip_details.nil?
3140
+
3141
+ path = "/privateIps/{privateIpId}".sub('{privateIpId}', private_ip_id.to_s)
3142
+
3143
+ # Query Params
3144
+ query_params = {}
3145
+
3146
+ # Header Params
3147
+ header_params = {}
3148
+ header_params['accept'] = 'application/json'
3149
+ header_params['content-type'] = 'application/json'
3150
+ header_params[:'if-match'] = opts[:'if_match'] if opts[:'if_match']
3151
+
3152
+ post_body = @api_client.object_to_http_body(update_private_ip_details)
3153
+
3154
+ return @api_client.call_api(
3155
+ :PUT,
3156
+ path,
3157
+ endpoint,
3158
+ :header_params => header_params,
3159
+ :query_params => query_params,
3160
+ :body => post_body,
3161
+ :return_type => 'OCI::Core::Models::PrivateIp')
3162
+ end
3163
+
3164
+ # Updates the specified route table's display name or route rules.
3165
+ # Avoid entering confidential information.
3166
+ #
3167
+ # Note that the `routeRules` object you provide replaces the entire existing set of rules.
3168
+ #
3169
+ # @param [String] rt_id The OCID of the route table.
3170
+ # @param [UpdateRouteTableDetails] update_route_table_details Details object for updating a route table.
3171
+ # @param [Hash] opts the optional parameters
3172
+ # @option opts [String] :if_match For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match`
3173
+ # parameter to the value of the etag from a previous GET or POST response for that resource. The resource
3174
+ # will be updated or deleted only if the etag you provide matches the resource's current etag value.
3175
+ #
3176
+ # @return [Response] A Response object with data of type OCI::Core::Models::RouteTable
3177
+ def update_route_table(rt_id, update_route_table_details, opts = {})
3178
+ logger.debug "Calling operation VirtualNetworkClient#update_route_table." if logger
3179
+
3180
+ fail "Missing the required parameter 'rt_id' when calling update_route_table." if rt_id.nil?
3181
+ fail "Missing the required parameter 'update_route_table_details' when calling update_route_table." if update_route_table_details.nil?
3182
+
3183
+ path = "/routeTables/{rtId}".sub('{rtId}', rt_id.to_s)
3184
+
3185
+ # Query Params
3186
+ query_params = {}
3187
+
3188
+ # Header Params
3189
+ header_params = {}
3190
+ header_params['accept'] = 'application/json'
3191
+ header_params['content-type'] = 'application/json'
3192
+ header_params[:'if-match'] = opts[:'if_match'] if opts[:'if_match']
3193
+
3194
+ post_body = @api_client.object_to_http_body(update_route_table_details)
3195
+
3196
+ return @api_client.call_api(
3197
+ :PUT,
3198
+ path,
3199
+ endpoint,
3200
+ :header_params => header_params,
3201
+ :query_params => query_params,
3202
+ :body => post_body,
3203
+ :return_type => 'OCI::Core::Models::RouteTable')
3204
+ end
3205
+
3206
+ # Updates the specified security list's display name or rules.
3207
+ # Avoid entering confidential information.
3208
+ #
3209
+ # Note that the `egressSecurityRules` or `ingressSecurityRules` objects you provide replace the entire
3210
+ # existing objects.
3211
+ #
3212
+ # @param [String] security_list_id The OCID of the security list.
3213
+ # @param [UpdateSecurityListDetails] update_security_list_details Updated details for the security list.
3214
+ # @param [Hash] opts the optional parameters
3215
+ # @option opts [String] :if_match For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match`
3216
+ # parameter to the value of the etag from a previous GET or POST response for that resource. The resource
3217
+ # will be updated or deleted only if the etag you provide matches the resource's current etag value.
3218
+ #
3219
+ # @return [Response] A Response object with data of type OCI::Core::Models::SecurityList
3220
+ def update_security_list(security_list_id, update_security_list_details, opts = {})
3221
+ logger.debug "Calling operation VirtualNetworkClient#update_security_list." if logger
3222
+
3223
+ fail "Missing the required parameter 'security_list_id' when calling update_security_list." if security_list_id.nil?
3224
+ fail "Missing the required parameter 'update_security_list_details' when calling update_security_list." if update_security_list_details.nil?
3225
+
3226
+ path = "/securityLists/{securityListId}".sub('{securityListId}', security_list_id.to_s)
3227
+
3228
+ # Query Params
3229
+ query_params = {}
3230
+
3231
+ # Header Params
3232
+ header_params = {}
3233
+ header_params['accept'] = 'application/json'
3234
+ header_params['content-type'] = 'application/json'
3235
+ header_params[:'if-match'] = opts[:'if_match'] if opts[:'if_match']
3236
+
3237
+ post_body = @api_client.object_to_http_body(update_security_list_details)
3238
+
3239
+ return @api_client.call_api(
3240
+ :PUT,
3241
+ path,
3242
+ endpoint,
3243
+ :header_params => header_params,
3244
+ :query_params => query_params,
3245
+ :body => post_body,
3246
+ :return_type => 'OCI::Core::Models::SecurityList')
3247
+ end
3248
+
3249
+ # Updates the specified subnet's display name. Avoid entering confidential information.
3250
+ #
3251
+ # @param [String] subnet_id The OCID of the subnet.
3252
+ # @param [UpdateSubnetDetails] update_subnet_details Details object for updating a subnet.
3253
+ # @param [Hash] opts the optional parameters
3254
+ # @option opts [String] :if_match For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match`
3255
+ # parameter to the value of the etag from a previous GET or POST response for that resource. The resource
3256
+ # will be updated or deleted only if the etag you provide matches the resource's current etag value.
3257
+ #
3258
+ # @return [Response] A Response object with data of type OCI::Core::Models::Subnet
3259
+ def update_subnet(subnet_id, update_subnet_details, opts = {})
3260
+ logger.debug "Calling operation VirtualNetworkClient#update_subnet." if logger
3261
+
3262
+ fail "Missing the required parameter 'subnet_id' when calling update_subnet." if subnet_id.nil?
3263
+ fail "Missing the required parameter 'update_subnet_details' when calling update_subnet." if update_subnet_details.nil?
3264
+
3265
+ path = "/subnets/{subnetId}".sub('{subnetId}', subnet_id.to_s)
3266
+
3267
+ # Query Params
3268
+ query_params = {}
3269
+
3270
+ # Header Params
3271
+ header_params = {}
3272
+ header_params['accept'] = 'application/json'
3273
+ header_params['content-type'] = 'application/json'
3274
+ header_params[:'if-match'] = opts[:'if_match'] if opts[:'if_match']
3275
+
3276
+ post_body = @api_client.object_to_http_body(update_subnet_details)
3277
+
3278
+ return @api_client.call_api(
3279
+ :PUT,
3280
+ path,
3281
+ endpoint,
3282
+ :header_params => header_params,
3283
+ :query_params => query_params,
3284
+ :body => post_body,
3285
+ :return_type => 'OCI::Core::Models::Subnet')
3286
+ end
3287
+
3288
+ # Updates the specified VCN's display name.
3289
+ # Avoid entering confidential information.
3290
+ #
3291
+ # @param [String] vcn_id The OCID of the VCN.
3292
+ # @param [UpdateVcnDetails] update_vcn_details Details object for updating a VCN.
3293
+ # @param [Hash] opts the optional parameters
3294
+ # @option opts [String] :if_match For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match`
3295
+ # parameter to the value of the etag from a previous GET or POST response for that resource. The resource
3296
+ # will be updated or deleted only if the etag you provide matches the resource's current etag value.
3297
+ #
3298
+ # @return [Response] A Response object with data of type OCI::Core::Models::Vcn
3299
+ def update_vcn(vcn_id, update_vcn_details, opts = {})
3300
+ logger.debug "Calling operation VirtualNetworkClient#update_vcn." if logger
3301
+
3302
+ fail "Missing the required parameter 'vcn_id' when calling update_vcn." if vcn_id.nil?
3303
+ fail "Missing the required parameter 'update_vcn_details' when calling update_vcn." if update_vcn_details.nil?
3304
+
3305
+ path = "/vcns/{vcnId}".sub('{vcnId}', vcn_id.to_s)
3306
+
3307
+ # Query Params
3308
+ query_params = {}
3309
+
3310
+ # Header Params
3311
+ header_params = {}
3312
+ header_params['accept'] = 'application/json'
3313
+ header_params['content-type'] = 'application/json'
3314
+ header_params[:'if-match'] = opts[:'if_match'] if opts[:'if_match']
3315
+
3316
+ post_body = @api_client.object_to_http_body(update_vcn_details)
3317
+
3318
+ return @api_client.call_api(
3319
+ :PUT,
3320
+ path,
3321
+ endpoint,
3322
+ :header_params => header_params,
3323
+ :query_params => query_params,
3324
+ :body => post_body,
3325
+ :return_type => 'OCI::Core::Models::Vcn')
3326
+ end
3327
+
3328
+ # Updates the specified virtual circuit. This can be called by
3329
+ # either the customer who owns the virtual circuit, or the
3330
+ # provider (when provisioning or de-provisioning the virtual
3331
+ # circuit from their end). The documentation for
3332
+ # {#update_virtual_circuit_details update_virtual_circuit_details}
3333
+ # indicates who can update each property of the virtual circuit.
3334
+ #
3335
+ # **Important:** If the virtual circuit is working and in the
3336
+ # PROVISIONED state, updating any of the network-related properties
3337
+ # (such as the DRG being used, the BGP ASN, and so on) will cause the virtual
3338
+ # circuit's state to switch to PROVISIONING and the related BGP
3339
+ # session to go down. After Oracle re-provisions the virtual circuit,
3340
+ # its state will return to PROVISIONED. Make sure you confirm that
3341
+ # the associated BGP session is back up. For more information
3342
+ # about the various states and how to test connectivity, see
3343
+ # [FastConnect Overview](https://docs.us-phoenix-1.oraclecloud.com/Content/Network/Concepts/fastconnect.htm).
3344
+ #
3345
+ # @param [String] virtual_circuit_id The OCID of the virtual circuit.
3346
+ # @param [UpdateVirtualCircuitDetails] update_virtual_circuit_details Update VirtualCircuit fields.
3347
+ # @param [Hash] opts the optional parameters
3348
+ # @option opts [String] :if_match For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match`
3349
+ # parameter to the value of the etag from a previous GET or POST response for that resource. The resource
3350
+ # will be updated or deleted only if the etag you provide matches the resource's current etag value.
3351
+ #
3352
+ # @return [Response] A Response object with data of type OCI::Core::Models::VirtualCircuit
3353
+ def update_virtual_circuit(virtual_circuit_id, update_virtual_circuit_details, opts = {})
3354
+ logger.debug "Calling operation VirtualNetworkClient#update_virtual_circuit." if logger
3355
+
3356
+ fail "Missing the required parameter 'virtual_circuit_id' when calling update_virtual_circuit." if virtual_circuit_id.nil?
3357
+ fail "Missing the required parameter 'update_virtual_circuit_details' when calling update_virtual_circuit." if update_virtual_circuit_details.nil?
3358
+
3359
+ path = "/virtualCircuits/{virtualCircuitId}".sub('{virtualCircuitId}', virtual_circuit_id.to_s)
3360
+
3361
+ # Query Params
3362
+ query_params = {}
3363
+
3364
+ # Header Params
3365
+ header_params = {}
3366
+ header_params['accept'] = 'application/json'
3367
+ header_params['content-type'] = 'application/json'
3368
+ header_params[:'if-match'] = opts[:'if_match'] if opts[:'if_match']
3369
+
3370
+ post_body = @api_client.object_to_http_body(update_virtual_circuit_details)
3371
+
3372
+ return @api_client.call_api(
3373
+ :PUT,
3374
+ path,
3375
+ endpoint,
3376
+ :header_params => header_params,
3377
+ :query_params => query_params,
3378
+ :body => post_body,
3379
+ :return_type => 'OCI::Core::Models::VirtualCircuit')
3380
+ end
3381
+
3382
+ # Updates the specified VNIC.
3383
+ #
3384
+ # @param [String] vnic_id The OCID of the VNIC.
3385
+ # @param [UpdateVnicDetails] update_vnic_details Details object for updating a VNIC.
3386
+ # @param [Hash] opts the optional parameters
3387
+ # @option opts [String] :if_match For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match`
3388
+ # parameter to the value of the etag from a previous GET or POST response for that resource. The resource
3389
+ # will be updated or deleted only if the etag you provide matches the resource's current etag value.
3390
+ #
3391
+ # @return [Response] A Response object with data of type OCI::Core::Models::Vnic
3392
+ def update_vnic(vnic_id, update_vnic_details, opts = {})
3393
+ logger.debug "Calling operation VirtualNetworkClient#update_vnic." if logger
3394
+
3395
+ fail "Missing the required parameter 'vnic_id' when calling update_vnic." if vnic_id.nil?
3396
+ fail "Missing the required parameter 'update_vnic_details' when calling update_vnic." if update_vnic_details.nil?
3397
+
3398
+ path = "/vnics/{vnicId}".sub('{vnicId}', vnic_id.to_s)
3399
+
3400
+ # Query Params
3401
+ query_params = {}
3402
+
3403
+ # Header Params
3404
+ header_params = {}
3405
+ header_params['accept'] = 'application/json'
3406
+ header_params['content-type'] = 'application/json'
3407
+ header_params[:'if-match'] = opts[:'if_match'] if opts[:'if_match']
3408
+
3409
+ post_body = @api_client.object_to_http_body(update_vnic_details)
3410
+
3411
+ return @api_client.call_api(
3412
+ :PUT,
3413
+ path,
3414
+ endpoint,
3415
+ :header_params => header_params,
3416
+ :query_params => query_params,
3417
+ :body => post_body,
3418
+ :return_type => 'OCI::Core::Models::Vnic')
3419
+ end
3420
+ end
3421
+ end