org.mule.transport
Class AbstractMessageRequester

java.lang.Object
  extended by org.mule.transport.AbstractConnectable
      extended by org.mule.transport.AbstractMessageRequester
All Implemented Interfaces:
ExceptionListener, Disposable, Connectable, MessageRequester, MessageRequesting
Direct Known Subclasses:
UnsupportedMessageRequester

public abstract class AbstractMessageRequester
extends AbstractConnectable
implements MessageRequester

Provide a default dispatch (client) support for handling threads lifecycle and validation.


Field Summary
 
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
 
Constructor Summary
AbstractMessageRequester(InboundEndpoint endpoint)
           
 
Method Summary
protected abstract  MuleMessage doRequest(long timeout)
          Make a specific request to the underlying transport
 MuleMessage request(long timeout)
          Make a specific request to the underlying transport
 
Methods inherited from class org.mule.transport.AbstractConnectable
activate, connect, disconnect, dispose, disposeAndLogException, doConnect, doDisconnect, doDispose, exceptionThrown, getConnectEventId, getConnectionDescription, getConnector, getEndpoint, isConnected, isDoThreading, passivate, reconnect, toString, validate
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
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
 

Constructor Detail

AbstractMessageRequester

public AbstractMessageRequester(InboundEndpoint endpoint)
Method Detail

request

public final MuleMessage request(long timeout)
                          throws Exception
Make a specific request to the underlying transport

Specified by:
request in interface MessageRequesting
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 available
Throws:
Exception - if the call to the underlying protocol causes an exception

doRequest

protected abstract MuleMessage doRequest(long timeout)
                                  throws Exception
Make a specific request to the underlying transport

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 cuases an exception


Copyright © 2003-2008 MuleSource, Inc.. All Rights Reserved.