Public Member Functions |
| SslTransport (const Pointer< Transport > next, const decaf::net::URI &location) |
| Creates a new instance of the SslTransport, the transport will not attempt to connect to a remote host until the connect method is called.
|
virtual | ~SslTransport () |
| TcpTransport (const Pointer< Transport > next, const decaf::net::URI &location) |
| Creates a new instance of a TcpTransport, the transport is left unconnected and is in a unusable state until the connect method is called.
|
virtual | ~TcpTransport () |
void | setConnectTimeout (int soConnectTimeout) |
int | getConnectTimeout () const |
void | setOutputBufferSize (int outputBufferSize) |
int | getOutputBufferSize () const |
void | setInputBufferSize (int inputBufferSize) |
int | getInputBufferSize () const |
void | setTrace (bool trace) |
bool | isTrace () const |
void | setLinger (int soLinger) |
int | getLinger () const |
void | setKeepAlive (bool soKeepAlive) |
bool | isKeepAlive () const |
void | setReceiveBufferSize (int soReceiveBufferSize) |
int | getReceiveBufferSize () const |
void | setSendBufferSize (int soSendBufferSize) |
int | getSendBufferSize () const |
void | setTcpNoDelay (bool tcpNoDelay) |
bool | isTcpNoDelay () const |
virtual bool | isFaultTolerant () const |
| Is this Transport fault tolerant, meaning that it will reconnect to a broker on disconnect.
|
virtual bool | isConnected () const |
| Is the Transport Connected to its Broker.
|
| TransportFilter (const Pointer< Transport > next) |
| Constructor.
|
virtual | ~TransportFilter () |
void | start () |
| Starts the Transport, the send methods of a Transport will throw an exception if used before the Transport is started.
|
void | stop () |
| Stops the Transport.
|
void | close () |
| Closes this object and deallocates the appropriate resources.
|
virtual void | onCommand (const Pointer< Command > command) |
| Event handler for the receipt of a command.
|
virtual void | onException (const decaf::lang::Exception &ex) |
| Event handler for an exception from a command transport.
|
virtual void | transportInterrupted () |
| The transport has suffered an interruption from which it hopes to recover.
|
virtual void | transportResumed () |
| The transport has resumed after an interruption.
|
virtual void | oneway (const Pointer< Command > command) |
| Sends a one-way command.
|
virtual Pointer< FutureResponse > | asyncRequest (const Pointer< Command > command, const Pointer< ResponseCallback > responseCallback) |
| Sends a commands asynchronously, returning a FutureResponse object that the caller can use to check to find out the response from the broker.
|
virtual Pointer< Response > | request (const Pointer< Command > command) |
| Sends the given command to the broker and then waits for the response.
|
virtual Pointer< Response > | request (const Pointer< Command > command, unsigned int timeout) |
| Sends the given command to the broker and then waits for the response.
|
virtual void | setTransportListener (TransportListener *listener) |
| Sets the observer of asynchronous events from this transport.
|
virtual TransportListener * | getTransportListener () const |
| Gets the observer of asynchronous events from this transport.
|
virtual Pointer
< wireformat::WireFormat > | getWireFormat () const |
| Gets the WireFormat instance that is in use by this transport.
|
virtual void | setWireFormat (const Pointer< wireformat::WireFormat > wireFormat) |
| Sets the WireFormat instance to use.
|
virtual Transport * | narrow (const std::type_info &typeId) |
| Narrows down a Chain of Transports to a specific Transport to allow a higher level transport to skip intermediate Transports in certain circumstances.
|
virtual bool | isReconnectSupported () const |
virtual bool | isUpdateURIsSupported () const |
virtual bool | isClosed () const |
| Has the Transport been shutdown and no longer usable.
|
virtual std::string | getRemoteAddress () const |
virtual void | reconnect (const decaf::net::URI &uri) |
| reconnect to another location
|
virtual void | updateURIs (bool rebalance, const decaf::util::List< decaf::net::URI > &uris) |
| Updates the set of URIs the Transport can connect to.
|
virtual | ~Transport () |
virtual | ~Closeable () |
virtual | ~TransportListener () |
Protected Member Functions |
virtual decaf::net::Socket * | createSocket () |
| Create an unconnected Socket instance to be used by the transport to communicate with the broker.- Returns
- a newly created unconnected Socket instance.
- Exceptions
-
IOException | if there is an error while creating the unconnected Socket. |
|
virtual void | configureSocket (decaf::net::Socket *socket) |
| Using options from configuration URI, configure the socket options before the Socket instance is connected to the Server.Subclasses can override this option to set more configuration options, they should called the base class version to allow the default set of Socket options to also be configured.- Parameters
-
socket | The Socket instance to configure using options from the given Properties. |
- Exceptions
-
NullPointerException | if the Socket instance is null. |
IllegalArgumentException | if the socket instance is not handled by the class. |
SocketException | if there is an error while setting one of the Socket options. |
|
virtual void | beforeNextIsStarted () |
| Subclasses can override this method to do their own startup work.
|
virtual void | afterNextIsStopped () |
| Subclasses can override this method to do their own stop work.
|
virtual void | doClose () |
| Subclasses can override this method to do their own close work.
|
void | connect () |
| Creates a Socket and configures it before attempting to connect to the location specified by the URI passed in.
|
void | checkClosed () const |
| Throws an IOException if this filter chain has already been closed.
|
virtual void | afterNextIsStarted () |
| Subclasses can override this method to do their own post startup work.
|
virtual void | beforeNextIsStopped () |
| Subclasses can override this method to do their own pre-stop work.
|
Transport for connecting to a Broker using an SSL Socket.
This transport simply wraps the TcpTransport and provides the TcpTransport an SSL based Socket pointer allowing the core TcpTransport logic to be reused.
- Since
- 3.2.0