mirror of
https://github.com/nextcloud/server.git
synced 2026-05-28 04:32:30 -04:00
Refactors lib/private/Lock.
To improve code readability. Co-authored-by: Côme Chilliet <91878298+come-nc@users.noreply.github.com> Signed-off-by: Faraz Samapoor <f.samapoor@gmail.com> Signed-off-by: Faraz Samapoor <fsa@adlas.at>
This commit is contained in:
parent
2288e8e571
commit
40d9349a2d
3 changed files with 17 additions and 19 deletions
|
|
@ -33,14 +33,18 @@ use OCP\Lock\ILockingProvider;
|
|||
* to release any leftover locks at the end of the request
|
||||
*/
|
||||
abstract class AbstractLockingProvider implements ILockingProvider {
|
||||
/** how long until we clear stray locks in seconds */
|
||||
protected int $ttl;
|
||||
|
||||
protected $acquiredLocks = [
|
||||
protected array $acquiredLocks = [
|
||||
'shared' => [],
|
||||
'exclusive' => []
|
||||
];
|
||||
|
||||
/**
|
||||
*
|
||||
* @param int $ttl how long until we clear stray locks in seconds
|
||||
*/
|
||||
public function __construct(protected int $ttl) {
|
||||
}
|
||||
|
||||
/** @inheritDoc */
|
||||
protected function hasAcquiredLock(string $path, int $type): bool {
|
||||
if ($type === self::LOCK_SHARED) {
|
||||
|
|
|
|||
|
|
@ -39,21 +39,15 @@ use OCP\Lock\LockedException;
|
|||
* Locking provider that stores the locks in the database
|
||||
*/
|
||||
class DBLockingProvider extends AbstractLockingProvider {
|
||||
private IDBConnection $connection;
|
||||
private ITimeFactory $timeFactory;
|
||||
private array $sharedLocks = [];
|
||||
private bool $cacheSharedLocks;
|
||||
|
||||
public function __construct(
|
||||
IDBConnection $connection,
|
||||
ITimeFactory $timeFactory,
|
||||
private IDBConnection $connection,
|
||||
private ITimeFactory $timeFactory,
|
||||
int $ttl = 3600,
|
||||
bool $cacheSharedLocks = true
|
||||
private bool $cacheSharedLocks = true
|
||||
) {
|
||||
$this->connection = $connection;
|
||||
$this->timeFactory = $timeFactory;
|
||||
$this->ttl = $ttl;
|
||||
$this->cacheSharedLocks = $cacheSharedLocks;
|
||||
parent::__construct($ttl);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -32,11 +32,11 @@ use OCP\IMemcacheTTL;
|
|||
use OCP\Lock\LockedException;
|
||||
|
||||
class MemcacheLockingProvider extends AbstractLockingProvider {
|
||||
private IMemcache $memcache;
|
||||
|
||||
public function __construct(IMemcache $memcache, int $ttl = 3600) {
|
||||
$this->memcache = $memcache;
|
||||
$this->ttl = $ttl;
|
||||
public function __construct(
|
||||
private IMemcache $memcache,
|
||||
int $ttl = 3600,
|
||||
) {
|
||||
parent::__construct($ttl);
|
||||
}
|
||||
|
||||
private function setTTL(string $path): void {
|
||||
|
|
|
|||
Loading…
Reference in a new issue