public class WebSocketHandlerAdapter extends Object implements HandlerAdapter
HandlerAdapter
that allows using a WebSocketHandler
with the
generic DispatcherHandler
mapping URLs directly to such handlers.
Requests are handled by delegating to the configured WebSocketService
which by default is HandshakeWebSocketService
.Constructor and Description |
---|
WebSocketHandlerAdapter()
Default constructor that creates and uses a
HandshakeWebSocketService . |
WebSocketHandlerAdapter(WebSocketService webSocketService)
Alternative constructor with the
WebSocketService to use. |
Modifier and Type | Method and Description |
---|---|
WebSocketService |
getWebSocketService()
Return the configured
WebSocketService to handle requests. |
reactor.core.publisher.Mono<HandlerResult> |
handle(ServerWebExchange exchange,
Object handler)
Handle the request with the given handler.
|
boolean |
supports(Object handler)
Whether this
HandlerAdapter supports the given handler . |
public WebSocketHandlerAdapter()
HandshakeWebSocketService
.public WebSocketHandlerAdapter(WebSocketService webSocketService)
WebSocketService
to use.public WebSocketService getWebSocketService()
WebSocketService
to handle requests.public boolean supports(Object handler)
HandlerAdapter
HandlerAdapter
supports the given handler
.supports
in interface HandlerAdapter
handler
- the handler object to checkpublic reactor.core.publisher.Mono<HandlerResult> handle(ServerWebExchange exchange, Object handler)
HandlerAdapter
Implementations are encouraged to handle exceptions resulting from the invocation of a handler in order and if necessary to return an alternate result that represents an error response.
Furthermore since an async HandlerResult
may produce an error
later during result handling implementations are also encouraged to
set an exception
handler
on the HandlerResult
so that may also be applied later
after result handling.
handle
in interface HandlerAdapter
exchange
- current server exchangehandler
- the selected handler which must have been previously
checked via HandlerAdapter.supports(Object)
Mono
that emits a single HandlerResult
or none if
the request has been fully handled and doesn't require further handling.