Author: markt Date: Fri Apr 19 20:30:00 2013 New Revision: 1470025 URL: http://svn.apache.org/r1470025 Log: Use the ServletContext attribute in unit tests. Remove unnecessary double init() of ServerContainer
Modified: tomcat/trunk/java/org/apache/tomcat/websocket/server/Constants.java tomcat/trunk/java/org/apache/tomcat/websocket/server/WsSci.java tomcat/trunk/test/org/apache/tomcat/websocket/TestWsWebSocketContainer.java tomcat/trunk/test/org/apache/tomcat/websocket/TesterEchoServer.java tomcat/trunk/test/org/apache/tomcat/websocket/pojo/Util.java tomcat/trunk/test/org/apache/tomcat/websocket/server/TestWebSocketServerContainer.java tomcat/trunk/webapps/examples/WEB-INF/classes/websocket/echo/WsConfigListener.java Modified: tomcat/trunk/java/org/apache/tomcat/websocket/server/Constants.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/websocket/server/Constants.java?rev=1470025&r1=1470024&r2=1470025&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/tomcat/websocket/server/Constants.java (original) +++ tomcat/trunk/java/org/apache/tomcat/websocket/server/Constants.java Fri Apr 19 20:30:00 2013 @@ -29,6 +29,10 @@ public class Constants { public static final String TEXT_BUFFER_SIZE_SERVLET_CONTEXT_INIT_PARAM = "org.apache.tomcat.websocket.textBufferSize"; + public static final String SERVER_CONTAINER_SERVLET_CONTEXT_ATTRIBUTE = + "javax.websocket.server.ServerContainer"; + + private Constants() { // Hide default constructor } Modified: tomcat/trunk/java/org/apache/tomcat/websocket/server/WsSci.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/websocket/server/WsSci.java?rev=1470025&r1=1470024&r2=1470025&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/tomcat/websocket/server/WsSci.java (original) +++ tomcat/trunk/java/org/apache/tomcat/websocket/server/WsSci.java Fri Apr 19 20:30:00 2013 @@ -40,10 +40,6 @@ import javax.websocket.server.ServerEndp Endpoint.class}) public class WsSci implements ServletContainerInitializer { - private static final String SERVER_CONTAINER_CONTEXT_ATTRIBUTE = - "javax.websocket.server.ServerContainer"; - - @Override public void onStartup(Set<Class<?>> clazzes, ServletContext ctx) throws ServletException { @@ -133,7 +129,8 @@ public class WsSci implements ServletCon WsServerContainer sc = WsServerContainer.getServerContainer(); sc.setServletContext(servletContext); - servletContext.setAttribute(SERVER_CONTAINER_CONTEXT_ATTRIBUTE, sc); + servletContext.setAttribute( + Constants.SERVER_CONTAINER_SERVLET_CONTEXT_ATTRIBUTE, sc); return sc; } Modified: tomcat/trunk/test/org/apache/tomcat/websocket/TestWsWebSocketContainer.java URL: http://svn.apache.org/viewvc/tomcat/trunk/test/org/apache/tomcat/websocket/TestWsWebSocketContainer.java?rev=1470025&r1=1470024&r2=1470025&view=diff ============================================================================== --- tomcat/trunk/test/org/apache/tomcat/websocket/TestWsWebSocketContainer.java (original) +++ tomcat/trunk/test/org/apache/tomcat/websocket/TestWsWebSocketContainer.java Fri Apr 19 20:30:00 2013 @@ -36,6 +36,7 @@ import javax.websocket.MessageHandler; import javax.websocket.OnMessage; import javax.websocket.Session; import javax.websocket.WebSocketContainer; +import javax.websocket.server.ServerContainer; import javax.websocket.server.ServerEndpoint; import javax.websocket.server.ServerEndpointConfig; @@ -52,8 +53,8 @@ import org.apache.tomcat.websocket.Teste import org.apache.tomcat.websocket.TesterSingleMessageClient.BasicHandler; import org.apache.tomcat.websocket.TesterSingleMessageClient.BasicText; import org.apache.tomcat.websocket.TesterSingleMessageClient.TesterProgrammaticEndpoint; +import org.apache.tomcat.websocket.server.Constants; import org.apache.tomcat.websocket.server.WsListener; -import org.apache.tomcat.websocket.server.WsServerContainer; public class TestWsWebSocketContainer extends TomcatBaseTest { @@ -422,8 +423,9 @@ public class TestWsWebSocketContainer ex @Override public void contextInitialized(ServletContextEvent sce) { super.contextInitialized(sce); - WsServerContainer sc = WsServerContainer.getServerContainer(); - sc.setServletContext(sce.getServletContext()); + ServerContainer sc = + (ServerContainer) sce.getServletContext().getAttribute( + Constants.SERVER_CONTAINER_SERVLET_CONTEXT_ATTRIBUTE); try { sc.addEndpoint(BlockingPojo.class); } catch (DeploymentException e) { @@ -532,7 +534,9 @@ public class TestWsWebSocketContainer ex @Override public void contextInitialized(ServletContextEvent sce) { super.contextInitialized(sce); - WsServerContainer sc = WsServerContainer.getServerContainer(); + ServerContainer sc = + (ServerContainer) sce.getServletContext().getAttribute( + Constants.SERVER_CONTAINER_SERVLET_CONTEXT_ATTRIBUTE); try { sc.addEndpoint(ServerEndpointConfig.Builder.create( ConstantTxEndpoint.class, PATH).build()); Modified: tomcat/trunk/test/org/apache/tomcat/websocket/TesterEchoServer.java URL: http://svn.apache.org/viewvc/tomcat/trunk/test/org/apache/tomcat/websocket/TesterEchoServer.java?rev=1470025&r1=1470024&r2=1470025&view=diff ============================================================================== --- tomcat/trunk/test/org/apache/tomcat/websocket/TesterEchoServer.java (original) +++ tomcat/trunk/test/org/apache/tomcat/websocket/TesterEchoServer.java Fri Apr 19 20:30:00 2013 @@ -23,10 +23,11 @@ import javax.servlet.ServletContextEvent import javax.websocket.DeploymentException; import javax.websocket.OnMessage; import javax.websocket.Session; +import javax.websocket.server.ServerContainer; import javax.websocket.server.ServerEndpoint; +import org.apache.tomcat.websocket.server.Constants; import org.apache.tomcat.websocket.server.WsListener; -import org.apache.tomcat.websocket.server.WsServerContainer; public class TesterEchoServer { @@ -38,7 +39,9 @@ public class TesterEchoServer { @Override public void contextInitialized(ServletContextEvent sce) { super.contextInitialized(sce); - WsServerContainer sc = WsServerContainer.getServerContainer(); + ServerContainer sc = + (ServerContainer) sce.getServletContext().getAttribute( + Constants.SERVER_CONTAINER_SERVLET_CONTEXT_ATTRIBUTE); try { sc.addEndpoint(Async.class); sc.addEndpoint(Basic.class); Modified: tomcat/trunk/test/org/apache/tomcat/websocket/pojo/Util.java URL: http://svn.apache.org/viewvc/tomcat/trunk/test/org/apache/tomcat/websocket/pojo/Util.java?rev=1470025&r1=1470024&r2=1470025&view=diff ============================================================================== --- tomcat/trunk/test/org/apache/tomcat/websocket/pojo/Util.java (original) +++ tomcat/trunk/test/org/apache/tomcat/websocket/pojo/Util.java Fri Apr 19 20:30:00 2013 @@ -19,10 +19,11 @@ package org.apache.tomcat.websocket.pojo import javax.servlet.ServletContextEvent; import javax.websocket.ClientEndpoint; import javax.websocket.DeploymentException; +import javax.websocket.server.ServerContainer; import javax.websocket.server.ServerEndpointConfig.Configurator; +import org.apache.tomcat.websocket.server.Constants; import org.apache.tomcat.websocket.server.WsListener; -import org.apache.tomcat.websocket.server.WsServerContainer; public class Util { @@ -37,8 +38,9 @@ public class Util { @Override public void contextInitialized(ServletContextEvent sce) { super.contextInitialized(sce); - WsServerContainer sc = WsServerContainer.getServerContainer(); - sc.setServletContext(sce.getServletContext()); + ServerContainer sc = + (ServerContainer) sce.getServletContext().getAttribute( + Constants.SERVER_CONTAINER_SERVLET_CONTEXT_ATTRIBUTE); try { sc.addEndpoint(pojoClazz); } catch (DeploymentException e) { Modified: tomcat/trunk/test/org/apache/tomcat/websocket/server/TestWebSocketServerContainer.java URL: http://svn.apache.org/viewvc/tomcat/trunk/test/org/apache/tomcat/websocket/server/TestWebSocketServerContainer.java?rev=1470025&r1=1470024&r2=1470025&view=diff ============================================================================== --- tomcat/trunk/test/org/apache/tomcat/websocket/server/TestWebSocketServerContainer.java (original) +++ tomcat/trunk/test/org/apache/tomcat/websocket/server/TestWebSocketServerContainer.java Fri Apr 19 20:30:00 2013 @@ -18,6 +18,7 @@ package org.apache.tomcat.websocket.serv import javax.servlet.ServletContextEvent; import javax.websocket.DeploymentException; +import javax.websocket.server.ServerContainer; import javax.websocket.server.ServerEndpointConfig; import org.junit.Assert; @@ -55,7 +56,9 @@ public class TestWebSocketServerContaine public void contextInitialized(ServletContextEvent sce) { super.contextInitialized(sce); - WsServerContainer sc = WsServerContainer.getServerContainer(); + ServerContainer sc = + (ServerContainer) sce.getServletContext().getAttribute( + Constants.SERVER_CONTAINER_SERVLET_CONTEXT_ATTRIBUTE); ServerEndpointConfig sec = ServerEndpointConfig.Builder.create( TesterEchoServer.Basic.class, "/{param}").build(); Modified: tomcat/trunk/webapps/examples/WEB-INF/classes/websocket/echo/WsConfigListener.java URL: http://svn.apache.org/viewvc/tomcat/trunk/webapps/examples/WEB-INF/classes/websocket/echo/WsConfigListener.java?rev=1470025&r1=1470024&r2=1470025&view=diff ============================================================================== --- tomcat/trunk/webapps/examples/WEB-INF/classes/websocket/echo/WsConfigListener.java (original) +++ tomcat/trunk/webapps/examples/WEB-INF/classes/websocket/echo/WsConfigListener.java Fri Apr 19 20:30:00 2013 @@ -17,20 +17,22 @@ package websocket.echo; import javax.servlet.ServletContextEvent; +import javax.servlet.ServletContextListener; import javax.servlet.annotation.WebListener; import javax.websocket.DeploymentException; +import javax.websocket.server.ServerContainer; import javax.websocket.server.ServerEndpointConfig; -import org.apache.tomcat.websocket.server.WsListener; -import org.apache.tomcat.websocket.server.WsServerContainer; +import org.apache.tomcat.websocket.server.Constants; @WebListener -public class WsConfigListener extends WsListener { +public class WsConfigListener implements ServletContextListener { @Override public void contextInitialized(ServletContextEvent sce) { - super.contextInitialized(sce); - WsServerContainer sc = WsServerContainer.getServerContainer(); + ServerContainer sc = + (ServerContainer) sce.getServletContext().getAttribute( + Constants.SERVER_CONTAINER_SERVLET_CONTEXT_ATTRIBUTE); try { sc.addEndpoint(ServerEndpointConfig.Builder.create( EchoEndpoint.class, "/websocket/echoProgrammatic").build()); @@ -38,4 +40,9 @@ public class WsConfigListener extends Ws throw new IllegalStateException(e); } } + + @Override + public void contextDestroyed(ServletContextEvent sce) { + // NO-OP + } } --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org