Package org.apache.activemq.transport
Class TransportFilter
- java.lang.Object
-
- org.apache.activemq.transport.TransportFilter
-
- All Implemented Interfaces:
Service,Transport,TransportListener
- Direct Known Subclasses:
AbstractInactivityMonitor,CommandJoiner,DiscoveryTransport,MarshallingTransportFilter,MutexTransport,ResponseCorrelator,ResponseRedirectInterceptor,ThreadNameFilter,WireFormatNegotiator,WriteTimeoutFilter
public class TransportFilter extends Object implements TransportListener, Transport
-
-
Field Summary
Fields Modifier and Type Field Description protected Transportnextprotected TransportListenertransportListener
-
Constructor Summary
Constructors Constructor Description TransportFilter(Transport next)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description FutureResponseasyncRequest(Object command, ResponseCallback responseCallback)An asynchronous request response where the Receipt will be returned in the future.TransportgetNext()X509Certificate[]getPeerCertificates()intgetReceiveCounter()Returns a counter which gets incremented as data is read from the transport.StringgetRemoteAddress()TransportListenergetTransportListener()Returns the current transport listenerWireFormatgetWireFormat()Retrieves the WireFormat instance associated with this Transport instance.booleanisConnected()booleanisDisposed()booleanisFaultTolerant()Indicates if the transport can handle faultsbooleanisReconnectSupported()booleanisUpdateURIsSupported()<T> Tnarrow(Class<T> target)voidonCommand(Object command)called to process a commandvoidoneway(Object command)A one way asynchronous sendvoidonException(IOException error)An unrecoverable exception has occured on the transportvoidreconnect(URI uri)reconnect to another locationObjectrequest(Object command)A synchronous request responseObjectrequest(Object command, int timeout)A synchronous request responsevoidsetPeerCertificates(X509Certificate[] certificates)Sets the certificates provided by the connected peer.voidsetTransportListener(TransportListener channelListener)Registers an inbound command listenervoidstart()voidstop()StringtoString()voidtransportInterupted()The transport has suffered an interuption from which it hopes to recovervoidtransportResumed()The transport has resumed after an interuptionvoidupdateURIs(boolean rebalance, URI[] uris)Provide a list of available alternative locations
-
-
-
Field Detail
-
next
protected final Transport next
-
transportListener
protected TransportListener transportListener
-
-
Constructor Detail
-
TransportFilter
public TransportFilter(Transport next)
-
-
Method Detail
-
getTransportListener
public TransportListener getTransportListener()
Description copied from interface:TransportReturns the current transport listener- Specified by:
getTransportListenerin interfaceTransport- Returns:
-
setTransportListener
public void setTransportListener(TransportListener channelListener)
Description copied from interface:TransportRegisters an inbound command listener- Specified by:
setTransportListenerin interfaceTransport
-
start
public void start() throws Exception- Specified by:
startin interfaceService- Throws:
IOException- if the next channel has not been set.Exception- See Also:
Service.start()
-
stop
public void stop() throws Exception- Specified by:
stopin interfaceService- Throws:
Exception- See Also:
Service.stop()
-
onCommand
public void onCommand(Object command)
Description copied from interface:TransportListenercalled to process a command- Specified by:
onCommandin interfaceTransportListener
-
getNext
public Transport getNext()
- Returns:
- Returns the next.
-
oneway
public void oneway(Object command) throws IOException
Description copied from interface:TransportA one way asynchronous send- Specified by:
onewayin interfaceTransport- Throws:
IOException
-
asyncRequest
public FutureResponse asyncRequest(Object command, ResponseCallback responseCallback) throws IOException
Description copied from interface:TransportAn 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:
asyncRequestin interfaceTransportresponseCallback- TODO- Returns:
- the FutureResponse
- Throws:
IOException
-
request
public Object request(Object command) throws IOException
Description copied from interface:TransportA synchronous request response- Specified by:
requestin interfaceTransport- Returns:
- the response
- Throws:
IOException
-
request
public Object request(Object command, int timeout) throws IOException
Description copied from interface:TransportA synchronous request response- Specified by:
requestin interfaceTransport- Returns:
- the repsonse or null if timeout
- Throws:
IOException
-
onException
public void onException(IOException error)
Description copied from interface:TransportListenerAn unrecoverable exception has occured on the transport- Specified by:
onExceptionin interfaceTransportListener
-
transportInterupted
public void transportInterupted()
Description copied from interface:TransportListenerThe transport has suffered an interuption from which it hopes to recover- Specified by:
transportInteruptedin interfaceTransportListener
-
transportResumed
public void transportResumed()
Description copied from interface:TransportListenerThe transport has resumed after an interuption- Specified by:
transportResumedin interfaceTransportListener
-
narrow
public <T> T narrow(Class<T> target)
-
getRemoteAddress
public String getRemoteAddress()
- Specified by:
getRemoteAddressin interfaceTransport- Returns:
- the remote address for this connection
-
isFaultTolerant
public boolean isFaultTolerant()
Description copied from interface:TransportIndicates if the transport can handle faults- Specified by:
isFaultTolerantin interfaceTransport- Returns:
- See Also:
Transport.isFaultTolerant()
-
isDisposed
public boolean isDisposed()
- Specified by:
isDisposedin interfaceTransport- Returns:
- true if the transport is disposed
-
isConnected
public boolean isConnected()
- Specified by:
isConnectedin interfaceTransport- Returns:
- true if the transport is connected
-
reconnect
public void reconnect(URI uri) throws IOException
Description copied from interface:Transportreconnect to another location- Specified by:
reconnectin interfaceTransport- Throws:
IOException- on failure of if not supported
-
getReceiveCounter
public int getReceiveCounter()
Description copied from interface:TransportReturns a counter which gets incremented as data is read from the transport. It should only be used to determine if there is progress being made in reading the next command from the transport. The value may wrap into the negative numbers.- Specified by:
getReceiveCounterin interfaceTransport- Returns:
- a counter which gets incremented as data is read from the transport.
-
isReconnectSupported
public boolean isReconnectSupported()
- Specified by:
isReconnectSupportedin interfaceTransport- Returns:
- true if reconnect is supported
-
isUpdateURIsSupported
public boolean isUpdateURIsSupported()
- Specified by:
isUpdateURIsSupportedin interfaceTransport- Returns:
- true if updating uris is supported
-
updateURIs
public void updateURIs(boolean rebalance, URI[] uris) throws IOExceptionDescription copied from interface:TransportProvide a list of available alternative locations- Specified by:
updateURIsin interfaceTransport- Throws:
IOException
-
getPeerCertificates
public X509Certificate[] getPeerCertificates()
- Specified by:
getPeerCertificatesin interfaceTransport- Returns:
- the Certificates provided by the peer, or null if not a secure channel.
-
setPeerCertificates
public void setPeerCertificates(X509Certificate[] certificates)
Description copied from interface:TransportSets the certificates provided by the connected peer.- Specified by:
setPeerCertificatesin interfaceTransport- Parameters:
certificates- the Certificates provided by the peer.
-
getWireFormat
public WireFormat getWireFormat()
Description copied from interface:TransportRetrieves the WireFormat instance associated with this Transport instance.- Specified by:
getWireFormatin interfaceTransport- Returns:
- the WireFormat in use.
-
-