Package org.springframework.web.socket

Examples of org.springframework.web.socket.WebSocketHttpHeaders


    WebSocketConnectionManager manager = new WebSocketConnectionManager(client, handler , "/path/{id}", "123");
    manager.setSubProtocols(subprotocols);
    manager.openConnection();

    WebSocketHttpHeaders expectedHeaders = new WebSocketHttpHeaders();
    expectedHeaders.setSecWebSocketProtocol(subprotocols);

    assertEquals(expectedHeaders, client.headers);
    assertEquals(new URI("/path/123"), client.uri);

    WebSocketHandlerDecorator loggingHandler = (WebSocketHandlerDecorator) client.webSocketHandler;
View Full Code Here


  private WebSocketHttpHeaders headers;


  @Before
  public void setup() {
    this.headers = new WebSocketHttpHeaders();
    this.wsHandler = new AbstractWebSocketHandler() {
    };
    this.wsContainer = mock(WebSocketContainer.class);
    this.wsClient = new StandardWebSocketClient(this.wsContainer);
  }
View Full Code Here

    given(this.upgradeStrategy.getSupportedVersions()).willReturn(new String[] {"13"});

    this.servletRequest.setMethod("GET");

    WebSocketHttpHeaders headers = new WebSocketHttpHeaders(this.request.getHeaders());
    headers.setUpgrade("WebSocket");
    headers.setConnection("Upgrade");
    headers.setSecWebSocketVersion("13");
    headers.setSecWebSocketKey("82/ZS2YHjEnUN97HLL8tbw==");
    headers.setSecWebSocketProtocol("STOMP");

    WebSocketHandler handler = new TextWebSocketHandler();
    Map<String, Object> attributes = Collections.<String, Object>emptyMap();
    this.handshakeHandler.doHandshake(this.request, this.response, handler, attributes);
View Full Code Here

    given(this.upgradeStrategy.getSupportedVersions()).willReturn(new String[] {"13"});
    given(this.upgradeStrategy.getSupportedExtensions(this.request)).willReturn(Arrays.asList(extension1));

    this.servletRequest.setMethod("GET");

    WebSocketHttpHeaders headers = new WebSocketHttpHeaders(this.request.getHeaders());
    headers.setUpgrade("WebSocket");
    headers.setConnection("Upgrade");
    headers.setSecWebSocketVersion("13");
    headers.setSecWebSocketKey("82/ZS2YHjEnUN97HLL8tbw==");
    headers.setSecWebSocketExtensions(Arrays.asList(extension1, extension2));

    WebSocketHandler handler = new TextWebSocketHandler();
    Map<String, Object> attributes = Collections.<String, Object>emptyMap();
    this.handshakeHandler.doHandshake(this.request, this.response, handler, attributes);
View Full Code Here

    given(this.upgradeStrategy.getSupportedVersions()).willReturn(new String[]{"13"});

    this.servletRequest.setMethod("GET");

    WebSocketHttpHeaders headers = new WebSocketHttpHeaders(this.request.getHeaders());
    headers.setUpgrade("WebSocket");
    headers.setConnection("Upgrade");
    headers.setSecWebSocketVersion("13");
    headers.setSecWebSocketKey("82/ZS2YHjEnUN97HLL8tbw==");
    headers.setSecWebSocketProtocol("v11.stomp");

    WebSocketHandler handler = new SubProtocolCapableHandler("v12.stomp", "v11.stomp");
    Map<String, Object> attributes = Collections.<String, Object>emptyMap();
    this.handshakeHandler.doHandshake(this.request, this.response, handler, attributes);
View Full Code Here

    given(this.upgradeStrategy.getSupportedVersions()).willReturn(new String[]{"13"});

    this.servletRequest.setMethod("GET");

    WebSocketHttpHeaders headers = new WebSocketHttpHeaders(this.request.getHeaders());
    headers.setUpgrade("WebSocket");
    headers.setConnection("Upgrade");
    headers.setSecWebSocketVersion("13");
    headers.setSecWebSocketKey("82/ZS2YHjEnUN97HLL8tbw==");
    headers.setSecWebSocketProtocol("v10.stomp");

    WebSocketHandler handler = new SubProtocolCapableHandler("v12.stomp", "v11.stomp");
    Map<String, Object> attributes = Collections.<String, Object>emptyMap();
    this.handshakeHandler.doHandshake(this.request, this.response, handler, attributes);
View Full Code Here

    WebSocketClientSockJsSession session = new WebSocketClientSockJsSession(request, handler, future);
    handler = new ClientSockJsWebSocketHandler(session);
    request.addTimeoutTask(session.getTimeoutTask());

    URI url = request.getTransportUrl();
    WebSocketHttpHeaders headers = new WebSocketHttpHeaders(request.getHandshakeHeaders());
    if (logger.isDebugEnabled()) {
      logger.debug("Starting WebSocket session url=" + url);
    }
    this.webSocketClient.doHandshake(handler, headers, url).addCallback(
        new ListenableFutureCallback<WebSocketSession>() {
View Full Code Here

  private WebSocketHttpHeaders headers;

  @Before
  public void setUp() {
    headers = new WebSocketHttpHeaders();
  }
View Full Code Here

  @Override
  public final boolean doHandshake(ServerHttpRequest request, ServerHttpResponse response,
      WebSocketHandler wsHandler, Map<String, Object> attributes) throws HandshakeFailureException {

    WebSocketHttpHeaders headers = new WebSocketHttpHeaders(request.getHeaders());
    if (logger.isTraceEnabled()) {
      logger.trace("Processing request " + request.getURI() + " with headers=" + headers);
    }
    try {
      if (!HttpMethod.GET.equals(request.getMethod())) {
        response.setStatusCode(HttpStatus.METHOD_NOT_ALLOWED);
        response.getHeaders().setAllow(Collections.singleton(HttpMethod.GET));
        if (logger.isErrorEnabled()) {
          logger.error("Handshake failed due to unexpected HTTP method: " + request.getMethod());
        }
        return false;
      }
      if (!"WebSocket".equalsIgnoreCase(headers.getUpgrade())) {
        handleInvalidUpgradeHeader(request, response);
        return false;
      }
      if (!headers.getConnection().contains("Upgrade") && !headers.getConnection().contains("upgrade")) {
        handleInvalidConnectHeader(request, response);
        return false;
      }
      if (!isWebSocketVersionSupported(headers)) {
        handleWebSocketVersionNotSupported(request, response);
        return false;
      }
      if (!isValidOrigin(request)) {
        response.setStatusCode(HttpStatus.FORBIDDEN);
        return false;
      }
      String wsKey = headers.getSecWebSocketKey();
      if (wsKey == null) {
        if (logger.isErrorEnabled()) {
          logger.error("Missing \"Sec-WebSocket-Key\" header");
        }
        response.setStatusCode(HttpStatus.BAD_REQUEST);
        return false;
      }
    }
    catch (IOException ex) {
      throw new HandshakeFailureException(
          "Response update failed during upgrade to WebSocket, uri=" + request.getURI(), ex);
    }

    String subProtocol = selectProtocol(headers.getSecWebSocketProtocol(), wsHandler);
    List<WebSocketExtension> requested = headers.getSecWebSocketExtensions();
    List<WebSocketExtension> supported = this.requestUpgradeStrategy.getSupportedExtensions(request);
    List<WebSocketExtension> extensions = filterRequestedExtensions(request, requested, supported);
    Principal user = determineUser(request, wsHandler, attributes);

    if (logger.isTraceEnabled()) {
View Full Code Here


  @Test
  public void doHandshake() throws Exception {

    WebSocketHttpHeaders headers = new WebSocketHttpHeaders();
    headers.setSecWebSocketProtocol(Arrays.asList("echo"));

    this.wsSession = this.client.doHandshake(new TextWebSocketHandler(), headers, new URI(this.wsUrl)).get();

    assertEquals(this.wsUrl, this.wsSession.getUri().toString());
    assertEquals("echo", this.wsSession.getAcceptedProtocol());
View Full Code Here

TOP

Related Classes of org.springframework.web.socket.WebSocketHttpHeaders

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.