U
    W+dk                     @   s   dddZ G dd deZdS ) Nc           	      c   sJ   d}d}|rF| j |||||dd}|D ]
}|V  q&|j}|j}|j}qdS )z=
    A generator function for listing versioned objects.
    TNi  )prefixmarkergeneration_marker	delimiterheadersZmax_keys)Zget_all_versionsZnext_markerZnext_generation_markerZis_truncated)	bucketr   r   r   r   r   Zmore_resultskrs r
   ?/tmp/pip-unpacked-wheel-dlxw5sjy/boto/gs/bucketlistresultset.pyversioned_bucket_lister   s     r   c                   @   s"   e Zd ZdZdddZdd ZdS )	VersionedBucketListResultSetaR  
    A resultset for listing versions within a bucket.  Uses the bucket_lister
    generator function and implements the iterator interface.  This
    transparently handles the results paging from GCS so even if you have
    many thousands of keys within the bucket you can iterate over all
    keys in a reasonably efficient manner.
    Nr   c                 C   s(   || _ || _|| _|| _|| _|| _d S )N)r   r   r   r   r   r   )selfr   r   r   r   r   r   r
   r
   r   __init__2   s    z%VersionedBucketListResultSet.__init__c                 C   s    t | j| j| j| j| j| jdS )N)r   r   r   r   r   )r   r   r   r   r   r   r   )r   r
   r
   r   __iter__;   s    
z%VersionedBucketListResultSet.__iter__)Nr   r   r   r   N)__name__
__module____qualname____doc__r   r   r
   r
   r
   r   r   )   s       
	r   )r   r   r   r   N)r   objectr   r
   r
   r
   r   <module>   s
         
