if (!handshakeCompleted) {
HttpResponse response = (HttpResponse) event.getMessage();
final HttpResponseStatus status = new HttpResponseStatus(101, "Web Socket Protocol Handshake");
final boolean validStatus = response.getStatus().equals(status);
final boolean validUpgrade = response.headers().get(Names.UPGRADE).equals(Values.WEBSOCKET);
final boolean validConnection = response.headers().get(Names.CONNECTION).equals(Values.UPGRADE);
if (!validStatus || !validUpgrade || !validConnection) {
throw new NettyWebSocketException("Invalid handshake response");
}
handshakeCompleted = true;
ctx.getPipeline().replace("decoder", "ws-decoder", new WebSocket00FrameDecoder());