Class ZkBookieRackAffinityMapping

  • All Implemented Interfaces:
    org.apache.bookkeeper.client.RackChangeNotifier, org.apache.bookkeeper.conf.Configurable, org.apache.bookkeeper.net.DNSToSwitchMapping, ZooKeeperCacheListener<org.apache.pulsar.common.policies.data.BookiesRackConfiguration>

    public class ZkBookieRackAffinityMapping
    extends org.apache.bookkeeper.net.AbstractDNSToSwitchMapping
    implements ZooKeeperCacheListener<org.apache.pulsar.common.policies.data.BookiesRackConfiguration>, org.apache.bookkeeper.client.RackChangeNotifier
    It provides the mapping of bookies to its rack from zookeeper.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void onUpdate​(java.lang.String path, org.apache.pulsar.common.policies.data.BookiesRackConfiguration data, org.apache.zookeeper.data.Stat stat)  
      void registerRackChangeListener​(org.apache.bookkeeper.client.ITopologyAwareEnsemblePlacementPolicy<org.apache.bookkeeper.net.BookieNode> rackawarePolicy)  
      void reloadCachedMappings()  
      java.util.List<java.lang.String> resolve​(java.util.List<java.lang.String> bookieAddressList)  
      void setConf​(org.apache.commons.configuration.Configuration conf)  
      java.lang.String toString()  
      • Methods inherited from class org.apache.bookkeeper.net.AbstractDNSToSwitchMapping

        dumpTopology, getBookieAddressResolver, getConf, getSwitchMap, isMappingSingleSwitch, isSingleSwitch, isSingleSwitchByScriptPolicy, setBookieAddressResolver, validateConf
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
      • Methods inherited from interface org.apache.bookkeeper.net.DNSToSwitchMapping

        useHostName
    • Field Detail

      • BOOKIE_INFO_ROOT_PATH

        public static final java.lang.String BOOKIE_INFO_ROOT_PATH
        See Also:
        Constant Field Values
      • ZK_DATA_CACHE_BK_RACK_CONF_INSTANCE

        public static final java.lang.String ZK_DATA_CACHE_BK_RACK_CONF_INSTANCE
        See Also:
        Constant Field Values
    • Constructor Detail

      • ZkBookieRackAffinityMapping

        public ZkBookieRackAffinityMapping()
    • Method Detail

      • setConf

        public void setConf​(org.apache.commons.configuration.Configuration conf)
        Specified by:
        setConf in interface org.apache.bookkeeper.conf.Configurable
        Overrides:
        setConf in class org.apache.bookkeeper.net.AbstractDNSToSwitchMapping
      • resolve

        public java.util.List<java.lang.String> resolve​(java.util.List<java.lang.String> bookieAddressList)
        Specified by:
        resolve in interface org.apache.bookkeeper.net.DNSToSwitchMapping
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
      • reloadCachedMappings

        public void reloadCachedMappings()
        Specified by:
        reloadCachedMappings in interface org.apache.bookkeeper.net.DNSToSwitchMapping
      • onUpdate

        public void onUpdate​(java.lang.String path,
                             org.apache.pulsar.common.policies.data.BookiesRackConfiguration data,
                             org.apache.zookeeper.data.Stat stat)
        Specified by:
        onUpdate in interface ZooKeeperCacheListener<org.apache.pulsar.common.policies.data.BookiesRackConfiguration>
      • registerRackChangeListener

        public void registerRackChangeListener​(org.apache.bookkeeper.client.ITopologyAwareEnsemblePlacementPolicy<org.apache.bookkeeper.net.BookieNode> rackawarePolicy)
        Specified by:
        registerRackChangeListener in interface org.apache.bookkeeper.client.RackChangeNotifier