Submit
Path:
~
/
/
lib
/
python2.7
/
site-packages
/
s3transfer
/
File Content:
upload.pyc
� =��Xc @ sr d d l Z d d l m Z d d l m Z m Z d d l m Z d d l m Z d d l m Z d d l m Z d d l m Z d d l m Z d d l m Z m Z d e f d � � YZ d e f d � � YZ d e f d � � YZ d e f d � � YZ d e f d � � YZ d e f d � � YZ d e f d � � YZ d e f d � � YZ d e f d � � YZ d S( i����N( t six( t seekablet readable( t IN_MEMORY_UPLOAD_TAG( t Task( t SubmissionTask( t CreateMultipartUploadTask( t CompleteMultipartUploadTask( t get_callbacks( t DeferredOpenFilet ChunksizeAdjustert AggregatedProgressCallbackc B s/ e Z d d � Z d � Z d � Z d � Z RS( i i c C s | | _ | | _ d | _ d S( s� Aggregates progress updates for every provided progress callback :type callbacks: A list of functions that accepts bytes_transferred as a single argument :param callbacks: The callbacks to invoke when threshold is reached :type threshold: int :param threshold: The progress threshold in which to take the aggregated progress and invoke the progress callback with that aggregated progress total i N( t _callbackst _thresholdt _bytes_seen( t selft callbackst threshold( ( s5 /tmp/pip-build-uEGWVr/s3transfer/s3transfer/upload.pyt __init__ s c C s2 | j | 7_ | j | j k r. | j � n d S( N( R R t _trigger_callbacks( R t bytes_transferred( ( s5 /tmp/pip-build-uEGWVr/s3transfer/s3transfer/upload.pyt __call__, s c C s | j d k r | j � n d S( s@ Flushes out any progress that has not been sent to its callbacksi N( R R ( R ( ( s5 /tmp/pip-build-uEGWVr/s3transfer/s3transfer/upload.pyt flush1 s c C s1 x! | j D] } | d | j � q Wd | _ d S( NR i ( R R ( R t callback( ( s5 /tmp/pip-build-uEGWVr/s3transfer/s3transfer/upload.pyR 6 s i ( t __name__t __module__R R R R ( ( ( s5 /tmp/pip-build-uEGWVr/s3transfer/s3transfer/upload.pyR s t InterruptReaderc B sP e Z d Z d � Z d d � Z d � Z d � Z d � Z d � Z d � Z RS( s� Wrapper that can interrupt reading using an error It uses a transfer coordinator to propogate an error if it notices that a read is being made while the file is being read from. :type fileobj: file-like obj :param fileobj: The file-like object to read from :type transfer_coordinator: s3transfer.futures.TransferCoordinator :param transfer_coordinator: The transfer coordinator to use if the reader needs to be interrupted. c C s | | _ | | _ d S( N( t _fileobjt _transfer_coordinator( R t fileobjt transfer_coordinator( ( s5 /tmp/pip-build-uEGWVr/s3transfer/s3transfer/upload.pyR I s c C s+ | j j r | j j � n | j j | � S( N( R t exceptionR t read( R t amount( ( s5 /tmp/pip-build-uEGWVr/s3transfer/s3transfer/upload.pyR M s c C s | j j | � d S( N( R t seek( R t where( ( s5 /tmp/pip-build-uEGWVr/s3transfer/s3transfer/upload.pyR"