Interface Handshaker
- All Known Implementing Classes:
AbstractHandshaker
,HandshakerSelector
,RFC6455Handshaker
,RFC8441Handshaker
-
Method Summary
Modifier and TypeMethodDescriptionboolean
isWebSocketUpgradeRequest
(Request request) A preliminary check to see if a request is likely to be a valid WebSocket Upgrade Request.static Handshaker
boolean
upgradeRequest
(WebSocketNegotiator negotiator, Request request, Response response, Callback callback, WebSocketComponents components, Configuration.Customizer defaultCustomizer) Attempts to upgrade a request to WebSocket.
-
Method Details
-
newInstance
-
isWebSocketUpgradeRequest
A preliminary check to see if a request is likely to be a valid WebSocket Upgrade Request. If this returns true the
Request
may be a valid upgrade request, but if this returns false returns false you can avoid callingupgradeRequest(WebSocketNegotiator, Request, Response, Callback, WebSocketComponents, Configuration.Customizer)
entirely as it will always fail- Parameters:
request
- the request- Returns:
- true if the request is thought to be a valid websocket upgrade request.
-
upgradeRequest
boolean upgradeRequest(WebSocketNegotiator negotiator, Request request, Response response, Callback callback, WebSocketComponents components, Configuration.Customizer defaultCustomizer) throws WebSocketException Attempts to upgrade a request to WebSocket.
Returns
true
if the WebSocket upgrade is successful and a successful response is generated and the callback eventually completed, or if the WebSocket upgrade failed and a failure response is generated and the callback eventually completed. Returnsfalse
if a response is not generated and the caller is responsible for generating a response and completing the callback.- Parameters:
negotiator
- the negotiatorrequest
- the requestresponse
- the responsecallback
- the callbackcomponents
- the WebSocket componentsdefaultCustomizer
- the customizer- Returns:
- true if a response was generated, false if a response is not generated
- Throws:
WebSocketException
- there is an error during the upgrade
-