mirror of
https://github.com/predis/predis.git
synced 2026-09-11 19:07:30 +00:00
Implement Predis\Client::getClientFor() to initialize a new client from a single connection of a cluster by its alias.
This commit is contained in:
@@ -151,6 +151,26 @@ class Client {
|
||||
return $this->_responseReader;
|
||||
}
|
||||
|
||||
public function getClientFor($connectionAlias) {
|
||||
if (!($this->_connection instanceof ConnectionCluster)) {
|
||||
throw new ClientException(
|
||||
'This method is supported only when the client is connected to a cluster of connections.'
|
||||
);
|
||||
}
|
||||
|
||||
$connection = $this->_connection->getConnectionById($connectionAlias);
|
||||
if ($connection === null) {
|
||||
throw new \InvalidArgumentException(
|
||||
"Invalid connection alias: '$connectionAlias'."
|
||||
);
|
||||
}
|
||||
|
||||
$newClient = new Client();
|
||||
$newClient->setupClient($this->_options);
|
||||
$newClient->setConnection($this->getConnection($connectionAlias));
|
||||
return $newClient;
|
||||
}
|
||||
|
||||
public function connect() {
|
||||
$this->_connection->connect();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user