o
    ɶdu                     @   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                   @   sd   e 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d
d Z	dd Z
dd ZdS )	Dimensiona5  
    The dimension used for filtering. Availabe dimensions are: "service", "skuName", "skuPartNumber", "unit", "compartmentName", "compartmentPath", "compartmentId", "platform", "region", "logicalAd", "resourceId", "tenantId", and "tenantName".
    For example:
    `[{value: "COMPUTE", key: "service"}]`
    c                 K   s(   ddd| _ ddd| _d| _d| _dS )a  
        Initializes a new Dimension object with values from keyword arguments.
        The following keyword arguments are supported (corresponding to the getters/setters of this class):

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

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

        str)keyvaluer   r	   N)Zswagger_typesZattribute_map_key_value)selfkwargs r   Busr/lib/python3.10/site-packages/oci/usage_api/models/dimension.py__init__   s   
zDimension.__init__c                 C      | j S )z
        **[Required]** Gets the key of this Dimension.
        The dimension key.


        :return: The key of this Dimension.
        :rtype: str
        r
   r   r   r   r   r   /      
zDimension.keyc                 C   
   || _ dS )z
        Sets the key of this Dimension.
        The dimension key.


        :param key: The key of this Dimension.
        :type: str
        Nr   )r   r   r   r   r   r   ;      

c                 C   r   )z
        **[Required]** Gets the value of this Dimension.
        The dimension value.


        :return: The value of this Dimension.
        :rtype: str
        r   r   r   r   r   r	   G   r   zDimension.valuec                 C   r   )z
        Sets the value of this Dimension.
        The dimension value.


        :param value: The value of this Dimension.
        :type: str
        Nr   )r   r	   r   r   r   r	   S   r   c                 C   s   t | S N)r   r   r   r   r   __repr___   s   zDimension.__repr__c                 C   s   |d u rdS | j |j kS )NF)__dict__r   otherr   r   r   __eq__b   s   zDimension.__eq__c                 C   s
   | |k S r   r   r   r   r   r   __ne__h   s   
zDimension.__ne__N)__name__
__module____qualname____doc__r   propertyr   setterr	   r   r   r   r   r   r   r   r      s    



r   N)Zoci.utilr   r   r   Zoci.decoratorsr   objectr   r   r   r   r   <module>   s   