public abstract class AbstractWebSocketHandlerRegistration<M> extends Object implements WebSocketHandlerRegistration
WebSocketHandlerRegistration
s that gathers all the configuration
options but allows sub-classes to put together the actual HTTP request mappings.Constructor and Description |
---|
AbstractWebSocketHandlerRegistration() |
AbstractWebSocketHandlerRegistration(TaskScheduler defaultTaskScheduler)
Deprecated.
as of 5.0 a TaskScheduler is not provided upfront, not until
it is obvious that it is needed, see
getSockJsServiceRegistration() . |
Modifier and Type | Method and Description |
---|---|
WebSocketHandlerRegistration |
addHandler(WebSocketHandler handler,
String... paths)
Add more handlers that will share the same configuration (interceptors, SockJS
config, etc)
|
WebSocketHandlerRegistration |
addInterceptors(HandshakeInterceptor... interceptors)
Configure interceptors for the handshake request.
|
protected abstract void |
addSockJsServiceMapping(M mappings,
SockJsService sockJsService,
WebSocketHandler handler,
String pathPattern) |
protected abstract void |
addWebSocketHandlerMapping(M mappings,
WebSocketHandler wsHandler,
HandshakeHandler handshakeHandler,
HandshakeInterceptor[] interceptors,
String path) |
protected abstract M |
createMappings() |
protected HandshakeHandler |
getHandshakeHandler() |
protected HandshakeInterceptor[] |
getInterceptors() |
protected M |
getMappings() |
protected SockJsServiceRegistration |
getSockJsServiceRegistration()
Expose the
SockJsServiceRegistration -- if SockJS is enabled or
null otherwise -- so that it can be configured with a TaskScheduler
if the application did not provide one. |
WebSocketHandlerRegistration |
setAllowedOrigins(String... allowedOrigins)
Configure allowed
Origin header values. |
WebSocketHandlerRegistration |
setHandshakeHandler(HandshakeHandler handshakeHandler)
Configure the HandshakeHandler to use.
|
SockJsServiceRegistration |
withSockJS()
Enable SockJS fallback options.
|
public AbstractWebSocketHandlerRegistration()
@Deprecated public AbstractWebSocketHandlerRegistration(TaskScheduler defaultTaskScheduler)
getSockJsServiceRegistration()
.public WebSocketHandlerRegistration addHandler(WebSocketHandler handler, String... paths)
WebSocketHandlerRegistration
addHandler
in interface WebSocketHandlerRegistration
public WebSocketHandlerRegistration setHandshakeHandler(@Nullable HandshakeHandler handshakeHandler)
WebSocketHandlerRegistration
setHandshakeHandler
in interface WebSocketHandlerRegistration
@Nullable protected HandshakeHandler getHandshakeHandler()
public WebSocketHandlerRegistration addInterceptors(HandshakeInterceptor... interceptors)
WebSocketHandlerRegistration
addInterceptors
in interface WebSocketHandlerRegistration
public WebSocketHandlerRegistration setAllowedOrigins(String... allowedOrigins)
WebSocketHandlerRegistration
Origin
header values. This check is mostly designed for
browser clients. There is nothing preventing other types of client to modify the
Origin
header value.
When SockJS is enabled and origins are restricted, transport types that do not allow to check request origin (JSONP and Iframe based transports) are disabled. As a consequence, IE 6 to 9 are not supported when origins are restricted.
Each provided allowed origin must start by "http://", "https://" or be "*" (means that all origins are allowed). By default, only same origin requests are allowed (empty list).
setAllowedOrigins
in interface WebSocketHandlerRegistration
public SockJsServiceRegistration withSockJS()
WebSocketHandlerRegistration
withSockJS
in interface WebSocketHandlerRegistration
protected HandshakeInterceptor[] getInterceptors()
@Nullable protected SockJsServiceRegistration getSockJsServiceRegistration()
SockJsServiceRegistration
-- if SockJS is enabled or
null
otherwise -- so that it can be configured with a TaskScheduler
if the application did not provide one. This should be done prior to
calling getMappings()
.protected final M getMappings()
protected abstract M createMappings()
protected abstract void addSockJsServiceMapping(M mappings, SockJsService sockJsService, WebSocketHandler handler, String pathPattern)
protected abstract void addWebSocketHandlerMapping(M mappings, WebSocketHandler wsHandler, HandshakeHandler handshakeHandler, HandshakeInterceptor[] interceptors, String path)