Add a mean for Matcher to specify that they don't care of the message but only of the envelope.
+1
This would allow us to use it in systems wher the envelope does not exists. At the same time add a mean to specify that the matcher/mailet does not care of the enveloper but only of the mimemessage (or only of the mime headers): This would be useful to write a "incoming mail rule engine based on mailet apis" for a java based email client.
+1
Another improvement to the api would be to give access to the message as a stream or as a a mime-tree of streams:
+10,000
Adding "Fastfail" to the Mailet APIs means (to me) adding some more specific object/method/interface to allow processing of partial (or better "specific") subset of the current Mail object and not publishing JAMES Server (incomplete) handlerapis that are instead a command pattern we used to keep our smtpserver modular and more easy to be mantained.
I think the discussion is about how to invoke the processing, that requires us to think about how you would invoke bespoke processing during the protocol handling. Thats where the handler api comes in.
WDYT? Is this something in the middle we could agree upon?
I think we already agree what the components are, we're just disagreeing with Alan about whether or not the fast fail stuff should be in the mailet API or a separate fast-fail/handler API. d.
