Add the ability to get a connection out of a cluster using a key.

This commit is contained in:
Daniele Alessandri
2011-04-24 11:04:57 +02:00
parent 4ef8948b5e
commit 880d2d24b9
+7
View File
@@ -2,6 +2,7 @@
namespace Predis\Network;
use Predis\Helpers;
use Predis\ClientException;
use Predis\Commands\ICommand;
use Predis\Distribution\IDistributionStrategy;
@@ -61,6 +62,12 @@ class ConnectionCluster implements IConnectionCluster, \IteratorAggregate {
return isset($this->_pool[$alias]) ? $this->_pool[$alias] : null;
}
public function getConnectionByKey($key) {
$hashablePart = Helpers::getKeyHashablePart($key);
$keyHash = $this->_distributor->generateKey($hashablePart);
return $this->_distributor->get($keyHash);
}
public function getIterator() {
return new \ArrayIterator($this->_pool);
}