Class ZkDistribStateManager
- java.lang.Object
-
- org.apache.solr.client.solrj.impl.ZkDistribStateManager
-
- All Implemented Interfaces:
Closeable,AutoCloseable,DistribStateManager,org.apache.solr.common.SolrCloseable
public class ZkDistribStateManager extends Object implements DistribStateManager
Implementation ofDistribStateManagerthat uses Zookeeper.
-
-
Constructor Summary
Constructors Constructor Description ZkDistribStateManager(SolrZkClient zkClient)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclose()StringcreateData(String path, byte[] data, org.apache.zookeeper.CreateMode mode)Create data (leaf) node at specified path.VersionedDatagetData(String path, org.apache.zookeeper.Watcher watcher)Map<String,Object>getJson(String path)org.apache.solr.common.cloud.PerReplicaStatesgetReplicaStates(String path)SolrZkClientgetZkClient()booleanhasData(String path)List<String>listData(String path)List<String>listData(String path, org.apache.zookeeper.Watcher watcher)voidmakePath(String path)voidmakePath(String path, byte[] data, org.apache.zookeeper.CreateMode createMode, boolean failOnExists)List<org.apache.zookeeper.OpResult>multi(Iterable<org.apache.zookeeper.Op> ops)voidremoveData(String path, int version)voidsetData(String path, byte[] data, int version)-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.solr.client.solrj.cloud.DistribStateManager
getData, getPrsSupplier, listTree, removeRecursively
-
-
-
-
Constructor Detail
-
ZkDistribStateManager
public ZkDistribStateManager(SolrZkClient zkClient)
-
-
Method Detail
-
getJson
public Map<String,Object> getJson(String path) throws InterruptedException, IOException, org.apache.zookeeper.KeeperException
- Specified by:
getJsonin interfaceDistribStateManager- Throws:
InterruptedExceptionIOExceptionorg.apache.zookeeper.KeeperException
-
hasData
public boolean hasData(String path) throws IOException, org.apache.zookeeper.KeeperException, InterruptedException
- Specified by:
hasDatain interfaceDistribStateManager- Throws:
IOExceptionorg.apache.zookeeper.KeeperExceptionInterruptedException
-
listData
public List<String> listData(String path, org.apache.zookeeper.Watcher watcher) throws NoSuchElementException, IOException, org.apache.zookeeper.KeeperException, InterruptedException
- Specified by:
listDatain interfaceDistribStateManager- Throws:
NoSuchElementExceptionIOExceptionorg.apache.zookeeper.KeeperExceptionInterruptedException
-
listData
public List<String> listData(String path) throws NoSuchElementException, IOException, org.apache.zookeeper.KeeperException, InterruptedException
- Specified by:
listDatain interfaceDistribStateManager- Throws:
NoSuchElementExceptionIOExceptionorg.apache.zookeeper.KeeperExceptionInterruptedException
-
getData
public VersionedData getData(String path, org.apache.zookeeper.Watcher watcher) throws NoSuchElementException, IOException, org.apache.zookeeper.KeeperException, InterruptedException
- Specified by:
getDatain interfaceDistribStateManager- Throws:
NoSuchElementExceptionIOExceptionorg.apache.zookeeper.KeeperExceptionInterruptedException
-
makePath
public void makePath(String path) throws AlreadyExistsException, IOException, org.apache.zookeeper.KeeperException, InterruptedException
- Specified by:
makePathin interfaceDistribStateManager- Throws:
AlreadyExistsExceptionIOExceptionorg.apache.zookeeper.KeeperExceptionInterruptedException
-
makePath
public void makePath(String path, byte[] data, org.apache.zookeeper.CreateMode createMode, boolean failOnExists) throws AlreadyExistsException, IOException, org.apache.zookeeper.KeeperException, InterruptedException
- Specified by:
makePathin interfaceDistribStateManager- Throws:
AlreadyExistsExceptionIOExceptionorg.apache.zookeeper.KeeperExceptionInterruptedException
-
createData
public String createData(String path, byte[] data, org.apache.zookeeper.CreateMode mode) throws NoSuchElementException, AlreadyExistsException, IOException, org.apache.zookeeper.KeeperException, InterruptedException
Description copied from interface:DistribStateManagerCreate data (leaf) node at specified path.- Specified by:
createDatain interfaceDistribStateManager- Parameters:
path- base path name of the node.data- data to be stored.mode- creation mode.- Returns:
- actual path of the node - in case of sequential nodes this will differ from the base path because of the appended sequence number.
- Throws:
NoSuchElementExceptionAlreadyExistsExceptionIOExceptionorg.apache.zookeeper.KeeperExceptionInterruptedException
-
removeData
public void removeData(String path, int version) throws NoSuchElementException, BadVersionException, NotEmptyException, IOException, org.apache.zookeeper.KeeperException, InterruptedException
- Specified by:
removeDatain interfaceDistribStateManager- Throws:
NoSuchElementExceptionBadVersionExceptionNotEmptyExceptionIOExceptionorg.apache.zookeeper.KeeperExceptionInterruptedException
-
setData
public void setData(String path, byte[] data, int version) throws BadVersionException, NoSuchElementException, IOException, org.apache.zookeeper.KeeperException, InterruptedException
- Specified by:
setDatain interfaceDistribStateManager- Throws:
BadVersionExceptionNoSuchElementExceptionIOExceptionorg.apache.zookeeper.KeeperExceptionInterruptedException
-
multi
public List<org.apache.zookeeper.OpResult> multi(Iterable<org.apache.zookeeper.Op> ops) throws BadVersionException, AlreadyExistsException, NoSuchElementException, IOException, org.apache.zookeeper.KeeperException, InterruptedException
- Specified by:
multiin interfaceDistribStateManager- Throws:
BadVersionExceptionAlreadyExistsExceptionNoSuchElementExceptionIOExceptionorg.apache.zookeeper.KeeperExceptionInterruptedException
-
close
public void close() throws IOException- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable- Throws:
IOException
-
getZkClient
public SolrZkClient getZkClient()
-
getReplicaStates
public org.apache.solr.common.cloud.PerReplicaStates getReplicaStates(String path) throws org.apache.zookeeper.KeeperException, InterruptedException
- Specified by:
getReplicaStatesin interfaceDistribStateManager- Throws:
org.apache.zookeeper.KeeperExceptionInterruptedException
-
-