public abstract class AbstractStompSessionManager extends Object implements StompSessionManager, ApplicationEventPublisherAware, InitializingBean, DisposableBean, BeanNameAware
StompSessionManager implementation to manage a single StompSession
over its ListenableFuture from the target implementation of this class.
The connection to the StompSession is made during afterPropertiesSet().
The destroy() lifecycle method manages StompSession.disconnect().
The connect(StompSessionHandler) and disconnect(StompSessionHandler) method
implementations populate/remove the provided StompSessionHandler to/from an internal
AbstractStompSessionManager.CompositeStompSessionHandler, which delegates all operations
to the provided StompSessionHandlers.
This AbstractStompSessionManager.CompositeStompSessionHandler is used for the
StompSession connection.
| Modifier and Type | Field and Description |
|---|---|
protected org.apache.commons.logging.Log |
logger |
protected StompClientSupport |
stompClient |
| Constructor and Description |
|---|
AbstractStompSessionManager(StompClientSupport stompClient) |
| Modifier and Type | Method and Description |
|---|---|
void |
afterPropertiesSet() |
void |
connect(StompSessionHandler handler) |
void |
destroy() |
void |
disconnect(StompSessionHandler handler) |
protected abstract ListenableFuture<StompSession> |
doConnect(StompSessionHandler handler) |
protected StompHeaders |
getConnectHeaders() |
boolean |
isAutoReceiptEnabled() |
boolean |
isConnected() |
void |
setApplicationEventPublisher(ApplicationEventPublisher applicationEventPublisher) |
void |
setAutoReceipt(boolean autoReceipt) |
void |
setBeanName(String name) |
void |
setConnectHeaders(StompHeaders connectHeaders) |
String |
toString() |
protected final org.apache.commons.logging.Log logger
protected final StompClientSupport stompClient
public AbstractStompSessionManager(StompClientSupport stompClient)
public void setConnectHeaders(StompHeaders connectHeaders)
public void setAutoReceipt(boolean autoReceipt)
public boolean isAutoReceiptEnabled()
isAutoReceiptEnabled in interface StompSessionManagerpublic boolean isConnected()
isConnected in interface StompSessionManagerpublic void setApplicationEventPublisher(ApplicationEventPublisher applicationEventPublisher)
setApplicationEventPublisher in interface ApplicationEventPublisherAwarepublic void setBeanName(String name)
setBeanName in interface BeanNameAwarepublic void afterPropertiesSet()
throws Exception
afterPropertiesSet in interface InitializingBeanExceptionpublic void destroy()
throws Exception
destroy in interface DisposableBeanExceptionpublic void connect(StompSessionHandler handler)
connect in interface StompSessionManagerpublic void disconnect(StompSessionHandler handler)
disconnect in interface StompSessionManagerprotected StompHeaders getConnectHeaders()
protected abstract ListenableFuture<StompSession> doConnect(StompSessionHandler handler)