
    ~ g7                     x    S SK r S SKrS SKJr   " S S\5      r " S S\5      r " S S\5      r " S	 S
\5      rg)    N)SoSObfuscationArchivec                   0    \ rS rSrSrSrSr\S 5       rSr	g)SoSReportArchive   zxThis is the class representing an sos report, or in other words the
type the archive the SoS project natively generates
reportzsos report archivec                 h     [         R                  " U5      =(       a    SU;   $ ! [         a     gf = f)N
sosreport-Ftarfile
is_tarfile	Exceptionclsarc_paths     :/usr/lib/python3/dist-packages/sos/cleaner/archives/sos.pycheck_is_typeSoSReportArchive.check_is_type   s4    	%%h/LLH4LL 		   !$ 
11 N
__name__
__module____qualname____firstlineno____doc__	type_namedescriptionclassmethodr   __static_attributes__r       r   r   r      s%     I&K r    r   c                   0    \ rS rSrSrSrSr\S 5       rSr	g)SoSReportDirectory!   zThis is the archive class representing a build directory, or in other
words what `sos report --clean` will end up using for in-line obfuscation

report_dirzsos report directoryc                 ~    [         R                  R                  U5      (       a  S[         R                  " U5      ;   $ g)Nsos_logsFospathisdirlistdirr   s     r   r    SoSReportDirectory.check_is_type)   s,    77==""H!555r    r   Nr   r   r    r   r"   r"   !   s%     I(K r    r"   c                   :    \ rS rSrSrSrSrSr\S 5       r	S r
Srg	)
SoSCollectorArchive0   zArchive class representing the tarball created by ``sos collect``. It
will not provide prep files on its own, however it will provide a list
of SoSReportArchive's which will then be used to prep the parsers
collectzsos collect tarballTc                 h     [         R                  " U5      =(       a    SU;   $ ! [         a     gf = f)Nzsos-collectFr
   r   s     r   r   !SoSCollectorArchive.check_is_type:   s4    	&&x0N]h5NO 		r   c                 J   U R                  SS9  U R                  n/ n[        R                  " U5       Hk  n[        R                  R                  X5      nSU;   d  M*  [        R                  " U5      (       d  MG  UR                  [        X@R                  5      5        Mm     U$ )NT)quietr	   )extractextracted_pathr(   r+   r)   joinr   r   appendr   tmpdir)self_patharchivesfnamearc_names        r   get_nested_archives'SoSCollectorArchive.get_nested_archivesA   sz    4 ##ZZ&Eww||E1Hu$););H)E)E 0;; GH ' r    r   N)r   r   r   r   r   r   r   	is_nestedr   r   r?   r   r   r    r   r.   r.   0   s/    
 I'KI r    r.   c                   0    \ rS rSrSrSrSr\S 5       rSr	g)SoSCollectorDirectoryL   zsThe archive class representing the temp directory used by ``sos
collect`` when ``--clean`` is used during runtime.
collect_dirzsos collect directoryc                     [         R                  R                  U5      (       a%  [         R                  " U5       H  nSU;   d  M    g   g)Nzsos-collector-TFr'   )r   r   r=   s      r   r   #SoSCollectorDirectory.check_is_typeT   s8    77==""H-#u, . r    r   Nr   r   r    r   rC   rC   L   s%     I)K r    rC   )r(   r   sos.cleaner.archivesr   r   r"   r.   rC   r   r    r   <module>rI      sD    
  6,  ) / 8/ r    