
    8'h'                        d dl mZ d dlZd dlmZ d dlmZ dZe G d de             Z	e G d d	e	             Z
e G d
 de	             Ze G d de	             Ze G d de	             Ze G d de	             Ze G d de	             Z eej                          G d de             Z eej&                         G d de             Z eej*                         G d de             Zy)    )absolute_importN)public)error)ErrorSessionNotReadySerializationErrorProtocolErrorTransportLostApplicationErrorNotAuthorized
InvalidUric                       e Zd ZdZy)r   z8
    Base class for all exceptions related to WAMP.
    N__name__
__module____qualname____doc__     S/var/www/html/trade_iq/venv/lib/python3.12/site-packages/autobahn/wamp/exception.pyr   r   .       r   r   c                       e Zd ZdZy)r   zp
    The application tried to perform a WAMP interaction, but the
    session is not yet fully established.
    Nr   r   r   r   r   r   5       r   r   c                       e Zd ZdZy)r   z
    Exception raised when the WAMP serializer could not serialize the
    application payload (``args`` or ``kwargs`` for ``CALL``, ``PUBLISH``, etc).
    Nr   r   r   r   r   r   =   r   r   r   c                       e Zd ZdZy)InvalidUriErrorz=
    Exception raised when an invalid WAMP URI was used.
    Nr   r   r   r   r   r   E   r   r   r   c                       e Zd ZdZy)r	   z
    Exception raised when WAMP protocol was violated. Protocol errors
    are fatal and are handled by the WAMP implementation. They are
    not supposed to be handled at the application level.
    Nr   r   r   r   r	   r	   L   s    r   r	   c                       e Zd ZdZy)r
   zk
    Exception raised when the transport underlying the WAMP session
    was lost or is not connected.
    Nr   r   r   r   r
   r
   U   r   r   r
   c                       e Zd ZdZdZ	 dZ	 dZ	 dZ	 dZ	 dZ		 dZ
	 d	Z	 d
Z	 dZ	 dZ	 dZ	 dZ	 dZ	 dZ	 dZ	 dZ	 dZ	 dZ	 dZ	 dZ	 dZ	 dZ	 dZ	 dZ	 dZ	 d Zed        Z d Z!d Z"y )!r   z]
    Base class for all exceptions that can/may be handled
    at the application level.
    zwamp.error.invalid_urizwamp.error.invalid_payloadz wamp.error.payload_size_exceededzwamp.error.no_such_procedurez#wamp.error.procedure_already_existsz<wamp.error.procedure_exists_with_different_invocation_policyzwamp.error.no_such_registrationzwamp.error.no_such_subscriptionzwamp.error.no_such_sessionzwamp.error.invalid_argumentzwamp.error.system_shutdownzwamp.error.close_realmzwamp.error.goodbye_and_outzwamp.error.not_authorizedzwamp.error.authorization_failedz wamp.error.authentication_failedzwamp.error.no_auth_methodzwamp.error.no_such_realmzwamp.error.no_such_rolezwamp.error.no_such_principalzwamp.error.canceledzwamp.error.timeoutzwamp.error.no_eligible_calleezwamp.error.no_payload_codecz*wamp.error.encryption.trusted_uri_mismatchz#wamp.error.encryption.decrypt_errorc                 2   t        j                  | g|  || _        || _        |j	                  dd      | _        |j	                  dd      | _        |j	                  dd      | _        |j	                  dd      | _        |j	                  dd      | _	        y)z

        :param error: The URI of the error that occurred, e.g. ``wamp.error.not_authorized``.
        :type error: str
        enc_algoNcalleecallee_authidcallee_authroleforward_for)
	Exception__init__kwargsr   popr!   r"   r#   r$   r%   )selfr   argsr(   s       r   r'   zApplicationError.__init__   s     	4'$'


:t4jj40#ZZ>%zz*;TB!::mT:r   c                     dj                  | j                  dj                  | j                  D cg c]  }t	        j
                  |       c}            S c c}w )zt
        Get the error message of this exception.

        :returns: The error message.
        :rtype: str
        z{0}: {1} )formatr   joinr+   six	text_type)r*   as     r   error_messagezApplicationError.error_message  sE     !!JJII;As}}Q';<
 	
;s   Ac                    | j                   rNd| j                   v r@ddj                  | j                   j                  d            z   dz   }d| j                   d<   nd}dj                  | j                  t        | j                        | j                   | j                  | j                  | j                  | j                  | j                  |	      S )N	tracebackz:

z... zApplicationError(error=<{0}>, args={1}, kwargs={2}, enc_algo={3}, callee={4}, callee_authid={5}, callee_authrole={6}, forward_for={7}){8})r(   r/   r)   r.   r   listr+   r!   r"   r#   r$   r%   )r*   tbs     r   __unicode__zApplicationError.__unicode__  s    ;;;$++5%**T[[__[%ABBUJB'-DKK$B \  c  cJJTYYdmmT[[RVRdRdfjfzfz  }A  }M  }M  OQR 	Rr   c                     t         j                  r| j                         S | j                         j                  d      S )Nutf8)r0   PY3r:   encode)r*   s    r   __str__zApplicationError.__str__!  s2    77##%%##%,,V44r   N)#r   r   r   r   INVALID_URIINVALID_PAYLOADPAYLOAD_SIZE_EXCEEDEDNO_SUCH_PROCEDUREPROCEDURE_ALREADY_EXISTS+PROCEDURE_EXISTS_INVOCATION_POLICY_CONFLICTNO_SUCH_REGISTRATIONNO_SUCH_SUBSCRIPTIONNO_SUCH_SESSIONINVALID_ARGUMENTSYSTEM_SHUTDOWNCLOSE_REALMGOODBYE_AND_OUTNOT_AUTHORIZEDAUTHORIZATION_FAILEDAUTHENTICATION_FAILEDNO_AUTH_METHODNO_SUCH_REALMNO_SUCH_ROLENO_SUCH_PRINCIPALCANCELEDTIMEOUTNO_ELIGIBLE_CALLEEENC_NO_PAYLOAD_CODECENC_TRUSTED_URI_MISMATCHENC_DECRYPT_ERRORr'   r   r3   r:   r?   r   r   r   r   r   ]   sv   
 ,K
 4O @
 8
  F
 3r/
 > > 4O 6 4O
 ,K
 4O 2N
 > @
 2N 0M
 .L 8 &H $G
 : :
  M ?; 

 

R5r   r   c                       e Zd ZdZy)r   z:
    Not authorized to perform the respective action.
    Nr   r   r   r   r   r   (  r   r   r   c                       e Zd ZdZy)r   J
    The URI for a topic, procedure or error is not a valid WAMP URI.
    Nr   r   r   r   r   r   /  r   r   r   c                       e Zd ZdZy)InvalidPayloadr\   Nr   r   r   r   r^   r^   6  r   r   r^   )
__future__r   r0   autobahn.utilr   autobahn.wamp.urir   __all__RuntimeErrorr   r   r   r   r	   r
   r   rM   r&   r   r@   r   rA   r^   r   r   r   <module>rd      sP  6 ' 
   #	 L   e      e   E   E   G5u G5 G5T &&'I  ( ##$  % ''(Y  )r   