in resolver/src/main/java/org/apache/james/jspf/impl/SPF.java [278:302]
public void onException(Throwable exception, SPFSession session)
throws PermErrorException, NoneException, TempErrorException,
NeutralException {
String result;
if (exception instanceof SPFResultException) {
result = ((SPFResultException) exception).getResult();
if (!SPFErrorConstants.NEUTRAL_CONV.equals(result)) {
LOGGER.warn(exception.getMessage(),exception);
}
} else if(exception instanceof NoSuchDomainException) {
LOGGER.error(exception.getMessage(), exception);
result = SPFErrorConstants.NONE_CONV;
} else if (exception instanceof SocketException) {
//SocketException or PortUnreachableException can be caused by a temporary issue
LOGGER.error(exception.getMessage(), exception);
result = SPFErrorConstants.TEMP_ERROR_CONV;
} else {
// this should never happen at all. But anyway we will set the
// result to neutral. Safety first ..
LOGGER.error(exception.getMessage(),exception);
result = SPFErrorConstants.NEUTRAL_CONV;
}
session.setCurrentResultExpanded(result);
}