/** * Convert the HookResult to SMTPResponse using default values. Should be override for using own values * * @param result HookResult * @return SMTPResponse */ public static SMTPResponse calcDefaultSMTPResponse(HookResult result) { if (result != null) { HookReturnCode returnCode = result.getResult(); String smtpReturnCode = OptionalUtils.or( Optional.ofNullable(result.getSmtpRetCode()), retrieveDefaultSmtpReturnCode(returnCode)) .orElse(null); String smtpDescription = OptionalUtils.or( Optional.ofNullable(result.getSmtpDescription()), retrieveDefaultSmtpDescription(returnCode)) .orElse(null); if (canBeConvertedToSmtpAnswer(returnCode)) { SMTPResponse response = new SMTPResponse(smtpReturnCode, smtpDescription); if (returnCode.isDisconnected()) { response.setEndSession(true); } return response; } } return null; }
Optional.ofNullable(result.getSmtpDescription()), retrieveDefaultSmtpDescription(returnCode)) .orElse(null);