B
    νΉ`T  γ               @   s  d dl Z d dlmZ d dlm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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jZG d-d. d.ejZG d/d0 d0ejZdS )1ι    N)Ϊutils)Ϊ
exceptions)Ϊ
SetupErrorc                   s   e Zd Zd fdd	Z  ZS )ΪNoSchemaErrorΪ c                s   t   |||‘ d S )N)ΪsuperΪ__init__)ΪselfΪeΪdescrΪdetail)Ϊ	__class__© ϊ]/home/kop/projects/devel/pgwui/test_venv/lib/python3.7/site-packages/pgwui_copy/exceptions.pyr       s    zNoSchemaError.__init__)r   r   )Ϊ__name__Ϊ
__module__Ϊ__qualname__r   Ϊ__classcell__r   r   )r   r   r      s   r   c                   s   e Zd Zd fdd	Z  ZS )ΪLiveDBTargetErrorr   c                s   t   |||‘ d S )N)r   r   )r	   r
   r   r   )r   r   r   r   %   s    zLiveDBTargetError.__init__)r   r   )r   r   r   r   r   r   r   )r   r   r   $   s   r   c                   s   e Zd Zd fdd	Z  ZS )ΪNonAdminUserErrorr   c                s   t   |||‘ d S )N)r   r   )r	   r
   r   r   )r   r   r   r   *   s    zNonAdminUserError.__init__)r   r   )r   r   r   r   r   r   r   )r   r   r   )   s   r   c                   s   e Zd Zd fdd	Z  ZS )ΪNoFromDBErrorr   c                s   t   |||‘ d S )N)r   r   )r	   r
   r   r   )r   r   r   r   /   s    zNoFromDBError.__init__)r   r   )r   r   r   r   r   r   r   )r   r   r   .   s   r   c                   s   e Zd Zd fdd	Z  ZS )ΪNoToDBErrorr   c                s   t   |||‘ d S )N)r   r   )r	   r
   r   r   )r   r   r   r   4   s    zNoToDBError.__init__)r   r   )r   r   r   r   r   r   r   )r   r   r   3   s   r   c                   s   e Zd Zd fdd	Z  ZS )ΪSameDBErrorr   c                s   t   |||‘ d S )N)r   r   )r	   r
   r   r   )r   r   r   r   9   s    zSameDBError.__init__)r   r   )r   r   r   r   r   r   r   )r   r   r   8   s   r   c                   s   e Zd Zd fdd	Z  ZS )ΪInvalidSchemaErrorr   c                s   t   |||‘ d S )N)r   r   )r	   r
   r   r   )r   r   r   r   >   s    zInvalidSchemaError.__init__)r   r   )r   r   r   r   r   r   r   )r   r   r   =   s   r   c                   s   e Zd Zd fdd	Z  ZS )ΪCopyToDefaultErrorr   c                s   t   |||‘ d S )N)r   r   )r	   r
   r   r   )r   r   r   r   C   s    zCopyToDefaultError.__init__)r   r   )r   r   r   r   r   r   r   )r   r   r   B   s   r   c                   s   e Zd Zd fdd	Z  ZS )ΪSchemaExistsErrorr   c                s   t   |||‘ d S )N)r   r   )r	   r
   r   r   )r   r   r   r   H   s    zSchemaExistsError.__init__)r   r   )r   r   r   r   r   r   r   )r   r   r   G   s   r   c                   s   e Zd Zd fdd	Z  ZS )ΪInconsistentDBErrorr   c                s   t   |||‘ d S )N)r   r   )r	   r
   r   r   )r   r   r   r   M   s    zInconsistentDBError.__init__)r   r   )r   r   r   r   r   r   r   )r   r   r   L   s   r   c                   s   e Zd Zd fdd	Z  ZS )ΪSchemaDroppedErrorr   c                s   t   |||‘ d S )N)r   r   )r	   r
   r   r   )r   r   r   r   R   s    zSchemaDroppedError.__init__)r   r   )r   r   r   r   r   r   r   )r   r   r   Q   s   r   c                   s   e Zd Zd fdd	Z  ZS )ΪSchemaCopiedErrorr   c                s   t   |||‘ d S )N)r   r   )r	   r
   r   r   )r   r   r   r   W   s    zSchemaCopiedError.__init__)r   r   )r   r   r   r   r   r   r   )r   r   r   V   s   r   c                   s   e Zd Zd fdd	Z  ZS )ΪCopyCommandErrorr   c                s   t   |||‘ d S )N)r   r   )r	   r
   r   r   )r   r   r   r   \   s    zCopyCommandError.__init__)r   r   )r   r   r   r   r   r   r   )r   r   r   [   s   r   c                   s"   e Zd ZdZd fdd	Z  ZS )ΪCopyOSErrorz.The copy of the schema failed with an OSError.r   c                s&   d  t |j‘‘}t  |||‘ d S )Nz(<p>The operating system reports: {0}</p>)ΪformatΪ
markupsafeΪescapeΪstrerrorr   r   )r	   r
   Ϊexr   r   )r   r   r   r   d   s    zCopyOSError.__init__)r   r   )r   r   r   Ϊ__doc__r   r   r   r   )r   r   r    b   s   r    c                   s   e Zd Zd fdd	Z  ZS )ΪPGDumpOSErrorr   c                s   t   |||‘ d S )N)r   r   )r	   r
   r%   r   )r   r   r   r   k   s    zPGDumpOSError.__init__)r   )r   r   r   r   r   r   r   )r   r   r'   j   s   r'   c                   s   e Zd Zd fdd	Z  ZS )ΪPGRestoreOSErrorr   c                s   t   |||‘ d S )N)r   r   )r	   r
   r%   r   )r   r   r   r   p   s    zPGRestoreOSError.__init__)r   )r   r   r   r   r   r   r   )r   r   r(   o   s   r(   c                   s"   e Zd ZdZd fdd	Z  ZS )ΪCopyProcessErrorz+The process which copies the schema failed.r   c                s>   d  t t |‘‘‘}d| d}t j|| | d d S )Nz<p>The process reports: {0}</p>z$<p>The error messages are:</p><pre>
z</pre>)r   )r!   r"   r#   r   Ztranslate_retcoder   r   )r	   r
   ΪretcodeΪstderrZ	descr_ishr   )r   r   r   r   v   s    zCopyProcessError.__init__)r   )r   r   r   r&   r   r   r   r   )r   r   r)   t   s   r)   c                   s   e Zd Zd fdd	Z  ZS )ΪPGDumpErrorr   c                s   t   |||‘ d S )N)r   r   )r	   r
   r*   r+   )r   r   r   r      s    zPGDumpError.__init__)r   )r   r   r   r   r   r   r   )r   r   r,   ~   s   r,   c                   s   e Zd Zd fdd	Z  ZS )ΪPGRestoreErrorr   c                s   t   |||‘ d S )N)r   r   )r	   r
   r*   r+   )r   r   r   r      s    zPGRestoreError.__init__)r   )r   r   r   r   r   r   r   )r   r   r-      s   r-   c                   s   e Zd Z fddZ  ZS )ΪDropSchemaErrorc                s   t   |d ||‘‘ dS )z6
        pgexc  The psycopg2 exception object
        z%drop the ({0}) schema in the ({1}) dbN)r   r   r!   )r	   ΪpgexcZschemaΪdb)r   r   r   r      s    zDropSchemaError.__init__)r   r   r   r   r   r   r   )r   r   r.      s   r.   c                   s   e Zd Z fddZ  ZS )ΪVacuumFullErrorc                s   t   |d |‘‘ dS )z6
        pgexc  The psycopg2 exception object
        zVACUUM FULL the ({0}) dbN)r   r   r!   )r	   r/   r0   )r   r   r   r      s    zVacuumFullError.__init__)r   r   r   r   r   r   r   )r   r   r1      s   r1   c                   s   e Zd Z fddZ  ZS )ΪVacuumAnalyzeErrorc                s   t   |d |‘‘ dS )z6
        pgexc  The psycopg2 exception object
        zVACUUM ANALYZE the ({0}) dbN)r   r   r!   )r	   r/   r0   )r   r   r   r      s    zVacuumAnalyzeError.__init__)r   r   r   r   r   r   r   )r   r   r2      s   r2   ) r"   Z
pgwui_copyr   Z
pgwui_corer   Zcore_exZpgwui_common.exceptionsr   ΪErrorr   r   r   r   r   r   r   r   r   r   r   r   r   r    r'   r(   r)   r,   r-   ZDBErrorr.   r1   r2   r   r   r   r   Ϊ<module>   s2   
		