
    b	                     f    d Z ddlZ G d de          Z G d de          Z G d de          ZdS )	zGFunctions for setting up a Samba configuration (LDB and LDAP backends).    Nc                       e Zd Zd ZdS )BackendResultc                 *    t          | j                  )z5Rerport this result to a particular logger.

        )NotImplementedErrorreport_logger)selfloggers     9/usr/lib/python3/dist-packages/samba/provision/backend.pyr   zBackendResult.report_logger    s     "$"4555    N)__name__
__module____qualname__r    r   r
   r   r      s#        6 6 6 6 6r   r   c                   2    e Zd Z	 	 ddZd Zd Zd Zd ZdS )ProvisionBackendNc                 L    || _         || _        || _        || _        d| _        dS )zProvision a backend for samba4ldbN)pathslpnamesr	   type)r   r   r   r   r	   s        r
   __init__zProvisionBackend.__init__)   s+     

			r   c                 *    t          | j                  )zInitialize the backend.)r   initr   s    r
   r   zProvisionBackend.init3   s    !$),,,r   c                 *    t          | j                  )zStart the backend.)r   startr   s    r
   r   zProvisionBackend.start7   s    !$*---r   c                 *    t          | j                  )zShutdown the backend.)r   shutdownr   s    r
   r   zProvisionBackend.shutdown;   s    !$-000r   c                 *    t          | j                  )z>Post setup.

        :return: A BackendResult or None
        )r   
post_setupr   s    r
   r!   zProvisionBackend.post_setup?   s    
 "$/222r   )NNNN)r   r   r   r   r   r   r   r!   r   r   r
   r   r   '   sj        &*$(   - - -. . .1 1 13 3 3 3 3r   r   c                   &    e Zd Zd Zd Zd Zd ZdS )
LDBBackendc                 J    t          j        | j        j        dz   d           d S )Nz.dT)shutilrmtreer   samdbr   s    r
   r   zLDBBackend.initI   s&     	dj&-t44444r   c                     d S Nr   r   s    r
   r   zLDBBackend.startN       r   c                     d S r)   r   r   s    r
   r   zLDBBackend.shutdownQ   r*   r   c                     d S r)   r   r   s    r
   r!   zLDBBackend.post_setupT   r*   r   N)r   r   r   r   r   r   r!   r   r   r
   r#   r#   G   sP        5 5 5
        r   r#   )__doc__r%   objectr   r   r#   r   r   r
   <module>r/      s   4 N M 6 6 6 6 6F 6 6 63 3 3 3 3v 3 3 3@    !     r   