Package org.apache.solr.common.cloud
Class ZkStateReader.AliasesManager
- java.lang.Object
-
- org.apache.solr.common.cloud.ZkStateReader.AliasesManager
-
- All Implemented Interfaces:
org.apache.zookeeper.Watcher
- Enclosing class:
- ZkStateReader
public class ZkStateReader.AliasesManager extends Object implements org.apache.zookeeper.Watcher
A class to manage the aliases instance, including watching for changes. There should only ever be one instance of this class per instance of ZkStateReader. Normally it will not be useful to create a new instance since this watcher automatically re-registers itself every time it is updated.
-
-
Constructor Summary
Constructors Constructor Description AliasesManager()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidapplyModificationAndExportToZk(UnaryOperator<org.apache.solr.common.cloud.Aliases> op)Writes an updatedAliasesto zk.org.apache.solr.common.cloud.AliasesgetAliases()voidprocess(org.apache.zookeeper.WatchedEvent event)booleanupdate()Ensures the internal aliases is up to date.
-
-
-
Method Detail
-
getAliases
public org.apache.solr.common.cloud.Aliases getAliases()
-
applyModificationAndExportToZk
public void applyModificationAndExportToZk(UnaryOperator<org.apache.solr.common.cloud.Aliases> op)
Writes an updatedAliasesto zk. It will retry if there are races with other modifications, giving up after 30 seconds with a SolrException. The caller should understand it's possible the aliases has further changed if it examines it.
-
update
public boolean update() throws org.apache.zookeeper.KeeperException, InterruptedExceptionEnsures the internal aliases is up to date. If there is a change, return true.- Returns:
- true if an update was performed
- Throws:
org.apache.zookeeper.KeeperExceptionInterruptedException
-
process
public void process(org.apache.zookeeper.WatchedEvent event)
- Specified by:
processin interfaceorg.apache.zookeeper.Watcher
-
-