o
    ž&b’  ã                   @   s&   d Z ddlmZ G dd„ deeƒZdS )z4 Lockfile behaviour implemented via Unix PID files. é    )ÚPIDLockFilec                       s0   e Zd ZdZd‡ fdd„	Zd‡ fdd„	Z‡  ZS )ÚTimeoutPIDLockFilea?   Lockfile with default timeout, implemented as a Unix PID file.

        This uses the ``PIDLockFile`` implementation, with the
        following changes:

        * The `acquire_timeout` parameter to the initialiser will be
          used as the default `timeout` parameter for the `acquire`
          method.
        Nc                    s$   || _ tƒ j|g|¢R i |¤Ž dS )zú Set up the parameters of a TimeoutPIDLockFile.

            :param path: Filesystem path to the PID file.
            :param acquire_timeout: Value to use by default for the
                `acquire` call.
            :return: ``None``.
            N)Úacquire_timeoutÚsuperÚ__init__)ÚselfÚpathr   ÚargsÚkwargs©Ú	__class__© ú2usr/lib/python3.10/site-packages/daemon/pidfile.pyr      s   zTimeoutPIDLockFile.__init__c                    s,   |du r| j }tƒ j|g|¢R i |¤Ž dS )aw   Acquire the lock.

            :param timeout: Specifies the timeout; see below for valid
                values.
            :return: ``None``.

            The `timeout` defaults to the value set during
            initialisation with the `acquire_timeout` parameter. It is
            passed to `PIDLockFile.acquire`; see that method for
            details.
            N)r   r   Úacquire)r   Útimeoutr	   r
   r   r   r   r   #   s   zTimeoutPIDLockFile.acquire)N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   Ú__classcell__r   r   r   r   r      s    
r   N)r   Zlockfile.pidlockfiler   Úobjectr   r   r   r   r   Ú<module>   s   