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.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.
|
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.NodeLocator
public 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.NodeLocator
public java.util.Collection<net.spy.memcached.MemcachedNode> getAll()
getAll
in interface net.spy.memcached.NodeLocator
public net.spy.memcached.NodeLocator getReadonlyCopy()
getReadonlyCopy
in interface net.spy.memcached.NodeLocator
public void updateLocator(java.util.List<net.spy.memcached.MemcachedNode> nodes)
updateLocator
in interface net.spy.memcached.NodeLocator
public 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 excludedCopyright © 2006-2009 Dustin Sallings, 2009-2012 Couchbase, Inc.