U
    0bˆhB  ã                   @   sF   d Z dZdZddlmZ ddlmZ dd„ ZG dd	„ d	ƒZd
d„ Z	dS )zCopyright 2021, 3LizzGPL version 3zinfo@3liz.orgé    )ÚLogger)Ú	Plausiblec                    s&   ddl m‰  G ‡ fdd„dƒ}|| ƒS )Nr   ©ÚQMessageBoxc                       s(   e Zd Zdd„ Z‡ fdd„Zdd„ ZdS )zclassFactory.<locals>.Nothingc                 S   s
   || _ dS )zT In QGIS Desktop.

            :param iface: The QGIS Desktop interface
            N)Úiface)Úselfr   © r   ú=/var/www/lizmap/lizmap/plugins/wfsOutputExtension/__init__.pyÚ__init__   s    z&classFactory.<locals>.Nothing.__init__c                    s   ˆ   | j ¡ dd¡ d S )NzWfsOutputExtension pluginzOWfsOutputExtension is plugin for QGIS Server. There is nothing in QGIS Desktop.)Úwarningr   Ú
mainWindow©r   r   r   r	   ÚinitGui   s
    ýz%classFactory.<locals>.Nothing.initGuic                 S   s   d S )Nr   r   r   r   r	   Úunload    s    z$classFactory.<locals>.Nothing.unloadN)Ú__name__Ú
__module__Ú__qualname__r
   r   r   r   r   r   r	   ÚNothing   s   r   )Úqgis.PyQt.QtWidgetsr   )r   r   r   r   r	   ÚclassFactory
   s    r   c                   @   s   e Zd ZdZdd„ ZdS )ÚWfsOutputExtensionServerz8Plugin for QGIS server

    This plugin loads wfs filterc              
   C   s€   || _ tƒ | _ztƒ | _| j ¡  W n: tk
r^ } z| j |¡ | j d¡ W 5 d }~X Y nX ddl	m
} | ||ƒd¡ d S )Nz!Error while calling the API statsé   )Ú	WFSFilteré2   )ÚserverIfacer   Úloggerr   Ú	plausibleÚrequest_stat_eventÚ	ExceptionÚlog_exceptionÚcriticalZ
wfs_filterr   ÚregisterFilter)r   Úserver_ifaceÚer   r   r   r	   r
   +   s    z!WfsOutputExtensionServer.__init__N)r   r   r   Ú__doc__r
   r   r   r   r	   r   &   s   r   c                 C   s   t | ƒS )z­Load wfsOutputExtensionServer class from file wfsOutputExtension.

    :param server_iface: A QGIS Server interface instance.
    :type server_iface: QgsServerInterface
    )r   )r"   r   r   r	   ÚserverClassFactory<   s    r%   N)
Ú__copyright__Ú__license__Ú	__email__ZwfsOutputExtension.loggingr   ZwfsOutputExtension.plausibler   r   r   r%   r   r   r   r	   Ú<module>   s   