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 )ÚStrategyzq
    The metadata associated with the strategy. The strategy is the method used to apply the recommendation.
    c                 K   s2   ddddœ| _ ddddœ| _d| _d| _d| _dS )	a­  
        Initializes a new Strategy object with values from keyword arguments.
        The following keyword arguments are supported (corresponding to the getters/setters of this class):

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

        :param is_default:
            The value to assign to the is_default property of this Strategy.
        :type is_default: bool

        :param parameters_definition:
            The value to assign to the parameters_definition property of this Strategy.
        :type parameters_definition: list[oci.optimizer.models.StrategyParameter]

        ÚstrÚboolzlist[StrategyParameter])Ústrategy_nameÚ
is_defaultÚparameters_definitionZstrategyNameZ	isDefaultZparametersDefinitionN)Zswagger_typesZattribute_mapÚ_strategy_nameÚ_is_defaultÚ_parameters_definition)ÚselfÚkwargs© r   úAusr/lib/python3.10/site-packages/oci/optimizer/models/strategy.pyÚ__init__   s   ýý
zStrategy.__init__c                 C   ó   | j S )z¶
        **[Required]** Gets the strategy_name of this Strategy.
        The name of the strategy.


        :return: The strategy_name of this Strategy.
        :rtype: str
        ©r   ©r   r   r   r   r	   4   ó   
zStrategy.strategy_namec                 C   ó
   || _ dS )z³
        Sets the strategy_name of this Strategy.
        The name of the strategy.


        :param strategy_name: The strategy_name of this Strategy.
        :type: str
        Nr   )r   r	   r   r   r   r	   @   ó   

c                 C   r   )zÌ
        **[Required]** Gets the is_default of this Strategy.
        Whether this is the default recommendation strategy.


        :return: The is_default of this Strategy.
        :rtype: bool
        ©r   r   r   r   r   r
   L   r   zStrategy.is_defaultc                 C   r   )zÆ
        Sets the is_default of this Strategy.
        Whether this is the default recommendation strategy.


        :param is_default: The is_default of this Strategy.
        :type: bool
        Nr   )r   r
   r   r   r   r
   X   r   c                 C   r   )zñ
        Gets the parameters_definition of this Strategy.
        The list of strategies for the parameters.


        :return: The parameters_definition of this Strategy.
        :rtype: list[oci.optimizer.models.StrategyParameter]
        ©r   r   r   r   r   r   d   r   zStrategy.parameters_definitionc                 C   r   )a  
        Sets the parameters_definition of this Strategy.
        The list of strategies for the parameters.


        :param parameters_definition: The parameters_definition of this Strategy.
        :type: list[oci.optimizer.models.StrategyParameter]
        Nr   )r   r   r   r   r   r   p   r   c                 C   s   t | ƒS ©N)r   r   r   r   r   Ú__repr__|   s   zStrategy.__repr__c                 C   s   |d u rdS | j |j kS )NF)Ú__dict__©r   Úotherr   r   r   Ú__eq__   s   zStrategy.__eq__c                 C   s
   | |k S r   r   r   r   r   r   Ú__ne__…   s   
zStrategy.__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   