Looks like we are going to disagree on this issue Noel

Noel J. Bergman wrote:
Well, that is because you're conflating two different issues: Matchers,
which deal with selecting messags in a message pipeline, and in-protocol
handlers that act on events as they happen during protocol transfer.

The message pipeline as you call it, in this instance is SMTP. The pipeline *is* by definition a transfer; moving data from one place to another. Doesn't really matter HOW that happens, thats protocol specific. By your own logic, the fast-fail operations belong in the Mailet API.

But lets wind back here, because I think you're being maybe a little too pragmatic here.

   "The Mailet API is an API designed to facilitate the development
   and deployment of a configurable email processing applications"

That is lifted straight from the Mailet WIKI.

There is nothing in that statement that suggests putting in the hooks/interfaces I have suggested would violate that statement; infact, one argues it strengthens it.


As I said, more and more we're moving to handle filtering in the protocol
handlers, and have just "application" type code in the pipeline, e.g.,
mailing list managers, delivery support, etc.

But that is JAMES specific. I am not interested in JAMES. If JAMES is the only container implementing the Mailet API then this whole discussion is somewhat moot and academic. How you guys handle it doesn't really matter, since no one else but JAMES is using it.

If however, the group is keen for the Mailet API to grow beyond JAMES then one has to look at where the vast majority of Mailet development is going to be done by Java developers; listening to emails coming in from SMTP. Can we at least agree on that? Everything else, JAMES will probably do for them anyway.

This sort of dogma bogged down the early days of the Servlet API; many argued that servlets were far more than HTTP. They were right; however 99.999999% of all servlets are attached to the HTTP protocol. Therefore it quickly made sense to push HTTP functionality into the specification.

all fun fun on the frontline of API design!

:)

Reply via email to