in eureka-client/src/main/java/com/netflix/discovery/util/EurekaEntityComparators.java [251:278]
public static boolean equal(Application first, Application second) {
if (first == second) {
return true;
}
if (first == null || first == null && second != null) {
return false;
}
if (first.getName() != null ? !first.getName().equals(second.getName()) : second.getName() != null) {
return false;
}
List<InstanceInfo> firstInstanceInfos = first.getInstances();
List<InstanceInfo> secondInstanceInfos = second.getInstances();
if (firstInstanceInfos == null && secondInstanceInfos == null) {
return true;
}
if (firstInstanceInfos == null || secondInstanceInfos == null || firstInstanceInfos.size() != secondInstanceInfos.size()) {
return false;
}
for (InstanceInfo firstInstanceInfo : firstInstanceInfos) {
InstanceInfo secondInstanceInfo = second.getByInstanceId(firstInstanceInfo.getId());
if (!equal(firstInstanceInfo, secondInstanceInfo)) {
return false;
}
}
return true;
}