o
    oÄŽiž  ã                   @   s€   d dl mZmZ ddlmZ ddlmZ ddlmZ eƒ Z		 G dd„ deƒZ
e
je
_G d	d
„ d
eƒZde_de	_e
e	_ee	_dS )é    )ÚAnyÚOptionalé   )ÚCloudImplementationé   )ÚLocalClient)Ú	LocalPathc                   @   s   e Zd ZdZeZdS )ÚLocalGSClientz{Replacement for GSClient that uses the local file system. Intended as a monkeypatch
    substitute when writing tests.
    N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__Úlocal_gs_implementationÚ_cloud_meta© r   r   úa/home/jeff/fluffinator/venv/lib/python3.10/site-packages/cloudpathlib/local/implementations/gs.pyr	      s    r	   c                   @   sŠ   e Zd ZU dZdZeed< eZe	defdd„ƒZ
dd	ee fd
d„Ze	defdd„ƒZe	defdd„ƒZe	dd„ ƒZe	defdd„ƒZdS )ÚLocalGSPathzyReplacement for GSPath that uses the local file system. Intended as a monkeypatch substitute
    when writing tests.
    zgs://Úcloud_prefixÚreturnc                 C   s   | j S ©N)Úbucket©Úselfr   r   r   Údrive   s   zLocalGSPath.driveFNÚmodec                 C   s   d S r   r   )r   ÚparentsÚexist_okr   r   r   r   Úmkdir#   s   zLocalGSPath.mkdirc                 C   s   | j  dd¡d S )Nú/é   r   )Ú
_no_prefixÚsplitr   r   r   r   r   '   s   zLocalGSPath.bucketc                 C   s    | j }| d¡r|dd … }|S )Nr   r   )Ú_no_prefix_no_driveÚ
startswith)r   Úkeyr   r   r   Úblob+   s   
zLocalGSPath.blobc                 C   ó   | j  | ¡S r   ©ÚclientÚ_md5r   r   r   r   Úetag6   ó   zLocalGSPath.etagc                 C   r&   r   r'   r   r   r   r   Úmd5:   r+   zLocalGSPath.md5)FFN)r
   r   r   r   r   ÚstrÚ__annotations__r   r   Úpropertyr   r   r   r   r   r%   r*   r,   r   r   r   r   r      s   
 

r   ÚGSPathÚgsN)Útypingr   r   Ú	cloudpathr   Úlocalclientr   Ú	localpathr   r   r	   Ú	CloudPathr0   r   r
   ÚnameÚ_client_classÚ_path_classr   r   r   r   Ú<module>   s    (
