org.apache.james.transport.mailets
Class XMLVirtualUserTable
java.lang.Object
org.apache.mailet.base.GenericMailet
org.apache.james.transport.mailets.AbstractVirtualUserTable
org.apache.james.transport.mailets.XMLVirtualUserTable
- All Implemented Interfaces:
- org.apache.mailet.Mailet, org.apache.mailet.MailetConfig
public class XMLVirtualUserTable
- extends AbstractVirtualUserTable
Implements a Virtual User Table to translate virtual users
to real users. This implementation has the same functionality
as JDBCVirtualUserTable
, but is configured in the
JAMES configuration and is thus probably most suitable for smaller
and less dynamic mapping requirements.
The configuration is specified in the form:
<mailet match="All" class="XMLVirtualUserTable">
<mapping>virtualuser@xxx=realuser[@yyy][;anotherrealuser[@zzz]]</mapping>
<mapping>virtualuser2@*=realuser2[@yyy][;anotherrealuser2[@zzz]]</mapping>
...
</mailet>
As many <mapping> elements can be added as necessary. As indicated,
wildcards are supported, and multiple recipients can be specified with a
semicolon-separated list. The target domain does not need to be specified if
the real user is local to the server.
Matching is done in the following order:
1. user@domain - explicit mapping for user@domain
2. user@* - catchall mapping for user anywhere
3. *@domain - catchall mapping for anyone at domain
4. null - no valid mapping
Method Summary |
java.lang.String |
getMailetInfo()
|
void |
init()
Initialize the mailet |
protected void |
mapRecipients(java.util.Map recipientsMap)
Map any virtual recipients to real recipients using the configured mapping. |
Methods inherited from class org.apache.mailet.base.GenericMailet |
arrayToString, checkInitParameters, destroy, getInitParameter, getInitParameter, getInitParameter, getInitParameterNames, getMailetConfig, getMailetContext, getMailetName, init, log, log |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
XMLVirtualUserTable
public XMLVirtualUserTable()
init
public void init()
throws javax.mail.MessagingException
- Initialize the mailet
- Overrides:
init
in class org.apache.mailet.base.GenericMailet
- Throws:
javax.mail.MessagingException
mapRecipients
protected void mapRecipients(java.util.Map recipientsMap)
throws javax.mail.MessagingException
- Map any virtual recipients to real recipients using the configured mapping.
- Specified by:
mapRecipients
in class AbstractVirtualUserTable
- Parameters:
recipientsMap
- the mapping of virtual to real recipients
- Throws:
javax.mail.MessagingException
getMailetInfo
public java.lang.String getMailetInfo()
- Specified by:
getMailetInfo
in interface org.apache.mailet.Mailet
- Overrides:
getMailetInfo
in class org.apache.mailet.base.GenericMailet
Copyright ? 2002-2009 The Apache Software Foundation. All Rights Reserved.