3
|oZB                 @   s   d Z dZ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dS )zD-Bus exceptions.DBusExceptionMissingErrorHandlerExceptionMissingReplyHandlerExceptionValidationExceptionIntrospectionParserExceptionUnknownMethodExceptionNameExistsException    )is_py3c               @   s8   e Zd ZdZdd Zdd Zdd Zdd	 Zd
d ZdS )r   Fc             O   sX   |j dd }|d k	s$t| dd d kr*|| _|rDtddj|j  tj| f|  d S )Nname_dbus_error_namez1DBusException does not take keyword arguments: %sz, )popgetattrr   	TypeErrorjoinkeys	Exception__init__)selfargskwargsr
    r   1/usr/lib/python3/dist-packages/dbus/exceptions.pyr   -   s    zDBusException.__init__c             C   sF   t | jdkrt| j}ndj| j}| jdk	r>d| j|f S |S dS )zReturn a unicode error    Nz%s: %s)lenr   unicoder   r   )r   sr   r   r   __unicode__6   s    
zDBusException.__unicode__c             C   s*   t j| }| jdk	r"d| j|f S |S dS )zReturn a str errorNz%s: %s)r   __str__r   )r   r   r   r   r   r   D   s    

zDBusException.__str__c             C   sP   t | jdkr*trt| j}q6t| j}ndj| j}t|trL|jddS |S )Nr   r   zutf-8replace)	r   r   r	   strr   r   
isinstancebytesdecode)r   r   r   r   r   get_dbus_messageL   s    
zDBusException.get_dbus_messagec             C   s   | j S )N)r   )r   r   r   r   get_dbus_nameZ   s    zDBusException.get_dbus_nameN)	__name__
__module____qualname__include_tracebackr   r   r   r$   r%   r   r   r   r   r   !   s   
	c               @   s   e Zd ZdZdd ZdS )r   Tc             C   s   t j| d d S )Nz^error_handler not defined: if you define a reply_handler you must also define an error_handler)r   r   )r   r   r   r   r   a   s    z%MissingErrorHandlerException.__init__N)r&   r'   r(   r)   r   r   r   r   r   r   ]   s   c               @   s   e Zd ZdZdd ZdS )r   Tc             C   s   t j| d d S )Nz^reply_handler not defined: if you define an error_handler you must also define a reply_handler)r   r   )r   r   r   r   r   h   s    z%MissingReplyHandlerException.__init__N)r&   r'   r(   r)   r   r   r   r   r   r   d   s   c               @   s   e Zd ZdZdddZdS )r   Tr   c             C   s   t j| d|  d S )NzError validating string: %s)r   r   )r   msgr   r   r   r   o   s    zValidationException.__init__N)r   )r&   r'   r(   r)   r   r   r   r   r   r   k   s   c               @   s   e Zd ZdZdddZdS )r   Tr   c             C   s   t j| d|  d S )Nz!Error parsing introspect data: %s)r   r   )r   r*   r   r   r   r   v   s    z%IntrospectionParserException.__init__N)r   )r&   r'   r(   r)   r   r   r   r   r   r   r   s   c               @   s   e Zd ZdZdZdd ZdS )r   Tz(org.freedesktop.DBus.Error.UnknownMethodc             C   s   t j| d|  d S )NzUnknown method: %s)r   r   )r   methodr   r   r   r   ~   s    zUnknownMethodException.__init__N)r&   r'   r(   r)   r   r   r   r   r   r   r   y   s   c               @   s   e Zd ZdZdd ZdS )r   Tc             C   s   t j| d|  d S )NzBus name already exists: %s)r   r   )r   r
   r   r   r   r      s    zNameExistsException.__init__N)r&   r'   r(   r)   r   r   r   r   r   r      s   N)r   r   r   r   r   r   r   )__doc____all__Zdbus._compatr	   r   r   r   r   r   r   r   r   r   r   r   r   <module>   s      <