B
    EDbz  γ               @   s  d dl m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G d
d de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
G dd de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G dd deZG d d! d!eZd"S )#ι    )ΪLadonExceptionc               @   s   e Zd Zdd Zdd ZdS )ΪLadonTypeExceptionc             C   s   t  | ‘ || _d S )N)r   Ϊ__init__Ϊtext)Ϊselfr   © r   ϊ6G:\easytimepro\master/mysite/ladon\exceptions\types.pyr      s    
zLadonTypeException.__init__c             C   s   | j S )N)r   )r   r   r   r   Ϊ__str__   s    zLadonTypeException.__str__N)Ϊ__name__Ϊ
__module__Ϊ__qualname__r   r	   r   r   r   r   r      s   r   c               @   s&   e Zd ZdddZdd Zdd ZdS )	ΪLadonTypePrimingExceptionNc             C   s"   t  | |‘ || _|| _|| _d S )N)r   r   Ϊ
ladon_instΪ
prime_dictΪ	attr_name)r   r   r   r   r   r   r   r   r      s    z"LadonTypePrimingException.__init__c             C   s   t | jjS )N)Ϊstrr   Ϊ	__class__)r   r   r   r   Ϊ	classname   s    z#LadonTypePrimingException.classnamec             C   s8   d|   ‘  g}| jr$|d| j g7 }dd |‘| jf S )Nzclassname: %szattribute: %sz
%s
%sΪ
)r   r   Ϊjoinr   )r   Ϊexc_infor   r   r   r	      s    z!LadonTypePrimingException.__str__)N)r
   r   r   r   r   r	   r   r   r   r   r      s   
r   c               @   s&   e Zd ZdddZdd Zdd ZdS )	ΪLadonTypeToDictExceptionNc             C   s   t  | |‘ || _|| _d S )N)r   r   r   r   )r   r   r   r   r   r   r   r      s    z!LadonTypeToDictException.__init__c             C   s   t | jjS )N)r   r   r   )r   r   r   r   r   #   s    z"LadonTypeToDictException.classnamec             C   s8   d|   ‘  g}| jr$|d| j g7 }dd |‘| jf S )Nzclassname: %szattribute: %sz
%s
%sr   )r   r   r   r   )r   r   r   r   r   r	   &   s    z LadonTypeToDictException.__str__)N)r
   r   r   r   r   r	   r   r   r   r   r      s   
r   c               @   s   e Zd ZdddZdS )ΪListAttributeMismatchNc             C   s   t  | ||||‘ d S )N)r   r   )r   r   r   r   r   r   r   r   r   .   s    zListAttributeMismatch.__init__)N)r
   r   r   r   r   r   r   r   r   -   s   r   c               @   s   e Zd ZdddZdS )ΪSubitemTypeMismatchNc             C   s   t  | ||||‘ d S )N)r   r   )r   r   r   r   r   r   r   r   r   3   s    zSubitemTypeMismatch.__init__)N)r
   r   r   r   r   r   r   r   r   2   s   r   c               @   s   e Zd ZdddZdS )ΪMandatoryAttributeMissingNc             C   s   t  | ||||‘ d S )N)r   r   )r   r   r   r   r   r   r   r   r   8   s    z"MandatoryAttributeMissing.__init__)N)r
   r   r   r   r   r   r   r   r   7   s   r   c               @   s   e Zd ZdddZdS )ΪNonExistingAttachmentNc             C   s   t  | ||||‘ d S )N)r   r   )r   r   r   r   r   r   r   r   r   <   s    zNonExistingAttachment.__init__)N)r
   r   r   r   r   r   r   r   r   ;   s   r   c               @   s   e Zd ZdddZdS )ΪLadonTypePrimerMismatchNc             C   s   t  | ||||‘ d S )N)r   r   )r   r   r   r   r   r   r   r   r   @   s    z LadonTypePrimerMismatch.__init__)N)r
   r   r   r   r   r   r   r   r   ?   s   r   c               @   s   e Zd Zdd ZdS )ΪNeedToDefineParseTimeExceptionc             C   s   t  | |‘ d S )N)r   r   )r   r   r   r   r   r   E   s    z'NeedToDefineParseTimeException.__init__N)r
   r   r   r   r   r   r   r   r   D   s   r   c               @   s   e Zd Zdd ZdS )ΪUnsafeConversionDisabledc             C   s<   d}|dt |t |f 7 }|d7 }|d7 }t | |‘ d S )NzEUnsafe conversions are disabled in the method called service method,
zVbut the dispatcher encountered a potential unsafe conversion between types %s and %s.
zWUnsafe conversions can be enabled using the keyword argument "allow_unsafe_conversion" zin the "ladonize" decorator.)r   r   r   )r   Ϊval_typeΪexpected_typeΪtxtr   r   r   r   I   s
    z!UnsafeConversionDisabled.__init__N)r
   r   r   r   r   r   r   r   r   H   s   r   c               @   s   e Zd Zdd ZdS )ΪUnsafeConversionErrorc             C   s,   dt |t |f }||7 }t | |‘ d S )NzKConversion failed while doing an unsafe conversion between types %s and %s
)r   r   r   )r   r   r    Ϊ	extra_txtr!   r   r   r   r   Q   s    zUnsafeConversionError.__init__N)r
   r   r   r   r   r   r   r   r"   P   s   r"   c               @   s   e Zd Zdd ZdS )ΪNonUnicodeErrorc             C   s   d| }t  | |‘ d S )Nz\Values must be unicode while converting from string to Ladon supported types: encountered %s)r   r   )r   r   r!   r   r   r   r   W   s    zNonUnicodeError.__init__N)r
   r   r   r   r   r   r   r   r$   V   s   r$   c               @   s   e Zd Zdd ZdS )ΪFromUnicodeConversionErrorc             C   s$   dt | }||7 }t | |‘ d S )NzBFailed to convert from unicode string to Ladon supported type: %s
)r   r   r   )r   Ϊtypr#   r!   r   r   r   r   ]   s    z#FromUnicodeConversionError.__init__N)r
   r   r   r   r   r   r   r   r%   \   s   r%   c               @   s   e Zd ZdddZdS )ΪListExpectedNc             C   s   t  | |||‘ d S )N)r   r   )r   r   r   r   r   r   r   r   c   s    zListExpected.__init__)N)r
   r   r   r   r   r   r   r   r'   b   s   r'   c               @   s   e Zd ZdddZdS )ΪAttachmentExpectedNc             C   s   t  | |||‘ d S )N)r   r   )r   r   r   r   r   r   r   r   g   s    zAttachmentExpected.__init__)N)r
   r   r   r   r   r   r   r   r(   f   s   r(   c               @   s   e Zd ZdddZdS )ΪAttributeConversionExceptionNc             C   s   t  | |||‘ d S )N)r   r   )r   r   r   r   r   r   r   r   l   s    z%AttributeConversionException.__init__)N)r
   r   r   r   r   r   r   r   r)   k   s   r)   N)Zmysite.ladon.exceptions.baser   r   r   r   r   r   r   r   r   r   r   r"   r$   r%   r'   r(   r)   r   r   r   r   Ϊ<module>   s    	