3
™(ƒh÷  ã               @   s\   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dS )é    )Úregister_hstore_handler)Ú	Operationc               @   s8   e Zd ZdZdd„ Zdd„ Zdd„ Zdd	„ Zd
d„ ZdS )ÚCreateExtensionTc             C   s
   || _ d S )N)Úname)Úselfr   © r   úF/tmp/pip-install-q3hcpn_q/Django/django/contrib/postgres/operations.pyÚ__init__   s    zCreateExtension.__init__c             C   s   d S )Nr   )r   Ú	app_labelÚstater   r   r   Ústate_forwards   s    zCreateExtension.state_forwardsc             C   s*   |j jdkrd S |jd|j| jƒ ƒ d S )NZ
postgresqlz!CREATE EXTENSION IF NOT EXISTS %s)Ú
connectionÚvendorÚexecuteÚ
quote_namer   )r   r
   Úschema_editorÚ
from_stateÚto_stater   r   r   Údatabase_forwards   s    z!CreateExtension.database_forwardsc             C   s   |j d|j| jƒ ƒ d S )NzDROP EXTENSION %s)r   r   r   )r   r
   r   r   r   r   r   r   Údatabase_backwards   s    z"CreateExtension.database_backwardsc             C   s
   d| j  S )NzCreates extension %s)r   )r   r   r   r   Údescribe   s    zCreateExtension.describeN)	Ú__name__Ú
__module__Ú__qualname__Z
reversibler	   r   r   r   r   r   r   r   r   r      s   r   c                   s$   e Zd Zdd„ Z‡ fdd„Z‡  ZS )ÚHStoreExtensionc             C   s
   d| _ d S )NZhstore)r   )r   r   r   r   r	      s    zHStoreExtension.__init__c                s$   t t| ƒj||||ƒ t|jƒ d S )N)Úsuperr   r   r   r   )r   r
   r   r   r   )Ú	__class__r   r   r      s    z!HStoreExtension.database_forwards)r   r   r   r	   r   Ú__classcell__r   r   )r   r   r      s   r   c               @   s   e Zd Zdd„ ZdS )ÚUnaccentExtensionc             C   s
   d| _ d S )NZunaccent)r   )r   r   r   r   r	   )   s    zUnaccentExtension.__init__N)r   r   r   r	   r   r   r   r   r   '   s   r   c               @   s   e Zd Zdd„ ZdS )ÚTrigramExtensionc             C   s
   d| _ d S )NZpg_trgm)r   )r   r   r   r   r	   /   s    zTrigramExtension.__init__N)r   r   r   r	   r   r   r   r   r   -   s   r   N)Zdjango.contrib.postgres.signalsr   Z$django.db.migrations.operations.baser   r   r   r   r   r   r   r   r   Ú<module>   s
   