@Override
  public boolean equals(Object o) {
    if (this == o) {
      return true;
    }
    if (o == null || getClass() != o.getClass()) {
      return false;
    }

    StaticClusterManager that = (StaticClusterManager) o;

    if (hardwareLayout != null ? !hardwareLayout.equals(that.hardwareLayout) : that.hardwareLayout != null) {
      return false;
    }
    return !(partitionLayout != null ? !partitionLayout.equals(that.partitionLayout) : that.partitionLayout != null);
  }
Add a set of replicas on a new datacenter for an existing partition.

@param partitionId The partition to add to the new datacenter
@param dataCenterName The name of the new datacenter
@param attemptNonRackAwareOnFailure {@code true} if a non rack-aware allocation should be attempted if a rack-aware one
                           is not possible.
ambry-clustermap/src/main/java/com/github/ambry/clustermap/StaticClusterManager.java