abstract class io.netty.handler.codec.http.websocketx.extensions.compression.DeflateEncoder extends io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionEncoder
minor version: 0
major version: 59
flags: flags: (0x0420) ACC_SUPER, ACC_ABSTRACT
this_class: io.netty.handler.codec.http.websocketx.extensions.compression.DeflateEncoder
super_class: io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionEncoder
{
private final int compressionLevel;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final int windowSize;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final boolean noContext;
descriptor: Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private io.netty.channel.embedded.EmbeddedChannel encoder;
descriptor: Lio/netty/channel/embedded/EmbeddedChannel;
flags: (0x0002) ACC_PRIVATE
public void <init>(int, int, boolean);
descriptor: (IIZ)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokespecial io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionEncoder.<init>:()V
1: aload 0
iload 1
putfield io.netty.handler.codec.http.websocketx.extensions.compression.DeflateEncoder.compressionLevel:I
2: aload 0
iload 2
putfield io.netty.handler.codec.http.websocketx.extensions.compression.DeflateEncoder.windowSize:I
3: aload 0
iload 3
putfield io.netty.handler.codec.http.websocketx.extensions.compression.DeflateEncoder.noContext:Z
4: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lio/netty/handler/codec/http/websocketx/extensions/compression/DeflateEncoder;
0 5 1 compressionLevel I
0 5 2 windowSize I
0 5 3 noContext Z
MethodParameters:
Name Flags
compressionLevel
windowSize
noContext
protected abstract int rsv(io.netty.handler.codec.http.websocketx.WebSocketFrame);
descriptor: (Lio/netty/handler/codec/http/websocketx/WebSocketFrame;)I
flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
MethodParameters:
Name Flags
msg
protected abstract boolean removeFrameTail(io.netty.handler.codec.http.websocketx.WebSocketFrame);
descriptor: (Lio/netty/handler/codec/http/websocketx/WebSocketFrame;)Z
flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
MethodParameters:
Name Flags
msg
protected void encode(io.netty.channel.ChannelHandlerContext, io.netty.handler.codec.http.websocketx.WebSocketFrame, java.util.List<java.lang.Object>);
descriptor: (Lio/netty/channel/ChannelHandlerContext;Lio/netty/handler/codec/http/websocketx/WebSocketFrame;Ljava/util/List;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=10, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield io.netty.handler.codec.http.websocketx.extensions.compression.DeflateEncoder.encoder:Lio/netty/channel/embedded/EmbeddedChannel;
ifnonnull 4
1: aload 0
new io.netty.channel.embedded.EmbeddedChannel
dup
iconst_1
anewarray io.netty.channel.ChannelHandler
dup
iconst_0
2: getstatic io.netty.handler.codec.compression.ZlibWrapper.NONE:Lio/netty/handler/codec/compression/ZlibWrapper;
aload 0
getfield io.netty.handler.codec.http.websocketx.extensions.compression.DeflateEncoder.compressionLevel:I
aload 0
getfield io.netty.handler.codec.http.websocketx.extensions.compression.DeflateEncoder.windowSize:I
bipush 8
3: invokestatic io.netty.handler.codec.compression.ZlibCodecFactory.newZlibEncoder:(Lio/netty/handler/codec/compression/ZlibWrapper;III)Lio/netty/handler/codec/compression/ZlibEncoder;
aastore
invokespecial io.netty.channel.embedded.EmbeddedChannel.<init>:([Lio/netty/channel/ChannelHandler;)V
putfield io.netty.handler.codec.http.websocketx.extensions.compression.DeflateEncoder.encoder:Lio/netty/channel/embedded/EmbeddedChannel;
4: StackMap locals:
StackMap stack:
aload 0
getfield io.netty.handler.codec.http.websocketx.extensions.compression.DeflateEncoder.encoder:Lio/netty/channel/embedded/EmbeddedChannel;
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 2
invokevirtual io.netty.handler.codec.http.websocketx.WebSocketFrame.content:()Lio/netty/buffer/ByteBuf;
invokevirtual io.netty.buffer.ByteBuf.retain:()Lio/netty/buffer/ByteBuf;
aastore
invokevirtual io.netty.channel.embedded.EmbeddedChannel.writeOutbound:([Ljava/lang/Object;)Z
pop
5: aload 1
invokeinterface io.netty.channel.ChannelHandlerContext.alloc:()Lio/netty/buffer/ByteBufAllocator;
invokeinterface io.netty.buffer.ByteBufAllocator.compositeBuffer:()Lio/netty/buffer/CompositeByteBuf;
astore 4
start local 4 6: StackMap locals: io.netty.buffer.CompositeByteBuf
StackMap stack:
aload 0
getfield io.netty.handler.codec.http.websocketx.extensions.compression.DeflateEncoder.encoder:Lio/netty/channel/embedded/EmbeddedChannel;
invokevirtual io.netty.channel.embedded.EmbeddedChannel.readOutbound:()Ljava/lang/Object;
checkcast io.netty.buffer.ByteBuf
astore 5
start local 5 7: aload 5
ifnonnull 9
8: goto 14
9: StackMap locals: io.netty.buffer.ByteBuf
StackMap stack:
aload 5
invokevirtual io.netty.buffer.ByteBuf.isReadable:()Z
ifne 12
10: aload 5
invokevirtual io.netty.buffer.ByteBuf.release:()Z
pop
11: goto 6
12: StackMap locals:
StackMap stack:
aload 4
iconst_1
aload 5
invokevirtual io.netty.buffer.CompositeByteBuf.addComponent:(ZLio/netty/buffer/ByteBuf;)Lio/netty/buffer/CompositeByteBuf;
pop
end local 5 13: goto 6
14: StackMap locals:
StackMap stack:
aload 4
invokevirtual io.netty.buffer.CompositeByteBuf.numComponents:()I
ifgt 17
15: aload 4
invokevirtual io.netty.buffer.CompositeByteBuf.release:()Z
pop
16: new io.netty.handler.codec.CodecException
dup
ldc "cannot read compressed buffer"
invokespecial io.netty.handler.codec.CodecException.<init>:(Ljava/lang/String;)V
athrow
17: StackMap locals:
StackMap stack:
aload 2
invokevirtual io.netty.handler.codec.http.websocketx.WebSocketFrame.isFinalFragment:()Z
ifeq 19
aload 0
getfield io.netty.handler.codec.http.websocketx.extensions.compression.DeflateEncoder.noContext:Z
ifeq 19
18: aload 0
invokevirtual io.netty.handler.codec.http.websocketx.extensions.compression.DeflateEncoder.cleanup:()V
19: StackMap locals:
StackMap stack:
aload 0
aload 2
invokevirtual io.netty.handler.codec.http.websocketx.extensions.compression.DeflateEncoder.removeFrameTail:(Lio/netty/handler/codec/http/websocketx/WebSocketFrame;)Z
ifeq 23
20: aload 4
invokevirtual io.netty.buffer.CompositeByteBuf.readableBytes:()I
getstatic io.netty.handler.codec.http.websocketx.extensions.compression.DeflateDecoder.FRAME_TAIL:[B
arraylength
isub
istore 6
start local 6 21: aload 4
iconst_0
iload 6
invokevirtual io.netty.buffer.CompositeByteBuf.slice:(II)Lio/netty/buffer/ByteBuf;
astore 5
end local 6 start local 5 22: goto 24
end local 5 23: StackMap locals:
StackMap stack:
aload 4
astore 5
start local 5 24: StackMap locals: io.netty.buffer.ByteBuf
StackMap stack:
aload 2
instanceof io.netty.handler.codec.http.websocketx.TextWebSocketFrame
ifeq 27
25: new io.netty.handler.codec.http.websocketx.TextWebSocketFrame
dup
aload 2
invokevirtual io.netty.handler.codec.http.websocketx.WebSocketFrame.isFinalFragment:()Z
aload 0
aload 2
invokevirtual io.netty.handler.codec.http.websocketx.extensions.compression.DeflateEncoder.rsv:(Lio/netty/handler/codec/http/websocketx/WebSocketFrame;)I
aload 5
invokespecial io.netty.handler.codec.http.websocketx.TextWebSocketFrame.<init>:(ZILio/netty/buffer/ByteBuf;)V
astore 6
start local 6 26: goto 34
end local 6 StackMap locals:
StackMap stack:
27: aload 2
instanceof io.netty.handler.codec.http.websocketx.BinaryWebSocketFrame
ifeq 30
28: new io.netty.handler.codec.http.websocketx.BinaryWebSocketFrame
dup
aload 2
invokevirtual io.netty.handler.codec.http.websocketx.WebSocketFrame.isFinalFragment:()Z
aload 0
aload 2
invokevirtual io.netty.handler.codec.http.websocketx.extensions.compression.DeflateEncoder.rsv:(Lio/netty/handler/codec/http/websocketx/WebSocketFrame;)I
aload 5
invokespecial io.netty.handler.codec.http.websocketx.BinaryWebSocketFrame.<init>:(ZILio/netty/buffer/ByteBuf;)V
astore 6
start local 6 29: goto 34
end local 6 StackMap locals:
StackMap stack:
30: aload 2
instanceof io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame
ifeq 33
31: new io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame
dup
aload 2
invokevirtual io.netty.handler.codec.http.websocketx.WebSocketFrame.isFinalFragment:()Z
aload 0
aload 2
invokevirtual io.netty.handler.codec.http.websocketx.extensions.compression.DeflateEncoder.rsv:(Lio/netty/handler/codec/http/websocketx/WebSocketFrame;)I
aload 5
invokespecial io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame.<init>:(ZILio/netty/buffer/ByteBuf;)V
astore 6
start local 6 32: goto 34
end local 6 33: StackMap locals:
StackMap stack:
new io.netty.handler.codec.CodecException
dup
new java.lang.StringBuilder
dup
ldc "unexpected frame type: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial io.netty.handler.codec.CodecException.<init>:(Ljava/lang/String;)V
athrow
start local 6 34: StackMap locals: io.netty.handler.codec.http.websocketx.WebSocketFrame
StackMap stack:
aload 3
aload 6
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
35: return
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 36 0 this Lio/netty/handler/codec/http/websocketx/extensions/compression/DeflateEncoder;
0 36 1 ctx Lio/netty/channel/ChannelHandlerContext;
0 36 2 msg Lio/netty/handler/codec/http/websocketx/WebSocketFrame;
0 36 3 out Ljava/util/List<Ljava/lang/Object;>;
6 36 4 fullCompressedContent Lio/netty/buffer/CompositeByteBuf;
7 13 5 partCompressedContent Lio/netty/buffer/ByteBuf;
22 23 5 compressedContent Lio/netty/buffer/ByteBuf;
24 36 5 compressedContent Lio/netty/buffer/ByteBuf;
21 22 6 realLength I
26 27 6 outMsg Lio/netty/handler/codec/http/websocketx/WebSocketFrame;
29 30 6 outMsg Lio/netty/handler/codec/http/websocketx/WebSocketFrame;
32 33 6 outMsg Lio/netty/handler/codec/http/websocketx/WebSocketFrame;
34 36 6 outMsg Lio/netty/handler/codec/http/websocketx/WebSocketFrame;
Exceptions:
throws java.lang.Exception
Signature: (Lio/netty/channel/ChannelHandlerContext;Lio/netty/handler/codec/http/websocketx/WebSocketFrame;Ljava/util/List<Ljava/lang/Object;>;)V
MethodParameters:
Name Flags
ctx
msg
out
public void handlerRemoved(io.netty.channel.ChannelHandlerContext);
descriptor: (Lio/netty/channel/ChannelHandlerContext;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual io.netty.handler.codec.http.websocketx.extensions.compression.DeflateEncoder.cleanup:()V
1: aload 0
aload 1
invokespecial io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionEncoder.handlerRemoved:(Lio/netty/channel/ChannelHandlerContext;)V
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lio/netty/handler/codec/http/websocketx/extensions/compression/DeflateEncoder;
0 3 1 ctx Lio/netty/channel/ChannelHandlerContext;
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
ctx
private void cleanup();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield io.netty.handler.codec.http.websocketx.extensions.compression.DeflateEncoder.encoder:Lio/netty/channel/embedded/EmbeddedChannel;
ifnull 8
1: aload 0
getfield io.netty.handler.codec.http.websocketx.extensions.compression.DeflateEncoder.encoder:Lio/netty/channel/embedded/EmbeddedChannel;
invokevirtual io.netty.channel.embedded.EmbeddedChannel.finish:()Z
ifeq 7
2: StackMap locals:
StackMap stack:
aload 0
getfield io.netty.handler.codec.http.websocketx.extensions.compression.DeflateEncoder.encoder:Lio/netty/channel/embedded/EmbeddedChannel;
invokevirtual io.netty.channel.embedded.EmbeddedChannel.readOutbound:()Ljava/lang/Object;
checkcast io.netty.buffer.ByteBuf
astore 1
start local 1 3: aload 1
ifnonnull 5
4: goto 7
5: StackMap locals: io.netty.buffer.ByteBuf
StackMap stack:
aload 1
invokevirtual io.netty.buffer.ByteBuf.release:()Z
pop
end local 1 6: goto 2
7: StackMap locals:
StackMap stack:
aload 0
aconst_null
putfield io.netty.handler.codec.http.websocketx.extensions.compression.DeflateEncoder.encoder:Lio/netty/channel/embedded/EmbeddedChannel;
8: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lio/netty/handler/codec/http/websocketx/extensions/compression/DeflateEncoder;
3 6 1 buf Lio/netty/buffer/ByteBuf;
protected void encode(io.netty.channel.ChannelHandlerContext, java.lang.Object, java.util.List);
descriptor: (Lio/netty/channel/ChannelHandlerContext;Ljava/lang/Object;Ljava/util/List;)V
flags: (0x1044) ACC_PROTECTED, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=4, locals=4, args_size=4
0: aload 0
aload 1
aload 2
checkcast io.netty.handler.codec.http.websocketx.WebSocketFrame
aload 3
invokevirtual io.netty.handler.codec.http.websocketx.extensions.compression.DeflateEncoder.encode:(Lio/netty/channel/ChannelHandlerContext;Lio/netty/handler/codec/http/websocketx/WebSocketFrame;Ljava/util/List;)V
return
LocalVariableTable:
Start End Slot Name Signature
Exceptions:
throws java.lang.Exception
}
SourceFile: "DeflateEncoder.java"