in src/main/java/org/apache/sling/discovery/base/connectors/announcement/Announcement.java [136:168]
public boolean isValid() {
if (ownerId==null || ownerId.length()==0) {
return false;
}
if (loop) {
return true;
}
if (!isCorrectVersion()) {
return false;
}
if (localCluster==null) {
return false;
}
try{
List<InstanceDescription> instances = localCluster.getInstances();
if (instances==null || instances.size()==0) {
return false;
}
boolean isOwnerMemberOfLocalCluster = false;
for (Iterator<InstanceDescription> it = instances.iterator(); it.hasNext();) {
InstanceDescription instanceDescription = it.next();
if (instanceDescription.getSlingId().equals(ownerId)) {
isOwnerMemberOfLocalCluster = true;
}
}
if (!isOwnerMemberOfLocalCluster) {
return false;
}
} catch(Exception ise) {
return false;
}
return true;
}