@Override
  public CompositeClusterManager getClusterMap() throws IOException {
    if (compositeClusterManager == null) {
      StaticClusterManager staticClusterManager = staticClusterAgentsFactory.getClusterMap();
      HelixClusterManager helixClusterManager = null;
      try {
        helixClusterManager = helixClusterAgentsFactory.getClusterMap();
      } catch (Exception e) {
        logger.error("Helix cluster manager instantiation failed with exception", e);
      }
      compositeClusterManager = new CompositeClusterManager(staticClusterManager, helixClusterManager);
    }
    return compositeClusterManager;
  }
Create and return a {@link CompositeClusterManager}.
@return the constructed {@link CompositeClusterManager}.
@throws Exception if constructing the underlying {@link StaticClusterManager} or the {@link HelixClusterManager}
throws an Exception.
ambry-clustermap/src/main/java/com/github/ambry/clustermap/CompositeClusterAgentsFactory.java