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:
- Disposable, Initialisable, Lifecycle, LifecycleStateEnabled, 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, callDoStartWhenItIsConnected, connect, connectAndThenStart, createMuleMessage, createMuleMessage, createMuleMessage, createMuleMessageFactory, createNullMuleMessage, disconnect, dispose, disposeAndLogException, doInitialise, doStart, doStop, getConnectEventId, getConnectionDescription, getConnector, getLifecycleState, initializeMessageFactory, initializeRetryPolicy, isConnected, isConnecting, isDoStartMustFollowDoConnect, isDoThreading, isStarted, passivate, setEndpoint, start, stop, toString, validate, validateConnection |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
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 java.lang.Exception
- Overrides:
doConnect
in class AbstractConnectable
- Throws:
java.lang.Exception
ensureFolderIsOpen
protected void ensureFolderIsOpen(javax.mail.Folder fldr)
doDisconnect
protected void doDisconnect()
throws java.lang.Exception
- Overrides:
doDisconnect
in class AbstractConnectable
- Throws:
java.lang.Exception
doDispatch
protected void doDispatch(MuleEvent event)
throws java.lang.Exception
- Parameters:
event
-
- Throws:
java.lang.UnsupportedOperationException
java.lang.Exception
doSend
protected MuleMessage doSend(MuleEvent event)
throws java.lang.Exception
- Parameters:
event
-
- Throws:
java.lang.UnsupportedOperationException
java.lang.Exception
doRequest
protected MuleMessage doRequest(long timeout)
throws java.lang.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:
java.lang.Exception
- if the call to the underlying protocal causes an exception
flagMessage
protected void flagMessage(javax.mail.Message message)
throws javax.mail.MessagingException
- There seems to be some variation on pop3 implementation so it may be
preferrable to mark messages as seen here and also overload the getMessages
method to grab only new messages
- Throws:
javax.mail.MessagingException
getNextMessage
protected javax.mail.Message getNextMessage()
throws javax.mail.MessagingException
- Throws:
javax.mail.MessagingException
getMessageCount
protected int getMessageCount()
throws javax.mail.MessagingException
- Throws:
javax.mail.MessagingException
hasMessages
protected boolean hasMessages()
throws javax.mail.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
- Throws:
javax.mail.MessagingException
doDispose
protected void doDispose()
- Overrides:
doDispose
in class AbstractConnectable
Copyright © 2003-2010 MuleSoft, Inc.. All Rights Reserved.