o
    i]                     @   sL   d dl T d dlT G dd deeZee e Zee e	 Z
dddZdS )    )*c                   @   s$   e Zd Zdd Zdd Zdd ZdS )RetryPolicyc                 C   s   || _ || _d S N)retry_conditionbackoff_strategy)selfr   r    r   T/home/ubuntu/.local/lib/python3.10/site-packages/aliyunsdkcore/retry/retry_policy.py__init__   s   
zRetryPolicy.__init__c                 C      | j |S r   )r   should_retryr   retry_policy_contextr   r   r	   r      s   zRetryPolicy.should_retryc                 C   r   r   )r   compute_delay_before_next_retryr   r   r   r	   r      s   z+RetryPolicy.compute_delay_before_next_retryN)__name__
__module____qualname__r
   r   r   r   r   r   r	   r      s    r   Nc                 C   s   t t| dt S )Nmax_retry_times)r   DefaultConfigRetryConditionDefaultMixedBackoffStrategyr   r   r   r	   get_default_retry_policy&   s   
r   r   )#aliyunsdkcore.retry.retry_condition$aliyunsdkcore.retry.backoff_strategyRetryConditionBackoffStrategyr   r   r   PREDEFINED_DEFAULT_RETRY_POLICYNoRetryConditionNoDelayStrategyNO_RETRY_POLICYr   r   r   r   r	   <module>   s   