public IpAddress call() throws Exception {
log.getLogWriter().info(ExternalStrings.SUSPECTING_MEMBER_WHICH_DIDNT_ACK, new Object[]{failedAddress.toString()});
if (sockAddress == null) {
if (log.getLogWriter().fineEnabled()) {
log.getLogWriter().fine("unable to find ping address for " + failedAddress
+ " - using direct port to verify if it's there");
}
sockAddress = new IpAddress(failedAddress.getIpAddress(), failedAddress.getDirectPort());
if (sockAddress.getPort() != 0 &&
fdSock.checkSuspect(failedAddress, sockAddress, ExternalStrings.MEMBER_DID_NOT_ACKNOWLEDGE_VIEW.toLocalizedString(), false, false)) {
if (log.getLogWriter().infoEnabled()) {
log.getLogWriter().info(ExternalStrings.ABLE_TO_CONNECT_TO_DC_PORT, new Object[]{failedAddress, sockAddress.getPort()});
}
return failedAddress;
}
} else if (fdSock.checkSuspect(failedAddress, sockAddress, ExternalStrings.MEMBER_DID_NOT_ACKNOWLEDGE_VIEW.toLocalizedString(), true, false)) {
if (log.getLogWriter().infoEnabled()) {
log.getLogWriter().info(ExternalStrings.ABLE_TO_CONNECT_TO_FD_PORT, new Object[]{failedAddress, sockAddress.getPort()});
}
return failedAddress;
}
return null;
}
}