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, Disposable, Initialisable, Startable, Stoppable, Connectable, MessageRequester, MessageRequesting
public class RetrieveMessageRequester
- extends 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)
Methods inherited from class org.mule.transport.AbstractConnectable |
activate, connect, disconnect, disposeAndLogException, doInitialise, doStart, doStop, exceptionThrown, getConnectEventId, getConnectionDescription, getConnector, handleException, isConnected, isDoThreading, isStarted, passivate, setEndpoint, start, stop, toString, validate, validateConnection |
Methods inherited from interface org.mule.api.lifecycle.Startable |
start |
Methods inherited from interface org.mule.api.lifecycle.Stoppable |
stop |
RetrieveMessageRequester
public RetrieveMessageRequester(InboundEndpoint endpoint)
doConnect
protected void doConnect()
throws Exception
- Overrides:
doConnect
in class AbstractConnectable
- Throws:
Exception
doDisconnect
protected void doDisconnect()
throws Exception
- Overrides:
doDisconnect
in class AbstractConnectable
- Throws:
Exception
doDispatch
protected void doDispatch(MuleEvent event)
throws Exception
- Parameters:
event
-
- Throws:
UnsupportedOperationException
Exception
doSend
protected MuleMessage doSend(MuleEvent event)
throws Exception
- Parameters:
event
-
- Returns:
-
- Throws:
UnsupportedOperationException
Exception
doRequest
protected 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 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()
- Overrides:
doDispose
in class AbstractConnectable
Copyright © 2003-2009 MuleSource, Inc.. All Rights Reserved.