ruạṛ
a ���f�Z � @ 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 dZd d� Zedd� �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� �Z e jd7d6� �Z ed8d9� �Z!e!jd:d9� �Z!ed;d<� �Z"e"jd=d<� �Z"ed>d?� �Z#e#jd@d?� �Z#dAdB� Z$dCdD� Z%dEdF� Z&dGS )H�VolumeAttachmenta� A base object for all types of attachments between a storage volume and an instance. For specific details about iSCSI attachments, see :class:`IScsiVolumeAttachment`. For general information about volume attachments, see `Overview of Block Volume Storage`__. **Warning:** Oracle recommends that you avoid using any confidential information when you supply string values using the API. __ https://docs.cloud.oracle.com/iaas/Content/Block/Concepts/overview.htm � ATTACHING�ATTACHED� DETACHING�DETACHED�UNKNOWN� LOGGING_IN�LOGIN_SUCCEEDED�LOGIN_FAILED�LOGGING_OUT�LOGOUT_SUCCEEDED� LOGOUT_FAILEDc K s� ddddddddddddddddd�| _ ddddd d ddd dddddddd�| _d| _d| _d| _d| _d| _d| _d| _d| _ d| _ d| _d| _d| _ d| _d| _d| _d| _dS )a Initializes a new VolumeAttachment object with values from keyword arguments. This class has the following subclasses and if you are using this class as input to a service operations then you should favor using a subclass over the base class: * :class:`~oci.core.models.IScsiVolumeAttachment` * :class:`~oci.core.models.EmulatedVolumeAttachment` * :class:`~oci.core.models.ParavirtualizedVolumeAttachment` The following keyword arguments are supported (corresponding to the getters/setters of this class): :param attachment_type: The value to assign to the attachment_type property of this VolumeAttachment. :type attachment_type: str :param availability_domain: The value to assign to the availability_domain property of this VolumeAttachment. :type availability_domain: str :param compartment_id: The value to assign to the compartment_id property of this VolumeAttachment. :type compartment_id: str :param device: The value to assign to the device property of this VolumeAttachment. :type device: str :param display_name: The value to assign to the display_name property of this VolumeAttachment. :type display_name: str :param id: The value to assign to the id property of this VolumeAttachment. :type id: str :param instance_id: The value to assign to the instance_id property of this VolumeAttachment. :type instance_id: str :param is_read_only: The value to assign to the is_read_only property of this VolumeAttachment. :type is_read_only: bool :param is_shareable: The value to assign to the is_shareable property of this VolumeAttachment. :type is_shareable: bool :param lifecycle_state: The value to assign to the lifecycle_state property of this VolumeAttachment. Allowed values for this property are: "ATTACHING", "ATTACHED", "DETACHING", "DETACHED", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type lifecycle_state: str :param time_created: The value to assign to the time_created property of this VolumeAttachment. :type time_created: datetime :param volume_id: The value to assign to the volume_id property of this VolumeAttachment. :type volume_id: str :param is_pv_encryption_in_transit_enabled: The value to assign to the is_pv_encryption_in_transit_enabled property of this VolumeAttachment. :type is_pv_encryption_in_transit_enabled: bool :param is_multipath: The value to assign to the is_multipath property of this VolumeAttachment. :type is_multipath: bool :param iscsi_login_state: The value to assign to the iscsi_login_state property of this VolumeAttachment. Allowed values for this property are: "UNKNOWN", "LOGGING_IN", "LOGIN_SUCCEEDED", "LOGIN_FAILED", "LOGGING_OUT", "LOGOUT_SUCCEEDED", "LOGOUT_FAILED", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type iscsi_login_state: str :param is_volume_created_during_launch: The value to assign to the is_volume_created_during_launch property of this VolumeAttachment. :type is_volume_created_during_launch: bool �str�boolZdatetime)�attachment_type�availability_domain�compartment_id�device�display_name�id�instance_id�is_read_only�is_shareable�lifecycle_state�time_created� volume_id�#is_pv_encryption_in_transit_enabled�is_multipath�iscsi_login_state�is_volume_created_during_launch�attachmentTypeZavailabilityDomainZ compartmentIdr ZdisplayNamer Z instanceIdZ isReadOnlyZisShareableZlifecycleStateZtimeCreatedZvolumeIdZisPvEncryptionInTransitEnabledZisMultipathZiscsiLoginStateZisVolumeCreatedDuringLaunchN)Z swagger_typesZ attribute_map�_attachment_type�_availability_domain�_compartment_id�_device� _display_name�_id�_instance_id� _is_read_only� _is_shareable�_lifecycle_state� _time_created� _volume_id�$_is_pv_encryption_in_transit_enabled� _is_multipath�_iscsi_login_state� _is_volume_created_during_launch)�self�kwargs� r7 �E/usr/lib/python3.9/site-packages/oci/core/models/volume_attachment.py�__init__H sd Q��zVolumeAttachment.__init__c C s4 | d }|dkrdS |dkr dS |dkr,dS dS d S ) z� Given the hash representation of a subtype of this class, use the info in the hash to return the class of the subtype. r$ ZiscsiZIScsiVolumeAttachmentZemulatedZEmulatedVolumeAttachmentZparavirtualizedZParavirtualizedVolumeAttachmentr Nr7 )Zobject_dictionary�typer7 r7 r8 �get_subtype� s zVolumeAttachment.get_subtypec C s | j S )z� **[Required]** Gets the attachment_type of this VolumeAttachment. The type of volume attachment. :return: The attachment_type of this VolumeAttachment. :rtype: str �r% �r5 r7 r7 r8 r � s z VolumeAttachment.attachment_typec C s || _ dS )z� Sets the attachment_type of this VolumeAttachment. The type of volume attachment. :param attachment_type: The attachment_type of this VolumeAttachment. :type: str Nr<