public class VBucketNodeLocator
extends net.spy.memcached.compat.SpyObject
implements net.spy.memcached.NodeLocator
NodeLocator interface that contains vbucket
hashing methods.| Constructor and Description |
|---|
VBucketNodeLocator(java.util.List<net.spy.memcached.MemcachedNode> nodes,
Config jsonConfig)
Construct a VBucketNodeLocator over the given JSON configuration string.
|
| Modifier and Type | Method and Description |
|---|---|
java.util.Collection<net.spy.memcached.MemcachedNode> |
getAll() |
net.spy.memcached.MemcachedNode |
getAlternative(java.lang.String k,
java.util.Collection<net.spy.memcached.MemcachedNode> notMyVbucketNodes)
Method returns the node that is not contained in the specified collection
of the failed nodes.
|
net.spy.memcached.MemcachedNode |
getPrimary(java.lang.String k) |
net.spy.memcached.NodeLocator |
getReadonlyCopy() |
net.spy.memcached.MemcachedNode |
getReplica(java.lang.String key,
int index)
Return a replica node for the given key and replica index.
|
java.util.List<java.lang.Integer> |
getReplicaIndexes(java.lang.String key)
Gets a list of vBucket indexes for the current replicas defined.
|
java.util.Iterator<net.spy.memcached.MemcachedNode> |
getSequence(java.lang.String k) |
net.spy.memcached.MemcachedNode |
getServerByIndex(int k) |
int |
getVBucketIndex(java.lang.String key)
Returns a vbucket index for the given key.
|
boolean |
hasActiveMaster(java.lang.String key)
Checks if in the current vbucket the master is not "-1".
|
void |
updateLocator(java.util.Collection<net.spy.memcached.MemcachedNode> nodes,
Config newconf) |
void |
updateLocator(java.util.List<net.spy.memcached.MemcachedNode> nodes) |
public VBucketNodeLocator(java.util.List<net.spy.memcached.MemcachedNode> nodes,
Config jsonConfig)
nodes - jsonConfig - public net.spy.memcached.MemcachedNode getPrimary(java.lang.String k)
getPrimary in interface net.spy.memcached.NodeLocatorpublic net.spy.memcached.MemcachedNode getReplica(java.lang.String key,
int index)
key - the key to find the node for.index - the Nth replica numberjava.lang.RuntimeException - when no replica is defined for the given keypublic net.spy.memcached.MemcachedNode getServerByIndex(int k)
public java.util.Iterator<net.spy.memcached.MemcachedNode> getSequence(java.lang.String k)
getSequence in interface net.spy.memcached.NodeLocatorpublic java.util.Collection<net.spy.memcached.MemcachedNode> getAll()
getAll in interface net.spy.memcached.NodeLocatorpublic net.spy.memcached.NodeLocator getReadonlyCopy()
getReadonlyCopy in interface net.spy.memcached.NodeLocatorpublic void updateLocator(java.util.List<net.spy.memcached.MemcachedNode> nodes)
updateLocator in interface net.spy.memcached.NodeLocatorpublic void updateLocator(java.util.Collection<net.spy.memcached.MemcachedNode> nodes,
Config newconf)
public int getVBucketIndex(java.lang.String key)
key - the keypublic net.spy.memcached.MemcachedNode getAlternative(java.lang.String k,
java.util.Collection<net.spy.memcached.MemcachedNode> notMyVbucketNodes)
k - the keynotMyVbucketNodes - a collection of the nodes are excludedpublic java.util.List<java.lang.Integer> getReplicaIndexes(java.lang.String key)
key - the key to check for.public boolean hasActiveMaster(java.lang.String key)
key - the key to check for.Copyright © 2006-2009 Dustin Sallings, 2009-2012 Couchbase, Inc.