ruạṛ
a ���f�M � @ 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 ZdZdd� Zedd� �Zejdd� �Zedd� �Zejd d� �Zed d� �Z e jdd� �Z ed d� �Z e jdd� �Z edd� �Zejdd� �Zedd� �Zejdd� �Zedd� �Z e jdd� �Z edd� �Zejdd� �Zedd� �Zejdd� �Zedd � �Zejd!d � �Zed"d#� �Zejd$d#� �Zed%d&� �Zejd'd&� �Zed(d)� �Zejd*d)� �Zd+d,� Zd-d.� Zd/d0� Zd1S )2� PrivateIpa� A *private IP* is a conceptual term that refers to an IPv4 private IP address and related properties. The `privateIp` object is the API representation of a private IP. **Note:** For information about IPv6 addresses, see :class:`Ipv6`. Each instance has a *primary private IP* that is automatically created and assigned to the primary VNIC during instance launch. If you add a secondary VNIC to the instance, it also automatically gets a primary private IP. You can't remove a primary private IP from its VNIC. The primary private IP is automatically deleted when the VNIC is terminated. You can add *secondary private IPs* to a VNIC after it's created. For more information, see the `privateIp` operations and also `IP Addresses`__. **Note:** Only :func:`list_private_ips` and :func:`get_private_ip` work with *primary* private IPs. To create and update primary private IPs, you instead work with instance and VNIC operations. For example, a primary private IP's properties come from the values you specify in :class:`CreateVnicDetails` when calling either :func:`launch_instance` or :func:`attach_vnic`. To update the hostname for a primary private IP, you use `:func:`update_vnic``. `PrivateIp` objects that are created for use with the Oracle Cloud VMware Solution are assigned to a VLAN and not a VNIC in a subnet. See the descriptions of the relevant attributes in the `PrivateIp` object. Also see :class:`Vlan`. To use any of the API operations, you must be authorized in an IAM policy. If you're not authorized, talk to an administrator. If you're an administrator who needs to write policies to give users access, see `Getting Started with Policies`__. __ https://docs.cloud.oracle.com/iaas/Content/Network/Tasks/managingIPaddresses.htm __ https://docs.cloud.oracle.com/iaas/Content/Identity/Concepts/policygetstarted.htm c K s� dddddddddddddd� | _ ddd d ddd ddddddd� | _d| _d| _d| _d| _d| _d| _d| _d| _ d| _ d| _d| _d| _ d| _dS )a� Initializes a new PrivateIp object with values from keyword arguments. The following keyword arguments are supported (corresponding to the getters/setters of this class): :param availability_domain: The value to assign to the availability_domain property of this PrivateIp. :type availability_domain: str :param compartment_id: The value to assign to the compartment_id property of this PrivateIp. :type compartment_id: str :param defined_tags: The value to assign to the defined_tags property of this PrivateIp. :type defined_tags: dict(str, dict(str, object)) :param display_name: The value to assign to the display_name property of this PrivateIp. :type display_name: str :param freeform_tags: The value to assign to the freeform_tags property of this PrivateIp. :type freeform_tags: dict(str, str) :param hostname_label: The value to assign to the hostname_label property of this PrivateIp. :type hostname_label: str :param id: The value to assign to the id property of this PrivateIp. :type id: str :param ip_address: The value to assign to the ip_address property of this PrivateIp. :type ip_address: str :param is_primary: The value to assign to the is_primary property of this PrivateIp. :type is_primary: bool :param vlan_id: The value to assign to the vlan_id property of this PrivateIp. :type vlan_id: str :param subnet_id: The value to assign to the subnet_id property of this PrivateIp. :type subnet_id: str :param time_created: The value to assign to the time_created property of this PrivateIp. :type time_created: datetime :param vnic_id: The value to assign to the vnic_id property of this PrivateIp. :type vnic_id: str �strzdict(str, dict(str, object))zdict(str, str)�boolZdatetime) �availability_domain�compartment_id�defined_tags�display_name� freeform_tags�hostname_label�id� ip_address� is_primary�vlan_id� subnet_id�time_created�vnic_idZavailabilityDomainZ compartmentIdZdefinedTagsZdisplayNameZfreeformTagsZ hostnameLabelr Z ipAddressZ isPrimaryZvlanIdZsubnetIdZtimeCreatedZvnicIdN)Z swagger_typesZ attribute_map�_availability_domain�_compartment_id� _defined_tags� _display_name�_freeform_tags�_hostname_label�_id�_ip_address�_is_primary�_vlan_id� _subnet_id� _time_created�_vnic_id)�self�kwargs� r% �>/usr/lib/python3.9/site-packages/oci/core/models/private_ip.py�__init__6 sR ;��zPrivateIp.__init__c C s | j S )a^ Gets the availability_domain of this PrivateIp. The private IP's availability domain. This attribute will be null if this is a *secondary* private IP assigned to a VNIC that is in a *regional* subnet. Example: `Uocm:PHX-AD-1` :return: The availability_domain of this PrivateIp. :rtype: str �r �r# r% r% r&