lib/oci/core/virtual_network_client.rb
# Updates the specified virtual circuit. This can be called by
# either the customer who owns the virtual circuit, or the
# provider (when provisioning or de-provisioning the virtual
# circuit from their end). The documentation for
# {#update_virtual_circuit_details update_virtual_circuit_details}
# indicates who can update each property of the virtual circuit.
#
# **Important:** If the virtual circuit is working and in the
# PROVISIONED state, updating any of the network-related properties
# (such as the DRG being used, the BGP ASN, and so on) will cause the virtual
# circuit's state to switch to PROVISIONING and the related BGP
# session to go down. After Oracle re-provisions the virtual circuit,
# its state will return to PROVISIONED. Make sure you confirm that
# the associated BGP session is back up. For more information
# about the various states and how to test connectivity, see
# [FastConnect Overview](https://docs.cloud.oracle.com/iaas/Content/Network/Concepts/fastconnect.htm).
#
# To change the list of public IP prefixes for a public virtual circuit,
# use {#bulk_add_virtual_circuit_public_prefixes bulk_add_virtual_circuit_public_prefixes}
# and
# {#bulk_delete_virtual_circuit_public_prefixes bulk_delete_virtual_circuit_public_prefixes}.
# Updating the list of prefixes does NOT cause the BGP session to go down. However,
# Oracle must verify the customer's ownership of each added prefix before
# traffic for that prefix will flow across the virtual circuit.
#
# @param [String] virtual_circuit_id The OCID of the virtual circuit.
# @param [OCI::Core::Models::UpdateVirtualCircuitDetails] update_virtual_circuit_details Update VirtualCircuit fields.
# @param [Hash] opts the optional parameters
# @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
#   retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
# @option opts [String] :if_match For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match`
#   parameter to the value of the etag from a previous GET or POST response for that resource. The resource
#   will be updated or deleted only if the etag you provide matches the resource's current etag value.
#
# @return [Response] A Response object with data of type {OCI::Core::Models::VirtualCircuit VirtualCircuit}
# @note Click [here](https://docs.cloud.oracle.com/en-us/iaas/tools/ruby-sdk-examples/latest/core/update_virtual_circuit.rb.html) to see an example of how to use update_virtual_circuit API.
Updates the specified virtual circuit. This can be called by
either the customer who owns the virtual circuit, or the
provider (when provisioning or de-provisioning the virtual
circuit from their end). The documentation for
{#update_virtual_circuit_details update_virtual_circuit_details}
indicates who can update each property of the virtual circuit.

If the virtual circuit is working and in the
PROVISIONED state, updating any of the network-related properties
(such as the DRG being used, the BGP ASN, and so on) will cause the virtual
circuit's state to switch to PROVISIONING and the related BGP
session to go down. After Oracle re-provisions the virtual circuit,
its state will return to PROVISIONED. Make sure you confirm that
the associated BGP session is back up. For more information
about the various states and how to test connectivity, see
[FastConnect Overview].

To change the list of public IP prefixes for a public virtual circuit,
use {#bulk_add_virtual_circuit_public_prefixes bulk_add_virtual_circuit_public_prefixes}
and
{#bulk_delete_virtual_circuit_public_prefixes bulk_delete_virtual_circuit_public_prefixes}.
Updating the list of prefixes does NOT cause the BGP session to go down. However,
Oracle must verify the customer's ownership of each added prefix before
traffic for that prefix will flow across the virtual circuit.
Updates the specified virtual circuit . This can be called by either the customer who owns the virtual circuit or the provider ( when provisioning or de - provisioning the virtual circuit from their end ) . The documentation for { #update_virtual_circuit_details update_virtual_circuit_details } indicates who can update each property of the virtual circuit . If the virtual circuit is working and in the PROVISIONED state updating any of the network - related properties ( such as the DRG being used the BGP ASN and so on ) will cause the virtual circuit ' s state to switch to PROVISIONING and the related BGP session to go down . After Oracle re - provisions the virtual circuit its state will return to PROVISIONED . Make sure you confirm that the associated BGP session is back up . For more information about the various states and how to test connectivity see [ FastConnect Overview ] . To change the list of public IP prefixes for a public virtual circuit use { #bulk_add_virtual_circuit_public_prefixes bulk_add_virtual_circuit_public_prefixes } and { #bulk_delete_virtual_circuit_public_prefixes bulk_delete_virtual_circuit_public_prefixes } . Updating the list of prefixes does NOT cause the BGP session to go down . However Oracle must verify the customer ' s ownership of each added prefix before traffic for that prefix will flow across the virtual circuit .
def update_virtual_circuit(virtual_circuit_id, update_virtual_circuit_details, opts = {})
      logger.debug 'Calling operation VirtualNetworkClient#update_virtual_circuit.' if logger
      raise "Missing the required parameter 'virtual_circuit_id' when calling update_virtual_circuit." if virtual_circuit_id.nil?
      raise "Missing the required parameter 'update_virtual_circuit_details' when calling update_virtual_circuit." if update_virtual_circuit_details.nil?
      raise "Parameter value for 'virtual_circuit_id' must not be blank" if OCI::Internal::Util.blank_string?(virtual_circuit_id)
      path = '/virtualCircuits/{virtualCircuitId}'.sub('{virtualCircuitId}', virtual_circuit_id.to_s)
      operation_signing_strategy = :standard
      query_params = {}
      header_params = {}
      header_params[:accept] = 'application/json'
      header_params[:'content-type'] = 'application/json'
      header_params[:'if-match'] = opts[:if_match] if opts[:if_match]
      post_body = @api_client.object_to_http_body(update_virtual_circuit_details)
      OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'VirtualNetworkClient#update_virtual_circuit') do
        @api_client.call_api(
          :PUT,
          path,
          endpoint,
          header_params: header_params,
          query_params: query_params,
          operation_signing_strategy: operation_signing_strategy,
          body: post_body,
          return_type: 'OCI::Core::Models::VirtualCircuit'
        )
      end
    end
def update_virtual_circuit ( virtual_circuit_id , update_virtual_circuit_details , opts = { } ) logger . debug 'Calling operation VirtualNetworkClient#update_virtual_circuit.' if logger raise "Missing the required parameter 'virtual_circuit_id' when calling update_virtual_circuit." if virtual_circuit_id . nil? raise "Missing the required parameter 'update_virtual_circuit_details' when calling update_virtual_circuit." if update_virtual_circuit_details . nil? raise "Parameter value for 'virtual_circuit_id' must not be blank" if OCI :: Internal :: Util . blank_string? ( virtual_circuit_id ) path = '/virtualCircuits/{virtualCircuitId}' . sub ( '{virtualCircuitId}' , virtual_circuit_id . to_s ) operation_signing_strategy = :standard query_params = { } header_params = { } header_params [ :accept ] = 'application/json' header_params [ :' content-type ' ] = 'application/json' header_params [ :' if-match ' ] = opts [ :if_match ] if opts [ :if_match ] post_body = @api_client . object_to_http_body ( update_virtual_circuit_details ) OCI :: Retry . make_retrying_call ( applicable_retry_config ( opts ) , call_name : 'VirtualNetworkClient#update_virtual_circuit' ) do @api_client . call_api ( :PUT , path , endpoint , header_params : header_params , query_params : query_params , operation_signing_strategy : operation_signing_strategy , body : post_body , return_type : 'OCI::Core::Models::VirtualCircuit' ) end end
Updates the specified virtual circuit.
Updates the specified virtual circuit .
# rubocop:disable Style/NegatedIf # Query Params # Header Params # rubocop:enable Style/NegatedIf # rubocop:disable Metrics/BlockLength # rubocop:enable Metrics/BlockLength
A Response object with data of type {OCI::Core::Models::VirtualCircuit VirtualCircuit}
A Response object with data of type { OCI :: Core :: Models :: VirtualCircuit VirtualCircuit }
Response
virtual_circuit_id
<not_specific>
update_virtual_circuit_details
<not_specific>
opts
:if_match For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` parameter to the value of the etag from a previous GET or POST response for that resource. The resource will be updated or deleted only if the etag you provide matches the resource's current etag value.
: if_match For optimistic concurrency control . In the PUT or DELETE call for a resource set the ` if - match ` parameter to the value of the etag from a previous GET or POST response for that resource . The resource will be updated or deleted only if the etag you provide matches the resource ' s current etag value .
<not_specific>
opts the optional parameters
opts the optional parameters
note
Click [here] to see an example of how to use update_virtual_circuit API.
Click [ here ] to see an example of how to use update_virtual_circuit API .