class LockFactory
Factory provides method to create locks.
@author Jérémy Derussé <jeremy@derusse.com> @author Hamza Amrouche <hamza.simperfit@gmail.com>
Hierarchy
- class \Symfony\Component\Lock\LockFactory implements \Psr\Log\LoggerAwareInterface uses \Psr\Log\LoggerAwareTrait
Expanded class hierarchy of LockFactory
1 file declares its use of LockFactory
- LockableTrait.php in vendor/
symfony/ console/ Command/ LockableTrait.php
File
-
vendor/
symfony/ lock/ LockFactory.php, line 23
Namespace
Symfony\Component\LockView source
class LockFactory implements LoggerAwareInterface {
use LoggerAwareTrait;
public function __construct(PersistingStoreInterface $store) {
}
/**
* Creates a lock for the given resource.
*
* @param string $resource The resource to lock
* @param float|null $ttl Maximum expected lock duration in seconds
* @param bool $autoRelease Whether to automatically release the lock or not when the lock instance is destroyed
*/
public function createLock(string $resource, ?float $ttl = 300.0, bool $autoRelease = true) : SharedLockInterface {
return $this->createLockFromKey(new Key($resource), $ttl, $autoRelease);
}
/**
* Creates a lock from the given key.
*
* @param Key $key The key containing the lock's state
* @param float|null $ttl Maximum expected lock duration in seconds
* @param bool $autoRelease Whether to automatically release the lock or not when the lock instance is destroyed
*/
public function createLockFromKey(Key $key, ?float $ttl = 300.0, bool $autoRelease = true) : SharedLockInterface {
$lock = new Lock($key, $this->store, $ttl, $autoRelease);
if ($this->logger) {
$lock->setLogger($this->logger);
}
return $lock;
}
}
Members
Title Sort descending | Modifiers | Object type | Summary |
---|---|---|---|
LockFactory::createLock | public | function | Creates a lock for the given resource. |
LockFactory::createLockFromKey | public | function | Creates a lock from the given key. |
LockFactory::__construct | public | function | |
LoggerAwareTrait::$logger | protected | property | The logger instance. |
LoggerAwareTrait::setLogger | public | function | Sets a logger. |