Class AbstractStandardUpgradeStrategy

java.lang.Object
org.springframework.web.socket.server.standard.AbstractStandardUpgradeStrategy
All Implemented Interfaces:
RequestUpgradeStrategy
Direct Known Subclasses:
AbstractTyrusRequestUpgradeStrategy, StandardWebSocketUpgradeStrategy

public abstract class AbstractStandardUpgradeStrategy extends Object implements RequestUpgradeStrategy
A base class for RequestUpgradeStrategy implementations that build on the standard WebSocket API for Java (JSR-356).
Since:
4.0
Author:
Rossen Stoyanchev
  • Field Details

    • logger

      protected final org.apache.commons.logging.Log logger
  • Constructor Details

    • AbstractStandardUpgradeStrategy

      public AbstractStandardUpgradeStrategy()
  • Method Details

    • getContainer

      protected ServerContainer getContainer(HttpServletRequest request)
    • getHttpServletRequest

      protected final HttpServletRequest getHttpServletRequest(org.springframework.http.server.ServerHttpRequest request)
    • getHttpServletResponse

      protected final HttpServletResponse getHttpServletResponse(org.springframework.http.server.ServerHttpResponse response)
    • getSupportedExtensions

      public List<WebSocketExtension> getSupportedExtensions(org.springframework.http.server.ServerHttpRequest request)
      Description copied from interface: RequestUpgradeStrategy
      Return the WebSocket protocol extensions supported by the underlying WebSocket server.
      Specified by:
      getSupportedExtensions in interface RequestUpgradeStrategy
    • getInstalledExtensions

      protected List<WebSocketExtension> getInstalledExtensions(WebSocketContainer container)
    • upgrade

      public void upgrade(org.springframework.http.server.ServerHttpRequest request, org.springframework.http.server.ServerHttpResponse response, @Nullable String selectedProtocol, List<WebSocketExtension> selectedExtensions, @Nullable Principal user, WebSocketHandler wsHandler, Map<String,Object> attrs) throws HandshakeFailureException
      Description copied from interface: RequestUpgradeStrategy
      Perform runtime specific steps to complete the upgrade. Invoked after successful negotiation of the handshake request.
      Specified by:
      upgrade in interface RequestUpgradeStrategy
      Parameters:
      request - the current request
      response - the current response
      selectedProtocol - the selected sub-protocol, if any
      selectedExtensions - the selected WebSocket protocol extensions
      user - the user to associate with the WebSocket session
      wsHandler - the handler for WebSocket messages
      attrs - handshake request specific attributes to be set on the WebSocket session via HandshakeInterceptor and thus made available to the WebSocketHandler
      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.
    • upgradeInternal

      protected abstract void upgradeInternal(org.springframework.http.server.ServerHttpRequest request, org.springframework.http.server.ServerHttpResponse response, @Nullable String selectedProtocol, List<Extension> selectedExtensions, Endpoint endpoint) throws HandshakeFailureException
      Throws:
      HandshakeFailureException