in src/main/java/org/apache/sling/discovery/impl/common/heartbeat/HeartbeatHandler.java [309:338]
public boolean resetLeaderElectionId() {
if (resetLeaderElectionId) {
// then we already have a reset pending
// resetting twice doesn't work
return false;
}
resetLeaderElectionId = true;
ResourceResolver resourceResolver = null;
try{
resourceResolver = getResourceResolver();
if (resourceResolver!=null) {
newLeaderElectionId = newLeaderElectionId(resourceResolver);
if (votingHandler!=null) {
logger.info("resetLeaderElectionId: set new leaderElectionId with votingHandler to: "+newLeaderElectionId);
votingHandler.setLeaderElectionId(newLeaderElectionId);
} else {
logger.info("resetLeaderElectionId: no votingHandler, new leaderElectionId would be: "+newLeaderElectionId);
}
} else {
logger.warn("resetLeaderElectionId: could not login, new leaderElectionId will be calculated upon next heartbeat only!");
}
} catch (LoginException e) {
logger.error("resetLeaderElectionid: could not login: "+e, e);
} finally {
if (resourceResolver!=null) {
resourceResolver.close();
}
}
return true;
}