public static WebSocketWireProtocol guessWireProtocolVersion(HttpRequestMessage httpRequest) {
   String httpRequestVersionHeader =
       httpRequest.getHeader(WsHandshakeValidator.SEC_WEB_SOCKET_VERSION);
   if (httpRequestVersionHeader == null || httpRequestVersionHeader.length() == 0) {
     // Let's see if the request looks like Hixie 75 or 76
     if (httpRequest.getHeader(WsHandshakeValidator.SEC_WEB_SOCKET_KEY1) != null
         && httpRequest.getHeader(WsHandshakeValidator.SEC_WEB_SOCKET_KEY2) != null) {
       return WebSocketWireProtocol.HIXIE_76;
     } else {
       return WebSocketWireProtocol.HIXIE_75;
     }
   } else {
     try {
       return WebSocketWireProtocol.valueOf(Integer.parseInt(httpRequestVersionHeader));
     } catch (NumberFormatException e) {
       return null;
     }
   }
 }