/**
  * Returns the set of current participants in the leader selection
  *
  * <p><B>NOTE</B> - this method polls the ZK server. Therefore it can possibly return a value that
  * does not match {@link #hasLeadership()} as hasLeadership uses a local field of the class.
  *
  * @return participants
  * @throws Exception ZK errors, interruptions, etc.
  */
 public Collection<Participant> getParticipants() throws Exception {
   Collection<String> participantNodes =
       LockInternals.getParticipantNodes(client, latchPath, LOCK_NAME, sorter);
   return LeaderSelector.getParticipants(client, participantNodes);
 }