Viewing File: /opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/__pycache__/retrying.cpython-35.pyc



t_&@sddlZddlmZddlZddlZddlZdZddZGdddeZ	Gdd	d	eZ
Gd
ddeZdS)N)sixi?csYtdkr<tdr<dd}|dSfdd}|SdS)z
    Decorator function that instantiates the Retrying object
    @param *dargs: positional arguments passed to Retrying object
    @param **dkw: keyword arguments passed to the Retrying object
    rcs%tjfdd}|S)Ncstj||S)N)Retryingcall)argskw)f/builddir/build/BUILDROOT/alt-python35-pip-20.2.4-1.el7.x86_64/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/retrying.py	wrapped_f$sz-retry.<locals>.wrap_simple.<locals>.wrapped_f)rwraps)rrr	)rr
wrap_simple"s!zretry.<locals>.wrap_simplecs+tjfdd}|S)Ncstj||S)N)rr)rr)dargsdkwrr	r
r/sz&retry.<locals>.wrap.<locals>.wrapped_f)rr)rr)rr)rr
wrap-s'zretry.<locals>.wrapN)lencallable)rrr
rr	)rrr
retrys
"rc@seZdZdddddddddddddddddddZddZddZd	d
ZddZd
dZddZ	ddZ
ddZddZddZ
ddZdS)rNFcs|dkrdn||_|dkr-dn||_|dkrHdn||_|dkrcdn||_|dkr~dn||_|dkrdn||_|	dkrdn|	|_|
dkrdn|
|_|dkrtn||_	|dkrdn||_
g|dk	r0j|j|dk	rLj|j
|dk	rd||_n6|dkrfdd|_nt|||_ddg|dk	rj|j|dk	s|dk	rj|j|dk	s|	dk	rj|j|
dk	s-|dk	r=j|j|dk	rU||_n6|dkryfd	d|_nt|||_|dkr|j|_n	||_|
dkr|j|_n	|
|_||_dS)
Ndirrcs tfddDS)Nc3s|]}|VqdS)Nr	).0r)attemptsdelayr	r
	<genexpr>asz6Retrying.__init__.<locals>.<lambda>.<locals>.<genexpr>)any)rr)
stop_funcs)rrr
<lambda>asz#Retrying.__init__.<locals>.<lambda>c_sdS)Nrr	)rkwargsr	r	r
rhscs tfddDS)Nc3s|]}|VqdS)Nr	)rr)rrr	r
rysz6Retrying.__init__.<locals>.<lambda>.<locals>.<genexpr>)max)rr)
wait_funcs)rrr
rys)_stop_max_attempt_number_stop_max_delay_wait_fixed_wait_random_min_wait_random_max_wait_incrementing_start_wait_incrementing_increment_wait_exponential_multiplierMAX_WAIT_wait_exponential_max_wait_jitter_maxappendstop_after_attemptstop_after_delaystopgetattrfixed_sleeprandom_sleepincrementing_sleepexponential_sleepwait
always_reject_retry_on_exceptionnever_reject_retry_on_result_wrap_exception)selfr.r4stop_max_attempt_numberstop_max_delay
wait_fixedwait_random_minwait_random_maxwait_incrementing_startwait_incrementing_incrementwait_exponential_multiplierwait_exponential_maxretry_on_exceptionretry_on_resultwrap_exception	stop_func	wait_funcwait_jitter_maxr	)rrr
__init__:sR		zRetrying.__init__cCs
||jkS)z;Stop after the previous attempt >= stop_max_attempt_number.)r )r:previous_attempt_numberdelay_since_first_attempt_msr	r	r
r,szRetrying.stop_after_attemptcCs
||jkS)z=Stop after the time from the first attempt >= stop_max_delay.)r!)r:rKrLr	r	r
r-szRetrying.stop_after_delaycCsdS)z#Don't sleep at all before retrying.rr	)r:rKrLr	r	r
no_sleepszRetrying.no_sleepcCs|jS)z0Sleep a fixed amount of time between each retry.)r")r:rKrLr	r	r
r0szRetrying.fixed_sleepcCstj|j|jS)zISleep a random amount of time between wait_random_min and wait_random_max)randomrandintr#r$)r:rKrLr	r	r
r1szRetrying.random_sleepcCs.|j|j|d}|dkr*d}|S)z
        Sleep an incremental amount of time after each attempt, starting at
        wait_incrementing_start and incrementing by wait_incrementing_increment
        rr)r%r&)r:rKrLresultr	r	r
r2szRetrying.incrementing_sleepcCsEd|}|j|}||jkr/|j}|dkrAd}|S)Nr)r'r))r:rKrLexprPr	r	r
r3s

	zRetrying.exponential_sleepcCsdS)NFr	)r:rPr	r	r
r7szRetrying.never_rejectcCsdS)NTr	)r:rPr	r	r
r5szRetrying.always_rejectcCsFd}|jr,||j|jdO}n||j|jO}|S)NFr)
has_exceptionr6valuer8)r:attemptrejectr	r	r

should_rejects
	zRetrying.should_rejectc
OsStttjd}d}x*yt||||d}Wn&tj}t||d}YnX|j|s|j|jStttjd|}|j	||r|jr|j
r|jqAt|nR|j||}	|j
r0tj|j
}
|	td|
}	tj|	d|d7}q%WdS)NirFTrg@@)introundtimeAttemptsysexc_inforWgetr9r.rS
RetryErrorr4r*rNrsleep)r:fnrr
start_timeattempt_numberrUtbrLr`jitterr	r	r
rs* 	z
Retrying.call)__name__
__module____qualname__rJr,r-rMr0r1r2r3r7r5rWrr	r	r	r
r8s0F
		rc@s=eZdZdZddZdddZddZd	S)
r[z
    An Attempt encapsulates a call to a target function that may end as a
    normal return value from the function or an Exception depending on what
    occurred during the execution.
    cCs||_||_||_dS)N)rTrcrS)r:rTrcrSr	r	r
rJs		zAttempt.__init__FcCsT|jrI|rt|qPtj|jd|jd|jdn|jSdS)z
        Return the return value of this Attempt instance or raise an Exception.
        If wrap_exception is true, this Attempt is wrapped inside of a
        RetryError before being raised.
        rrrQN)rSr_rreraiserT)r:rFr	r	r
r^s
	+zAttempt.getcCsO|jr5dj|jdjtj|jdSdj|j|jSdS)NzAttempts: {0}, Error:
{1}rQzAttempts: {0}, Value: {1})rSformatrcjoin	traceback	format_tbrT)r:r	r	r
__repr__s	,zAttempt.__repr__N)rfrgrh__doc__rJr^ror	r	r	r
r[sr[c@s.eZdZdZddZddZdS)r_zU
    A RetryError encapsulates the last Attempt instance right before giving up.
    cCs
||_dS)N)last_attempt)r:rqr	r	r
rJszRetryError.__init__cCsdj|jS)NzRetryError[{0}])rkrq)r:r	r	r
__str__
szRetryError.__str__N)rfrgrhrprJrrr	r	r	r
r_sr_)
rNpip._vendorrr\rZrmr(robjectrr[	Exceptionr_r	r	r	r
<module>s!
Back to Directory File Manager