james-server-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Norman Maurer ...@byteaction.de>
Subject Re: smtp-handler-api and merge to trunk
Date Tue, 11 Jul 2006 15:52:59 GMT
Am Dienstag, den 11.07.2006, 17:17 +0200 schrieb Norman Maurer:
> Hi guys,
> after workin a while on the smtp-handler-api now i think it is  ready to
> get merged to trunk.
> Here are the things i change.
> 1. I add a new method to the CommandHandler interface called
> getImplCommands(). This method return the commands (as ArrayList) which
> can use the CommandHandler. So we can be sure that noone use a "wrong"
> CommandHandler. If a "wrong" commandHandler is configured for the
> command an ConfigurationException is thrown on startup.
> 2. I seperate all the "filter" stuff (syntaxchecks etc) from the
> commandhandler and move it to an extra package. 
> 3. I add a interface called CommandsHandler. This interface has a method
> called getCommands() which return a Map that contain commands and the
> comanndhandlers which should be called for the command.
> 4. I add a class called BaseCmdHandler which implement CommandsHandler.
> This class load all "core" commandHandlers. 
> 5. I add a class called BaseFilterCmdHandlr which implement
> CommandsHandler. This class load all "core" filters for the
> commandHandlers. 
> 6. Create a package called fastfailfilters which now contain all the
> fastfail code we had before in the corehandlers.
> 7. Make it possible to configure a commandHandler for more then on
> command with: <class="org.apache.james.commandHandler.foobar"
> command="HELO,EHLO">
> 8. Create a 2 new methods in SMTPSession to set whenether the next
> commandHandler should be executed or not.
> 9. Change the SMTPHandlerChain to load at least the core commands.
> I hope i explain all core changes i made..
> So what you guys think about mergin it in the trunk ?
> bye
>                                  Norman

just forget to say that a "fastfailfilter" can now just add by add :
<class="your.fast.fail.filter" command="COMMAND1(,COMMAND2,...)>

The fastfailfilter class will be insert automatic to the right position
in chain. ( Between coreFilterHandler and commandHandler for the
configures command)..


View raw message