org.mule.providers.email
Class RetrieveMessageDispatcher
java.lang.Object
org.mule.providers.AbstractMessageDispatcher
org.mule.providers.email.RetrieveMessageDispatcher
- All Implemented Interfaces:
- Disposable, ExceptionListener, UMOConnectable, UMOMessageDispatcher, UMOMessageDispatching
- public class RetrieveMessageDispatcher
- extends AbstractMessageDispatcher
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)
Methods inherited from class org.mule.providers.AbstractMessageDispatcher |
activate, connect, disconnect, dispatch, dispose, exceptionThrown, getConnectEventId, getConnectionDescription, getConnector, getEndpoint, isConnected, isDoThreading, isTransactionRollback, passivate, receive, reconnect, send, toString, useRemoteSync, validate |
RetrieveMessageDispatcher
public RetrieveMessageDispatcher(UMOImmutableEndpoint endpoint)
doConnect
protected void doConnect()
throws Exception
- Specified by:
doConnect
in class AbstractMessageDispatcher
- Throws:
Exception
doDisconnect
protected void doDisconnect()
throws Exception
- Specified by:
doDisconnect
in class AbstractMessageDispatcher
- Throws:
Exception
doDispatch
protected void doDispatch(UMOEvent event)
throws Exception
- Specified by:
doDispatch
in class AbstractMessageDispatcher
- Parameters:
event
-
- Throws:
UnsupportedOperationException
Exception
doSend
protected UMOMessage doSend(UMOEvent event)
throws Exception
- Specified by:
doSend
in class AbstractMessageDispatcher
- Parameters:
event
-
- Returns:
-
- Throws:
UnsupportedOperationException
Exception
doReceive
protected UMOMessage doReceive(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:
doReceive
in class AbstractMessageDispatcher
- 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 UMOMessage 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 Message getNextMessage(Folder folder)
throws MessagingException
- Throws:
MessagingException
getMessageCount
protected int getMessageCount(Folder folder)
throws MessagingException
- Throws:
MessagingException
hasMessages
protected 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 AbstractMessageDispatcher
Copyright © 2003-2008 MuleSource, Inc.. All Rights Reserved.