org.mule.transport.email
Class RetrieveMessageRequester
java.lang.Object
org.mule.transport.AbstractConnectable
org.mule.transport.AbstractMessageRequester
org.mule.transport.email.RetrieveMessageRequester
- All Implemented Interfaces:
- ExceptionListener, org.mule.api.lifecycle.Disposable, org.mule.api.transport.Connectable, org.mule.api.transport.MessageRequester, org.mule.api.transport.MessageRequesting
public class RetrieveMessageRequester
- extends org.mule.transport.AbstractMessageRequester
This dispatcher can only be used to receive message (as opposed to listening for them).
Trying to send or dispatch will throw an UnsupportedOperationException.
This contains a reference to a mail folder (and also the endpoint and connector, via superclasses)
| Fields inherited from class org.mule.transport.AbstractConnectable |
connected, connecting, connectionStrategy, connector, disposed, endpoint, logger, workManager |
| Fields inherited from interface org.mule.api.lifecycle.Disposable |
PHASE_NAME |
| Fields inherited from interface org.mule.api.transport.MessageRequesting |
REQUEST_NO_WAIT, REQUEST_WAIT_INDEFINITELY |
|
Method Summary |
protected void |
doConnect()
|
protected void |
doDisconnect()
|
protected void |
doDispatch(org.mule.api.MuleEvent event)
|
protected void |
doDispose()
|
protected org.mule.api.MuleMessage |
doRequest(long timeout)
Make a specific request to the underlying transport. |
protected org.mule.api.MuleMessage |
doSend(org.mule.api.MuleEvent event)
|
protected void |
flagMessage(Folder folder,
Message message)
There seems to be som variation on pop3 implementation so it may be
preferrable to mark messages as seen here and alos overload the getMessages
method to grab only new messages |
protected static int |
getMessageCount(Folder folder)
|
protected static Message |
getNextMessage(Folder folder)
|
protected static boolean |
hasMessages(Folder folder)
Optimised check to se whether to return the message count and retrieve the
messages. |
| Methods inherited from class org.mule.transport.AbstractMessageRequester |
request |
| Methods inherited from class org.mule.transport.AbstractConnectable |
activate, connect, disconnect, dispose, disposeAndLogException, exceptionThrown, getConnectEventId, getConnectionDescription, getConnector, getEndpoint, isConnected, isDoThreading, passivate, reconnect, toString, validate |
| Methods inherited from interface org.mule.api.transport.MessageRequester |
activate, getConnector, passivate, validate |
| Methods inherited from interface org.mule.api.lifecycle.Disposable |
dispose |
| Methods inherited from interface org.mule.api.transport.Connectable |
connect, disconnect, getConnectionDescription, isConnected |
RetrieveMessageRequester
public RetrieveMessageRequester(org.mule.api.endpoint.InboundEndpoint endpoint)
doConnect
protected void doConnect()
throws Exception
- Specified by:
doConnect in class org.mule.transport.AbstractConnectable
- Throws:
Exception
doDisconnect
protected void doDisconnect()
throws Exception
- Specified by:
doDisconnect in class org.mule.transport.AbstractConnectable
- Throws:
Exception
doDispatch
protected void doDispatch(org.mule.api.MuleEvent event)
throws Exception
- Parameters:
event -
- Throws:
UnsupportedOperationException
Exception
doSend
protected org.mule.api.MuleMessage doSend(org.mule.api.MuleEvent event)
throws Exception
- Parameters:
event -
- Returns:
-
- Throws:
UnsupportedOperationException
Exception
doRequest
protected org.mule.api.MuleMessage doRequest(long timeout)
throws Exception
- Make a specific request to the underlying transport. Endpoint can be in the
form of pop3://username:password@pop3.lotsofmail.org
- Specified by:
doRequest in class org.mule.transport.AbstractMessageRequester
- Parameters:
timeout - the maximum time the operation should block before returning.
The call should return immediately if there is data available. If
no data becomes available before the timeout elapses, null will be
returned
- Returns:
- the result of the request wrapped in a MuleMessage object. Null will be
returned if no data was avaialable
- Throws:
Exception - if the call to the underlying protocal causes an exception
flagMessage
protected void flagMessage(Folder folder,
Message message)
throws MessagingException
- There seems to be som variation on pop3 implementation so it may be
preferrable to mark messages as seen here and alos overload the getMessages
method to grab only new messages
- Parameters:
message -
- Throws:
MessagingException
getNextMessage
protected static Message getNextMessage(Folder folder)
throws MessagingException
- Throws:
MessagingException
getMessageCount
protected static int getMessageCount(Folder folder)
throws MessagingException
- Throws:
MessagingException
hasMessages
protected static boolean hasMessages(Folder folder)
throws MessagingException
- Optimised check to se whether to return the message count and retrieve the
messages. Some pop3 implementations differ so an optimised check such as
folder.hasNewMessages() cannot be used
- Parameters:
folder -
- Returns:
-
- Throws:
MessagingException
doDispose
protected void doDispose()
- Specified by:
doDispose in class org.mule.transport.AbstractConnectable
Copyright © 2003-2008 MuleSource, Inc.. All Rights Reserved.