You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by ma...@apache.org on 2013/01/22 10:38:02 UTC
svn commit: r1436820 - in /tomcat/trunk/java/org/apache/tomcat/websocket:
Constants.java server/WsServlet.java
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-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org