private ServletWebSocketHandlerRegistry initHandlerRegistry() { if (this.handlerRegistry == null) { this.handlerRegistry = new ServletWebSocketHandlerRegistry(); registerWebSocketHandlers(this.handlerRegistry); } return this.handlerRegistry; }
protected final WebSocketTransportRegistration getTransportRegistration() { if (this.transportRegistration == null) { this.transportRegistration = new WebSocketTransportRegistration(); configureWebSocketTransport(this.transportRegistration); } return this.transportRegistration; }
@Override protected void addArgumentResolvers(List<HandlerMethodArgumentResolver> argumentResolvers) { for (WebSocketMessageBrokerConfigurer configurer : this.configurers) { configurer.addArgumentResolvers(argumentResolvers); } }
@Override public void registerWebSocketHandlers(WebSocketHandlerRegistry registry) { registry.addHandler(serverHandler(), "/ws") .setHandshakeHandler(this.handshakeHandler); registry.addHandler(serverHandler(), "/sockjs").withSockJS() .setTransportHandlerOverrides(new WebSocketTransportHandler(this.handshakeHandler)); }
@Override public void registerStompEndpoints(StompEndpointRegistry registry) { registry.addEndpoint("/simpleBroker"); }
@Override public void registerStompEndpoints(StompEndpointRegistry registry) { registry.addEndpoint("/ws").setHandshakeHandler(this.handshakeHandler); }
@Bean public HandlerMapping stompWebSocketHandlerMapping() { WebSocketHandler handler = decorateWebSocketHandler(subProtocolWebSocketHandler()); WebMvcStompEndpointRegistry registry = new WebMvcStompEndpointRegistry( handler, getTransportRegistration(), messageBrokerTaskScheduler()); ApplicationContext applicationContext = getApplicationContext(); if (applicationContext != null) { registry.setApplicationContext(applicationContext); } registerStompEndpoints(registry); return registry.getHandlerMapping(); }
protected WebSocketHandler decorateWebSocketHandler(WebSocketHandler handler) { for (WebSocketHandlerDecoratorFactory factory : getTransportRegistration().getDecoratorFactories()) { handler = factory.decorate(handler); } return handler; }
@Override public void configureWebSocketTransport(WebSocketTransportRegistration registration) { registration.setMessageSizeLimit(128 * 1024); registration.setSendTimeLimit(25 * 1000); registration.setSendBufferSizeLimit(1024 * 1024); registration.setTimeToFirstMessage(30 * 1000); }
@Override protected void registerWebSocketHandlers(WebSocketHandlerRegistry registry) { for (WebSocketConfigurer configurer : this.configurers) { configurer.registerWebSocketHandlers(registry); } }
@Override protected void configureClientOutboundChannel(ChannelRegistration registration) { for (WebSocketMessageBrokerConfigurer configurer : this.configurers) { configurer.configureClientOutboundChannel(registration); } }
@Override protected boolean configureMessageConverters(List<MessageConverter> messageConverters) { boolean registerDefaults = true; for (WebSocketMessageBrokerConfigurer configurer : this.configurers) { if (!configurer.configureMessageConverters(messageConverters)) { registerDefaults = false; } } return registerDefaults; }
@Override protected void configureClientInboundChannel(ChannelRegistration registration) { for (WebSocketMessageBrokerConfigurer configurer : this.configurers) { configurer.configureClientInboundChannel(registration); } }
@Override protected void registerStompEndpoints(StompEndpointRegistry registry) { for (WebSocketMessageBrokerConfigurer configurer : this.configurers) { configurer.registerStompEndpoints(registry); } }
@Override protected void configureWebSocketTransport(WebSocketTransportRegistration registration) { for (WebSocketMessageBrokerConfigurer configurer : this.configurers) { configurer.configureWebSocketTransport(registration); } }
@Override protected void addReturnValueHandlers(List<HandlerMethodReturnValueHandler> returnValueHandlers) { for (WebSocketMessageBrokerConfigurer configurer : this.configurers) { configurer.addReturnValueHandlers(returnValueHandlers); } }
@Override protected void configureMessageBroker(MessageBrokerRegistry registry) { for (WebSocketMessageBrokerConfigurer configurer : this.configurers) { configurer.configureMessageBroker(registry); } }
@Override public AbstractSubscribableChannel brokerChannel() { TestChannel channel = new TestChannel(); channel.setInterceptors(super.brokerChannel().getInterceptors()); return channel; } }
@Override @Bean public AbstractSubscribableChannel clientInboundChannel() { TestChannel channel = new TestChannel(); channel.setInterceptors(super.clientInboundChannel().getInterceptors()); return channel; }
@Override protected void registerStompEndpoints(StompEndpointRegistry registry) { registry.addEndpoint("/test"); }