Package org.apache.activemq.transport
Class ResponseCorrelator
java.lang.Object
org.apache.activemq.transport.TransportFilter
org.apache.activemq.transport.ResponseCorrelator
- All Implemented Interfaces:
Service
,Transport
,TransportListener
- Direct Known Subclasses:
ReliableTransport
Adds the incrementing sequence number to commands along with performing the
correlation of responses to requests to create a blocking request-response
semantics.
-
Field Summary
Fields inherited from class org.apache.activemq.transport.TransportFilter
next, transportListener
-
Constructor Summary
ConstructorDescriptionResponseCorrelator
(Transport next) ResponseCorrelator
(Transport next, IntSequenceGenerator sequenceGenerator) -
Method Summary
Modifier and TypeMethodDescriptionasyncRequest
(Object o, ResponseCallback responseCallback) An asynchronous request response where the Receipt will be returned in the future.void
called to process a commandvoid
A one way asynchronous sendvoid
onException
(IOException error) If an async exception occurs, then assume no responses will arrive for any of current requests.A synchronous request responseA synchronous request responsevoid
stop()
toString()
Methods inherited from class org.apache.activemq.transport.TransportFilter
getNext, getPeerCertificates, getReceiveCounter, getRemoteAddress, getTransportListener, getWireFormat, isConnected, isDisposed, isFaultTolerant, isReconnectSupported, isUpdateURIsSupported, narrow, reconnect, setPeerCertificates, setTransportListener, start, transportInterupted, transportResumed, updateURIs
-
Constructor Details
-
ResponseCorrelator
-
ResponseCorrelator
-
-
Method Details
-
oneway
Description copied from interface:Transport
A one way asynchronous send- Specified by:
oneway
in interfaceTransport
- Overrides:
oneway
in classTransportFilter
- Throws:
IOException
-
asyncRequest
Description copied from interface:Transport
An asynchronous request response where the Receipt will be returned in the future. If responseCallback is not null, then it will be called when the response has been completed.- Specified by:
asyncRequest
in interfaceTransport
- Overrides:
asyncRequest
in classTransportFilter
responseCallback
- TODO- Returns:
- the FutureResponse
- Throws:
IOException
-
request
Description copied from interface:Transport
A synchronous request response- Specified by:
request
in interfaceTransport
- Overrides:
request
in classTransportFilter
- Returns:
- the response
- Throws:
IOException
-
request
Description copied from interface:Transport
A synchronous request response- Specified by:
request
in interfaceTransport
- Overrides:
request
in classTransportFilter
- Returns:
- the repsonse or null if timeout
- Throws:
IOException
-
onCommand
Description copied from interface:TransportListener
called to process a command- Specified by:
onCommand
in interfaceTransportListener
- Overrides:
onCommand
in classTransportFilter
-
onException
If an async exception occurs, then assume no responses will arrive for any of current requests. Lets let them know of the problem.- Specified by:
onException
in interfaceTransportListener
- Overrides:
onException
in classTransportFilter
-
stop
- Specified by:
stop
in interfaceService
- Overrides:
stop
in classTransportFilter
- Throws:
Exception
- See Also:
-
getSequenceGenerator
-
toString
- Overrides:
toString
in classTransportFilter
-