/** * newManager. * * @param int $validAdaptersCount * @param int $invalidAdaptersCount * @param int $ttl * @param int $retries * @param int $retryMaxDelay * * @return LockManager */ private function newManager($validAdaptersCount = 1, $invalidAdaptersCount = 0, $ttl = 60, $retries = 3, $retryMaxDelay = 1) { $manager = new LockManager(new HalfPlusOneQuorum(), new DefaultKeyGenerator(), new LockTypeManager(), $ttl, $retries, $retryMaxDelay); $count = count($this->validAdapters); if ($validAdaptersCount < $count) { $count = $validAdaptersCount; } foreach ($this->validAdapters as $key => $value) { if ($count == 0) { break; } $count--; $manager->addAdapter(new PredisAdapter(new \Predis\Client(array('host' => $value['host'], 'port' => $value['port'], 'timeout' => $value['timeout'], 'async' => $value['async'])))); } $count = count($this->invalidAdapters); if ($invalidAdaptersCount < $count) { $count = $invalidAdaptersCount; } foreach ($this->invalidAdapters as $key => $value) { if ($count == 0) { break; } $count--; $manager->addAdapter(new PredisAdapter(new \Predis\Client(array('host' => $value['host'], 'port' => $value['port'], 'timeout' => $value['timeout'])))); } $manager->releaseAllLocks(); $manager->clearAllLocks(); return $manager; }
/** * newManager. * * @param int $validAdaptersCount * @param int $invalidAdaptersCount * @param int $ttl * @param int $retries * @param int $retryMaxDelay * * @return LockManager */ private function newManager($validAdaptersCount = 1, $invalidAdaptersCount = 0, $ttl = 60, $retries = 3, $retryMaxDelay = 1) { $manager = new LockManager(new HalfPlusOneQuorum(), new DefaultKeyGenerator(), new LockTypeManager(), $ttl, $retries, $retryMaxDelay); $count = count($this->validAdapters); if ($validAdaptersCount < $count) { $count = $validAdaptersCount; } foreach ($this->validAdapters as $key => $value) { if ($count == 0) { break; } $count--; $manager->addAdapter($this->getValidAdapter($value)); } $count = count($this->invalidAdapters); if ($invalidAdaptersCount < $count) { $count = $invalidAdaptersCount; } foreach ($this->invalidAdapters as $key => $value) { if ($count == 0) { break; } $count--; $manager->addAdapter($this->getInvalidAdapter($value)); } $manager->releaseAllLocks(); $manager->clearAllLocks(); return $manager; }