public class io.netty.handler.codec.http.websocketx.Utf8FrameValidator extends io.netty.channel.ChannelInboundHandlerAdapter
{
private final boolean closeOnProtocolViolation;
private int fragmentedFramesCount;
private io.netty.handler.codec.http.websocketx.Utf8Validator utf8Validator;
public void <init>()
{
io.netty.handler.codec.http.websocketx.Utf8FrameValidator v;
v := @this: io.netty.handler.codec.http.websocketx.Utf8FrameValidator;
specialinvoke v.<io.netty.handler.codec.http.websocketx.Utf8FrameValidator: void <init>(boolean)>(1);
return;
}
public void <init>(boolean)
{
io.netty.handler.codec.http.websocketx.Utf8FrameValidator v;
boolean v;
v := @this: io.netty.handler.codec.http.websocketx.Utf8FrameValidator;
v := @parameter: boolean;
specialinvoke v.<io.netty.channel.ChannelInboundHandlerAdapter: void <init>()>();
v.<io.netty.handler.codec.http.websocketx.Utf8FrameValidator: boolean closeOnProtocolViolation> = v;
return;
}
public void channelRead(io.netty.channel.ChannelHandlerContext, java.lang.Object) throws java.lang.Exception
{
io.netty.handler.codec.http.websocketx.Utf8FrameValidator v;
io.netty.channel.ChannelHandlerContext v;
io.netty.buffer.ByteBuf v, v, v;
int v, v, v;
io.netty.handler.codec.http.websocketx.CorruptedWebSocketFrameException v;
io.netty.handler.codec.http.websocketx.Utf8Validator v, v, v, v, v;
boolean v, v, v, v, v, v, v;
java.lang.Object v;
v := @this: io.netty.handler.codec.http.websocketx.Utf8FrameValidator;
v := @parameter: io.netty.channel.ChannelHandlerContext;
v := @parameter: java.lang.Object;
v = v instanceof io.netty.handler.codec.http.websocketx.WebSocketFrame;
if v == 0 goto label;
label:
v = virtualinvoke v.<io.netty.handler.codec.http.websocketx.WebSocketFrame: boolean isFinalFragment()>();
if v == 0 goto label;
v = v instanceof io.netty.handler.codec.http.websocketx.PingWebSocketFrame;
if v != 0 goto label;
v.<io.netty.handler.codec.http.websocketx.Utf8FrameValidator: int fragmentedFramesCount> = 0;
v = v instanceof io.netty.handler.codec.http.websocketx.TextWebSocketFrame;
if v != 0 goto label;
v = v.<io.netty.handler.codec.http.websocketx.Utf8FrameValidator: io.netty.handler.codec.http.websocketx.Utf8Validator utf8Validator>;
if v == null goto label;
v = v.<io.netty.handler.codec.http.websocketx.Utf8FrameValidator: io.netty.handler.codec.http.websocketx.Utf8Validator utf8Validator>;
v = virtualinvoke v.<io.netty.handler.codec.http.websocketx.Utf8Validator: boolean isChecking()>();
if v == 0 goto label;
label:
v = virtualinvoke v.<io.netty.handler.codec.http.websocketx.WebSocketFrame: io.netty.buffer.ByteBuf content()>();
specialinvoke v.<io.netty.handler.codec.http.websocketx.Utf8FrameValidator: void checkUTF8String(io.netty.buffer.ByteBuf)>(v);
v = v.<io.netty.handler.codec.http.websocketx.Utf8FrameValidator: io.netty.handler.codec.http.websocketx.Utf8Validator utf8Validator>;
virtualinvoke v.<io.netty.handler.codec.http.websocketx.Utf8Validator: void finish()>();
goto label;
label:
v = v.<io.netty.handler.codec.http.websocketx.Utf8FrameValidator: int fragmentedFramesCount>;
if v != 0 goto label;
v = v instanceof io.netty.handler.codec.http.websocketx.TextWebSocketFrame;
if v == 0 goto label;
v = virtualinvoke v.<io.netty.handler.codec.http.websocketx.WebSocketFrame: io.netty.buffer.ByteBuf content()>();
specialinvoke v.<io.netty.handler.codec.http.websocketx.Utf8FrameValidator: void checkUTF8String(io.netty.buffer.ByteBuf)>(v);
goto label;
label:
v = v.<io.netty.handler.codec.http.websocketx.Utf8FrameValidator: io.netty.handler.codec.http.websocketx.Utf8Validator utf8Validator>;
if v == null goto label;
v = v.<io.netty.handler.codec.http.websocketx.Utf8FrameValidator: io.netty.handler.codec.http.websocketx.Utf8Validator utf8Validator>;
v = virtualinvoke v.<io.netty.handler.codec.http.websocketx.Utf8Validator: boolean isChecking()>();
if v == 0 goto label;
v = virtualinvoke v.<io.netty.handler.codec.http.websocketx.WebSocketFrame: io.netty.buffer.ByteBuf content()>();
specialinvoke v.<io.netty.handler.codec.http.websocketx.Utf8FrameValidator: void checkUTF8String(io.netty.buffer.ByteBuf)>(v);
label:
v = v.<io.netty.handler.codec.http.websocketx.Utf8FrameValidator: int fragmentedFramesCount>;
v = v + 1;
v.<io.netty.handler.codec.http.websocketx.Utf8FrameValidator: int fragmentedFramesCount> = v;
label:
goto label;
label:
v := @caughtexception;
specialinvoke v.<io.netty.handler.codec.http.websocketx.Utf8FrameValidator: void protocolViolation(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.websocketx.WebSocketFrame,io.netty.handler.codec.http.websocketx.CorruptedWebSocketFrameException)>(v, v, v);
label:
specialinvoke v.<io.netty.channel.ChannelInboundHandlerAdapter: void channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)>(v, v);
return;
catch io.netty.handler.codec.http.websocketx.CorruptedWebSocketFrameException from label to label with label;
}
private void checkUTF8String(io.netty.buffer.ByteBuf)
{
io.netty.handler.codec.http.websocketx.Utf8FrameValidator v;
io.netty.buffer.ByteBuf v;
io.netty.handler.codec.http.websocketx.Utf8Validator v, v, v;
v := @this: io.netty.handler.codec.http.websocketx.Utf8FrameValidator;
v := @parameter: io.netty.buffer.ByteBuf;
v = v.<io.netty.handler.codec.http.websocketx.Utf8FrameValidator: io.netty.handler.codec.http.websocketx.Utf8Validator utf8Validator>;
if v != null goto label;
v = new io.netty.handler.codec.http.websocketx.Utf8Validator;
specialinvoke v.<io.netty.handler.codec.http.websocketx.Utf8Validator: void <init>()>();
v.<io.netty.handler.codec.http.websocketx.Utf8FrameValidator: io.netty.handler.codec.http.websocketx.Utf8Validator utf8Validator> = v;
label:
v = v.<io.netty.handler.codec.http.websocketx.Utf8FrameValidator: io.netty.handler.codec.http.websocketx.Utf8Validator utf8Validator>;
virtualinvoke v.<io.netty.handler.codec.http.websocketx.Utf8Validator: void check(io.netty.buffer.ByteBuf)>(v);
return;
}
private void protocolViolation(io.netty.channel.ChannelHandlerContext, io.netty.handler.codec.http.websocketx.WebSocketFrame, io.netty.handler.codec.http.websocketx.CorruptedWebSocketFrameException)
{
io.netty.handler.codec.http.websocketx.Utf8FrameValidator v;
io.netty.handler.codec.http.websocketx.WebSocketFrame v;
io.netty.handler.codec.http.websocketx.WebSocketCloseStatus v;
io.netty.channel.ChannelFuture v;
io.netty.channel.Channel v;
io.netty.channel.ChannelHandlerContext v;
io.netty.channel.ChannelFutureListener v;
int v;
io.netty.handler.codec.http.websocketx.CorruptedWebSocketFrameException v;
io.netty.handler.codec.http.websocketx.CloseWebSocketFrame v;
java.lang.String v;
boolean v, v;
v := @this: io.netty.handler.codec.http.websocketx.Utf8FrameValidator;
v := @parameter: io.netty.channel.ChannelHandlerContext;
v := @parameter: io.netty.handler.codec.http.websocketx.WebSocketFrame;
v := @parameter: io.netty.handler.codec.http.websocketx.CorruptedWebSocketFrameException;
virtualinvoke v.<io.netty.handler.codec.http.websocketx.WebSocketFrame: boolean release()>();
v = v.<io.netty.handler.codec.http.websocketx.Utf8FrameValidator: boolean closeOnProtocolViolation>;
if v == 0 goto label;
v = interfaceinvoke v.<io.netty.channel.ChannelHandlerContext: io.netty.channel.Channel channel()>();
v = interfaceinvoke v.<io.netty.channel.Channel: boolean isOpen()>();
if v == 0 goto label;
v = virtualinvoke v.<io.netty.handler.codec.http.websocketx.CorruptedWebSocketFrameException: io.netty.handler.codec.http.websocketx.WebSocketCloseStatus closeStatus()>();
v = virtualinvoke v.<io.netty.handler.codec.http.websocketx.CorruptedWebSocketFrameException: java.lang.String getMessage()>();
if v != null goto label;
v = virtualinvoke v.<io.netty.handler.codec.http.websocketx.WebSocketCloseStatus: java.lang.String reasonText()>();
label:
v = new io.netty.handler.codec.http.websocketx.CloseWebSocketFrame;
v = virtualinvoke v.<io.netty.handler.codec.http.websocketx.WebSocketCloseStatus: int code()>();
specialinvoke v.<io.netty.handler.codec.http.websocketx.CloseWebSocketFrame: void <init>(int,java.lang.String)>(v, v);
v = interfaceinvoke v.<io.netty.channel.ChannelHandlerContext: io.netty.channel.ChannelFuture writeAndFlush(java.lang.Object)>(v);
v = <io.netty.channel.ChannelFutureListener: io.netty.channel.ChannelFutureListener CLOSE>;
interfaceinvoke v.<io.netty.channel.ChannelFuture: io.netty.channel.ChannelFuture addListener(io.netty.util.concurrent.GenericFutureListener)>(v);
label:
throw v;
}
public void exceptionCaught(io.netty.channel.ChannelHandlerContext, java.lang.Throwable) throws java.lang.Exception
{
java.lang.Throwable v;
io.netty.channel.ChannelHandlerContext v;
io.netty.handler.codec.http.websocketx.Utf8FrameValidator v;
v := @this: io.netty.handler.codec.http.websocketx.Utf8FrameValidator;
v := @parameter: io.netty.channel.ChannelHandlerContext;
v := @parameter: java.lang.Throwable;
specialinvoke v.<io.netty.channel.ChannelInboundHandlerAdapter: void exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)>(v, v);
return;
}
}