
                         V   d dl Z G d de      Z G d de      Z G d de      Z G d d	eej                  j                        Z G d
 deej                  j                        Z	 G d de      Z
 G d de      Z G d de      Z G d de      ZeZ G d de      Z G d de      Zy)    Nc                       e Zd ZdZy)
Boto3Errorz Base class for all Boto3 errors.N)__name__
__module____qualname____doc__     #lib/third_party/boto3/exceptions.pyr   r      s    *r
   r   c                       e Zd Zy)ResourceLoadExceptionNr   r   r   r	   r
   r   r   r          r
   r   c                       e Zd Zy)NoVersionFoundNr   r	   r
   r   r   r      r   r
   r   c                       e Zd Zd Zy)UnknownAPIVersionErrorc                 F    d|d|d|}t         j                  | |       y )NThe 'z'' resource does not an API version of: z
Valid API versions are: )r   __init__)selfservice_namebad_api_versionavailable_api_versionsmsgs        r   r   zUnknownAPIVersionError.__init__(   s)    
 _.DF 	 	D#&r
   N)r   r   r   r   r	   r
   r   r   r   &   s    	'r
   r   c                       e Zd ZdZd Zy)ResourceNotExistsErrorzARaised when you attempt to create a resource that does not exist.c                 |    d|ddj                  |      d}|r|d|d|dz  }t        j                  | |       y )Nr   z=' resource does not exist.
The available resources are:
   - z
   - 
z 
Consider using a boto3.client('z') instead of a resource for '')joinr   r   )r   r   available_serviceshas_low_level_clientr   s        r   r   zResourceNotExistsError.__init__7   sK     (8J)KM 	
  ,8,HIC
 	D#&r
   Nr   r   r   r   r   r	   r
   r   r   r   4   s
    K'r
   r   c                         e Zd Zd fd	Z xZS )RetriesExceededErrorc                 :    t         t        |   |       || _        y )N)superr&   r   last_exception)r   r)   r   	__class__s      r   r   zRetriesExceededError.__init__G   s    "D237,r
   )zMax Retries Exceeded)r   r   r   r   __classcell__)r*   s   @r   r&   r&   F   s    - -r
   r&   c                       e Zd Zy)S3TransferFailedErrorNr   r	   r
   r   r-   r-   L   r   r
   r-   c                       e Zd Zy)S3UploadFailedErrorNr   r	   r
   r   r/   r/   P   r   r
   r/   c                       e Zd ZdZd Zy)"DynamoDBOperationNotSupportedErrorz<Raised for operations that are not supported for an operand.c                 X    |d|dt        |      d}t        j                  | |       y )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   	operationvaluer   s       r   r   z+DynamoDBOperationNotSupportedError.__init__V   s+    
 tE{, 	
 	4%r
   Nr$   r	   r
   r   r1   r1   T   s
    F&r
   r1   c                       e Zd ZdZd Zy)DynamoDBNeedsConditionErrorz$Raised when input is not a conditionc                 T    d|dt        |      d}t        j                  | |       y )Nz&Expecting a ConditionBase object. Got r3   z[. Use AttributeBase object methods (i.e. Attr().eq()). to generate ConditionBase instances.r4   )r   r8   r   s      r   r   z$DynamoDBNeedsConditionError.__init__d   s*     49$u+G 	 	4%r
   Nr$   r	   r
   r   r:   r:   b   s
    .&r
   r:   c                       e Zd Zy)DynamoDBNeedsKeyConditionErrorNr   r	   r
   r   r=   r=   l   r   r
   r=   )botocore.exceptionsbotocorer6   r   r   r   
exceptionsDataNotFoundErrorr   r   r&   r-   r/   r1   #DynanmoDBOperationNotSupportedErrorr:   r=   r	   r
   r   <module>rC      s    + +	J 		Z 	'Z%00BB''Z%00BB'$-: -	J 		* 	& & 'I #&* &	Z 	r
   