org.apache.james.transport.matchers
Class HasMailAttribute

java.lang.Object
  extended by org.apache.mailet.GenericMatcher
      extended by org.apache.james.transport.matchers.HasMailAttribute
All Implemented Interfaces:
Matcher, MatcherConfig

public class HasMailAttribute
extends GenericMatcher

This Matcher determines if the mail contains the attribute specified in the condition, and returns all recipients if it is the case.

Sample configuration:


 <mailet match="HasMailAttribute=whatever" class="<any-class>">
 

Since:
2.2.0
Version:
CVS $Revision: 494012 $ $Date: 2007-01-08 10:23:58 +0000 (Mon, 08 Jan 2007) $

Constructor Summary
HasMailAttribute()
           
 
Method Summary
 java.lang.String getMatcherInfo()
          Return a string describing this matcher.
 void init(MatcherConfig conf)
          Called by the matcher container to indicate to a matcher that the matcher is being placed into service.
 java.util.Collection match(Mail mail)
          Called by the matcher container to allow the matcher to process a message.
 
Methods inherited from class org.apache.mailet.GenericMatcher
destroy, getCondition, getMailetContext, getMatcherConfig, getMatcherName, init, log, log
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

HasMailAttribute

public HasMailAttribute()
Method Detail

getMatcherInfo

public java.lang.String getMatcherInfo()
Return a string describing this matcher.

Specified by:
getMatcherInfo in interface Matcher
Overrides:
getMatcherInfo in class GenericMatcher
Returns:
a string describing this matcher

init

public void init(MatcherConfig conf)
          throws javax.mail.MessagingException
Description copied from class: GenericMatcher

Called by the matcher container to indicate to a matcher that the matcher is being placed into service.

This implementation stores the MatcherConfig object it receives from the matcher container for alter use. When overriding this form of the method, call super.init(config).

Specified by:
init in interface Matcher
Overrides:
init in class GenericMatcher
Parameters:
conf - - a MatcherConfig object containing the matcher's configuration and initialization parameters
Throws:
javax.mail.MessagingException - if an exception occurs that interrupts the matcher's normal operation

match

public java.util.Collection match(Mail mail)
                           throws javax.mail.MessagingException
Description copied from class: GenericMatcher

Called by the matcher container to allow the matcher to process a message.

This method is declared abstract so subclasses must override it.

Specified by:
match in interface Matcher
Specified by:
match in class GenericMatcher
Parameters:
mail - the mail to check.
Returns:
all recipients if the condition is the name of an attribute set on the mail
Throws:
MessagingException - - if an message or address parsing exception occurs or an exception that interferes with the matcher's normal operation


Copyright ? 2002-2009 The Apache Software Foundation. All Rights Reserved.