3
(h

  ใ               @   s่   d Z ddlmZ ddlmZ ddlmZ ddlmZ ddl	m
Z
 ddlmZ ddlmZ dd	lmZ d
d Zdd 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ฬ
Dummy database backend for Django.

Django uses this if the database ENGINE setting is empty (None or empty string).

Each of these API functions, except connection.close(), raises
ImproperlyConfigured.
้    )ฺImproperlyConfigured)ฺBaseDatabaseWrapper)ฺBaseDatabaseClient)ฺBaseDatabaseCreation)ฺBaseDatabaseIntrospection)ฺBaseDatabaseOperations)ฺBaseDatabaseValidation)ฺDummyDatabaseFeaturesc              O   s   t dd S )Nz{settings.DATABASES is improperly configured. Please supply the ENGINE value. Check settings documentation for more details.)r   )ฺargsฺkwargsฉ r   ๚A/tmp/pip-install-q3hcpn_q/Django/django/db/backends/dummy/base.pyฺcomplain   s    r   c              O   s   d S )Nr   )r
   r   r   r   r   ฺignore   s    r   c               @   s   e Zd ZdS )ฺDatabaseErrorN)ฺ__name__ฺ
__module__ฺ__qualname__r   r   r   r   r      s   r   c               @   s   e Zd ZdS )ฺIntegrityErrorN)r   r   r   r   r   r   r   r   "   s   r   c               @   s   e Zd ZeZdS )ฺDatabaseOperationsN)r   r   r   r   Z
quote_namer   r   r   r   r   &   s   r   c               @   s   e Zd ZeZdS )ฺDatabaseClientN)r   r   r   r   Zrunshellr   r   r   r   r   *   s   r   c               @   s   e Zd ZeZeZdS )ฺDatabaseCreationN)r   r   r   r   Zcreate_test_dbZdestroy_test_dbr   r   r   r   r   .   s   r   c               @   s    e Zd ZeZeZeZeZeZdS )ฺDatabaseIntrospectionN)	r   r   r   r   Zget_table_listZget_table_descriptionZget_relationsZget_indexesZget_key_columnsr   r   r   r   r   3   s
   r   c                   sL   e Zd Zi ZeZeZeZeZ	eZ
eZeZeZeZ fddZdd Z  ZS )ฺDatabaseWrapperc                sR   t t| j|| t| | _t| | _t| | _t	| | _
t| | _t| | _d S )N)ฺsuperr   ฺ__init__r	   ฺfeaturesr   ฺopsr   ฺclientr   Zcreationr   Zintrospectionr   Z
validation)ฺselfr
   r   )ฺ	__class__r   r   r   K   s    




zDatabaseWrapper.__init__c             C   s   dS )NTr   )r   r   r   r   ฺ	is_usableU   s    zDatabaseWrapper.is_usable)r   r   r   ฺ	operatorsr   Z_cursorZensure_connectionZ_commitr   Z	_rollbackฺ_closeZ
_savepointZ_savepoint_commitZ_savepoint_rollbackZ_set_autocommitr   r!   ฺ__classcell__r   r   )r    r   r   ;   s   
r   N)ฺ__doc__Zdjango.core.exceptionsr   Zdjango.db.backends.base.baser   Zdjango.db.backends.base.clientr   Z django.db.backends.base.creationr   Z%django.db.backends.base.introspectionr   Z"django.db.backends.base.operationsr   Z"django.db.backends.base.validationr   Z!django.db.backends.dummy.featuresr	   r   r   ฺ	Exceptionr   r   r   r   r   r   r   r   r   r   r   ฺ<module>   s"   