o
    ɶd1                     @   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 )   )TypedObject    )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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e	dd Zejdd Zd d! Zd"d# Zd$d% Zd&S )'	Parameterzf
    Parameters are created and assigned values that can be configured for each integration task.
    MINMAXCOUNTSUMc                 K   s6  i 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| _ i 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#| _d#| _d#| _d#| _d#| _d#| _d#| _	d#| _
d#| _d#| _d#| _d#| _d#| _d#| _d#| _d$| _d#S )%a,  
        Initializes a new Parameter object with values from keyword arguments. The default value of the :py:attr:`~oci.data_integration.models.Parameter.model_type` attribute
        of this class is ``PARAMETER`` 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 Parameter.
            Allowed values for this property are: "SHAPE", "INPUT_PORT", "SHAPE_FIELD", "INPUT_FIELD", "DERIVED_FIELD", "MACRO_FIELD", "OUTPUT_FIELD", "DYNAMIC_PROXY_FIELD", "OUTPUT_PORT", "DYNAMIC_INPUT_FIELD", "PROXY_FIELD", "PARAMETER", "PIVOT_FIELD", "MACRO_PIVOT_FIELD", "CONDITIONAL_OUTPUT_PORT", "INPUT_PROXY_FIELD", "MATERIALIZED_DYNAMIC_FIELD", "DECISION_OUTPUT_PORT", 'UNKNOWN_ENUM_VALUE'.
            Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
        :type model_type: str

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

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

        :param parent_ref:
            The value to assign to the parent_ref property of this Parameter.
        :type parent_ref: oci.data_integration.models.ParentReference

        :param config_values:
            The value to assign to the config_values property of this Parameter.
        :type config_values: oci.data_integration.models.ConfigValues

        :param object_status:
            The value to assign to the object_status property of this Parameter.
        :type object_status: int

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

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

        :param type:
            The value to assign to the type property of this Parameter.
        :type type: object

        :param default_value:
            The value to assign to the default_value property of this Parameter.
        :type default_value: object

        :param root_object_default_value:
            The value to assign to the root_object_default_value property of this Parameter.
        :type root_object_default_value: object

        :param is_input:
            The value to assign to the is_input property of this Parameter.
        :type is_input: bool

        :param is_output:
            The value to assign to the is_output property of this Parameter.
        :type is_output: bool

        :param output_aggregation_type:
            The value to assign to the output_aggregation_type property of this Parameter.
            Allowed values for this property are: "MIN", "MAX", "COUNT", "SUM", 'UNKNOWN_ENUM_VALUE'.
            Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
        :type output_aggregation_type: str

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

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

        Z
model_typestrkeyZmodel_versionZ
parent_refZParentReferenceZconfig_valuesZConfigValuesZobject_statusintnamedescriptiontypeobjectdefault_valueroot_object_default_valueis_inputbool	is_outputoutput_aggregation_type	type_nameused_forZ	modelTypeZmodelVersionZ	parentRefZconfigValuesZobjectStatusdefaultValueZrootObjectDefaultValueZisInputZisOutputZoutputAggregationTypeZtypeNameZusedForNZ	PARAMETER)Zswagger_typesZattribute_mapZ_model_type_keyZ_model_versionZ_parent_refZ_config_valuesZ_object_status_nameZ_description_type_default_value_root_object_default_value	_is_input
_is_output_output_aggregation_type
_type_name	_used_for)selfkwargs r)   Iusr/lib/python3.10/site-packages/oci/data_integration/models/parameter.py__init__"   s   K	
	

zParameter.__init__c                 C      | j S )z
        Gets the type of this Parameter.
        This can either be a string value referencing the type or a BaseType object.


        :return: The type of this Parameter.
        :rtype: object
        r   r'   r)   r)   r*   r         
zParameter.typec                 C   
   || _ dS )z
        Sets the type of this Parameter.
        This can either be a string value referencing the type or a BaseType object.


        :param type: The type of this Parameter.
        :type: object
        Nr-   )r'   r   r)   r)   r*   r         

c                 C   r,   )z
        Gets the default_value of this Parameter.
        The default value of the parameter.


        :return: The default_value of this Parameter.
        :rtype: object
        r    r.   r)   r)   r*   r      r/   zParameter.default_valuec                 C   r0   )z
        Sets the default_value of this Parameter.
        The default value of the parameter.


        :param default_value: The default_value of this Parameter.
        :type: object
        Nr2   )r'   r   r)   r)   r*   r      r1   c                 C   r,   )a  
        Gets the root_object_default_value of this Parameter.
        The default value of the parameter which can be an object in DIS, such as a data entity.


        :return: The root_object_default_value of this Parameter.
        :rtype: object
        r!   r.   r)   r)   r*   r      r/   z#Parameter.root_object_default_valuec                 C   r0   )a  
        Sets the root_object_default_value of this Parameter.
        The default value of the parameter which can be an object in DIS, such as a data entity.


        :param root_object_default_value: The root_object_default_value of this Parameter.
        :type: object
        Nr3   )r'   r   r)   r)   r*   r      r1   c                 C   r,   )z
        Gets the is_input of this Parameter.
        Specifies whether the parameter is input value.


        :return: The is_input of this Parameter.
        :rtype: bool
        r"   r.   r)   r)   r*   r      r/   zParameter.is_inputc                 C   r0   )z
        Sets the is_input of this Parameter.
        Specifies whether the parameter is input value.


        :param is_input: The is_input of this Parameter.
        :type: bool
        Nr4   )r'   r   r)   r)   r*   r      r1   c                 C   r,   )z
        Gets the is_output of this Parameter.
        Specifies whether the parameter is output value.


        :return: The is_output of this Parameter.
        :rtype: bool
        r#   r.   r)   r)   r*   r     r/   zParameter.is_outputc                 C   r0   )z
        Sets the is_output of this Parameter.
        Specifies whether the parameter is output value.


        :param is_output: The is_output of this Parameter.
        :type: bool
        Nr5   )r'   r   r)   r)   r*   r     r1   c                 C   r,   )a  
        Gets the output_aggregation_type of this Parameter.
        The output aggregation type.

        Allowed values for this property are: "MIN", "MAX", "COUNT", "SUM", 'UNKNOWN_ENUM_VALUE'.
        Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.


        :return: The output_aggregation_type of this Parameter.
        :rtype: str
        )r$   r.   r)   r)   r*   r     s   z!Parameter.output_aggregation_typec                 C   s    g d}t ||sd}|| _dS )z
        Sets the output_aggregation_type of this Parameter.
        The output aggregation type.


        :param output_aggregation_type: The output_aggregation_type of this Parameter.
        :type: str
        )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 type_name of this Parameter.
        The type of value the parameter was created for.


        :return: The type_name of this Parameter.
        :rtype: str
        r%   r.   r)   r)   r*   r   ;  r/   zParameter.type_namec                 C   r0   )z
        Sets the type_name of this Parameter.
        The type of value the parameter was created for.


        :param type_name: The type_name of this Parameter.
        :type: str
        Nr6   )r'   r   r)   r)   r*   r   G  r1   c                 C   r,   )z
        Gets the used_for of this Parameter.
        The param name for which parameter is created for for eg. driver Shape, Operation etc.


        :return: The used_for of this Parameter.
        :rtype: str
        r&   r.   r)   r)   r*   r   S  r/   zParameter.used_forc                 C   r0   )z
        Sets the used_for of this Parameter.
        The param name for which parameter is created for for eg. driver Shape, Operation etc.


        :param used_for: The used_for of this Parameter.
        :type: str
        Nr7   )r'   r   r)   r)   r*   r   _  r1   c                 C   s   t | S N)r   r.   r)   r)   r*   __repr__k  s   zParameter.__repr__c                 C   s   |d u rdS | j |j kS )NF)__dict__r'   otherr)   r)   r*   __eq__n  s   zParameter.__eq__c                 C   s
   | |k S r8   r)   r;   r)   r)   r*   __ne__t  s   
zParameter.__ne__N)__name__
__module____qualname____doc__ZOUTPUT_AGGREGATION_TYPE_MINZOUTPUT_AGGREGATION_TYPE_MAXZOUTPUT_AGGREGATION_TYPE_COUNTZOUTPUT_AGGREGATION_TYPE_SUMr+   propertyr   setterr   r   r   r   r   r   r   r9   r=   r>   r)   r)   r)   r*   r      sV     















r   N)	Ztyped_objectr   Zoci.utilr   r   r   Zoci.decoratorsr   r   r)   r)   r)   r*   <module>   s
   