code: @Override
      public ArrayList<String> processLeasesForPeers(String recoveryIdentity, String recoveryGroup) {
          if (tc.isEntryEnabled())
              Tr.entry(tc, "processLeasesForPeers", new Object[] { recoveryIdentity, recoveryGroup });
          ArrayList<String> peersToRecover = null;
  
          if (_leaseLog != null) {
              if (tc.isDebugEnabled())
                  Tr.debug(tc, "work with leaseLog " + _leaseLog);
  
              try {
                  // Retrieve peers in the recovery group from lease table
                  PeerLeaseTable peerLeaseTable = new PeerLeaseTable();
                  _leaseLog.getLeasesForPeers(peerLeaseTable, recoveryGroup);
  
                  //Now extract a list of the peers that need to be recovered
  //TODO: These **should** be just those whose leases have expired
                  peersToRecover = peerLeaseTable.getExpiredPeers();
  
                  // Discard the local server from the list
                  peersToRecover.remove(recoveryIdentity);
  
                  int numPeers = peersToRecover.size();
                  Tr.audit(tc, "WTRN0108I: Have checked leases for peers in recovery group " + recoveryGroup + " - need to Recover " + numPeers + " peer servers");
  
              } catch (Exception e) {
                  System.out.println("Caught exception when trying to get leases for peers: " + e);
                  e.printStackTrace();
              }
          }
          if (tc.isEntryEnabled())
              Tr.exit(tc, "processLeasesForPeers", peersToRecover);
          return peersToRecover;
      }
docs: /*
  (non-Javadoc)
  
  @see com.ibm.ws.recoverylog.spi.RecoveryAgent#processLeasesForPeers(com.ibm.ws.recoverylog.spi.FailureScope)