Viewing File: /usr/lib/python3.6/site-packages/pip/_vendor/cachecontrol/__pycache__/adapter.cpython-36.opt-1.pyc

3

aj@sTddlZddlZddlmZddlmZddlmZddlm	Z	GdddeZ
dS)	N)HTTPAdapter)CacheController)	DictCache)CallbackFileWrappercsPeZdZeddgZdfdd	ZfddZdfd
d	Zfdd
ZZ	S)CacheControlAdapterZPUTZDELETENTc	sBtt|j|||pt|_||_|p*t}||j||d|_dS)N)cache_etags
serializer)superr__init__rcache	heuristicr
controller)	selfrrZcontroller_classr	r
argskwZcontroller_factory)	__class__/usr/lib/python3.6/adapter.pyrszCacheControlAdapter.__init__csV|jdkr>|jj|}|r*|j||ddS|jj|jj|tt|j	|f|}|S)z
        Send a request. Use the request information to see if it
        exists in the cache and cache the response if we need to and can.
        GETT)
from_cache)
methodrZcached_requestbuild_responseZheadersupdateZconditional_headersr
rsend)rrequestrcached_responseresp)rrrrs
zCacheControlAdapter.sendFcs|r|jdkr|jr"|jj|}|jdkr`|jj||}||k	rFd}|jdd|j|}n\|jdkrz|jj||nBt	|j
tj|jj|||_
|j
r|jfdd}tj|||_tt|j||}|j|jkr|jr|jj|j}|jj|||_|S)	z
        Build a response by making a request or using the cache.

        This will end up calling send and returning a potentially
        cached response
        ri0TF)Zdecode_contenti-cs|jdkr|jjdS)Nr)Z
chunk_left_fpZ_close)r)super_update_chunk_lengthrr_update_chunk_lengthgs
z@CacheControlAdapter.build_response.<locals>._update_chunk_length)rr
ZapplyZstatusrZupdate_cached_responsereadZrelease_connZcache_responserr	functoolspartialZchunkedr types
MethodTyper
rrinvalidating_methodsok	cache_urlZurlrdeleter)rrZresponserrr rr()r)rrr3s<



z"CacheControlAdapter.build_responsecs|jjtt|jdS)N)rcloser
r)r)rrrr*{s
zCacheControlAdapter.close)NTNNN)F)
__name__
__module____qualname__setr&rrrr*
__classcell__rr)rrrs
Hr)r$r"Zpip._vendor.requests.adaptersrrrrrZfilewrapperrrrrrr<module>s
Back to Directory File Manager