io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker00.class Maven / Gradle / Ivy
???? 2 Bio/netty/handler/codec/http/websocketx/WebSocketServerHandshaker00 @io/netty/handler/codec/http/websocketx/WebSocketServerHandshaker WebSocketServerHandshaker00.java BEGINNING_DIGIT Ljava/util/regex/Pattern; BEGINNING_SPACE ((Ljava/lang/String;Ljava/lang/String;I)V 7io/netty/handler/codec/http/websocketx/WebSocketVersion V00 9Lio/netty/handler/codec/http/websocketx/WebSocketVersion;
a(Lio/netty/handler/codec/http/websocketx/WebSocketVersion;Ljava/lang/String;Ljava/lang/String;I)V
this DLio/netty/handler/codec/http/websocketx/WebSocketServerHandshaker00; webSocketURL Ljava/lang/String; subprotocols maxFramePayloadLength I newHandshakeResponse ?(Lio/netty/handler/codec/http/FullHttpRequest;Lio/netty/handler/codec/http/HttpHeaders;)Lio/netty/handler/codec/http/FullHttpResponse; +io/netty/handler/codec/http/FullHttpRequest headers +()Lio/netty/handler/codec/http/HttpHeaders; ! +io/netty/handler/codec/http/HttpHeaderNames #
CONNECTION Lio/netty/util/AsciiString; % & $ ' ,io/netty/handler/codec/http/HttpHeaderValues ) UPGRADE + & * , 'io/netty/handler/codec/http/HttpHeaders .
containsValue 4(Ljava/lang/CharSequence;Ljava/lang/CharSequence;Z)Z 0 1
/ 2 WEBSOCKET 4 & * 5 $ , get ,(Ljava/lang/CharSequence;)Ljava/lang/String; 8 9
/ : io/netty/util/AsciiString < contentEqualsIgnoreCase (Ljava/lang/CharSequence;)Z > ?
= @ Bio/netty/handler/codec/http/websocketx/WebSocketHandshakeException B 2not a WebSocket handshake request: missing upgrade D (Ljava/lang/String;)V F
C G SEC_WEBSOCKET_KEY1 I & $ J contains L ?
/ M SEC_WEBSOCKET_KEY2 O & $ P 3io/netty/handler/codec/http/DefaultFullHttpResponse R 'io/netty/handler/codec/http/HttpVersion T HTTP_1_1 )Lio/netty/handler/codec/http/HttpVersion; V W U X .io/netty/handler/codec/http/HttpResponseStatus Z WebSocket Protocol Handshake \ Web Socket Protocol Handshake ^ java/lang/String ` (ILjava/lang/String;)V b
[ c \(Lio/netty/handler/codec/http/HttpVersion;Lio/netty/handler/codec/http/HttpResponseStatus;)V e
S f ,io/netty/handler/codec/http/FullHttpResponse h i ! add T(Lio/netty/handler/codec/http/HttpHeaders;)Lio/netty/handler/codec/http/HttpHeaders; k l
/ m U(Ljava/lang/CharSequence;Ljava/lang/Object;)Lio/netty/handler/codec/http/HttpHeaders; k o
/ p SEC_WEBSOCKET_ORIGIN r & $ s ORIGIN u & $ v SEC_WEBSOCKET_LOCATION x & $ y uri ()Ljava/lang/String; { |
} SEC_WEBSOCKET_PROTOCOL & $ ? selectSubprotocol &(Ljava/lang/String;)Ljava/lang/String; ? ?
? logger /Lio/netty/util/internal/logging/InternalLogger; ? ? ? -io/netty/util/internal/logging/InternalLogger ? isDebugEnabled ()Z ? ? ? ? *Requested subprotocol(s) not supported: {} ? debug '(Ljava/lang/String;Ljava/lang/Object;)V ? ? ? ? ? java/util/regex/Pattern ? matcher 3(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher; ? ?
? ? ? java/util/regex/Matcher ?
replaceAll ? ?
? ? java/lang/Long ? parseLong (Ljava/lang/String;)J ? ?
? ? ? length ()I ? ?
a ? content ()Lio/netty/buffer/ByteBuf; ? ? ? io/netty/buffer/ByteBuf ? readLong ()J ? ?
? ? io/netty/buffer/Unpooled ? buffer (I)Lio/netty/buffer/ByteBuf; ? ?
? ? writeInt ? ?
? ? writeLong (J)Lio/netty/buffer/ByteBuf; ? ?
? ? i ? array ()[B ? ?
? ? 4io/netty/handler/codec/http/websocketx/WebSocketUtil ? md5 ([B)[B ? ?
? ?
writeBytes ([B)Lio/netty/buffer/ByteBuf; ? ?
? ? WEBSOCKET_ORIGIN ? & $ ? WEBSOCKET_LOCATION ? & $ ? WEBSOCKET_PROTOCOL ? & $ ? selectedSubprotocol key1 key2 a b c J input Lio/netty/buffer/ByteBuf; protocol req -Lio/netty/handler/codec/http/FullHttpRequest; )Lio/netty/handler/codec/http/HttpHeaders; isHixie76 Z res .Lio/netty/handler/codec/http/FullHttpResponse; close ?(Lio/netty/channel/Channel;Lio/netty/handler/codec/http/websocketx/CloseWebSocketFrame;Lio/netty/channel/ChannelPromise;)Lio/netty/channel/ChannelFuture; io/netty/channel/Channel ?
writeAndFlush U(Ljava/lang/Object;Lio/netty/channel/ChannelPromise;)Lio/netty/channel/ChannelFuture; ? ? ? ? channel Lio/netty/channel/Channel; frame