U
    O8c                     @   s   d dl ZG dd deZG dd deZG dd deZG dd	 d	eejjZG d
d deejjZ	G dd deZ
G dd deZG dd deZG dd deZeZG dd deZG dd deZG dd deZdS )    Nc                   @   s   e Zd ZdZdS )
Boto3Errorz Base class for all Boto3 errors.N__name__
__module____qualname____doc__ r   r   4/tmp/pip-unpacked-wheel-hml_76kf/boto3/exceptions.pyr      s   r   c                   @   s   e Zd ZdS )ResourceLoadExceptionNr   r   r   r   r   r   r	   r
      s   r
   c                   @   s   e Zd ZdS )NoVersionFoundNr   r   r   r   r	   r      s   r   c                   @   s   e Zd Zdd ZdS )UnknownAPIVersionErrorc                 C   s&   d| d| d| }t | | d S )NzThe 'z'' resource does not an API version of: z
Valid API versions are: )r   __init__)selfservice_nameZbad_api_versionZavailable_api_versionsmsgr   r   r	   r   )   s    zUnknownAPIVersionError.__init__N)r   r   r   r   r   r   r   r	   r   &   s   r   c                   @   s   e Zd ZdZdd ZdS )ResourceNotExistsErrorzARaised when you attempt to create a resource that does not exist.c                 C   s<   d |d|}|r,| d| d| d}t| | d S )NzGThe '{}' resource does not exist.
The available resources are:
   - {}
z
   - z 
Consider using a boto3.client('z') instead of a resource for '')formatjoinr   r   )r   r   Zavailable_servicesZhas_low_level_clientr   r   r   r	   r   8   s     zResourceNotExistsError.__init__Nr   r   r   r   r   r   r   r   r	   r   3   s   r   c                       s   e Zd Zd fdd	Z  ZS )RetriesExceededErrorMax Retries Exceededc                    s   t  | || _d S )N)superr   last_exception)r   r   r   	__class__r   r	   r   K   s    zRetriesExceededError.__init__)r   )r   r   r   r   __classcell__r   r   r   r	   r   J   s   r   c                   @   s   e Zd ZdS )S3TransferFailedErrorNr   r   r   r   r	   r   P   s   r   c                   @   s   e Zd ZdS )S3UploadFailedErrorNr   r   r   r   r	   r   T   s   r   c                   @   s   e Zd ZdZdd ZdS )"DynamoDBOperationNotSupportedErrorz<Raised for operations that are not supported for an operand.c                 C   s*   | d| dt | d}t| | d S )Nz& operation cannot be applied to value 	 of type zo directly. Must use AttributeBase object methods (i.e. Attr().eq()). to generate ConditionBase instances first.type	Exceptionr   )r   Z	operationvaluer   r   r   r	   r   [   s    z+DynamoDBOperationNotSupportedError.__init__Nr   r   r   r   r	   r    X   s   r    c                   @   s   e Zd ZdZdd ZdS )DynamoDBNeedsConditionErrorz$Raised when input is not a conditionc                 C   s&   d| dt | d}t| | d S )Nz&Expecting a ConditionBase object. Got r!   z[. Use AttributeBase object methods (i.e. Attr().eq()). to generate ConditionBase instances.r"   )r   r%   r   r   r   r	   r   k   s    z$DynamoDBNeedsConditionError.__init__Nr   r   r   r   r	   r&   h   s   r&   c                   @   s   e Zd ZdS )DynamoDBNeedsKeyConditionErrorNr   r   r   r   r	   r'   t   s   r'   c                   @   s   e Zd ZdZdS )PythonDeprecationWarningz{
    Python version being used is scheduled to become unsupported
    in an future release. See warning for specifics.
    Nr   r   r   r   r	   r(   x   s   r(   )Zbotocore.exceptionsZbotocorer$   r   r
   r   
exceptionsZDataNotFoundErrorr   r   r   r   r   r    Z#DynanmoDBOperationNotSupportedErrorr&   r'   Warningr(   r   r   r   r	   <module>   s&   	
 
 