public class DefaultSockJsService extends AbstractSockJsService
SockJsService adding support for transport handling
and session management. See AbstractSockJsService base class for important
details on request mapping.logger| Constructor and Description |
|---|
DefaultSockJsService(TaskScheduler taskScheduler)
Create an instance with default
transport handler types. |
DefaultSockJsService(TaskScheduler taskScheduler,
Set<TransportHandler> transportHandlers,
TransportHandler... transportHandlerOverrides)
Create an instance by overriding or replacing completely the default
transport handler types. |
| Modifier and Type | Method and Description |
|---|---|
protected void |
addTransportHandlers(Collection<TransportHandler> handlers) |
protected Set<TransportHandler> |
getDefaultTransportHandlers() |
protected AbstractSockJsSession |
getSockJsSession(String sessionId,
WebSocketHandler handler,
TransportHandler transportHandler,
ServerHttpRequest request,
ServerHttpResponse response) |
Map<TransportType,TransportHandler> |
getTransportHandlers() |
protected void |
handleRawWebSocketRequest(ServerHttpRequest request,
ServerHttpResponse response,
WebSocketHandler webSocketHandler) |
protected void |
handleTransportRequest(ServerHttpRequest request,
ServerHttpResponse response,
String sessionId,
TransportType transportType,
WebSocketHandler webSocketHandler) |
addCacheHeaders, addCorsHeaders, addNoCacheHeaders, getDisconnectDelay, getHeartbeatTime, getName, getSockJsClientLibraryUrl, getStreamBytesLimit, getTaskScheduler, handleRequest, isJsessionIdCookieRequired, isWebSocketEnabled, sendMethodNotAllowed, setDisconnectDelay, setHeartbeatTime, setJsessionIdCookieRequired, setName, setSockJsClientLibraryUrl, setStreamBytesLimit, setValidSockJsPrefixes, setWebSocketsEnabled, validateRequestpublic DefaultSockJsService(TaskScheduler taskScheduler)
transport handler types.taskScheduler - a task scheduler for heart-beat messages and removing
timed-out sessions; the provided TaskScheduler should be declared as a
Spring bean to ensure it is initialized at start up and shut down when the
application stops.public DefaultSockJsService(TaskScheduler taskScheduler, Set<TransportHandler> transportHandlers, TransportHandler... transportHandlerOverrides)
transport handler types.taskScheduler - a task scheduler for heart-beat messages and removing
timed-out sessions; the provided TaskScheduler should be declared as a
Spring bean to ensure it is initialized at start up and shut down when the
application stops.transportHandlers - the transport handlers to use (replaces the default ones);
can be null.transportHandlerOverrides - zero or more overrides to the default transport
handler types.protected final Set<TransportHandler> getDefaultTransportHandlers()
protected void addTransportHandlers(Collection<TransportHandler> handlers)
public Map<TransportType,TransportHandler> getTransportHandlers()
protected void handleRawWebSocketRequest(ServerHttpRequest request, ServerHttpResponse response, WebSocketHandler webSocketHandler) throws IOException
handleRawWebSocketRequest in class AbstractSockJsServiceIOExceptionprotected void handleTransportRequest(ServerHttpRequest request, ServerHttpResponse response, String sessionId, TransportType transportType, WebSocketHandler webSocketHandler) throws IOException, TransportErrorException
handleTransportRequest in class AbstractSockJsServiceIOExceptionTransportErrorExceptionprotected AbstractSockJsSession getSockJsSession(String sessionId, WebSocketHandler handler, TransportHandler transportHandler, ServerHttpRequest request, ServerHttpResponse response)