
    e                          G d  de       Zy)c                   H     e Zd ZdZ G d d      Zd fd	Zed        Z xZS )OfflineImapErrorz+An Error during offlineimap synchronizationc                        e Zd ZdZd\  ZZZZZy)OfflineImapError.ERRORa{  Severity level of an Exception

        * **MESSAGE**:  Abort the current message, but continue with folder
        * **FOLDER_RETRY**: Error syncing folder, but do retry
        * **FOLDER**:   Abort folder sync, but continue with next folder
        * **REPO**:     Abort repository sync, continue with next account
        * **CRITICAL**: Immediately exit offlineimap
        )    
            N)	__name__
__module____qualname____doc__MESSAGEFOLDER_RETRYFOLDERREPOCRITICAL     ,/usr/share/offlineimap3/offlineimap/error.pyERRORr      s    	 9J5vtXr   r   c                 H    || _         || _        t        t        |   |       y)a   
        :param reason: Human readable string suitable for logging

        :param severity: denoting which operations should be
               aborted. E.g. a ERROR.MESSAGE can occur on a faulty
               message, but a ERROR.REPO occurs when the server is
               offline.

        :param errcode: optional number denoting a predefined error
               situation (which let's us exit with a predefined exit
               value). So far, no errcodes have been defined yet.

        :type severity: OfflineImapError.ERROR valueN)errcodeseveritysuperr   __init__)selfreasonr   r   	__class__s       r   r   zOfflineImapError.__init__   s%       	.v6r   c                      | j                   d   S )Nr   )args)r   s    r   r   zOfflineImapError.reason%   s    yy|r   )N)	r   r   r   r   r   r   propertyr   __classcell__)r   s   @r   r   r      s+    5
J 
J7*  r   r   N)	Exceptionr   r   r   r   <module>r%      s   &y &r   