File: //lib/python3/dist-packages/compose/__pycache__/volume.cpython-310.pyc
o
    S�`�  �                   @   s�   d dl Z d dlZd dlmZ d dlmZ d dlmZ ddlm	Z	 ddl
mZ ddlm
Z
 dd	lmZ dd
lmZ ddlmZ e �e�ZG dd
� d
�ZG dd� d�ZG dd� de�Zdd� ZdS )�    N)�chain)�NotFound)�
version_lt�   )�__version__)�ConfigurationError)�
VolumeSpec)�
LABEL_PROJECT)�
LABEL_VERSION)�LABEL_VOLUMEc                   @   st   e Zd Z		ddd�Zdd� Zdd� Zdd	d
�Zdd� Zed
d� �Z	edd� �Z
edd� �Zedd� �Zdd� Z
dS )�VolumeNFc	           	      C   s:   || _ || _|| _|| _|| _|| _|| _|| _d | _d S �N)	�client�project�name�driver�driver_opts�external�labels�custom_name�legacy)	�selfr   r   r   r   r   r   r   r   � r   �0/usr/lib/python3/dist-packages/compose/volume.py�__init__   s   
zVolume.__init__c                 C   s   | j j| j| j| j| jd�S )N)r   )r   �
create_volume�	full_namer   r   �_labels�r   r   r   r   �create    s   �z
Volume.createc                 C   s4   | j rt�d| j� d S t�d| j� | j�| j�S )NzVolume %s is external, skippingzRemoving volume %s)r   �log�info�	true_namer   �
remove_volumer   r   r   r   �remove%   s
   z
Volume.removec                 C   s    |r	| j �| j�S | j �| j�S r
   )r   �inspect_volume�legacy_full_namer   )r   r   r   r   r   �inspect,   s   zVolume.inspectc                 C   s2   | � �  z
| j| jd� W dS  ty   Y dS w )N�r   FT)�_set_legacy_flagr'