Map<String, RoutingTableSnapshot> getRoutingTableSnapshots() {
    Map<String, RoutingTableSnapshot> dcToRoutingTableSnapshot = new ConcurrentHashMap<>();
    if (clusterMapConfig.clusterMapUseAggregatedView) {
      dcToRoutingTableSnapshot.put(clusterMapConfig.clusterMapDatacenterName, globalRoutingTableSnapshotRef.get());
    } else {
      for (DcInfo dcInfo : dcToDcInfo.values()) {
        dcToRoutingTableSnapshot.put(dcInfo.dcName, dcToRoutingTableSnapshotRef.get(dcInfo.dcName).get());
      }
    }
    return Collections.unmodifiableMap(dcToRoutingTableSnapshot);
  }
Exposed for testing
@return a map of data center to its {@link RoutingTableSnapshot}
ambry-clustermap/src/main/java/com/github/ambry/clustermap/HelixClusterManager.java