public abstract class StompClientSupport extends Object
Subclasses can connect over WebSocket or TCP using any library. When creating
 a new connection, a subclass can create an instance of DefaultStompSession
 which implements TcpConnectionHandler
 whose lifecycle methods the subclass must then invoke.
 
In effect, TcpConnectionHandler and TcpConnection are the
 contracts that any subclass must adapt to while using StompEncoder
 and StompDecoder to encode and decode STOMP messages.
| Constructor and Description | 
|---|
| StompClientSupport() | 
| Modifier and Type | Method and Description | 
|---|---|
| protected ConnectionHandlingStompSession | createSession(StompHeaders connectHeaders,
             StompSessionHandler handler)Factory method for create and configure a new session. | 
| long[] | getDefaultHeartbeat()Return the configured default heart-beat value (never  null). | 
| MessageConverter | getMessageConverter()Return the configured  MessageConverter. | 
| long | getReceiptTimeLimit()Return the configured receipt time limit. | 
| TaskScheduler | getTaskScheduler()The configured TaskScheduler. | 
| boolean | isDefaultHeartbeatEnabled()Determine whether heartbeats are enabled. | 
| protected StompHeaders | processConnectHeaders(StompHeaders connectHeaders)Further initialize the StompHeaders, for example setting the heart-beat
 header if necessary. | 
| void | setDefaultHeartbeat(long[] heartbeat)Configure the default value for the "heart-beat" header of the STOMP
 CONNECT frame. | 
| void | setMessageConverter(MessageConverter messageConverter)Set the  MessageConverterto use to convert the payload of incoming
 and outgoing messages to and frombyte[]based on object type
 and the "content-type" header. | 
| void | setReceiptTimeLimit(long receiptTimeLimit)Configure the number of milliseconds before a receipt is considered expired. | 
| void | setTaskScheduler(TaskScheduler taskScheduler)Configure a scheduler to use for heartbeats and for receipt tracking. | 
public void setMessageConverter(MessageConverter messageConverter)
MessageConverter to use to convert the payload of incoming
 and outgoing messages to and from byte[] based on object type
 and the "content-type" header.
 By default, SimpleMessageConverter is configured.
messageConverter - the message converter to usepublic MessageConverter getMessageConverter()
MessageConverter.public void setTaskScheduler(@Nullable TaskScheduler taskScheduler)
Note: Some transports have built-in support to work with heartbeats and therefore do not require a TaskScheduler. Receipts however, if needed, do require a TaskScheduler to be configured.
By default, this is not set.
@Nullable public TaskScheduler getTaskScheduler()
public void setDefaultHeartbeat(long[] heartbeat)
By default this is set to "10000,10000" but subclasses may override that default and for example set it to "0,0" if they require a TaskScheduler to be configured first.
Note: that a heartbeat is sent only in case of
 inactivity, i.e. when no other messages are sent. This can present a
 challenge when using an external broker since messages with a non-broker
 destination represent activity but aren't actually forwarded to the broker.
 In that case you can configure a `TaskScheduler` through the
 StompBrokerRelayRegistration
 which ensures a heartbeat is forwarded to the broker also when only
 messages with a non-broker destination are sent.
heartbeat - the value for the CONNECT "heart-beat" headerpublic long[] getDefaultHeartbeat()
null).public boolean isDefaultHeartbeatEnabled()
Returns false if defaultHeartbeat
 is set to "0,0", and true otherwise.
public void setReceiptTimeLimit(long receiptTimeLimit)
By default set to 15,000 (15 seconds).
public long getReceiptTimeLimit()
protected ConnectionHandlingStompSession createSession(@Nullable StompHeaders connectHeaders, StompSessionHandler handler)
connectHeaders - headers for the STOMP CONNECT framehandler - the handler for the STOMP sessionprotected StompHeaders processConnectHeaders(@Nullable StompHeaders connectHeaders)
connectHeaders - the headers to modify