o
    ɶd                     @   sD   d dl mZ ddlmZmZmZ ddlmZ eG dd deZdS )   )Item    )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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 )	LimitItemz"
    Reserved for future use.
    APPROVEDPARTIALLY_APPROVEDNOT_APPROVEDc                 K   s~   dddddddddd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 LimitItem object with values from keyword arguments. The default value of the :py:attr:`~oci.cims.models.LimitItem.type` attribute
        of this class is ``limit`` and it should not be changed.
        The following keyword arguments are supported (corresponding to the getters/setters of this class):

        :param item_key:
            The value to assign to the item_key property of this LimitItem.
        :type item_key: str

        :param name:
            The value to assign to the name property of this LimitItem.
        :type name: str

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

        :param category:
            The value to assign to the category property of this LimitItem.
        :type category: oci.cims.models.Category

        :param sub_category:
            The value to assign to the sub_category property of this LimitItem.
        :type sub_category: oci.cims.models.SubCategory

        :param issue_type:
            The value to assign to the issue_type property of this LimitItem.
        :type issue_type: oci.cims.models.IssueType

        :param current_limit:
            The value to assign to the current_limit property of this LimitItem.
        :type current_limit: int

        :param current_usage:
            The value to assign to the current_usage property of this LimitItem.
        :type current_usage: int

        :param requested_limit:
            The value to assign to the requested_limit property of this LimitItem.
        :type requested_limit: int

        :param limit_status:
            The value to assign to the limit_status property of this LimitItem.
            Allowed values for this property are: "APPROVED", "PARTIALLY_APPROVED", "NOT_APPROVED", 'UNKNOWN_ENUM_VALUE'.
            Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
        :type limit_status: str

        strZCategoryZSubCategoryZ	IssueTypeint)
Zitem_keynametypecategoryZsub_categoryZ
issue_typecurrent_limitcurrent_usagerequested_limitlimit_statusZitemKeyr   r   r   ZsubCategoryZ	issueTypeZcurrentLimitZcurrentUsageZrequestedLimitZlimitStatusNlimit)Zswagger_typesZattribute_mapZ	_item_key_nameZ_typeZ	_categoryZ_sub_categoryZ_issue_type_current_limit_current_usage_requested_limit_limit_status)selfkwargs r   >usr/lib/python3.10/site-packages/oci/cims/models/limit_item.py__init__   sB   2
zLimitItem.__init__c                 C      | j S )z
        Gets the current_limit of this LimitItem.
        The currently available limit of the resource.


        :return: The current_limit of this LimitItem.
        :rtype: int
        r   r   r   r   r   r   u      
zLimitItem.current_limitc                 C   
   || _ dS )z
        Sets the current_limit of this LimitItem.
        The currently available limit of the resource.


        :param current_limit: The current_limit of this LimitItem.
        :type: int
        Nr!   )r   r   r   r   r   r         

c                 C   r    )z
        Gets the current_usage of this LimitItem.
        The current usage of the resource.


        :return: The current_usage of this LimitItem.
        :rtype: int
        r   r"   r   r   r   r      r#   zLimitItem.current_usagec                 C   r$   )z
        Sets the current_usage of this LimitItem.
        The current usage of the resource.


        :param current_usage: The current_usage of this LimitItem.
        :type: int
        Nr&   )r   r   r   r   r   r      r%   c                 C   r    )z
        Gets the requested_limit of this LimitItem.
        The requested limit for the resource.


        :return: The requested_limit of this LimitItem.
        :rtype: int
        r   r"   r   r   r   r      r#   zLimitItem.requested_limitc                 C   r$   )z
        Sets the requested_limit of this LimitItem.
        The requested limit for the resource.


        :param requested_limit: The requested_limit of this LimitItem.
        :type: int
        Nr'   )r   r   r   r   r   r      r%   c                 C   r    )a}  
        Gets the limit_status of this LimitItem.
        The status of the request.

        Allowed values for this property are: "APPROVED", "PARTIALLY_APPROVED", "NOT_APPROVED", 'UNKNOWN_ENUM_VALUE'.
        Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.


        :return: The limit_status of this LimitItem.
        :rtype: str
        )r   r"   r   r   r   r      s   zLimitItem.limit_statusc                 C   s    g d}t ||sd}|| _dS )z
        Sets the limit_status of this LimitItem.
        The status of the request.


        :param limit_status: The limit_status of this LimitItem.
        :type: str
        )r	   r
   r   ZUNKNOWN_ENUM_VALUEN)r   r   )r   r   Zallowed_valuesr   r   r   r      s   


c                 C   s   t | S N)r   r"   r   r   r   __repr__   s   zLimitItem.__repr__c                 C   s   |d u rdS | j |j kS )NF)__dict__r   otherr   r   r   __eq__   s   zLimitItem.__eq__c                 C   s
   | |k S r(   r   r+   r   r   r   __ne__   s   
zLimitItem.__ne__N)__name__
__module____qualname____doc__ZLIMIT_STATUS_APPROVEDZLIMIT_STATUS_PARTIALLY_APPROVEDZLIMIT_STATUS_NOT_APPROVEDr   propertyr   setterr   r   r   r)   r-   r.   r   r   r   r   r      s2    W







r   N)	itemr   Zoci.utilr   r   r   Zoci.decoratorsr   r   r   r   r   r   <module>   s
   