U
    ´.¬bý	  ã                   @   s4   d dl mZmZ G dd„ deƒZG dd„ deƒZdS )é    )ÚSubmissionTaskÚTaskc                   @   s   e Zd ZdZdd„ ZdS )ÚDeleteSubmissionTaskz8Task for submitting tasks to execute an object deletion.c              
   K   s6   |j j}| j |t| j||j|j|jdœdd�¡ dS )aÒ  
        :param client: The client associated with the transfer manager

        :type config: s3transfer.manager.TransferConfig
        :param config: The transfer config associated with the transfer
            manager

        :type osutil: s3transfer.utils.OSUtil
        :param osutil: The os utility associated to the transfer manager

        :type request_executor: s3transfer.futures.BoundedExecutor
        :param request_executor: The request executor associated with the
            transfer manager

        :type transfer_future: s3transfer.futures.TransferFuture
        :param transfer_future: The transfer future associated with the
            transfer request that tasks are being submitted for
        )ÚclientÚbucketÚkeyÚ
extra_argsT)Ztransfer_coordinatorZmain_kwargsÚis_finalN)ÚmetaÚ	call_argsZ_transfer_coordinatorZsubmitÚDeleteObjectTaskr   r   r   )Úselfr   Zrequest_executorZtransfer_futureÚkwargsr   © r   ú5/tmp/pip-unpacked-wheel-hq9fdgne/s3transfer/delete.pyÚ_submit   s    üøþzDeleteSubmissionTask._submitN)Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   r   r   r   r      s   r   c                   @   s   e Zd Zdd„ ZdS )r   c                 C   s   |j f ||dœ|—Ž dS )aV  

        :param client: The S3 client to use when calling DeleteObject

        :type bucket: str
        :param bucket: The name of the bucket.

        :type key: str
        :param key: The name of the object to delete.

        :type extra_args: dict
        :param extra_args: Extra arguments to pass to the DeleteObject call.

        )ZBucketZKeyN)Zdelete_object)r   r   r   r   r   r   r   r   Ú_main8   s    zDeleteObjectTask._mainN)r   r   r   r   r   r   r   r   r   7   s   r   N)Zs3transfer.tasksr   r   r   r   r   r   r   r   Ú<module>   s   '