
    Xf                        d dl Z d dlZd dlmZmZmZ 	 d dlZdZn# e	$ r dZY nw xY w	 d dl
Z
dZn# e	$ r dZY nw xY wd dlmZ  e j        e          Zer G d dej                  Zer G d d	ej                  ZdS dS )
    N)OptionalAnyListTF)	resourcesc                   v    e Zd Zedee         fd            Zedej	        j
        dee         fd            ZdS )S3FileSystemHandlerreturnc                     dgS )Ns3 clss    [/home/panchajanya/Development/work/volatility3/volatility3/framework/layers/cloudstorage.pynon_cached_schemesz&S3FileSystemHandler.non_cached_schemes   	    6M    reqc                     | j         dk    r[d                    | j                            d          dd                   }t	          j                                        |          S dS )z*Handles the request if it's the s3 scheme.r   ://   N)typejoinfull_urlsplits3fsS3FileSystemopenr   
object_uris     r   default_openz S3FileSystemHandler.default_open"   s]     x4"ZZ(:(:5(A(A!""(EFF
(**//
;;;4r   N__name__
__module____qualname__classmethodr   strr   staticmethodurllibrequestRequestr   r   r    r   r   r   r   r      t        		tCy 	 	 	 
	 
	fn4 	# 	 	 	 
	 	 	r   r   c                   v    e Zd Zedee         fd            Zedej	        j
        dee         fd            ZdS )GSFileSystemHandlerr	   c                     dgS )Ngsr   r   s    r   r   z&GSFileSystemHandler.non_cached_schemes.   r   r   r   c                     | j         dk    r[d                    | j                            d          dd                   }t	          j                                        |          S dS )z*Handles the request if it's the gs scheme.r/   r   r   N)r   r   r   r   gcsfsGCSFileSystemr   r   s     r   r    z GSFileSystemHandler.default_open2   s]     x4"ZZ(:(:5(A(A!""(EFF
*,,11*===4r   Nr!   r   r   r   r-   r-   -   r+   r   r-   )loggingurllib.parser(   typingr   r   r   r   HAS_S3FSImportErrorr1   	HAS_GCSFSvolatility3.framework.layersr   	getLogger__file__vollogVolatilityHandlerr   r-   r   r   r   <module>r>      sR  
      & & & & & & & & & &KKKHH   HHHLLLII   III 3 2 2 2 2 2		8	$	$     i9         i9      s    %%0 ::