Viewing File: /usr/lib/python2.7/site-packages/requestbuilder/mixins/progress.pyo

ó
>é,Xc@s9ddlZddlZddlZddlZddlZyddlZWnek
r_nXddlmZm	Z	dej
kre	edddddd	ejjƒd
dddƒed
ddddd	ejjƒd
dddƒedddddd
ddejƒƒgZn~edddddd	ed
ddejƒed
ddddd	ed
ddejƒedddddd
ddejƒgZdefd„ƒYZdefd„ƒYZdej
krdejfd„ƒYZdejfd„ƒYZdejfd„ƒYZndefd„ƒYZdS(iÿÿÿÿN(tArgtMutuallyExclusiveArgListtprogressbars
--progresstdestt
show_progresstactiont
store_truetdefaulttroute_tothelps2show progress (the default when run interactively)s
--no-progresststore_falsesMdo not
                show progress (the default when run non-interactively)s--porcelaintshow_porcelaintFileTransferProgressBarMixincBs#eZdZeZddd„ZRS(s\
    A command mixin that provides download/upload progress bar support,
    along with options to enable or disable them.  If progress bars are
    disabled at the command line get_progressbar will return None.  If the
    progressbar module is unavailable get_progressbar will return None *and*
    no progress-related options will be added.
    cCs¶|jjdƒr%td|d|ƒSdtjkr«|jjdtƒr«g}|dk	rn||dg7}n|dk	r0|tjƒdtj	ddƒdt
ƒdtjƒdg7}d	ttƒkrß|j
tjƒƒn|j
tjƒƒtjd
|d|p
tjddƒ}tjtjtƒ|S|tddƒdt
ƒdtjƒdtjd
dƒg7}td
|d|p…tjddƒ}tjtjtƒ|SntƒSdS(NRtlabeltmaxvalRRt tmarkert=tAdaptiveETAtwidgetstpollgš™™™™™©?tformatsTime: %s(targstgett_MachineReadableCountertsystmodulestFalsetNoneRt
PercentagetBart	_FileSizetFileTransferSpeedtdirtappendRtETAtProgressBartmaxinttsignaltsiginterrupttSIGWINCHt_IndeterminateBouncingBartTimert_IndeterminateProgressBart_EveryMethodObject(tselfR
RRtpbar((sB/usr/lib/python2.7/site-packages/requestbuilder/mixins/progress.pytget_progressbarAs<					N(t__name__t
__module__t__doc__t_PROGRESS_BAR_COMMAND_ARGStARGSRR/(((sB/usr/lib/python2.7/site-packages/requestbuilder/mixins/progress.pyR6sR,cBseZd„Zd„ZRS(cOsdS(N((R-Rtkwargs((sB/usr/lib/python2.7/site-packages/requestbuilder/mixins/progress.pyt
do_nothingrscCstj|dƒS(NR6(tobjectt__getattribute__(R-tname((sB/usr/lib/python2.7/site-packages/requestbuilder/mixins/progress.pyR8us(R0R1R6R8(((sB/usr/lib/python2.7/site-packages/requestbuilder/mixins/progress.pyR,qs	R+cBseZd„ZRS(cCs |j|_tjj|ƒdS(N(tcurrvalRRR$tfinish(R-((sB/usr/lib/python2.7/site-packages/requestbuilder/mixins/progress.pyR;{s(R0R1R;(((sB/usr/lib/python2.7/site-packages/requestbuilder/mixins/progress.pyR+zsR)cBs eZdZd„Zd„ZRS(s»
        A BouncingBar that moves exactly one space each time it updates,
        rather than one space per unit.  This is mainly used for downloads with
        unknown lengths.
        cOs#tjj|||Žd|_dS(Ni(RtBouncingBart__init__t'_IndeterminateBouncingBar__update_count(R-RR5((sB/usr/lib/python2.7/site-packages/requestbuilder/mixins/progress.pyR=…scCsI|j}|j|_tjj|||ƒ}||_|jd7_|S(Ni(R:R>RR<tupdate(R-R.twidthtorig_currvaltretval((sB/usr/lib/python2.7/site-packages/requestbuilder/mixins/progress.pyR?‰s		(R0R1R2R=R?(((sB/usr/lib/python2.7/site-packages/requestbuilder/mixins/progress.pyR)s	RcBseZdZd„ZRS(s	 kMGTPEZYcCsa|jdkrd}d}n,ttj|jdƒƒ}|jd|}dj||j|ƒS(Niig@s
{0:6.2f} {1}B(R:tinttmathtlogRtPREFIXES(R-R.tpowert	scaledval((sB/usr/lib/python2.7/site-packages/requestbuilder/mixins/progress.pyR?”s	(R0R1RFR?(((sB/usr/lib/python2.7/site-packages/requestbuilder/mixins/progress.pyR‘sRcBs;eZddd„Zd„Zd„Zd„Zd„ZRS(cCs—||_d|_d|_d|_t|_|rHdj|ƒ|_n	d|_|jr~dj|jt	|jƒƒ|_ndj|jƒ|_dS(Nis{0} ts
{0}{{0}}/{1}
s	{0}{{0}}
(
RR:Rt_last_displayed_valt
_last_updatedRt	_finishedRt!_MachineReadableCounter__templateRC(R-RR
((sB/usr/lib/python2.7/site-packages/requestbuilder/mixins/progress.pyR=Ÿs							cCs|jƒdS(N(t_display(R-((sB/usr/lib/python2.7/site-packages/requestbuilder/mixins/progress.pytstart¯scCsd||_tjƒ|j}|dkr`|j|jkr`|jr`|jƒtjƒ|_ndS(Ngš™™™™™¹?(R:ttimeRKRJRLRN(R-tvaltdelta((sB/usr/lib/python2.7/site-packages/requestbuilder/mixins/progress.pyR?²s	

cCs/|jr|j|_n|jƒt|_dS(N(RR:RNtTrueRL(R-((sB/usr/lib/python2.7/site-packages/requestbuilder/mixins/progress.pyR;ºs	
cCs5tjj|jjt|jƒƒƒ|j|_dS(N(RtstderrtwriteRMRRCR:RJ(R-((sB/usr/lib/python2.7/site-packages/requestbuilder/mixins/progress.pyRNÀs%N(R0R1RR=ROR?R;RN(((sB/usr/lib/python2.7/site-packages/requestbuilder/mixins/progress.pyRžs
			(targparseRDR&RRPRtImportErrortrequestbuilderRRRtstdouttisattyRtSUPPRESSR3RR7RR,R$R+R<R)tWidgetRR(((sB/usr/lib/python2.7/site-packages/requestbuilder/mixins/progress.pyt<module>s@
;
Back to Directory File Manager