org.apache.james.protocols.smtp.core
Class RcptCmdHandler

java.lang.Object
  extended by org.apache.james.protocols.smtp.core.AbstractHookableCmdHandler<RcptHook>
      extended by org.apache.james.protocols.smtp.core.RcptCmdHandler
All Implemented Interfaces:
CommandHandler<SMTPSession>, ExtensibleHandler, ProtocolHandler

public class RcptCmdHandler
extends AbstractHookableCmdHandler<RcptHook>
implements CommandHandler<SMTPSession>

Handles RCPT command


Field Summary
static String CURRENT_RECIPIENT
           
 
Constructor Summary
RcptCmdHandler()
           
 
Method Summary
protected  HookResult callHook(RcptHook rawHook, SMTPSession session, String parameters)
          Must be implemented by hookable cmd handlers to make the effective call to an hook.
protected  SMTPResponse doCoreCmd(SMTPSession session, String command, String parameters)
          Handler method called upon receipt of a RCPT command.
protected  SMTPResponse doFilterChecks(SMTPSession session, String command, String argument)
          Execute Syntax checks and return a SMTPResponse if a syntax error was detected, otherwise null.
protected  String getDefaultDomain()
           
protected  Class<RcptHook> getHookInterface()
          Return the interface which hooks need to implement to hook in
 Collection<String> getImplCommands()
           
 
Methods inherited from class org.apache.james.protocols.smtp.core.AbstractHookableCmdHandler
calcDefaultSMTPResponse, getHooks, getMarkerInterfaces, onCommand, wireExtensions
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.apache.james.protocols.api.handler.CommandHandler
onCommand
 

Field Detail

CURRENT_RECIPIENT

public static final String CURRENT_RECIPIENT
See Also:
Constant Field Values
Constructor Detail

RcptCmdHandler

public RcptCmdHandler()
Method Detail

doCoreCmd

protected SMTPResponse doCoreCmd(SMTPSession session,
                                 String command,
                                 String parameters)
Handler method called upon receipt of a RCPT command. Reads recipient. Does some connection validation.

Specified by:
doCoreCmd in class AbstractHookableCmdHandler<RcptHook>
Parameters:
session - SMTP session object
command - command passed
parameters - parameters passed in with the command by the SMTP client
Returns:
smtp response

doFilterChecks

protected SMTPResponse doFilterChecks(SMTPSession session,
                                      String command,
                                      String argument)
Description copied from class: AbstractHookableCmdHandler
Execute Syntax checks and return a SMTPResponse if a syntax error was detected, otherwise null.

Specified by:
doFilterChecks in class AbstractHookableCmdHandler<RcptHook>
Parameters:
session - SMTP session object
argument - the argument passed in with the command by the SMTP client
Returns:
smtp response if a syntax error was detected, otherwise null

getImplCommands

public Collection<String> getImplCommands()
Specified by:
getImplCommands in interface CommandHandler<SMTPSession>
See Also:
CommandHandler.getImplCommands()

getHookInterface

protected Class<RcptHook> getHookInterface()
Description copied from class: AbstractHookableCmdHandler
Return the interface which hooks need to implement to hook in

Specified by:
getHookInterface in class AbstractHookableCmdHandler<RcptHook>
Returns:
interface
See Also:
AbstractHookableCmdHandler.getHookInterface()

callHook

protected HookResult callHook(RcptHook rawHook,
                              SMTPSession session,
                              String parameters)
Must be implemented by hookable cmd handlers to make the effective call to an hook.

Specified by:
callHook in class AbstractHookableCmdHandler<RcptHook>
Parameters:
rawHook - the hook
session - the session
parameters - the parameters
Returns:
the HookResult, will be calculated using HookResultToSMTPResponse.

getDefaultDomain

protected String getDefaultDomain()


Copyright © 2010-2011 The Apache Software Foundation. All Rights Reserved.