On 11/13/06, Tom Brown <[EMAIL PROTECTED]> wrote:

Tom, good points, but I wanted to clarify this one particlularly:

4) The match(Mail) method of matcher is poorly defined-- Is the Mail
object modified based on the return from the match method call? If so,
why is a "matcher" modifying the message? If not, why is a collection
(rather than a simple boolean) being returned?

The matcher shouldn't modify the content of the mail, but it will
return a collection of recipients which match the condition. If this
is < the whole set of recipients it will split the message in two so
that one has the matched recipients and one has the rest.
For example if a message is destined for both local and remote
delivery a copy with local recipients and one with remote is created.
They *both* continue along the rest of the processing unless they are
stopped for some reason, the net result is that the mail can move down
more than one path of processing. This makes sense if you think about
it.

Original -> Local -> spam check -> virusscan -> local delivery
Original -> Remote -> add habeas -> add footer -> remote delivery

Reply via email to