| java.lang.Object org.apache.mailet.GenericMailet org.apache.james.transport.mailets.RemoteDelivery
RemoteDelivery | public class RemoteDelivery extends GenericMailet implements Runnable(Code) | | Receives a MessageContainer from JamesSpoolManager and takes care of delivery
the message to remote hosts. If for some reason mail can't be delivered
store it in the "outgoing" Repository and set an Alarm. After the next "delayTime" the
Alarm will wake the servlet that will try to send it again. After "maxRetries"
the mail will be considered undeliverable and will be returned to sender.
TO DO (in priority):
1. Support a gateway (a single server where all mail will be delivered) (DONE)
2. Provide better failure messages (DONE)
3. More efficiently handle numerous recipients
4. Migrate to use Phoenix for the delivery threads
You really want to read the JavaMail documentation if you are
working in here, and you will want to view the list of JavaMail
attributes, which are documented here:
http://java.sun.com/products/javamail/1.3/docs/javadocs/com/sun/mail/smtp/package-summary.html
as well as other places.
version: CVS $Revision: 494056 $ $Date: 2007-01-08 14:15:03 +0100 (Mo, 08 Jan 2007) $ |
Method Summary | |
public synchronized void | destroy() | public String | getMailetInfo() | public void | init() | public void | run() | public void | service(Mail mail) For this message, we take the list of recipients, organize these into distinct
servers, and duplicate the message for each of these servers, and then call
the deliver (messagecontainer) method for each server-specific
messagecontainer ... |
destroy | public synchronized void destroy()(Code) | | |
init | public void init() throws MessagingException(Code) | | Initialize the mailet
|
run | public void run()(Code) | | Handles checking the outgoing spool for new mail and delivering them if
there are any
|
service | public void service(Mail mail) throws MessagingException(Code) | | For this message, we take the list of recipients, organize these into distinct
servers, and duplicate the message for each of these servers, and then call
the deliver (messagecontainer) method for each server-specific
messagecontainer ... that will handle storing it in the outgoing queue if needed.
Parameters: mail - org.apache.mailet.Mail |
|
|