ruạṛ
a ���f� � @ s8 d dl mZmZmZ d dlmZ eG dd� de��ZdS )� )�formatted_flat_dict� NONE_SENTINEL�#value_allowed_none_or_none_sentinel)�init_model_state_from_kwargsc @ s~ e Zd ZdZdd� Zedd� �Zejdd� �Zedd� �Zejd d� �Zed d� �Z e jdd� �Z d d� Z dd� Zdd� ZdS )� RequestRateLimitingConfigurationz& Rate limiting configuration. c K s2 dddd�| _ dddd�| _d| _d| _d| _dS )a Initializes a new RequestRateLimitingConfiguration object with values from keyword arguments. The following keyword arguments are supported (corresponding to the getters/setters of this class): :param period_in_seconds: The value to assign to the period_in_seconds property of this RequestRateLimitingConfiguration. :type period_in_seconds: int :param requests_limit: The value to assign to the requests_limit property of this RequestRateLimitingConfiguration. :type requests_limit: int :param action_duration_in_seconds: The value to assign to the action_duration_in_seconds property of this RequestRateLimitingConfiguration. :type action_duration_in_seconds: int �int)�period_in_seconds�requests_limit�action_duration_in_secondsZperiodInSecondsZ requestsLimitZactionDurationInSecondsN)Z swagger_typesZ attribute_map�_period_in_seconds�_requests_limit�_action_duration_in_seconds)�self�kwargs� r �V/usr/lib/python3.9/site-packages/oci/waf/models/request_rate_limiting_configuration.py�__init__ s ��z)RequestRateLimitingConfiguration.__init__c C s | j S )z� **[Required]** Gets the period_in_seconds of this RequestRateLimitingConfiguration. Evaluation period in seconds. :return: The period_in_seconds of this RequestRateLimitingConfiguration. :rtype: int �r �r r r r r 4 s z2RequestRateLimitingConfiguration.period_in_secondsc C s || _ dS )z� Sets the period_in_seconds of this RequestRateLimitingConfiguration. Evaluation period in seconds. :param period_in_seconds: The period_in_seconds of this RequestRateLimitingConfiguration. :type: int Nr )r r r r r r @ s c C s | j S )z� **[Required]** Gets the requests_limit of this RequestRateLimitingConfiguration. Requests allowed per evaluation period. :return: The requests_limit of this RequestRateLimitingConfiguration. :rtype: int �r r r r r r L s z/RequestRateLimitingConfiguration.requests_limitc C s || _ dS )z� Sets the requests_limit of this RequestRateLimitingConfiguration. Requests allowed per evaluation period. :param requests_limit: The requests_limit of this RequestRateLimitingConfiguration. :type: int Nr )r r r r r r X s c C s | j S )aS Gets the action_duration_in_seconds of this RequestRateLimitingConfiguration. Duration of block action application in seconds when `requestsLimit` is reached. Optional and can be 0 (no block duration). :return: The action_duration_in_seconds of this RequestRateLimitingConfiguration. :rtype: int �r r r r r r d s z;RequestRateLimitingConfiguration.action_duration_in_secondsc C s || _ dS )al Sets the action_duration_in_seconds of this RequestRateLimitingConfiguration. Duration of block action application in seconds when `requestsLimit` is reached. Optional and can be 0 (no block duration). :param action_duration_in_seconds: The action_duration_in_seconds of this RequestRateLimitingConfiguration. :type: int Nr )r r r r r r p s c C s t | �S �N)r r r r r �__repr__| s z)RequestRateLimitingConfiguration.__repr__c C s |d u rdS | j |j kS )NF)�__dict__�r �otherr r r �__eq__ s z'RequestRateLimitingConfiguration.__eq__c C s | |k S r r r r r r �__ne__� s z'RequestRateLimitingConfiguration.__ne__N) �__name__� __module__�__qualname__�__doc__r �propertyr �setterr r r r r r r r r r s"