
    soj                     8    d dl mZ d dlmZ  G d d          ZdS )    )phrases)ErrorSourcec                   <    e Zd ZdZddedefdZdefdZd Z	d	 Z
d
S )Errorz
    Error class
    Fsourceonly_messagec                 >    || _         || _        || _        || _        dS )z
        :param message: Either a phrases.py constant name (str) to be resolved lazily in the
        currently active language, or an already resolved message text
        N)codemessager   r   )selfr
   r   r   r   s        /app/src/model/error/Error.py__init__zError.__init__
   s'    
 	(    returnc                     t          | j        t                    r4t          t          | j                  rt          t          | j                  S | j        S )z~
        Resolve the message, translating it if it's a phrases.py constant name
        :return: The resolved message
        )
isinstancer   strhasattrr   getattrr   s    r   get_messagezError.get_message   sE     dlC(( 	2WWdl-K-K 	27DL111|r   c                     | j         r|                                 S d| j        z   t          | j                  z   dz   |                                 z   }|t
          j        z  }|S )NzError z: )r   r   r   r   r
   r   FORWARD_TO_SUPPORT_GROUP)r   results     r   __str__zError.__str__   s`     	&##%%%T[(3ty>>9D@4CSCSCUCUU'22r   c                      t          |           S )N)r   r   s    r   buildzError.build(   s    4yyr   N)F)__name__
__module____qualname____doc__r   boolr   r   r   r   r    r   r   r   r      s~         ) )k ) ) ) ) )	S 	 	 	 	      r   r   N)	resourcesr   src.model.error.ErrorSourcer   r   r#   r   r   <module>r&      s[          3 3 3 3 3 3$ $ $ $ $ $ $ $ $ $r   