
    V|h                     T    S SK Jr  SSKJrJrJrJr   " S S\5      r " S S\5      rg)	   )PostProcessor   )PopenPostProcessingErrorshell_quotevariadicc                   &    \ rS rSrS rS rS rSrg)ExecPP   c                 P    [         R                  " X5        [        U5      U l        g )N)r   __init__r   exec_cmd)self
downloaderr   s      S/home/james-whalen/.local/lib/python3.13/site-packages/yt_dlp/postprocessor/exec.pyr   ExecPP.__init__   s    t0 *    c                 $   U R                   R                  X5      u  p4U(       a  U R                   R                  U5      U-  $ UR                  SUR                  S5      5      nU(       a%  SU;  a  US-  nUR	                  S[        USS95      nU$ )Nfilepath	_filenamez{}z {}Tshell)_downloaderprepare_outtmplescape_outtmplgetreplacer   )r   cmdinfotmpl	tmpl_dictr   s         r   	parse_cmdExecPP.parse_cmd   s    **::3E##22489DD88J(=>3u++dK$EFC
r   c                     U R                    HT  nU R                  X!5      nU R                  SU 35        [        R                  " USS9u    pEUS:w  d  MH  [        SU 35      e   / U4$ )NzExecuting command: Tr       zCommand returned error code )r   r"   	to_screenr   runr   )r   r   r    r   _return_codes         r   r'   
ExecPP.run   sm    MMD..,CNN067 %		#T :Aqa),H*VWW " 4xr   )r   N)__name__
__module____qualname____firstlineno__r   r"   r'   __static_attributes__ r   r   r
   r
      s    +r   r
   c                   (   ^  \ rS rSrU 4S jrSrU =r$ )ExecAfterDownloadPP#   c                 H   > [         TU ]  " U0 UD6  U R                  S5        g )Nzyt_dlp.postprocessor.ExecAfterDownloadPP is deprecated and may be removed in a future version. Use yt_dlp.postprocessor.ExecPP instead)superr   deprecation_warning)r   argskwargs	__class__s      r   r   ExecAfterDownloadPP.__init__$   s*    $)&)  ^	_r   r0   )r+   r,   r-   r.   r   r/   __classcell__)r9   s   @r   r2   r2   #   s    _ _r   r2   N)	commonr   utilsr   r   r   r   r
   r2   r0   r   r   <module>r>      s(    ! E E] <_& _r   