in src/main/java/org/apache/sling/event/impl/jobs/config/TopologyCapabilities.java [84:104]
public int compare(final InstanceDescription o1, final InstanceDescription o2) {
if ( o1.getSlingId().equals(o2.getSlingId()) ) {
return 0;
}
final boolean o1IsLocalCluster = localClusterId.equals(o1.getClusterView().getId());
final boolean o2IsLocalCluster = localClusterId.equals(o2.getClusterView().getId());
if ( o1IsLocalCluster && !o2IsLocalCluster ) {
return -1;
}
if ( !o1IsLocalCluster && o2IsLocalCluster ) {
return 1;
}
if ( o1IsLocalCluster ) {
if ( o1.isLeader() && !o2.isLeader() ) {
return -1;
} else if ( o2.isLeader() && !o1.isLeader() ) {
return 1;
}
}
return o1.getSlingId().compareTo(o2.getSlingId());
}