o
    Wi                     @  s   d dl mZ d dlZd dlmZ d dlmZ ddlm	Z	m
Z
 er,d dlmZ d dlmZ G d	d
 d
e	ZG dd de
Zd
gZdS )    )annotationsN)TYPE_CHECKING)NoOpFileLock   )AppDataDiskFolderPyInfoStoreDisk)Path)NoReturnc                      sJ   e Zd ZdZd fddZddd	Zdd
dZdddZdddZ  Z	S )ReadOnlyAppDataFfolderstrreturnNonec                   s:   t j|sd| d}t|t | t|| _d S )Nzread-only app data directory z does not exist)ospathisdirRuntimeErrorsuper__init__r   lock)selfr   msg	__class__ Q/home/ubuntu/.local/lib/python3.10/site-packages/virtualenv/app_data/read_only.pyr      s
   zReadOnlyAppData.__init__c                 C  s   d}t |)Nz)read-only app data does not support resetr   )r   r   r   r   r   reset      zReadOnlyAppData.resetc                 C     t NNotImplementedError)r   r   r   r   py_info_clear      zReadOnlyAppData.py_info_clearr   r   _PyInfoStoreDiskReadOnlyc                 C  s   t | j|S r    )r%   
py_info_at)r   r   r   r   r   py_info    s   zReadOnlyAppData.py_infodistributionfor_py_versionr	   c                 C  r   r    r!   )r   r(   r)   r   r   r   embed_update_log#   r$   z ReadOnlyAppData.embed_update_log)r   r   r   r   )r   r   )r   r   r   r%   )r(   r   r)   r   r   r	   )
__name__
__module____qualname__
can_updater   r   r#   r'   r*   __classcell__r   r   r   r   r
      s    


r
   c                   @  s   e Zd ZdddZdS )	r%   contentr   r   r	   c                 C  s   d}t |)Nz0read-only app data python info cannot be updatedr   )r   r0   r   r   r   r   write(   r   z_PyInfoStoreDiskReadOnly.writeN)r0   r   r   r	   )r+   r,   r-   r1   r   r   r   r   r%   '   s    r%   )
__future__r   os.pathr   typingr   virtualenv.util.lockr   via_disk_folderr   r   pathlibr   r	   r
   r%   __all__r   r   r   r   <module>   s    