o
    ëÉ¶d&  ã                   @   s8   d dl mZmZmZ d dlmZ eG dd„ deƒƒZdS )é    )Úformatted_flat_dictÚNONE_SENTINELÚ#value_allowed_none_or_none_sentinel)Úinit_model_state_from_kwargsc                   @   sú   e Zd ZdZdZdZdZdZdZdd„ Z	e
d	d
„ ƒZejdd
„ ƒZe
dd„ ƒZejdd„ ƒZe
dd„ ƒZejdd„ ƒZe
dd„ ƒZejdd„ ƒZe
dd„ ƒZejdd„ ƒZe
dd„ ƒZejdd„ ƒZe
dd„ ƒZejdd„ ƒZdd„ Zd d!„ Zd"d#„ Zd$S )%ÚApiKeyaê  
    A PEM-format RSA credential for securing requests to the Oracle Cloud Infrastructure REST API. Also known
    as an *API signing key*. Specifically, this is the public key from the key pair. The private key remains with
    the user calling the API. For information about generating a key pair
    in the required PEM format, see `Required Keys and OCIDs`__.

    **Important:** This is **not** the SSH key for accessing compute instances.

    Each user can have a maximum of three API signing keys.

    For more information about user credentials, see `User Credentials`__.

    __ https://docs.cloud.oracle.com/Content/API/Concepts/apisigningkey.htm
    __ https://docs.cloud.oracle.com/Content/Identity/Concepts/usercredentials.htm
    ÚCREATINGÚACTIVEÚINACTIVEÚDELETINGÚDELETEDc                 K   sZ   ddddddddœ| _ ddddd	d
ddœ| _d| _d| _d| _d| _d| _d| _d| _dS )a\  
        Initializes a new ApiKey object with values from keyword arguments.
        The following keyword arguments are supported (corresponding to the getters/setters of this class):

        :param key_id:
            The value to assign to the key_id property of this ApiKey.
        :type key_id: str

        :param key_value:
            The value to assign to the key_value property of this ApiKey.
        :type key_value: str

        :param fingerprint:
            The value to assign to the fingerprint property of this ApiKey.
        :type fingerprint: str

        :param user_id:
            The value to assign to the user_id property of this ApiKey.
        :type user_id: str

        :param time_created:
            The value to assign to the time_created property of this ApiKey.
        :type time_created: datetime

        :param lifecycle_state:
            The value to assign to the lifecycle_state property of this ApiKey.
            Allowed values for this property are: "CREATING", "ACTIVE", "INACTIVE", "DELETING", "DELETED", 'UNKNOWN_ENUM_VALUE'.
            Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
        :type lifecycle_state: str

        :param inactive_status:
            The value to assign to the inactive_status property of this ApiKey.
        :type inactive_status: int

        ÚstrÚdatetimeÚint)Úkey_idÚ	key_valueÚfingerprintÚuser_idÚtime_createdÚlifecycle_stateÚinactive_statusZkeyIdZkeyValuer   ZuserIdZtimeCreatedZlifecycleStateZinactiveStatusN)	Zswagger_typesZattribute_mapÚ_key_idÚ
_key_valueÚ_fingerprintÚ_user_idÚ_time_createdÚ_lifecycle_stateÚ_inactive_status)ÚselfÚkwargs© r   ú?usr/lib/python3.10/site-packages/oci/identity/models/api_key.pyÚ__init__2   s.   %ùù

zApiKey.__init__c                 C   ó   | j S )zæ
        Gets the key_id of this ApiKey.
        An Oracle-assigned identifier for the key, in this format:
        TENANCY_OCID/USER_OCID/KEY_FINGERPRINT.


        :return: The key_id of this ApiKey.
        :rtype: str
        ©r   ©r   r   r   r    r   r   s   zApiKey.key_idc                 C   ó
   || _ dS )zë
        Sets the key_id of this ApiKey.
        An Oracle-assigned identifier for the key, in this format:
        TENANCY_OCID/USER_OCID/KEY_FINGERPRINT.


        :param key_id: The key_id of this ApiKey.
        :type: str
        Nr#   )r   r   r   r   r    r      s   
c                 C   r"   )z’
        Gets the key_value of this ApiKey.
        The key's value.


        :return: The key_value of this ApiKey.
        :rtype: str
        ©r   r$   r   r   r    r   Œ   ó   
zApiKey.key_valuec                 C   r%   )zš
        Sets the key_value of this ApiKey.
        The key's value.


        :param key_value: The key_value of this ApiKey.
        :type: str
        Nr&   )r   r   r   r   r    r   ˜   ó   

c                 C   r"   )zÔ
        Gets the fingerprint of this ApiKey.
        The key's fingerprint (e.g., 12:34:56:78:90:ab:cd:ef:12:34:56:78:90:ab:cd:ef).


        :return: The fingerprint of this ApiKey.
        :rtype: str
        ©r   r$   r   r   r    r   ¤   r'   zApiKey.fingerprintc                 C   r%   )zÞ
        Sets the fingerprint of this ApiKey.
        The key's fingerprint (e.g., 12:34:56:78:90:ab:cd:ef:12:34:56:78:90:ab:cd:ef).


        :param fingerprint: The fingerprint of this ApiKey.
        :type: str
        Nr)   )r   r   r   r   r    r   °   r(   c                 C   r"   )z¦
        Gets the user_id of this ApiKey.
        The OCID of the user the key belongs to.


        :return: The user_id of this ApiKey.
        :rtype: str
        ©r   r$   r   r   r    r   ¼   r'   zApiKey.user_idc                 C   r%   )z¬
        Sets the user_id of this ApiKey.
        The OCID of the user the key belongs to.


        :param user_id: The user_id of this ApiKey.
        :type: str
        Nr*   )r   r   r   r   r    r   È   r(   c                 C   r"   )a
  
        Gets the time_created of this ApiKey.
        Date and time the `ApiKey` object was created, in the format defined by RFC3339.

        Example: `2016-08-25T21:10:29.600Z`


        :return: The time_created of this ApiKey.
        :rtype: datetime
        ©r   r$   r   r   r    r   Ô   s   zApiKey.time_createdc                 C   r%   )a  
        Sets the time_created of this ApiKey.
        Date and time the `ApiKey` object was created, in the format defined by RFC3339.

        Example: `2016-08-25T21:10:29.600Z`


        :param time_created: The time_created of this ApiKey.
        :type: datetime
        Nr+   )r   r   r   r   r    r   â   s   
c                 C   r"   )a  
        Gets the lifecycle_state of this ApiKey.
        The API key's current state. After creating an `ApiKey` object, make sure its `lifecycleState` changes from
        CREATING to ACTIVE before using it.

        Allowed values for this property are: "CREATING", "ACTIVE", "INACTIVE", "DELETING", "DELETED", 'UNKNOWN_ENUM_VALUE'.
        Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.


        :return: The lifecycle_state of this ApiKey.
        :rtype: str
        )r   r$   r   r   r    r   ð   s   zApiKey.lifecycle_statec                 C   s    g d¢}t ||ƒsd}|| _dS )a3  
        Sets the lifecycle_state of this ApiKey.
        The API key's current state. After creating an `ApiKey` object, make sure its `lifecycleState` changes from
        CREATING to ACTIVE before using it.


        :param lifecycle_state: The lifecycle_state of this ApiKey.
        :type: str
        )r   r   r	   r
   r   ZUNKNOWN_ENUM_VALUEN)r   r   )r   r   Zallowed_valuesr   r   r    r      s   

c                 C   r"   )z½
        Gets the inactive_status of this ApiKey.
        The detailed status of INACTIVE lifecycleState.


        :return: The inactive_status of this ApiKey.
        :rtype: int
        ©r   r$   r   r   r    r     r'   zApiKey.inactive_statusc                 C   r%   )zË
        Sets the inactive_status of this ApiKey.
        The detailed status of INACTIVE lifecycleState.


        :param inactive_status: The inactive_status of this ApiKey.
        :type: int
        Nr,   )r   r   r   r   r    r     r(   c                 C   s   t | ƒS ©N)r   r$   r   r   r    Ú__repr__(  s   zApiKey.__repr__c                 C   s   |d u rdS | j |j kS )NF)Ú__dict__©r   Úotherr   r   r    Ú__eq__+  s   zApiKey.__eq__c                 C   s
   | |k S r-   r   r0   r   r   r    Ú__ne__1  s   
zApiKey.__ne__N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__ZLIFECYCLE_STATE_CREATINGZLIFECYCLE_STATE_ACTIVEZLIFECYCLE_STATE_INACTIVEZLIFECYCLE_STATE_DELETINGZLIFECYCLE_STATE_DELETEDr!   Úpropertyr   Úsetterr   r   r   r   r   r   r.   r2   r3   r   r   r   r    r      sN    @













r   N)Zoci.utilr   r   r   Zoci.decoratorsr   Úobjectr   r   r   r   r    Ú<module>   s   