List<InternalDistributedMember> getElderCandidates() {
    List<InternalDistributedMember> theMembers = clusterDistributionManager.getViewMembers();

    return theMembers.stream()
        .filter(member -> member.getVmKind() != ClusterDistributionManager.ADMIN_ONLY_DM_TYPE)
        .filter(
            member -> !clusterDistributionManager.getDistribution().isSurpriseMember(member))
        .collect(Collectors.toList());
  }
Based on a recent JGroups view, return a member that might be the next elder.

@return the elder candidate, possibly this VM.
geode-core/src/main/java/org/apache/geode/distributed/internal/ClusterElderManager.java