ruạṛ
a N��f�f � @ s8 d dl mZmZmZ d dlmZ eG dd� de��ZdS )� )�formatted_flat_dict� NONE_SENTINEL�#value_allowed_none_or_none_sentinel)�init_model_state_from_kwargsc @ s� e Zd ZdZdZdZdZdZdZdZ dZ d Zd ZdZ dd � Zedd� �Zejdd� �Zedd� �Zejdd� �Zedd� �Zejdd� �Zedd� �Zejdd� �Zedd� �Zejdd� �Zedd� �Zejdd� �Zed d!� �Zejd"d!� �Zed#d$� �Zejd%d$� �Zed&d'� �Zejd(d'� �Zed)d*� �Zejd+d*� �Zed,d-� �Zejd.d-� �Zed/d0� �Zejd1d0� �Zed2d3� �Zejd4d3� �Zed5d6� �Zejd7d6� �Zed8d9� �Zejd:d9� �Zd;d<� Z d=d>� Z!d?d@� Z"dAS )B�UpdateVirtualCircuitDetailsz, UpdateVirtualCircuitDetails model. �ORACLE_SERVICE_NETWORK�REGIONAL�MARKET_LEVEL�GLOBAL�ENABLED�DISABLED�ACTIVE�INACTIVE�MTU_1500�MTU_9000c K s� dddddddddddddddd�| _ d d ddd ddddddddddd�| _d| _d| _d| _d| _d| _d| _d| _d| _ d| _ d| _d| _d| _ d| _d| _d| _dS )aT Initializes a new UpdateVirtualCircuitDetails object with values from keyword arguments. The following keyword arguments are supported (corresponding to the getters/setters of this class): :param bandwidth_shape_name: The value to assign to the bandwidth_shape_name property of this UpdateVirtualCircuitDetails. :type bandwidth_shape_name: str :param cross_connect_mappings: The value to assign to the cross_connect_mappings property of this UpdateVirtualCircuitDetails. :type cross_connect_mappings: list[oci.core.models.CrossConnectMapping] :param routing_policy: The value to assign to the routing_policy property of this UpdateVirtualCircuitDetails. Allowed values for items in this list are: "ORACLE_SERVICE_NETWORK", "REGIONAL", "MARKET_LEVEL", "GLOBAL" :type routing_policy: list[str] :param bgp_admin_state: The value to assign to the bgp_admin_state property of this UpdateVirtualCircuitDetails. Allowed values for this property are: "ENABLED", "DISABLED" :type bgp_admin_state: str :param is_bfd_enabled: The value to assign to the is_bfd_enabled property of this UpdateVirtualCircuitDetails. :type is_bfd_enabled: bool :param customer_bgp_asn: The value to assign to the customer_bgp_asn property of this UpdateVirtualCircuitDetails. :type customer_bgp_asn: int :param customer_asn: The value to assign to the customer_asn property of this UpdateVirtualCircuitDetails. :type customer_asn: int :param defined_tags: The value to assign to the defined_tags property of this UpdateVirtualCircuitDetails. :type defined_tags: dict(str, dict(str, object)) :param display_name: The value to assign to the display_name property of this UpdateVirtualCircuitDetails. :type display_name: str :param freeform_tags: The value to assign to the freeform_tags property of this UpdateVirtualCircuitDetails. :type freeform_tags: dict(str, str) :param gateway_id: The value to assign to the gateway_id property of this UpdateVirtualCircuitDetails. :type gateway_id: str :param provider_state: The value to assign to the provider_state property of this UpdateVirtualCircuitDetails. Allowed values for this property are: "ACTIVE", "INACTIVE" :type provider_state: str :param provider_service_key_name: The value to assign to the provider_service_key_name property of this UpdateVirtualCircuitDetails. :type provider_service_key_name: str :param reference_comment: The value to assign to the reference_comment property of this UpdateVirtualCircuitDetails. :type reference_comment: str :param ip_mtu: The value to assign to the ip_mtu property of this UpdateVirtualCircuitDetails. Allowed values for this property are: "MTU_1500", "MTU_9000" :type ip_mtu: str �strzlist[CrossConnectMapping]z list[str]�bool�intzdict(str, dict(str, object))zdict(str, str))�bandwidth_shape_name�cross_connect_mappings�routing_policy�bgp_admin_state�is_bfd_enabled�customer_bgp_asn�customer_asn�defined_tags�display_name� freeform_tags� gateway_id�provider_state�provider_service_key_name�reference_comment�ip_mtu�bandwidthShapeName�crossConnectMappings� routingPolicy� bgpAdminState�isBfdEnabled�customerBgpAsn�customerAsn�definedTags�displayName�freeformTags� gatewayId� providerState�providerServiceKeyName�referenceComment�ipMtuN)� swagger_types� attribute_map�_bandwidth_shape_name�_cross_connect_mappings�_routing_policy�_bgp_admin_state�_is_bfd_enabled�_customer_bgp_asn� _customer_asn� _defined_tags� _display_name�_freeform_tags�_gateway_id�_provider_state�_provider_service_key_name�_reference_comment�_ip_mtu)�self�kwargs� rE ��/sparta/input/_build_configuration/image_build+validate/lib/bmcenv/lib64/python3.9/site-packages/oci/core/models/update_virtual_circuit_details.py�__init__8 s^ G��z$UpdateVirtualCircuitDetails.__init__c C s | j S )a� Gets the bandwidth_shape_name of this UpdateVirtualCircuitDetails. The provisioned data rate of the connection. To get a list of the available bandwidth levels (that is, shapes), see :func:`list_fast_connect_provider_virtual_circuit_bandwidth_shapes`. To be updated only by the customer who owns the virtual circuit. :return: The bandwidth_shape_name of this UpdateVirtualCircuitDetails. :rtype: str �r4 �rC rE rE rF r � s z0UpdateVirtualCircuitDetails.bandwidth_shape_namec C s || _ dS )a� Sets the bandwidth_shape_name of this UpdateVirtualCircuitDetails. The provisioned data rate of the connection. To get a list of the available bandwidth levels (that is, shapes), see :func:`list_fast_connect_provider_virtual_circuit_bandwidth_shapes`. To be updated only by the customer who owns the virtual circuit. :param bandwidth_shape_name: The bandwidth_shape_name of this UpdateVirtualCircuitDetails. :type: str NrH )rC r rE rE rF r � s c C s | j S )a, Gets the cross_connect_mappings of this UpdateVirtualCircuitDetails. An array of mappings, each containing properties for a cross-connect or cross-connect group associated with this virtual circuit. The customer and provider can update different properties in the mapping depending on the situation. See the description of the :class:`CrossConnectMapping`. :return: The cross_connect_mappings of this UpdateVirtualCircuitDetails. :rtype: list[oci.core.models.CrossConnectMapping] �r5 rI rE rE rF r � s z2UpdateVirtualCircuitDetails.cross_connect_mappingsc C s || _ dS )aA Sets the cross_connect_mappings of this UpdateVirtualCircuitDetails. An array of mappings, each containing properties for a cross-connect or cross-connect group associated with this virtual circuit. The customer and provider can update different properties in the mapping depending on the situation. See the description of the :class:`CrossConnectMapping`. :param cross_connect_mappings: The cross_connect_mappings of this UpdateVirtualCircuitDetails. :type: list[oci.core.models.CrossConnectMapping] NrJ )rC r rE rE rF r � s c C s | j S )a� Gets the routing_policy of this UpdateVirtualCircuitDetails. The routing policy sets how routing information about the Oracle cloud is shared over a public virtual circuit. Policies available are: `ORACLE_SERVICE_NETWORK`, `REGIONAL`, `MARKET_LEVEL`, and `GLOBAL`. See `Route Filtering`__ for details. By default, routing information is shared for all routes in the same market. __ https://docs.cloud.oracle.com/iaas/Content/Network/Concepts/routingonprem.htm#route_filtering Allowed values for items in this list are: "ORACLE_SERVICE_NETWORK", "REGIONAL", "MARKET_LEVEL", "GLOBAL" :return: The routing_policy of this UpdateVirtualCircuitDetails. :rtype: list[str] )r6 rI rE rE rF r � s z*UpdateVirtualCircuitDetails.routing_policyc C s@ g d�}|r6|t ur6|D ]}t||�std�|���q|| _dS )a� Sets the routing_policy of this UpdateVirtualCircuitDetails. The routing policy sets how routing information about the Oracle cloud is shared over a public virtual circuit. Policies available are: `ORACLE_SERVICE_NETWORK`, `REGIONAL`, `MARKET_LEVEL`, and `GLOBAL`. See `Route Filtering`__ for details. By default, routing information is shared for all routes in the same market. __ https://docs.cloud.oracle.com/iaas/Content/Network/Concepts/routingonprem.htm#route_filtering :param routing_policy: The routing_policy of this UpdateVirtualCircuitDetails. :type: list[str] )r r r r z>Invalid value for `routing_policy`, must be None or one of {0}N)r r � ValueError�formatr6 )rC r �allowed_values�valuerE rE rF r s ��c C s | j S )a� Gets the bgp_admin_state of this UpdateVirtualCircuitDetails. Set to `ENABLED` (the default) to activate the BGP session of the virtual circuit, set to `DISABLED` to deactivate the virtual circuit. Allowed values for this property are: "ENABLED", "DISABLED" :return: The bgp_admin_state of this UpdateVirtualCircuitDetails. :rtype: str )r7 rI rE rE rF r s z+UpdateVirtualCircuitDetails.bgp_admin_statec C s* ddg}t ||�s td�|���|| _dS )aM Sets the bgp_admin_state of this UpdateVirtualCircuitDetails. Set to `ENABLED` (the default) to activate the BGP session of the virtual circuit, set to `DISABLED` to deactivate the virtual circuit. :param bgp_admin_state: The bgp_admin_state of this UpdateVirtualCircuitDetails. :type: str r r z?Invalid value for `bgp_admin_state`, must be None or one of {0}N)r rK rL r7 )rC r rM rE rE rF r - s ��c C s | j S )a6 Gets the is_bfd_enabled of this UpdateVirtualCircuitDetails. Set to `true` to enable BFD for IPv4 BGP peering, or set to `false` to disable BFD. If this is not set, the default is `false`. :return: The is_bfd_enabled of this UpdateVirtualCircuitDetails. :rtype: bool �r8 rI rE rE rF r ? s z*UpdateVirtualCircuitDetails.is_bfd_enabledc C s || _ dS )aC Sets the is_bfd_enabled of this UpdateVirtualCircuitDetails. Set to `true` to enable BFD for IPv4 BGP peering, or set to `false` to disable BFD. If this is not set, the default is `false`. :param is_bfd_enabled: The is_bfd_enabled of this UpdateVirtualCircuitDetails. :type: bool NrO )rC r rE rE rF r K s c C s | j S )a& Gets the customer_bgp_asn of this UpdateVirtualCircuitDetails. Deprecated. Instead use `customerAsn`. If you specify values for both, the request will be rejected. :return: The customer_bgp_asn of this UpdateVirtualCircuitDetails. :rtype: int �r9 rI rE rE rF r W s z,UpdateVirtualCircuitDetails.customer_bgp_asnc C s || _ dS )a5 Sets the customer_bgp_asn of this UpdateVirtualCircuitDetails. Deprecated. Instead use `customerAsn`. If you specify values for both, the request will be rejected. :param customer_bgp_asn: The customer_bgp_asn of this UpdateVirtualCircuitDetails. :type: int NrP )rC r rE rE rF r d s c C s | j S )a� Gets the customer_asn of this UpdateVirtualCircuitDetails. The BGP ASN of the network at the other end of the BGP session from Oracle. If the BGP session is from the customer's edge router to Oracle, the required value is the customer's ASN, and it can be updated only by the customer. If the BGP session is from the provider's edge router to Oracle, the required value is the provider's ASN, and it can be updated only by the provider. Can be a 2-byte or 4-byte ASN. Uses "asplain" format. :return: The customer_asn of this UpdateVirtualCircuitDetails. :rtype: int �r: rI rE rE rF r q s z(UpdateVirtualCircuitDetails.customer_asnc C s || _ dS )a� Sets the customer_asn of this UpdateVirtualCircuitDetails. The BGP ASN of the network at the other end of the BGP session from Oracle. If the BGP session is from the customer's edge router to Oracle, the required value is the customer's ASN, and it can be updated only by the customer. If the BGP session is from the provider's edge router to Oracle, the required value is the provider's ASN, and it can be updated only by the provider. Can be a 2-byte or 4-byte ASN. Uses "asplain" format. :param customer_asn: The customer_asn of this UpdateVirtualCircuitDetails. :type: int NrQ )rC r rE rE rF r � s c C s | j S )a� Gets the defined_tags of this UpdateVirtualCircuitDetails. Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see `Resource Tags`__. Example: `{"Operations": {"CostCenter": "42"}}` __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm :return: The defined_tags of this UpdateVirtualCircuitDetails. :rtype: dict(str, dict(str, object)) �r; rI rE rE rF r � s z(UpdateVirtualCircuitDetails.defined_tagsc C s || _ dS )a� Sets the defined_tags of this UpdateVirtualCircuitDetails. Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see `Resource Tags`__. Example: `{"Operations": {"CostCenter": "42"}}` __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm :param defined_tags: The defined_tags of this UpdateVirtualCircuitDetails. :type: dict(str, dict(str, object)) NrR )rC r rE rE rF r � s c C s | j S )a) Gets the display_name of this UpdateVirtualCircuitDetails. A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information. :return: The display_name of this UpdateVirtualCircuitDetails. :rtype: str �r<