Author: markt Date: Tue Jan 22 09:38:02 2013 New Revision: 1436820 URL: http://svn.apache.org/viewvc?rev=1436820&view=rev Log: Add some constants and make use of them
Modified: tomcat/trunk/java/org/apache/tomcat/websocket/Constants.java tomcat/trunk/java/org/apache/tomcat/websocket/server/WsServlet.java Modified: tomcat/trunk/java/org/apache/tomcat/websocket/Constants.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/websocket/Constants.java?rev=1436820&r1=1436819&r2=1436820&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/tomcat/websocket/Constants.java (original) +++ tomcat/trunk/java/org/apache/tomcat/websocket/Constants.java Tue Jan 22 09:38:02 2013 @@ -31,6 +31,16 @@ public class Constants { public static final byte OPCODE_PING = 0x09; public static final byte OPCODE_PONG = 0x0A; + // Client connection + public static final String HOST_HEADER_NAME = "Host"; + public static final String UPGRADE_HEADER_NAME = "Upgrade"; + public static final String UPGRADE_HEADER_VALUE = "websocket"; + public static final String CONNECTION_HEADER_NAME = "Connection"; + public static final String CONNECTION_HEADER_VALUE = "upgrade"; + public static final String WS_VERSION_HEADER_NAME = "Sec-WebSocket-Version"; + public static final String WS_VERSION_HEADER_VALUE = "13"; + public static final String WS_KEY_HEADER_NAME = "Sec-WebSocket-Key"; + private Constants() { // Hide default constructor Modified: tomcat/trunk/java/org/apache/tomcat/websocket/server/WsServlet.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/websocket/server/WsServlet.java?rev=1436820&r1=1436819&r2=1436820&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/tomcat/websocket/server/WsServlet.java (original) +++ tomcat/trunk/java/org/apache/tomcat/websocket/server/WsServlet.java Tue Jan 22 09:38:02 2013 @@ -38,6 +38,7 @@ import javax.websocket.Extension; import javax.websocket.server.ServerEndpointConfiguration; import javax.xml.bind.DatatypeConverter; +import org.apache.tomcat.websocket.Constants; /** * Handles the initial HTTP connection for WebSocket connections. @@ -60,20 +61,24 @@ public class WsServlet extends HttpServl String key; String subProtocol = null; List<Extension> extensions = Collections.emptyList(); - if (!headerContainsToken(req, "upgrade", "websocket")) { + if (!headerContainsToken(req, Constants.UPGRADE_HEADER_NAME, + Constants.UPGRADE_HEADER_VALUE)) { resp.sendError(HttpServletResponse.SC_BAD_REQUEST); return; } - if (!headerContainsToken(req, "connection", "upgrade")) { + if (!headerContainsToken(req, Constants.CONNECTION_HEADER_NAME, + Constants.CONNECTION_HEADER_VALUE)) { resp.sendError(HttpServletResponse.SC_BAD_REQUEST); return; } - if (!headerContainsToken(req, "sec-websocket-version", "13")) { + if (!headerContainsToken(req, Constants.WS_VERSION_HEADER_NAME, + Constants.WS_VERSION_HEADER_VALUE)) { resp.setStatus(426); - resp.setHeader("Sec-WebSocket-Version", "13"); + resp.setHeader(Constants.WS_VERSION_HEADER_NAME, + Constants.WS_VERSION_HEADER_VALUE); return; } - key = req.getHeader("Sec-WebSocket-Key"); + key = req.getHeader(Constants.WS_KEY_HEADER_NAME); if (key == null) { resp.sendError(HttpServletResponse.SC_BAD_REQUEST); return; @@ -102,8 +107,10 @@ public class WsServlet extends HttpServl // extensions = sec.getNegotiatedExtensions(requestedExtensions); } // If we got this far, all is good. Accept the connection. - resp.setHeader("Upgrade", "websocket"); - resp.setHeader("Connection", "upgrade"); + resp.setHeader(Constants.UPGRADE_HEADER_NAME, + Constants.UPGRADE_HEADER_VALUE); + resp.setHeader(Constants.CONNECTION_HEADER_NAME, + Constants.CONNECTION_HEADER_VALUE); resp.setHeader("Sec-WebSocket-Accept", getWebSocketAccept(key)); if (subProtocol != null) { resp.setHeader("Sec-WebSocket-Protocol", subProtocol); --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org