org.apache.james.transport.mailets
Class ToMultiRepository

java.lang.Object
  extended by org.apache.mailet.GenericMailet
      extended by org.apache.james.transport.mailets.ToMultiRepository
All Implemented Interfaces:
Mailet, MailetConfig

public class ToMultiRepository
extends GenericMailet

Receives a Mail from JamesSpoolManager and takes care of delivery of the message to local inboxes or a specific repository. Differently from LocalDelivery this does not lookup the UserRepository This simply store the message in a repository named like the local part of the recipient address. If no repository is specified then this fallback to MailServer.getUserInbox. Otherwise you can add your own configuration for the repository e.g: file://var/spool/userspools/ SPOOL file://var/mail/inboxes/ MAIL Header "Delivered-To" can be added to every message adding the Delivered-To


Constructor Summary
ToMultiRepository()
           
 
Method Summary
 java.lang.String getId()
          Return a new mail id.
 java.lang.String getMailetInfo()
          Return a string describing this mailet.
 void init()
          A convenience method which can be overridden so that there's no need to call super.init(config).
 void service(Mail mail)
          Delivers a mail to a local mailbox.
 void storeMail(MailAddress sender, MailAddress recipient, javax.mail.internet.MimeMessage message)
           
 
Methods inherited from class org.apache.mailet.GenericMailet
destroy, 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
 

Constructor Detail

ToMultiRepository

public ToMultiRepository()
Method Detail

service

public void service(Mail mail)
             throws javax.mail.MessagingException
Delivers a mail to a local mailbox.

Specified by:
service in interface Mailet
Specified by:
service in class GenericMailet
Parameters:
mail - the mail being processed
Throws:
javax.mail.MessagingException - if an error occurs while storing the mail

getMailetInfo

public java.lang.String getMailetInfo()
Return a string describing this mailet.

Specified by:
getMailetInfo in interface Mailet
Overrides:
getMailetInfo in class GenericMailet
Returns:
a string describing this mailet

storeMail

public void storeMail(MailAddress sender,
                      MailAddress recipient,
                      javax.mail.internet.MimeMessage message)
               throws javax.mail.MessagingException
Parameters:
sender -
recipient -
message -
Throws:
javax.mail.MessagingException

getId

public java.lang.String getId()
Return a new mail id.

Returns:
a new mail id

init

public void init()
          throws javax.mail.MessagingException
Description copied from class: GenericMailet

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

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

Overrides:
init in class GenericMailet
Throws:
javax.mail.MessagingException - if an exception occurs that interrupts the mailet's normal operation
See Also:
GenericMailet.init()


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