org.apache.james.transport.matchers
Class IsInWhiteList

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

public class IsInWhiteList
extends GenericMatcher

Matches recipients having the mail sender in the recipient's private whitelist .

The recipient name is always converted to its primary name (handling aliases).

Configuration string: The database name containing the white list table.

Example:


    <mailet match="IsInWhiteList=db://maildb" class="ToProcessor">
       <processor> transport </processor>
    </mailet>
 

Since:
2.3.0
Version:
SVN $Revision: $ $Date: $
See Also:
WhiteListManager

Constructor Summary
IsInWhiteList()
           
 
Method Summary
 void init()
          A convenience method which can be overridden so that there's no need to call super.init(config).
 void initSqlQueries(java.sql.Connection conn, MailetContext mailetContext)
          Initializes the sql query environment from the SqlResources file.
 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, getMatcherInfo, getMatcherName, init, log, log
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

IsInWhiteList

public IsInWhiteList()
Method Detail

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

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 object that contains the MimeMessage and routing information
Returns:
java.util.Collection - the recipients that the mailet container should have the mailet affect.
Throws:
MessagingException - - if an message or address parsing exception occurs or an exception that interferes with the matcher's normal operation

initSqlQueries

public void initSqlQueries(java.sql.Connection conn,
                           MailetContext mailetContext)
                    throws java.lang.Exception
Initializes the sql query environment from the SqlResources file. Will look for conf/sqlResources.xml. Will not create the database resources, if missing (this task is done, if needed, in the WhiteListManager initialization routine).

Parameters:
conn - The connection for accessing the database
mailetContext - The current mailet context, for finding the conf/sqlResources.xml file
Throws:
java.lang.Exception - If any error occurs


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