From eafa1eebd9b50306c18bfdf287b3b458104868c0 Mon Sep 17 00:00:00 2001 From: Alexander Alexeev Date: Thu, 17 Nov 2016 16:23:00 +0700 Subject: webSocket app configuration merged with webSocketMvcConfiguration --- .../configuration/WebsocketAppConfiguration.java | 49 ---------------------- .../ws/configuration/WebsocketInitializer.java | 2 +- .../configuration/WebsocketMvcConfiguration.java | 40 ++++++++++++++++-- 3 files changed, 37 insertions(+), 54 deletions(-) delete mode 100644 juick-ws/src/main/java/com/juick/ws/configuration/WebsocketAppConfiguration.java diff --git a/juick-ws/src/main/java/com/juick/ws/configuration/WebsocketAppConfiguration.java b/juick-ws/src/main/java/com/juick/ws/configuration/WebsocketAppConfiguration.java deleted file mode 100644 index 9824a30c..00000000 --- a/juick-ws/src/main/java/com/juick/ws/configuration/WebsocketAppConfiguration.java +++ /dev/null @@ -1,49 +0,0 @@ -package com.juick.ws.configuration; - -import com.juick.configuration.DataConfiguration; -import com.juick.ws.WebsocketComponent; -import com.juick.ws.XMPPConnection; -import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Configuration; -import org.springframework.context.annotation.Import; -import org.springframework.context.annotation.PropertySource; -import org.springframework.core.env.Environment; -import org.springframework.jdbc.core.JdbcTemplate; -import org.springframework.web.socket.config.annotation.EnableWebSocket; -import org.springframework.web.socket.config.annotation.ServletWebSocketHandlerRegistry; -import org.springframework.web.socket.config.annotation.WebSocketConfigurer; -import org.springframework.web.socket.config.annotation.WebSocketHandlerRegistry; - -import javax.inject.Inject; -import java.util.concurrent.ExecutorService; -import java.util.concurrent.Executors; - -/** - * Created by aalexeev on 11/12/16. - */ -@Configuration -@EnableWebSocket -@PropertySource("classpath:juick.conf") -@Import(DataConfiguration.class) -public class WebsocketAppConfiguration implements WebSocketConfigurer { - @Inject - private Environment env; - @Inject - private JdbcTemplate jdbc; - - @Bean - public WebsocketComponent wsHandler() { - return new WebsocketComponent(jdbc); - } - - @Bean - public XMPPConnection ws() { - return new XMPPConnection(env, wsHandler(), jdbc); - } - - @Override - public void registerWebSocketHandlers(WebSocketHandlerRegistry registry) { - ((ServletWebSocketHandlerRegistry) registry).setOrder(2); - registry.addHandler(wsHandler(), "/**").setAllowedOrigins("*"); - } -} diff --git a/juick-ws/src/main/java/com/juick/ws/configuration/WebsocketInitializer.java b/juick-ws/src/main/java/com/juick/ws/configuration/WebsocketInitializer.java index d4e797ad..785eefcf 100644 --- a/juick-ws/src/main/java/com/juick/ws/configuration/WebsocketInitializer.java +++ b/juick-ws/src/main/java/com/juick/ws/configuration/WebsocketInitializer.java @@ -13,7 +13,7 @@ public class WebsocketInitializer extends AbstractAnnotationConfigDispatcherServ @Override protected Class[] getRootConfigClasses() { - return new Class[]{WebsocketAppConfiguration.class, DataConfiguration.class}; + return new Class[]{DataConfiguration.class}; } @Override diff --git a/juick-ws/src/main/java/com/juick/ws/configuration/WebsocketMvcConfiguration.java b/juick-ws/src/main/java/com/juick/ws/configuration/WebsocketMvcConfiguration.java index a8a88dcc..90ab7195 100644 --- a/juick-ws/src/main/java/com/juick/ws/configuration/WebsocketMvcConfiguration.java +++ b/juick-ws/src/main/java/com/juick/ws/configuration/WebsocketMvcConfiguration.java @@ -2,22 +2,30 @@ package com.juick.ws.configuration; import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.datatype.jdk8.Jdk8Module; +import com.juick.configuration.DataConfiguration; +import com.juick.ws.WebsocketComponent; +import com.juick.ws.XMPPConnection; import com.mitchellbosecke.pebble.PebbleEngine; import com.mitchellbosecke.pebble.loader.Loader; import com.mitchellbosecke.pebble.loader.ServletLoader; import com.mitchellbosecke.pebble.spring4.PebbleViewResolver; import com.mitchellbosecke.pebble.spring4.extension.SpringExtension; -import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.ComponentScan; -import org.springframework.context.annotation.Configuration; +import org.springframework.context.annotation.*; +import org.springframework.core.env.Environment; import org.springframework.http.converter.HttpMessageConverter; import org.springframework.http.converter.json.Jackson2ObjectMapperBuilder; import org.springframework.http.converter.json.MappingJackson2HttpMessageConverter; +import org.springframework.jdbc.core.JdbcTemplate; import org.springframework.web.servlet.ViewResolver; import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry; import org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport; import org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping; +import org.springframework.web.socket.config.annotation.EnableWebSocket; +import org.springframework.web.socket.config.annotation.ServletWebSocketHandlerRegistry; +import org.springframework.web.socket.config.annotation.WebSocketConfigurer; +import org.springframework.web.socket.config.annotation.WebSocketHandlerRegistry; +import javax.inject.Inject; import java.util.List; /** @@ -25,7 +33,31 @@ import java.util.List; */ @Configuration @ComponentScan(basePackages = {"com.juick.ws.controllers"}) -public class WebsocketMvcConfiguration extends WebMvcConfigurationSupport { +@EnableWebSocket +@PropertySource("classpath:juick.conf") +@Import(DataConfiguration.class) +public class WebsocketMvcConfiguration extends WebMvcConfigurationSupport implements WebSocketConfigurer { + @Inject + private Environment env; + @Inject + private JdbcTemplate jdbc; + + @Bean + public WebsocketComponent wsHandler() { + return new WebsocketComponent(jdbc); + } + + @Bean + public XMPPConnection ws() { + return new XMPPConnection(env, wsHandler(), jdbc); + } + + @Override + public void registerWebSocketHandlers(WebSocketHandlerRegistry registry) { + ((ServletWebSocketHandlerRegistry) registry).setOrder(2); + registry.addHandler(wsHandler(), "/**").setAllowedOrigins("*"); + } + @Bean public Loader templateLoader() { return new ServletLoader(getServletContext()); -- cgit v1.2.3