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
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.
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.apache.zookeeper.Watcher
org.apache.zookeeper.Watcher.Event, org.apache.zookeeper.Watcher.WatcherType -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidapplyModificationAndExportToZk(UnaryOperator<org.apache.solr.common.cloud.Aliases> op) Writes an updatedAliasesto zk.org.apache.solr.common.cloud.Aliasesvoidprocess(org.apache.zookeeper.WatchedEvent event) booleanupdate()Ensures the internal aliases is up-to-date.
-
Constructor Details
-
AliasesManager
public AliasesManager()
-
-
Method Details
-
getAliases
public org.apache.solr.common.cloud.Aliases getAliases() -
applyModificationAndExportToZk
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
Ensures 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
-