org.springframework.web.socket.handler.WebSocketHandlerDecorator类的使用及代码示例

x33g5p2x  于2022-02-03 转载在 其他  
字(7.5k)|赞(0)|评价(0)|浏览(317)

本文整理了Java中org.springframework.web.socket.handler.WebSocketHandlerDecorator类的一些代码示例,展示了WebSocketHandlerDecorator类的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。WebSocketHandlerDecorator类的具体详情如下:
包路径:org.springframework.web.socket.handler.WebSocketHandlerDecorator
类名称:WebSocketHandlerDecorator

WebSocketHandlerDecorator介绍

[英]Wraps another org.springframework.web.socket.WebSocketHandlerinstance and delegates to it.

Also provides a #getDelegate() method to return the decorated handler as well as a #getLastHandler() method to go through all nested delegates and return the "last" handler.
[中]包装另一个组织。springframework。网状物插座WebSocketHandlerinstance及其委托人。
还提供了一个#getDelegate()方法来返回修饰的处理程序,以及一个#getLastHandler()方法来遍历所有嵌套的委托并返回“最后一个”处理程序。

代码示例

代码示例来源:origin: spring-projects/spring-framework

  1. @Override
  2. public void afterConnectionEstablished(WebSocketSession session) throws Exception {
  3. if (logger.isDebugEnabled()) {
  4. logger.debug("New " + session);
  5. }
  6. super.afterConnectionEstablished(session);
  7. }

代码示例来源:origin: spring-projects/spring-framework

  1. @Override
  2. public void afterConnectionClosed(WebSocketSession session, CloseStatus closeStatus) throws Exception {
  3. if (logger.isDebugEnabled()) {
  4. logger.debug(session + " closed with " + closeStatus);
  5. }
  6. super.afterConnectionClosed(session, closeStatus);
  7. }

代码示例来源:origin: spring-projects/spring-framework

  1. @Override
  2. public void handleMessage(WebSocketSession session, WebSocketMessage<?> message) throws Exception {
  3. if (logger.isTraceEnabled()) {
  4. logger.trace("Handling " + message + " in " + session);
  5. }
  6. super.handleMessage(session, message);
  7. }

代码示例来源:origin: spring-projects/spring-framework

  1. @Test
  2. public void getLastHandler() {
  3. AbstractWebSocketHandler h1 = new AbstractWebSocketHandler() {
  4. };
  5. WebSocketHandlerDecorator h2 = new WebSocketHandlerDecorator(h1);
  6. WebSocketHandlerDecorator h3 = new WebSocketHandlerDecorator(h2);
  7. assertSame(h1, h3.getLastHandler());
  8. }

代码示例来源:origin: spring-projects/spring-framework

  1. private static SubProtocolWebSocketHandler unwrapSubProtocolWebSocketHandler(WebSocketHandler handler) {
  2. WebSocketHandler actual = WebSocketHandlerDecorator.unwrap(handler);
  3. if (!(actual instanceof SubProtocolWebSocketHandler)) {
  4. throw new IllegalArgumentException("No SubProtocolWebSocketHandler in " + handler);
  5. }
  6. return (SubProtocolWebSocketHandler) actual;
  7. }

代码示例来源:origin: spring-projects/spring-framework

  1. public static WebSocketHandler unwrap(WebSocketHandler handler) {
  2. if (handler instanceof WebSocketHandlerDecorator) {
  3. return ((WebSocketHandlerDecorator) handler).getLastHandler();
  4. }
  5. else {
  6. return handler;
  7. }
  8. }

代码示例来源:origin: spring-projects/spring-framework

  1. public WebSocketHandler getLastHandler() {
  2. WebSocketHandler result = this.delegate;
  3. while (result instanceof WebSocketHandlerDecorator) {
  4. result = ((WebSocketHandlerDecorator) result).getDelegate();
  5. }
  6. return result;
  7. }

代码示例来源:origin: spring-projects/spring-framework

  1. @Override
  2. public void handleTransportError(WebSocketSession session, Throwable exception) throws Exception {
  3. if (logger.isDebugEnabled()) {
  4. logger.debug("Transport error in " + session, exception);
  5. }
  6. super.handleTransportError(session, exception);
  7. }

代码示例来源:origin: spring-projects/spring-framework

  1. public SockJsWebSocketHandler(SockJsServiceConfig serviceConfig, WebSocketHandler webSocketHandler,
  2. WebSocketServerSockJsSession sockJsSession) {
  3. Assert.notNull(serviceConfig, "serviceConfig must not be null");
  4. Assert.notNull(webSocketHandler, "webSocketHandler must not be null");
  5. Assert.notNull(sockJsSession, "session must not be null");
  6. this.sockJsServiceConfig = serviceConfig;
  7. this.sockJsSession = sockJsSession;
  8. webSocketHandler = WebSocketHandlerDecorator.unwrap(webSocketHandler);
  9. this.subProtocols = ((webSocketHandler instanceof SubProtocolCapable) ?
  10. new ArrayList<>(((SubProtocolCapable) webSocketHandler).getSubProtocols()) : Collections.emptyList());
  11. }

代码示例来源:origin: spring-projects/spring-framework

  1. private WebSocketHandler unwrapWebSocketHandler(WebSocketHandler handler) {
  2. return (handler instanceof WebSocketHandlerDecorator) ?
  3. ((WebSocketHandlerDecorator) handler).getLastHandler() : handler;
  4. }

代码示例来源:origin: spring-projects/spring-framework

  1. @Test
  2. public void openConnection() throws Exception {
  3. List<String> subprotocols = Arrays.asList("abc");
  4. TestLifecycleWebSocketClient client = new TestLifecycleWebSocketClient(false);
  5. WebSocketHandler handler = new TextWebSocketHandler();
  6. WebSocketConnectionManager manager = new WebSocketConnectionManager(client, handler , "/path/{id}", "123");
  7. manager.setSubProtocols(subprotocols);
  8. manager.openConnection();
  9. WebSocketHttpHeaders expectedHeaders = new WebSocketHttpHeaders();
  10. expectedHeaders.setSecWebSocketProtocol(subprotocols);
  11. assertEquals(expectedHeaders, client.headers);
  12. assertEquals(new URI("/path/123"), client.uri);
  13. WebSocketHandlerDecorator loggingHandler = (WebSocketHandlerDecorator) client.webSocketHandler;
  14. assertEquals(LoggingWebSocketHandlerDecorator.class, loggingHandler.getClass());
  15. assertSame(handler, loggingHandler.getDelegate());
  16. }

代码示例来源:origin: org.springframework/spring-websocket

  1. @Override
  2. public void handleTransportError(WebSocketSession session, Throwable exception) throws Exception {
  3. if (logger.isDebugEnabled()) {
  4. logger.debug("Transport error in " + session, exception);
  5. }
  6. super.handleTransportError(session, exception);
  7. }

代码示例来源:origin: spring-projects/spring-framework

  1. @Override
  2. public void afterConnectionEstablished(WebSocketSession session) throws Exception {
  3. session.getAttributes().put("decorated", true);
  4. super.afterConnectionEstablished(session);
  5. }
  6. }

代码示例来源:origin: org.springframework/spring-websocket

  1. @Override
  2. public void afterConnectionClosed(WebSocketSession session, CloseStatus closeStatus) throws Exception {
  3. if (logger.isDebugEnabled()) {
  4. logger.debug(session + " closed with " + closeStatus);
  5. }
  6. super.afterConnectionClosed(session, closeStatus);
  7. }

代码示例来源:origin: spring-projects/spring-framework

  1. /**
  2. * Determine the sub-protocols supported by the given WebSocketHandler by
  3. * checking whether it is an instance of {@link SubProtocolCapable}.
  4. * @param handler the handler to check
  5. * @return a list of supported protocols, or an empty list if none available
  6. */
  7. protected final List<String> determineHandlerSupportedProtocols(WebSocketHandler handler) {
  8. WebSocketHandler handlerToCheck = WebSocketHandlerDecorator.unwrap(handler);
  9. List<String> subProtocols = null;
  10. if (handlerToCheck instanceof SubProtocolCapable) {
  11. subProtocols = ((SubProtocolCapable) handlerToCheck).getSubProtocols();
  12. }
  13. return (subProtocols != null ? subProtocols : Collections.emptyList());
  14. }

代码示例来源:origin: spring-projects/spring-integration

  1. @Override
  2. public void handleMessage(WebSocketSession session, WebSocketMessage<?> message) throws Exception {
  3. super.handleMessage(session, message);
  4. }

代码示例来源:origin: spring-projects/spring-framework

  1. private static void unwrapAndCheckDecoratedHandlerType(WebSocketHandler handler, Class<?> handlerClass) {
  2. if (handler instanceof WebSocketHandlerDecorator) {
  3. handler = ((WebSocketHandlerDecorator) handler).getLastHandler();
  4. }
  5. assertTrue(handlerClass.isInstance(handler));
  6. }
  7. }

代码示例来源:origin: org.springframework/spring-websocket

  1. public WebSocketHandler getLastHandler() {
  2. WebSocketHandler result = this.delegate;
  3. while (result instanceof WebSocketHandlerDecorator) {
  4. result = ((WebSocketHandlerDecorator) result).getDelegate();
  5. }
  6. return result;
  7. }

代码示例来源:origin: apache/servicemix-bundles

  1. @Override
  2. public void handleTransportError(WebSocketSession session, Throwable exception) throws Exception {
  3. if (logger.isDebugEnabled()) {
  4. logger.debug("Transport error in " + session, exception);
  5. }
  6. super.handleTransportError(session, exception);
  7. }

代码示例来源:origin: spring-projects/spring-session

  1. @Override
  2. public void afterConnectionEstablished(WebSocketSession wsSession)
  3. throws Exception {
  4. super.afterConnectionEstablished(wsSession);
  5. publishEvent(new SessionConnectEvent(this, wsSession));
  6. }

相关文章