Interface RequestUpgradeStrategy
- All Known Implementing Classes:
AbstractStandardUpgradeStrategy
,AbstractTyrusRequestUpgradeStrategy
,GlassFishRequestUpgradeStrategy
,JettyRequestUpgradeStrategy
,StandardWebSocketUpgradeStrategy
,TomcatRequestUpgradeStrategy
,UndertowRequestUpgradeStrategy
,WebLogicRequestUpgradeStrategy
,WebSphereRequestUpgradeStrategy
public interface RequestUpgradeStrategy
A server-specific strategy for performing the actual upgrade to a WebSocket exchange.
- Since:
- 4.0
- Author:
- Rossen Stoyanchev
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptiongetSupportedExtensions
(ServerHttpRequest request) Return the WebSocket protocol extensions supported by the underlying WebSocket server.String[]
Return the supported WebSocket protocol versions.void
upgrade
(ServerHttpRequest request, ServerHttpResponse response, String selectedProtocol, List<WebSocketExtension> selectedExtensions, Principal user, WebSocketHandler wsHandler, Map<String, Object> attributes) Perform runtime specific steps to complete the upgrade.
-
Method Details
-
getSupportedVersions
String[] getSupportedVersions()Return the supported WebSocket protocol versions. -
getSupportedExtensions
Return the WebSocket protocol extensions supported by the underlying WebSocket server. -
upgrade
void upgrade(ServerHttpRequest request, ServerHttpResponse response, @Nullable String selectedProtocol, List<WebSocketExtension> selectedExtensions, @Nullable Principal user, WebSocketHandler wsHandler, Map<String, Object> attributes) throws HandshakeFailureExceptionPerform runtime specific steps to complete the upgrade. Invoked after successful negotiation of the handshake request.- Parameters:
request
- the current requestresponse
- the current responseselectedProtocol
- the selected sub-protocol, if anyselectedExtensions
- the selected WebSocket protocol extensionsuser
- the user to associate with the WebSocket sessionwsHandler
- the handler for WebSocket messagesattributes
- handshake request specific attributes to be set on the WebSocket session viaHandshakeInterceptor
and thus made available to theWebSocketHandler
- Throws:
HandshakeFailureException
- thrown when handshake processing failed to complete due to an internal, unrecoverable error, i.e. a server error as opposed to a failure to successfully negotiate the requirements of the handshake request.
-