james-server-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Norman Maurer <nor...@apache.org>
Subject Re: SMTPServer rewrite comments
Date Sat, 15 Aug 2009 07:11:31 GMT
After thinkin a bit more about it, I thought It would be helpful to
give you a small description about the "new" design ( just to make it
a bit easier to understand). The new smtp fastfail stuff is now based
on hooks. It similar to the design that qpsmtpd use ( See
http://smtpd.develooper.com/). So my and Stefanos idea was, developers
who want to write fastfail handlers should not need to implement a new
CommandHandler for that. CommandHandler should only be used for
implement new Commands ( sounds logic heh ?). So there are a few new
interfaces (Hooks) who give the developer the possible to get stuff
executed after the parsing on a command is done and before the final
response (of the CommandHandler) is written to the smtp client.

So here are the new hooks:

AuthHook.java
HeloHook.java
MailHook.java
MailParametersHook.java
MessageHook.java
QuitHook.java
RcptHook.java

So if a user wants (for example) check if the sender and recipient is
the same and in this case reject the recipient he would implement the
MailHook and RcptHook and do the checking in the there. I think that's
much easier and clean then before.

Hope this helps..

Bye,
Norman

2009/8/14 Norman Maurer <norman@apache.org>:
> Hi all,
>
> as you know I'm currently working on making the smtpserver of james
> more extendable. I dedicided to use the "old work" of Stefano and me (
> from the handlerapi-experiment sandbox) as base for that. I'm now
> finish with the backporting (is backporting the right name for porting
> it to trunk ;P ) of the "old" sandbox + fixing some minor bugs on it.
> I think even in the current state its better then everything we ever
> had in trunk as smtpserver. The current code can be found here:
>
> http://svn.apache.org/repos/asf/james/server/sandbox/active/smtp_refactor/
>
> I suggest to just merge it to trunk ( after I fixed the config file
> stuff) and continue there with the work. But before that I would like
> to ask you to take a look at it and see if you are ok with that.
>
> When its in trunk I will start to "help" robert to work on the
> container sandbox to modify the smtpserver to use guice for all the
> wiring etc.
>
> In the long term I would like to be able to realease the smtpserver as
> independend "product" to give developers some light smtpserver which
> is high extendable.
>
> Thoughts ?
>
> Bye,
> Norman
>

---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org


Mime
View raw message