o
    ëÉ¶dj  ã                   @   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 )é   )ÚPushDownOperationé    )Ú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 )ÚSelectz2
    The information about the select object.
    c                 K   s8   ddddœ| _ ddddœ| _d| _d| _d| _d	| _dS )
a‡  
        Initializes a new Select object with values from keyword arguments. The default value of the :py:attr:`~oci.data_integration.models.Select.model_type` attribute
        of this class is ``SELECT`` and it should not be changed.
        The following keyword arguments are supported (corresponding to the getters/setters of this class):

        :param model_type:
            The value to assign to the model_type property of this Select.
            Allowed values for this property are: "FILTER", "JOIN", "SELECT", "SORT", "QUERY"
        :type model_type: str

        :param is_distinct:
            The value to assign to the is_distinct property of this Select.
        :type is_distinct: bool

        :param select_columns:
            The value to assign to the select_columns property of this Select.
        :type select_columns: list[oci.data_integration.models.ShapeField]

        ÚstrÚboolzlist[ShapeField])Z
model_typeÚis_distinctÚselect_columnsZ	modelTypeZ
isDistinctZselectColumnsNZSELECT)Zswagger_typesZattribute_mapZ_model_typeÚ_is_distinctÚ_select_columns)ÚselfÚkwargs© r   úFusr/lib/python3.10/site-packages/oci/data_integration/models/select.pyÚ__init__   s   ýý
zSelect.__init__c                 C   ó   | j S )z°
        Gets the is_distinct of this Select.
        Specifies whether the object is distinct.


        :return: The is_distinct of this Select.
        :rtype: bool
        ©r   ©r   r   r   r   r   7   ó   
zSelect.is_distinctc                 C   ó
   || _ dS )zº
        Sets the is_distinct of this Select.
        Specifies whether the object is distinct.


        :param is_distinct: The is_distinct of this Select.
        :type: bool
        Nr   )r   r   r   r   r   r   C   ó   

c                 C   r   )zÒ
        Gets the select_columns of this Select.
        An array of selected columns.


        :return: The select_columns of this Select.
        :rtype: list[oci.data_integration.models.ShapeField]
        ©r   r   r   r   r   r   O   r   zSelect.select_columnsc                 C   r   )zß
        Sets the select_columns of this Select.
        An array of selected columns.


        :param select_columns: The select_columns of this Select.
        :type: list[oci.data_integration.models.ShapeField]
        Nr   )r   r   r   r   r   r   [   r   c                 C   s   t | ƒS ©N)r   r   r   r   r   Ú__repr__g   s   zSelect.__repr__c                 C   s   |d u rdS | j |j kS )NF)Ú__dict__©r   Úotherr   r   r   Ú__eq__j   s   zSelect.__eq__c                 C   s
   | |k S r   r   r   r   r   r   Ú__ne__p   s   
zSelect.__ne__N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   Úpropertyr   Úsetterr   r   r    r!   r   r   r   r   r      s    %



r   N)	Zpush_down_operationr   Zoci.utilr   r   r   Zoci.decoratorsr   r   r   r   r   r   Ú<module>   s
   