U
    VÚd±  ã                   @   s   d Z dZG dd„ deƒZdS )z0
Abstract base middleware class (optional use).
ÚreStructuredTextc                   @   s0   e Zd ZdZdd„ Zdd„ Zdd„ Zdd	„ Zd
S )ÚBaseMiddlewarea  Abstract base middleware class (optional).

    Note: this is a convenience class, that *may* be used to implement WsgiDAV
    middlewares. However it is not a reqiuement: any object that implements
    the WSGI specification can be added to the stack.

    Derived classes in WsgiDAV include::

        wsgidav.dir_browser.WsgiDavDirBrowser
        wsgidav.debug_filter.WsgiDavDebugFilter
        wsgidav.error_printer.ErrorPrinter
        wsgidav.http_authenticator.HTTPAuthenticator
        wsgidav.request_resolver.RequestResolver
    c                 C   s$   || _ || _|| _| dd¡| _d S )NÚverboseé   )Úwsgidav_appÚnext_appÚconfigÚgetr   )Úselfr   r   r   © r
   ú"/opt/wsgidav/wsgidav/middleware.pyÚ__init__   s    zBaseMiddleware.__init__c                 C   s   t ‚d S )N)ÚNotImplementedError)r	   ÚenvironÚstart_responser
   r
   r   Ú__call__   s    zBaseMiddleware.__call__c                 C   s   d  | j| jj¡S )Nz{}.{})ÚformatÚ
__module__Ú	__class__Ú__name__©r	   r
   r
   r   Ú__str__"   s    zBaseMiddleware.__str__c                 C   s   dS )z7Optionally return False to skip this module on startup.Fr
   r   r
   r
   r   Úis_disabled%   s    zBaseMiddleware.is_disabledN)r   r   Ú__qualname__Ú__doc__r   r   r   r   r
   r
   r
   r   r   	   s
   r   N)r   Ú__docformat__Úobjectr   r
   r
   r
   r   Ú<module>   s   