X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FCore%2FLock%2FAbstractLockDriver.php;h=0aedeeb1b09ab61cdf71c144c7df3b6cd02e6263;hb=c713c2bf622257dbecf223b5f58bf8a98dde9d65;hp=09549c50bf9540d7448598f86bb7529f554df6fd;hpb=aac94d1d7445f2287f89a3559f4b3988e39edbdb;p=friendica.git diff --git a/src/Core/Lock/AbstractLockDriver.php b/src/Core/Lock/AbstractLockDriver.php index 09549c50bf..0aedeeb1b0 100644 --- a/src/Core/Lock/AbstractLockDriver.php +++ b/src/Core/Lock/AbstractLockDriver.php @@ -8,7 +8,7 @@ use Friendica\BaseObject; * * @package Friendica\Core\Lock * - * @brief Basic class for Locking with common functions (local acquired locks, releaseAll, ..) + * Basic class for Locking with common functions (local acquired locks, releaseAll, ..) */ abstract class AbstractLockDriver extends BaseObject implements ILockDriver { @@ -18,41 +18,51 @@ abstract class AbstractLockDriver extends BaseObject implements ILockDriver protected $acquiredLocks = []; /** - * @brief Check if we've locally acquired a lock + * Check if we've locally acquired a lock * * @param string key The Name of the lock * @return bool Returns true if the lock is set */ - protected function hasAcquiredLock($key) { + protected function hasAcquiredLock($key) + { return isset($this->acquireLock[$key]) && $this->acquiredLocks[$key] === true; } /** - * @brief Mark a locally acquired lock + * Mark a locally acquired lock * * @param string $key The Name of the lock */ - protected function markAcquire($key) { + protected function markAcquire($key) + { $this->acquiredLocks[$key] = true; } /** - * @brief Mark a release of a locally acquired lock + * Mark a release of a locally acquired lock * * @param string $key The Name of the lock */ - protected function markRelease($key) { + protected function markRelease($key) + { unset($this->acquiredLocks[$key]); } /** - * @brief Releases all lock that were set by us + * Releases all lock that were set by us * - * @return void + * @return boolean Was the unlock of all locks successful? */ - public function releaseAll() { + public function releaseAll() + { + $return = true; + foreach ($this->acquiredLocks as $acquiredLock => $hasLock) { - $this->releaseLock($acquiredLock); + if (!$this->releaseLock($acquiredLock)) { + $return = false; + } } + + return $return; } }