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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 )ÚIndexKeyz6
    Specifies a single key in a secondary index.
    c                 K   s2   ddddœ| _ ddddœ| _d| _d| _d| _dS )ah  
        Initializes a new IndexKey object with values from keyword arguments.
        The following keyword arguments are supported (corresponding to the getters/setters of this class):

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

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

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

        Ústr)Úcolumn_nameÚ	json_pathÚjson_field_typeZ
columnNameZjsonPathZjsonFieldTypeN)Zswagger_typesZattribute_mapÚ_column_nameÚ
_json_pathÚ_json_field_type)ÚselfÚkwargs© r   ú>usr/lib/python3.10/site-packages/oci/nosql/models/index_key.pyÚ__init__   s   ýý
zIndexKey.__init__c                 C   ó   | j S )zÍ
        **[Required]** Gets the column_name of this IndexKey.
        The name of a column to be included as an index key.


        :return: The column_name of this IndexKey.
        :rtype: str
        ©r   ©r   r   r   r   r   4   s   
zIndexKey.column_namec                 C   ó
   || _ dS )zÈ
        Sets the column_name of this IndexKey.
        The name of a column to be included as an index key.


        :param column_name: The column_name of this IndexKey.
        :type: str
        Nr   )r   r   r   r   r   r   @   s   

c                 C   r   )a&  
        Gets the json_path of this IndexKey.
        If the specified column is of type JSON, jsonPath contains
        a dotted path indicating the field within the JSON object
        that will be the index key.


        :return: The json_path of this IndexKey.
        :rtype: str
        ©r   r   r   r   r   r	   L   s   zIndexKey.json_pathc                 C   r   )a.  
        Sets the json_path of this IndexKey.
        If the specified column is of type JSON, jsonPath contains
        a dotted path indicating the field within the JSON object
        that will be the index key.


        :param json_path: The json_path of this IndexKey.
        :type: str
        Nr   )r   r	   r   r   r   r	   Z   s   
c                 C   r   )a  
        Gets the json_field_type of this IndexKey.
        If the specified column is of type JSON, jsonFieldType contains
        the type of the field indicated by jsonPath.


        :return: The json_field_type of this IndexKey.
        :rtype: str
        ©r   r   r   r   r   r
   h   s   zIndexKey.json_field_typec                 C   r   )a  
        Sets the json_field_type of this IndexKey.
        If the specified column is of type JSON, jsonFieldType contains
        the type of the field indicated by jsonPath.


        :param json_field_type: The json_field_type of this IndexKey.
        :type: str
        Nr   )r   r
   r   r   r   r
   u   s   
c                 C   s   t | ƒS ©N)r   r   r   r   r   Ú__repr__‚   s   zIndexKey.__repr__c                 C   s   |d u rdS | j |j kS )NF)Ú__dict__©r   Úotherr   r   r   Ú__eq__…   s   zIndexKey.__eq__c                 C   s
   | |k S r   r   r   r   r   r   Ú__ne__‹   s   
zIndexKey.__ne__N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   Úpropertyr   Úsetterr	   r
   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   