@Test public void afterConnectionEstablished() throws Exception { @SuppressWarnings("resource") AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext(); context.refresh(); EchoHandler.reset(); PerConnectionWebSocketHandler handler = new PerConnectionWebSocketHandler(EchoHandler.class); handler.setBeanFactory(context.getBeanFactory()); WebSocketSession session = new TestWebSocketSession(); handler.afterConnectionEstablished(session); assertEquals(1, EchoHandler.initCount); assertEquals(0, EchoHandler.destroyCount); handler.afterConnectionClosed(session, CloseStatus.NORMAL); assertEquals(1, EchoHandler.initCount); assertEquals(1, EchoHandler.destroyCount); }
@Bean(autowire = Autowire.BY_TYPE) public WebSocketHandler subscriptionWebSocketHandler() { PerConnectionWebSocketHandler retVal = new PerConnectionWebSocketHandler(SubscriptionWebsocketHandler.class); return retVal; }
public WebSocketHandler perEchoWebSocketHandler() { return new PerConnectionWebSocketHandler(ChatWebSocketHandler.class); }
@Bean public WebSocketHandler myHandlerDecorator() { return new ExceptionWebSocketHandlerDecorator( new PerConnectionWebSocketHandler(MyHandler.class))); }
@Bean(autowire = Autowire.BY_TYPE) public WebSocketHandler subscriptionWebSocketHandler() { PerConnectionWebSocketHandler retVal = new PerConnectionWebSocketHandler(SubscriptionWebsocketHandler.class); return retVal; }
@Bean public WebSocketHandler webSocketHandler() { return new PerConnectionWebSocketHandler(OfframpWebSocketHandler.class); }
@Bean public WebSocketHandler snakeWebSocketHandler() { return new PerConnectionWebSocketHandler(SnakeWebSocketHandler.class); }
@SpringBootApplication @RestController @EnableWebSocket @EnableConfigurationProperties(HandlerSettings.class) public class MyController implements WebSocketConfigurer { @Autowired private BeanFactory beanFactory; @Bean public WebSocketHandler myHandler() { PerConnectionWebSocketHandler perConnectionWebSocketHandler = new PerConnectionWebSocketHandler(MyHandler.class); perConnectionWebSocketHandler.setBeanFactory(beanFactory); return perConnectionWebSocketHandler; } }
@Bean public WebSocketHandler myHandler() { return new PerConnectionWebSocketHandler(MyHandler.class)); } @Bean public WebSocketHandler myHandlerDecorator() { return new ExceptionWebSocketHandlerDecorator(myHandler()); }