@Override protected void doProcess(EnableRequest request, ImapSession session, String tag, ImapCommand command, Responder responder) { try { List<String> caps = request.getCapabilities(); Set<String> enabledCaps = enable(request, responder, session, caps.iterator()); responder.respond(new EnableResponse(enabledCaps)); unsolicitedResponses(session, responder, false); okComplete(command, tag, responder); } catch (EnableException e) { LOGGER.info("Unable to enable extension", e); taggedBad(command, tag, responder, HumanReadableText.FAILED); } }
@Override protected void doEncode(ImapMessage acceptableMessage, ImapResponseComposer composer, ImapSession session) throws IOException { final EnableResponse response = (EnableResponse) acceptableMessage; Set<String> capabilities = response.getCapabilities(); composer.untagged(); // Return ENABLED capabilities. See IMAP-323 composer.message("ENABLED"); for (String capability : capabilities) { composer.message(capability); } composer.end(); }
/** * @see * org.apache.james.imap.encode.base.AbstractChainedImapEncoder#doEncode * (org.apache.james.imap.api.ImapMessage, * org.apache.james.imap.encode.ImapResponseComposer, * org.apache.james.imap.api.process.ImapSession) */ protected void doEncode(ImapMessage acceptableMessage, ImapResponseComposer composer, ImapSession session) throws IOException { final EnableResponse response = (EnableResponse) acceptableMessage; Set<String> capabilities = response.getCapabilities(); composer.untagged(); // Return ENABLED capabilities. See IMAP-323 composer.message("ENABLED"); for (String capability : capabilities) { composer.message(capability); } composer.end(); }
/** * @see org.apache.james.imap.processor.AbstractMailboxProcessor * #doProcess(org.apache.james.imap.api.message.request.ImapRequest, * org.apache.james.imap.api.process.ImapSession, java.lang.String, * org.apache.james.imap.api.ImapCommand, org.apache.james.imap.api.process.ImapProcessor.Responder) */ protected void doProcess(EnableRequest request, ImapSession session, String tag, ImapCommand command, Responder responder) { try { List<String> caps = request.getCapabilities(); Set<String> enabledCaps = enable(request, responder, session, caps.iterator()); responder.respond(new EnableResponse(enabledCaps)); unsolicitedResponses(session, responder, false); okComplete(command, tag, responder); } catch (EnableException e) { if (session.getLog().isInfoEnabled()) { session.getLog().info("Unable to enable extension", e); } taggedBad(command, tag, responder, HumanReadableText.FAILED); } }