o
    ȷe                     @   s$   d dl Z d dlZG dd deZdS )    Nc                   @   s8   e Zd Zdd Zdd Zdd Zdd
dZdddZdS )	Submitterc                 C   sB   || _ | j d| _| j d| _| j d| _| j d| _d S )Ninput_bucketoutput_bucketoutput_domaininput_queue)sdget_objr   r   r   queue)selfr    r   K/var/www/ideatree/venv/lib/python3.10/site-packages/boto/services/submit.py__init__   s
   zSubmitter.__init__c                 C   s&   |t |d  }|tj}d|S )N/)lensplitossepjoin)r
   fullpathprefixkey_namelr   r   r   get_key_name"   s   
zSubmitter.get_key_namec                 C   sB   | j r| j  }||| | jr| jj|d< | j | d S d S )NOutputBucket)r	   new_messagefor_keyr   namewrite)r
   keymetadatamr   r   r   write_message'   s   
zSubmitter.write_messageNr   r   c                 C   sL   |si }|  ||}| j|}|| |j|d||d | || d S )NF)replacecbnum_cb)r   r   new_keyupdate_metadataset_contents_from_filenamer!   )r
   pathr   r#   r$   r   r   kr   r   r   submit_file/   s   
zSubmitter.submit_fileFc              	   C   sF  t j|}t j|}t j|}d}i }	|r||	d< g }
t D ]	}|
t| q"d	|
|	d< | j
rA| j
|	d ddi t j|rt |D ]6\}}}|ra|D ]}||v r`|| qU|D ]}t j	||}|rttd|  | ||	||| |d7 }qcqLnt j|r| ||	|| |d7 }ntd|  |	d |fS )	Nr   Tags_BatchtypezSubmitting %s   zproblem with %s)r   r(   
expanduser
expandvarsabspathtimegmtimeappendstrr   r   put_attributesisdirwalkremoveprintr*   isfile)r
   r(   tagsignore_dirsr#   r$   statusr   totalr   r   trootdirsfilesignorefiler   r   r   r   submit_path8   sB   


zSubmitter.submit_path)NNr   r   )NNNr   Fr   )__name__
__module____qualname__r   r   r!   r*   rG   r   r   r   r   r      s    
	r   )r3   r   objectr   r   r   r   r   <module>   s   