Class 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 Detail

      • AliasesManager

        public AliasesManager()
    • Method Detail

      • getAliases

        public Aliases getAliases()
      • applyModificationAndExportToZk

        public void applyModificationAndExportToZk​(UnaryOperator<Aliases> op)
        Writes an updated Aliases to 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,
                              InterruptedException
        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.KeeperException
        InterruptedException
      • process

        public void process​(org.apache.zookeeper.WatchedEvent event)
        Specified by:
        process in interface org.apache.zookeeper.Watcher