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 StompSessionHandler
s.
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 StompSessionManager
public boolean isConnected()
isConnected
in interface StompSessionManager
public void setApplicationEventPublisher(ApplicationEventPublisher applicationEventPublisher)
setApplicationEventPublisher
in interface ApplicationEventPublisherAware
public void setBeanName(String name)
setBeanName
in interface BeanNameAware
public void afterPropertiesSet() throws Exception
afterPropertiesSet
in interface InitializingBean
Exception
public void destroy() throws Exception
destroy
in interface DisposableBean
Exception
public void connect(StompSessionHandler handler)
connect
in interface StompSessionManager
public void disconnect(StompSessionHandler handler)
disconnect
in interface StompSessionManager
protected StompHeaders getConnectHeaders()
protected abstract ListenableFuture<StompSession> doConnect(StompSessionHandler handler)