Class AbstractDNSToSwitchMapping

java.lang.Object
org.apache.storm.networktopography.AbstractDNSToSwitchMapping
All Implemented Interfaces:
DNSToSwitchMapping
Direct Known Subclasses:
AlternateRackDNSToSwitchMapping, DefaultRackDNSToSwitchMapping

public abstract class AbstractDNSToSwitchMapping extends Object implements DNSToSwitchMapping
This is a base class for DNS to Switch mappings.

It is not mandatory to derive DNSToSwitchMapping implementations from it, but it is strongly recommended, as it makes it easy for the developers to add new methods to this base class that are automatically picked up by all implementations.

  • Constructor Details

    • AbstractDNSToSwitchMapping

      protected AbstractDNSToSwitchMapping()
      Create an unconfigured instance.
  • Method Details

    • isSingleSwitch

      public boolean isSingleSwitch()
      Predicate that indicates that the switch mapping is known to be single-switch. The base class returns false: it assumes all mappings are multi-rack. Subclasses may override this with methods that are more aware of their topologies.
      Returns:
      true if the mapping thinks that it is on a single switch
    • getSwitchMap

      public Map<String,String> getSwitchMap()
      Get a copy of the map (for diagnostics).
      Returns:
      a clone of the map or null for none known
    • dumpTopology

      public String dumpTopology()
      Generate a string listing the switch mapping implementation, the mapping for every known node and the number of nodes and unique switches known about -each entry to a separate line.
      Returns:
      a string that can be presented to the ops team or used in debug messages.