org.apache.james.mailet.standard.matchers
Class HasMailAttribute

java.lang.Object
  extended by org.apache.mailet.base.GenericMatcher
      extended by org.apache.james.mailet.standard.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$ $Date$

Constructor Summary
HasMailAttribute()
           
 
Method Summary
 String getMatcherInfo()
          Return a string describing this matcher.
 void init()
          A convenience method which can be overridden so that there's no need to call super.init(config).
 Collection<MailAddress> match(Mail mail)
          Called by the matcher container to allow the matcher to process a message.
 
Methods inherited from class org.apache.mailet.base.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 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()
          throws javax.mail.MessagingException
Description copied from class: GenericMatcher

A convenience method which can be overridden so that there's no need to call super.init(config).

Instead of overriding init(MatcherConfig), simply override this method and it will be called by GenericMatcher.init(MatcherConfig config). The MatcherConfig object can still be retrieved via getMatcherConfig().

Overrides:
init in class GenericMatcher
Throws:
javax.mail.MessagingException - if an exception occurs that interrupts the matcher's normal operation

match

public Collection<MailAddress> 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:
javax.mail.MessagingException - if any error occurs which prevents the Mail matching from completing successfully


Copyright © 2008-2012 The Apache Software Foundation. All Rights Reserved.