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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dd„ Zdd„ Zdd„ ZdS )Ú
ThreatFeedz±
    The settings of the threat intelligence feed. You can block requests from IP addresses based on their reputations with various commercial and open source threat feeds.
    ÚOFFÚDETECTÚBLOCKc                 K   s<   dddddœ| _ dddddœ| _d| _d| _d| _d| _dS )a~  
        Initializes a new ThreatFeed 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 ThreatFeed.
        :type key: str

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

        :param action:
            The value to assign to the action property of this ThreatFeed.
            Allowed values for this property are: "OFF", "DETECT", "BLOCK", 'UNKNOWN_ENUM_VALUE'.
            Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
        :type action: str

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

        Ústr)ÚkeyÚnameÚactionÚdescriptionr   r   r   r   N)Zswagger_typesZattribute_mapÚ_keyÚ_nameÚ_actionÚ_description)ÚselfÚkwargs© r   ú?usr/lib/python3.10/site-packages/oci/waas/models/threat_feed.pyÚ__init__   s   üü
zThreatFeed.__init__c                 C   ó   | j S )z­
        Gets the key of this ThreatFeed.
        The unique key of the threat intelligence feed.


        :return: The key of this ThreatFeed.
        :rtype: str
        ©r   ©r   r   r   r   r   I   ó   
zThreatFeed.keyc                 C   ó
   || _ dS )z¯
        Sets the key of this ThreatFeed.
        The unique key of the threat intelligence feed.


        :param key: The key of this ThreatFeed.
        :type: str
        Nr   )r   r   r   r   r   r   U   ó   

c                 C   r   )z©
        Gets the name of this ThreatFeed.
        The name of the threat intelligence feed.


        :return: The name of this ThreatFeed.
        :rtype: str
        ©r   r   r   r   r   r   a   r   zThreatFeed.namec                 C   r   )z¬
        Sets the name of this ThreatFeed.
        The name of the threat intelligence feed.


        :param name: The name of this ThreatFeed.
        :type: str
        Nr   )r   r   r   r   r   r   m   r   c                 C   r   )aÆ  
        Gets the action of this ThreatFeed.
        The action to take when traffic is flagged as malicious by data from the threat intelligence feed. If unspecified, defaults to `OFF`.

        Allowed values for this property are: "OFF", "DETECT", "BLOCK", 'UNKNOWN_ENUM_VALUE'.
        Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.


        :return: The action of this ThreatFeed.
        :rtype: str
        )r   r   r   r   r   r   y   s   zThreatFeed.actionc                 C   s    g d¢}t ||ƒsd}|| _dS )a  
        Sets the action of this ThreatFeed.
        The action to take when traffic is flagged as malicious by data from the threat intelligence feed. If unspecified, defaults to `OFF`.


        :param action: The action of this ThreatFeed.
        :type: str
        )r   r   r	   ZUNKNOWN_ENUM_VALUEN)r   r   )r   r   Zallowed_valuesr   r   r   r   ˆ   s   


c                 C   r   )z¾
        Gets the description of this ThreatFeed.
        The description of the threat intelligence feed.


        :return: The description of this ThreatFeed.
        :rtype: str
        ©r   r   r   r   r   r   —   r   zThreatFeed.descriptionc                 C   r   )zÈ
        Sets the description of this ThreatFeed.
        The description of the threat intelligence feed.


        :param description: The description of this ThreatFeed.
        :type: str
        Nr   )r   r   r   r   r   r   £   r   c                 C   s   t | ƒS ©N)r   r   r   r   r   Ú__repr__¯   s   zThreatFeed.__repr__c                 C   s   |d u rdS | j |j kS )NF)Ú__dict__©r   Úotherr   r   r   Ú__eq__²   s   zThreatFeed.__eq__c                 C   s
   | |k S r    r   r#   r   r   r   Ú__ne__¸   s   
zThreatFeed.__ne__N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__Z
ACTION_OFFZACTION_DETECTZACTION_BLOCKr   Úpropertyr   Úsetterr   r   r   r!   r%   r&   r   r   r   r   r      s2    +







r   N)Zoci.utilr   r   r   Zoci.decoratorsr   Úobjectr   r   r   r   r   Ú<module>   s   