public class io.undertow.io.BlockingReceiverImpl implements io.undertow.io.Receiver
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: io.undertow.io.BlockingReceiverImpl
super_class: java.lang.Object
{
private static final io.undertow.io.Receiver$ErrorCallback END_EXCHANGE;
descriptor: Lio/undertow/io/Receiver$ErrorCallback;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
public static final byte[] EMPTY_BYTE_ARRAY;
descriptor: [B
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
private final io.undertow.server.HttpServerExchange exchange;
descriptor: Lio/undertow/server/HttpServerExchange;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.io.InputStream inputStream;
descriptor: Ljava/io/InputStream;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private int maxBufferSize;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private boolean done;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: new io.undertow.io.BlockingReceiverImpl$1
dup
invokespecial io.undertow.io.BlockingReceiverImpl$1.<init>:()V
putstatic io.undertow.io.BlockingReceiverImpl.END_EXCHANGE:Lio/undertow/io/Receiver$ErrorCallback;
1: iconst_0
newarray 8
putstatic io.undertow.io.BlockingReceiverImpl.EMPTY_BYTE_ARRAY:[B
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(io.undertow.server.HttpServerExchange, java.io.InputStream);
descriptor: (Lio/undertow/server/HttpServerExchange;Ljava/io/InputStream;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
iconst_m1
putfield io.undertow.io.BlockingReceiverImpl.maxBufferSize:I
2: aload 0
iconst_0
putfield io.undertow.io.BlockingReceiverImpl.done:Z
3: aload 0
aload 1
putfield io.undertow.io.BlockingReceiverImpl.exchange:Lio/undertow/server/HttpServerExchange;
4: aload 0
aload 2
putfield io.undertow.io.BlockingReceiverImpl.inputStream:Ljava/io/InputStream;
5: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lio/undertow/io/BlockingReceiverImpl;
0 6 1 exchange Lio/undertow/server/HttpServerExchange;
0 6 2 inputStream Ljava/io/InputStream;
MethodParameters:
Name Flags
exchange
inputStream
public void setMaxBufferSize(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield io.undertow.io.BlockingReceiverImpl.maxBufferSize:I
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/undertow/io/BlockingReceiverImpl;
0 2 1 maxBufferSize I
MethodParameters:
Name Flags
maxBufferSize
public void receiveFullString(io.undertow.io.Receiver$FullStringCallback, io.undertow.io.Receiver$ErrorCallback);
descriptor: (Lio/undertow/io/Receiver$FullStringCallback;Lio/undertow/io/Receiver$ErrorCallback;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
getstatic java.nio.charset.StandardCharsets.ISO_8859_1:Ljava/nio/charset/Charset;
invokevirtual io.undertow.io.BlockingReceiverImpl.receiveFullString:(Lio/undertow/io/Receiver$FullStringCallback;Lio/undertow/io/Receiver$ErrorCallback;Ljava/nio/charset/Charset;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/undertow/io/BlockingReceiverImpl;
0 2 1 callback Lio/undertow/io/Receiver$FullStringCallback;
0 2 2 errorCallback Lio/undertow/io/Receiver$ErrorCallback;
MethodParameters:
Name Flags
callback final
errorCallback
public void receiveFullString(io.undertow.io.Receiver$FullStringCallback);
descriptor: (Lio/undertow/io/Receiver$FullStringCallback;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
getstatic io.undertow.io.BlockingReceiverImpl.END_EXCHANGE:Lio/undertow/io/Receiver$ErrorCallback;
getstatic java.nio.charset.StandardCharsets.ISO_8859_1:Ljava/nio/charset/Charset;
invokevirtual io.undertow.io.BlockingReceiverImpl.receiveFullString:(Lio/undertow/io/Receiver$FullStringCallback;Lio/undertow/io/Receiver$ErrorCallback;Ljava/nio/charset/Charset;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/undertow/io/BlockingReceiverImpl;
0 2 1 callback Lio/undertow/io/Receiver$FullStringCallback;
MethodParameters:
Name Flags
callback
public void receivePartialString(io.undertow.io.Receiver$PartialStringCallback, io.undertow.io.Receiver$ErrorCallback);
descriptor: (Lio/undertow/io/Receiver$PartialStringCallback;Lio/undertow/io/Receiver$ErrorCallback;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
getstatic java.nio.charset.StandardCharsets.ISO_8859_1:Ljava/nio/charset/Charset;
invokevirtual io.undertow.io.BlockingReceiverImpl.receivePartialString:(Lio/undertow/io/Receiver$PartialStringCallback;Lio/undertow/io/Receiver$ErrorCallback;Ljava/nio/charset/Charset;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/undertow/io/BlockingReceiverImpl;
0 2 1 callback Lio/undertow/io/Receiver$PartialStringCallback;
0 2 2 errorCallback Lio/undertow/io/Receiver$ErrorCallback;
MethodParameters:
Name Flags
callback
errorCallback
public void receivePartialString(io.undertow.io.Receiver$PartialStringCallback);
descriptor: (Lio/undertow/io/Receiver$PartialStringCallback;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
getstatic io.undertow.io.BlockingReceiverImpl.END_EXCHANGE:Lio/undertow/io/Receiver$ErrorCallback;
getstatic java.nio.charset.StandardCharsets.ISO_8859_1:Ljava/nio/charset/Charset;
invokevirtual io.undertow.io.BlockingReceiverImpl.receivePartialString:(Lio/undertow/io/Receiver$PartialStringCallback;Lio/undertow/io/Receiver$ErrorCallback;Ljava/nio/charset/Charset;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/undertow/io/BlockingReceiverImpl;
0 2 1 callback Lio/undertow/io/Receiver$PartialStringCallback;
MethodParameters:
Name Flags
callback
public void receiveFullString(io.undertow.io.Receiver$FullStringCallback, io.undertow.io.Receiver$ErrorCallback, java.nio.charset.Charset);
descriptor: (Lio/undertow/io/Receiver$FullStringCallback;Lio/undertow/io/Receiver$ErrorCallback;Ljava/nio/charset/Charset;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=13, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield io.undertow.io.BlockingReceiverImpl.done:Z
ifeq 2
1: getstatic io.undertow.UndertowMessages.MESSAGES:Lio/undertow/UndertowMessages;
invokeinterface io.undertow.UndertowMessages.requestBodyAlreadyRead:()Ljava/lang/IllegalStateException;
athrow
2: StackMap locals:
StackMap stack:
aload 2
ifnonnull 3
getstatic io.undertow.io.BlockingReceiverImpl.END_EXCHANGE:Lio/undertow/io/Receiver$ErrorCallback;
goto 4
StackMap locals:
StackMap stack:
3: aload 2
StackMap locals:
StackMap stack: io.undertow.io.Receiver$ErrorCallback
4: astore 4
start local 4 5: aload 1
ifnonnull 7
6: getstatic io.undertow.UndertowMessages.MESSAGES:Lio/undertow/UndertowMessages;
ldc "callback"
invokeinterface io.undertow.UndertowMessages.argumentCannotBeNull:(Ljava/lang/String;)Ljava/lang/IllegalArgumentException;
athrow
7: StackMap locals: io.undertow.io.Receiver$ErrorCallback
StackMap stack:
aload 0
getfield io.undertow.io.BlockingReceiverImpl.exchange:Lio/undertow/server/HttpServerExchange;
invokevirtual io.undertow.server.HttpServerExchange.isRequestComplete:()Z
ifeq 10
8: aload 1
aload 0
getfield io.undertow.io.BlockingReceiverImpl.exchange:Lio/undertow/server/HttpServerExchange;
ldc ""
invokeinterface io.undertow.io.Receiver$FullStringCallback.handle:(Lio/undertow/server/HttpServerExchange;Ljava/lang/String;)V
9: return
10: StackMap locals:
StackMap stack:
aload 0
getfield io.undertow.io.BlockingReceiverImpl.exchange:Lio/undertow/server/HttpServerExchange;
invokevirtual io.undertow.server.HttpServerExchange.getRequestHeaders:()Lio/undertow/util/HeaderMap;
getstatic io.undertow.util.Headers.CONTENT_LENGTH:Lio/undertow/util/HttpString;
invokevirtual io.undertow.util.HeaderMap.getFirst:(Lio/undertow/util/HttpString;)Ljava/lang/String;
astore 5
start local 5 11: aload 5
ifnull 18
12: aload 5
invokestatic java.lang.Long.parseLong:(Ljava/lang/String;)J
lstore 6
start local 6 13: lload 6
ldc 2147483647
lcmp
ifle 16
14: aload 4
aload 0
getfield io.undertow.io.BlockingReceiverImpl.exchange:Lio/undertow/server/HttpServerExchange;
new io.undertow.io.Receiver$RequestToLargeException
dup
invokespecial io.undertow.io.Receiver$RequestToLargeException.<init>:()V
invokeinterface io.undertow.io.Receiver$ErrorCallback.error:(Lio/undertow/server/HttpServerExchange;Ljava/io/IOException;)V
15: return
16: StackMap locals: java.lang.String long
StackMap stack:
new java.io.ByteArrayOutputStream
dup
lload 6
l2i
invokespecial java.io.ByteArrayOutputStream.<init>:(I)V
astore 8
start local 8 17: goto 20
end local 8 end local 6 18: StackMap locals:
StackMap stack:
ldc -1
lstore 6
start local 6 19: new java.io.ByteArrayOutputStream
dup
invokespecial java.io.ByteArrayOutputStream.<init>:()V
astore 8
start local 8 20: StackMap locals: long java.io.ByteArrayOutputStream
StackMap stack:
aload 0
getfield io.undertow.io.BlockingReceiverImpl.maxBufferSize:I
ifle 24
21: lload 6
aload 0
getfield io.undertow.io.BlockingReceiverImpl.maxBufferSize:I
i2l
lcmp
ifle 24
22: aload 4
aload 0
getfield io.undertow.io.BlockingReceiverImpl.exchange:Lio/undertow/server/HttpServerExchange;
new io.undertow.io.Receiver$RequestToLargeException
dup
invokespecial io.undertow.io.Receiver$RequestToLargeException.<init>:()V
invokeinterface io.undertow.io.Receiver$ErrorCallback.error:(Lio/undertow/server/HttpServerExchange;Ljava/io/IOException;)V
23: return
24: StackMap locals:
StackMap stack:
aconst_null
astore 10
aconst_null
astore 11
25: aload 0
getfield io.undertow.io.BlockingReceiverImpl.exchange:Lio/undertow/server/HttpServerExchange;
invokevirtual io.undertow.server.HttpServerExchange.getConnection:()Lio/undertow/server/ServerConnection;
invokevirtual io.undertow.server.ServerConnection.getByteBufferPool:()Lio/undertow/connector/ByteBufferPool;
invokeinterface io.undertow.connector.ByteBufferPool.getArrayBackedPool:()Lio/undertow/connector/ByteBufferPool;
invokeinterface io.undertow.connector.ByteBufferPool.allocate:()Lio/undertow/connector/PooledByteBuffer;
astore 12
start local 12 26: goto 28
start local 9 27: StackMap locals: io.undertow.io.BlockingReceiverImpl io.undertow.io.Receiver$FullStringCallback io.undertow.io.Receiver$ErrorCallback java.nio.charset.Charset io.undertow.io.Receiver$ErrorCallback java.lang.String long java.io.ByteArrayOutputStream int java.lang.Throwable java.lang.Throwable io.undertow.connector.PooledByteBuffer
StackMap stack:
aload 8
aload 12
invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
invokevirtual java.nio.ByteBuffer.array:()[B
aload 12
invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
invokevirtual java.nio.ByteBuffer.arrayOffset:()I
iload 9
invokevirtual java.io.ByteArrayOutputStream.write:([BII)V
end local 9 28: StackMap locals: io.undertow.io.BlockingReceiverImpl io.undertow.io.Receiver$FullStringCallback io.undertow.io.Receiver$ErrorCallback java.nio.charset.Charset io.undertow.io.Receiver$ErrorCallback java.lang.String long java.io.ByteArrayOutputStream top java.lang.Throwable java.lang.Throwable io.undertow.connector.PooledByteBuffer
StackMap stack:
aload 0
getfield io.undertow.io.BlockingReceiverImpl.inputStream:Ljava/io/InputStream;
aload 12
invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
invokevirtual java.nio.ByteBuffer.array:()[B
aload 12
invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
invokevirtual java.nio.ByteBuffer.arrayOffset:()I
aload 12
invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
invokevirtual java.nio.ByteBuffer.remaining:()I
invokevirtual java.io.InputStream.read:([BII)I
dup
istore 9
start local 9 29: ifgt 27
30: aload 1
aload 0
getfield io.undertow.io.BlockingReceiverImpl.exchange:Lio/undertow/server/HttpServerExchange;
aload 8
aload 3
invokevirtual java.nio.charset.Charset.name:()Ljava/lang/String;
invokevirtual java.io.ByteArrayOutputStream.toString:(Ljava/lang/String;)Ljava/lang/String;
invokeinterface io.undertow.io.Receiver$FullStringCallback.handle:(Lio/undertow/server/HttpServerExchange;Ljava/lang/String;)V
31: aload 12
ifnull 39
aload 12
invokeinterface io.undertow.connector.PooledByteBuffer.close:()V
goto 39
end local 9 StackMap locals:
StackMap stack: java.lang.Throwable
32: astore 10
aload 12
ifnull 33
aload 12
invokeinterface io.undertow.connector.PooledByteBuffer.close:()V
end local 12 StackMap locals:
StackMap stack:
33: aload 10
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
34: astore 11
aload 10
ifnonnull 35
aload 11
astore 10
goto 36
StackMap locals:
StackMap stack:
35: aload 10
aload 11
if_acmpeq 36
aload 10
aload 11
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
36: aload 10
athrow
StackMap locals: io.undertow.io.BlockingReceiverImpl io.undertow.io.Receiver$FullStringCallback io.undertow.io.Receiver$ErrorCallback java.nio.charset.Charset io.undertow.io.Receiver$ErrorCallback java.lang.String long java.io.ByteArrayOutputStream
StackMap stack: java.io.IOException
37: astore 10
start local 10 38: aload 4
aload 0
getfield io.undertow.io.BlockingReceiverImpl.exchange:Lio/undertow/server/HttpServerExchange;
aload 10
invokeinterface io.undertow.io.Receiver$ErrorCallback.error:(Lio/undertow/server/HttpServerExchange;Ljava/io/IOException;)V
end local 10 39: StackMap locals:
StackMap stack:
return
end local 8 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 40 0 this Lio/undertow/io/BlockingReceiverImpl;
0 40 1 callback Lio/undertow/io/Receiver$FullStringCallback;
0 40 2 errorCallback Lio/undertow/io/Receiver$ErrorCallback;
0 40 3 charset Ljava/nio/charset/Charset;
5 40 4 error Lio/undertow/io/Receiver$ErrorCallback;
11 40 5 contentLengthString Ljava/lang/String;
13 18 6 contentLength J
19 40 6 contentLength J
17 18 8 sb Ljava/io/ByteArrayOutputStream;
20 40 8 sb Ljava/io/ByteArrayOutputStream;
27 28 9 s I
29 32 9 s I
26 33 12 pooled Lio/undertow/connector/PooledByteBuffer;
38 39 10 e Ljava/io/IOException;
Exception table:
from to target type
26 31 32 any
25 34 34 any
24 37 37 Class java.io.IOException
MethodParameters:
Name Flags
callback final
errorCallback final
charset final
public void receiveFullString(io.undertow.io.Receiver$FullStringCallback, java.nio.charset.Charset);
descriptor: (Lio/undertow/io/Receiver$FullStringCallback;Ljava/nio/charset/Charset;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
getstatic io.undertow.io.BlockingReceiverImpl.END_EXCHANGE:Lio/undertow/io/Receiver$ErrorCallback;
aload 2
invokevirtual io.undertow.io.BlockingReceiverImpl.receiveFullString:(Lio/undertow/io/Receiver$FullStringCallback;Lio/undertow/io/Receiver$ErrorCallback;Ljava/nio/charset/Charset;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/undertow/io/BlockingReceiverImpl;
0 2 1 callback Lio/undertow/io/Receiver$FullStringCallback;
0 2 2 charset Ljava/nio/charset/Charset;
MethodParameters:
Name Flags
callback
charset
public void receivePartialString(io.undertow.io.Receiver$PartialStringCallback, io.undertow.io.Receiver$ErrorCallback, java.nio.charset.Charset);
descriptor: (Lio/undertow/io/Receiver$PartialStringCallback;Lio/undertow/io/Receiver$ErrorCallback;Ljava/nio/charset/Charset;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=14, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield io.undertow.io.BlockingReceiverImpl.done:Z
ifeq 2
1: getstatic io.undertow.UndertowMessages.MESSAGES:Lio/undertow/UndertowMessages;
invokeinterface io.undertow.UndertowMessages.requestBodyAlreadyRead:()Ljava/lang/IllegalStateException;
athrow
2: StackMap locals:
StackMap stack:
aload 2
ifnonnull 3
getstatic io.undertow.io.BlockingReceiverImpl.END_EXCHANGE:Lio/undertow/io/Receiver$ErrorCallback;
goto 4
StackMap locals:
StackMap stack:
3: aload 2
StackMap locals:
StackMap stack: io.undertow.io.Receiver$ErrorCallback
4: astore 4
start local 4 5: aload 1
ifnonnull 7
6: getstatic io.undertow.UndertowMessages.MESSAGES:Lio/undertow/UndertowMessages;
ldc "callback"
invokeinterface io.undertow.UndertowMessages.argumentCannotBeNull:(Ljava/lang/String;)Ljava/lang/IllegalArgumentException;
athrow
7: StackMap locals: io.undertow.io.Receiver$ErrorCallback
StackMap stack:
aload 0
getfield io.undertow.io.BlockingReceiverImpl.exchange:Lio/undertow/server/HttpServerExchange;
invokevirtual io.undertow.server.HttpServerExchange.isRequestComplete:()Z
ifeq 10
8: aload 1
aload 0
getfield io.undertow.io.BlockingReceiverImpl.exchange:Lio/undertow/server/HttpServerExchange;
ldc ""
iconst_1
invokeinterface io.undertow.io.Receiver$PartialStringCallback.handle:(Lio/undertow/server/HttpServerExchange;Ljava/lang/String;Z)V
9: return
10: StackMap locals:
StackMap stack:
aload 0
getfield io.undertow.io.BlockingReceiverImpl.exchange:Lio/undertow/server/HttpServerExchange;
invokevirtual io.undertow.server.HttpServerExchange.getRequestHeaders:()Lio/undertow/util/HeaderMap;
getstatic io.undertow.util.Headers.CONTENT_LENGTH:Lio/undertow/util/HttpString;
invokevirtual io.undertow.util.HeaderMap.getFirst:(Lio/undertow/util/HttpString;)Ljava/lang/String;
astore 5
start local 5 11: aload 5
ifnull 16
12: aload 5
invokestatic java.lang.Long.parseLong:(Ljava/lang/String;)J
lstore 6
start local 6 13: lload 6
ldc 2147483647
lcmp
ifle 17
14: aload 4
aload 0
getfield io.undertow.io.BlockingReceiverImpl.exchange:Lio/undertow/server/HttpServerExchange;
new io.undertow.io.Receiver$RequestToLargeException
dup
invokespecial io.undertow.io.Receiver$RequestToLargeException.<init>:()V
invokeinterface io.undertow.io.Receiver$ErrorCallback.error:(Lio/undertow/server/HttpServerExchange;Ljava/io/IOException;)V
15: return
end local 6 16: StackMap locals: java.lang.String
StackMap stack:
ldc -1
lstore 6
start local 6 17: StackMap locals: long
StackMap stack:
aload 0
getfield io.undertow.io.BlockingReceiverImpl.maxBufferSize:I
ifle 21
18: lload 6
aload 0
getfield io.undertow.io.BlockingReceiverImpl.maxBufferSize:I
i2l
lcmp
ifle 21
19: aload 4
aload 0
getfield io.undertow.io.BlockingReceiverImpl.exchange:Lio/undertow/server/HttpServerExchange;
new io.undertow.io.Receiver$RequestToLargeException
dup
invokespecial io.undertow.io.Receiver$RequestToLargeException.<init>:()V
invokeinterface io.undertow.io.Receiver$ErrorCallback.error:(Lio/undertow/server/HttpServerExchange;Ljava/io/IOException;)V
20: return
21: StackMap locals:
StackMap stack:
aload 3
invokevirtual java.nio.charset.Charset.newDecoder:()Ljava/nio/charset/CharsetDecoder;
astore 8
start local 8 22: aconst_null
astore 10
aconst_null
astore 11
23: aload 0
getfield io.undertow.io.BlockingReceiverImpl.exchange:Lio/undertow/server/HttpServerExchange;
invokevirtual io.undertow.server.HttpServerExchange.getConnection:()Lio/undertow/server/ServerConnection;
invokevirtual io.undertow.server.ServerConnection.getByteBufferPool:()Lio/undertow/connector/ByteBufferPool;
invokeinterface io.undertow.connector.ByteBufferPool.getArrayBackedPool:()Lio/undertow/connector/ByteBufferPool;
invokeinterface io.undertow.connector.ByteBufferPool.allocate:()Lio/undertow/connector/PooledByteBuffer;
astore 12
start local 12 24: goto 29
start local 9 25: StackMap locals: io.undertow.io.BlockingReceiverImpl io.undertow.io.Receiver$PartialStringCallback io.undertow.io.Receiver$ErrorCallback java.nio.charset.Charset io.undertow.io.Receiver$ErrorCallback java.lang.String long java.nio.charset.CharsetDecoder int java.lang.Throwable java.lang.Throwable io.undertow.connector.PooledByteBuffer
StackMap stack:
aload 12
invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
iload 9
invokevirtual java.nio.ByteBuffer.limit:(I)Ljava/nio/Buffer;
pop
26: aload 8
aload 12
invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
invokevirtual java.nio.charset.CharsetDecoder.decode:(Ljava/nio/ByteBuffer;)Ljava/nio/CharBuffer;
astore 13
start local 13 27: aload 1
aload 0
getfield io.undertow.io.BlockingReceiverImpl.exchange:Lio/undertow/server/HttpServerExchange;
aload 13
invokevirtual java.nio.CharBuffer.toString:()Ljava/lang/String;
iconst_0
invokeinterface io.undertow.io.Receiver$PartialStringCallback.handle:(Lio/undertow/server/HttpServerExchange;Ljava/lang/String;Z)V
28: aload 12
invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
invokevirtual java.nio.ByteBuffer.clear:()Ljava/nio/Buffer;
pop
end local 13 end local 9 29: StackMap locals: io.undertow.io.BlockingReceiverImpl io.undertow.io.Receiver$PartialStringCallback io.undertow.io.Receiver$ErrorCallback java.nio.charset.Charset io.undertow.io.Receiver$ErrorCallback java.lang.String long java.nio.charset.CharsetDecoder top java.lang.Throwable java.lang.Throwable io.undertow.connector.PooledByteBuffer
StackMap stack:
aload 0
getfield io.undertow.io.BlockingReceiverImpl.inputStream:Ljava/io/InputStream;
aload 12
invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
invokevirtual java.nio.ByteBuffer.array:()[B
aload 12
invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
invokevirtual java.nio.ByteBuffer.arrayOffset:()I
aload 12
invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
invokevirtual java.nio.ByteBuffer.remaining:()I
invokevirtual java.io.InputStream.read:([BII)I
dup
istore 9
start local 9 30: ifgt 25
31: aload 1
aload 0
getfield io.undertow.io.BlockingReceiverImpl.exchange:Lio/undertow/server/HttpServerExchange;
ldc ""
iconst_1
invokeinterface io.undertow.io.Receiver$PartialStringCallback.handle:(Lio/undertow/server/HttpServerExchange;Ljava/lang/String;Z)V
32: aload 12
ifnull 40
aload 12
invokeinterface io.undertow.connector.PooledByteBuffer.close:()V
goto 40
end local 9 StackMap locals:
StackMap stack: java.lang.Throwable
33: astore 10
aload 12
ifnull 34
aload 12
invokeinterface io.undertow.connector.PooledByteBuffer.close:()V
end local 12 StackMap locals:
StackMap stack:
34: aload 10
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
35: astore 11
aload 10
ifnonnull 36
aload 11
astore 10
goto 37
StackMap locals:
StackMap stack:
36: aload 10
aload 11
if_acmpeq 37
aload 10
aload 11
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
37: aload 10
athrow
StackMap locals: io.undertow.io.BlockingReceiverImpl io.undertow.io.Receiver$PartialStringCallback io.undertow.io.Receiver$ErrorCallback java.nio.charset.Charset io.undertow.io.Receiver$ErrorCallback java.lang.String long java.nio.charset.CharsetDecoder
StackMap stack: java.io.IOException
38: astore 10
start local 10 39: aload 4
aload 0
getfield io.undertow.io.BlockingReceiverImpl.exchange:Lio/undertow/server/HttpServerExchange;
aload 10
invokeinterface io.undertow.io.Receiver$ErrorCallback.error:(Lio/undertow/server/HttpServerExchange;Ljava/io/IOException;)V
end local 10 40: StackMap locals:
StackMap stack:
return
end local 8 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 41 0 this Lio/undertow/io/BlockingReceiverImpl;
0 41 1 callback Lio/undertow/io/Receiver$PartialStringCallback;
0 41 2 errorCallback Lio/undertow/io/Receiver$ErrorCallback;
0 41 3 charset Ljava/nio/charset/Charset;
5 41 4 error Lio/undertow/io/Receiver$ErrorCallback;
11 41 5 contentLengthString Ljava/lang/String;
13 16 6 contentLength J
17 41 6 contentLength J
22 41 8 decoder Ljava/nio/charset/CharsetDecoder;
25 29 9 s I
30 33 9 s I
24 34 12 pooled Lio/undertow/connector/PooledByteBuffer;
27 29 13 res Ljava/nio/CharBuffer;
39 40 10 e Ljava/io/IOException;
Exception table:
from to target type
24 32 33 any
23 35 35 any
22 38 38 Class java.io.IOException
MethodParameters:
Name Flags
callback final
errorCallback final
charset
public void receivePartialString(io.undertow.io.Receiver$PartialStringCallback, java.nio.charset.Charset);
descriptor: (Lio/undertow/io/Receiver$PartialStringCallback;Ljava/nio/charset/Charset;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
getstatic io.undertow.io.BlockingReceiverImpl.END_EXCHANGE:Lio/undertow/io/Receiver$ErrorCallback;
aload 2
invokevirtual io.undertow.io.BlockingReceiverImpl.receivePartialString:(Lio/undertow/io/Receiver$PartialStringCallback;Lio/undertow/io/Receiver$ErrorCallback;Ljava/nio/charset/Charset;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/undertow/io/BlockingReceiverImpl;
0 2 1 callback Lio/undertow/io/Receiver$PartialStringCallback;
0 2 2 charset Ljava/nio/charset/Charset;
MethodParameters:
Name Flags
callback
charset
public void receiveFullBytes(io.undertow.io.Receiver$FullBytesCallback, io.undertow.io.Receiver$ErrorCallback);
descriptor: (Lio/undertow/io/Receiver$FullBytesCallback;Lio/undertow/io/Receiver$ErrorCallback;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=12, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield io.undertow.io.BlockingReceiverImpl.done:Z
ifeq 2
1: getstatic io.undertow.UndertowMessages.MESSAGES:Lio/undertow/UndertowMessages;
invokeinterface io.undertow.UndertowMessages.requestBodyAlreadyRead:()Ljava/lang/IllegalStateException;
athrow
2: StackMap locals:
StackMap stack:
aload 2
ifnonnull 3
getstatic io.undertow.io.BlockingReceiverImpl.END_EXCHANGE:Lio/undertow/io/Receiver$ErrorCallback;
goto 4
StackMap locals:
StackMap stack:
3: aload 2
StackMap locals:
StackMap stack: io.undertow.io.Receiver$ErrorCallback
4: astore 3
start local 3 5: aload 1
ifnonnull 7
6: getstatic io.undertow.UndertowMessages.MESSAGES:Lio/undertow/UndertowMessages;
ldc "callback"
invokeinterface io.undertow.UndertowMessages.argumentCannotBeNull:(Ljava/lang/String;)Ljava/lang/IllegalArgumentException;
athrow
7: StackMap locals: io.undertow.io.Receiver$ErrorCallback
StackMap stack:
aload 0
getfield io.undertow.io.BlockingReceiverImpl.exchange:Lio/undertow/server/HttpServerExchange;
invokevirtual io.undertow.server.HttpServerExchange.isRequestComplete:()Z
ifeq 10
8: aload 1
aload 0
getfield io.undertow.io.BlockingReceiverImpl.exchange:Lio/undertow/server/HttpServerExchange;
getstatic io.undertow.io.BlockingReceiverImpl.EMPTY_BYTE_ARRAY:[B
invokeinterface io.undertow.io.Receiver$FullBytesCallback.handle:(Lio/undertow/server/HttpServerExchange;[B)V
9: return
10: StackMap locals:
StackMap stack:
aload 0
getfield io.undertow.io.BlockingReceiverImpl.exchange:Lio/undertow/server/HttpServerExchange;
invokevirtual io.undertow.server.HttpServerExchange.getRequestHeaders:()Lio/undertow/util/HeaderMap;
getstatic io.undertow.util.Headers.CONTENT_LENGTH:Lio/undertow/util/HttpString;
invokevirtual io.undertow.util.HeaderMap.getFirst:(Lio/undertow/util/HttpString;)Ljava/lang/String;
astore 4
start local 4 11: aload 4
ifnull 18
12: aload 4
invokestatic java.lang.Long.parseLong:(Ljava/lang/String;)J
lstore 5
start local 5 13: lload 5
ldc 2147483647
lcmp
ifle 16
14: aload 3
aload 0
getfield io.undertow.io.BlockingReceiverImpl.exchange:Lio/undertow/server/HttpServerExchange;
new io.undertow.io.Receiver$RequestToLargeException
dup
invokespecial io.undertow.io.Receiver$RequestToLargeException.<init>:()V
invokeinterface io.undertow.io.Receiver$ErrorCallback.error:(Lio/undertow/server/HttpServerExchange;Ljava/io/IOException;)V
15: return
16: StackMap locals: java.lang.String long
StackMap stack:
new java.io.ByteArrayOutputStream
dup
lload 5
l2i
invokespecial java.io.ByteArrayOutputStream.<init>:(I)V
astore 7
start local 7 17: goto 20
end local 7 end local 5 18: StackMap locals:
StackMap stack:
ldc -1
lstore 5
start local 5 19: new java.io.ByteArrayOutputStream
dup
invokespecial java.io.ByteArrayOutputStream.<init>:()V
astore 7
start local 7 20: StackMap locals: long java.io.ByteArrayOutputStream
StackMap stack:
aload 0
getfield io.undertow.io.BlockingReceiverImpl.maxBufferSize:I
ifle 24
21: lload 5
aload 0
getfield io.undertow.io.BlockingReceiverImpl.maxBufferSize:I
i2l
lcmp
ifle 24
22: aload 3
aload 0
getfield io.undertow.io.BlockingReceiverImpl.exchange:Lio/undertow/server/HttpServerExchange;
new io.undertow.io.Receiver$RequestToLargeException
dup
invokespecial io.undertow.io.Receiver$RequestToLargeException.<init>:()V
invokeinterface io.undertow.io.Receiver$ErrorCallback.error:(Lio/undertow/server/HttpServerExchange;Ljava/io/IOException;)V
23: return
24: StackMap locals:
StackMap stack:
aconst_null
astore 9
aconst_null
astore 10
25: aload 0
getfield io.undertow.io.BlockingReceiverImpl.exchange:Lio/undertow/server/HttpServerExchange;
invokevirtual io.undertow.server.HttpServerExchange.getConnection:()Lio/undertow/server/ServerConnection;
invokevirtual io.undertow.server.ServerConnection.getByteBufferPool:()Lio/undertow/connector/ByteBufferPool;
invokeinterface io.undertow.connector.ByteBufferPool.getArrayBackedPool:()Lio/undertow/connector/ByteBufferPool;
invokeinterface io.undertow.connector.ByteBufferPool.allocate:()Lio/undertow/connector/PooledByteBuffer;
astore 11
start local 11 26: goto 28
start local 8 27: StackMap locals: io.undertow.io.BlockingReceiverImpl io.undertow.io.Receiver$FullBytesCallback io.undertow.io.Receiver$ErrorCallback io.undertow.io.Receiver$ErrorCallback java.lang.String long java.io.ByteArrayOutputStream int java.lang.Throwable java.lang.Throwable io.undertow.connector.PooledByteBuffer
StackMap stack:
aload 7
aload 11
invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
invokevirtual java.nio.ByteBuffer.array:()[B
aload 11
invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
invokevirtual java.nio.ByteBuffer.arrayOffset:()I
iload 8
invokevirtual java.io.ByteArrayOutputStream.write:([BII)V
end local 8 28: StackMap locals: io.undertow.io.BlockingReceiverImpl io.undertow.io.Receiver$FullBytesCallback io.undertow.io.Receiver$ErrorCallback io.undertow.io.Receiver$ErrorCallback java.lang.String long java.io.ByteArrayOutputStream top java.lang.Throwable java.lang.Throwable io.undertow.connector.PooledByteBuffer
StackMap stack:
aload 0
getfield io.undertow.io.BlockingReceiverImpl.inputStream:Ljava/io/InputStream;
aload 11
invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
invokevirtual java.nio.ByteBuffer.array:()[B
aload 11
invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
invokevirtual java.nio.ByteBuffer.arrayOffset:()I
aload 11
invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
invokevirtual java.nio.ByteBuffer.remaining:()I
invokevirtual java.io.InputStream.read:([BII)I
dup
istore 8
start local 8 29: ifgt 27
30: aload 1
aload 0
getfield io.undertow.io.BlockingReceiverImpl.exchange:Lio/undertow/server/HttpServerExchange;
aload 7
invokevirtual java.io.ByteArrayOutputStream.toByteArray:()[B
invokeinterface io.undertow.io.Receiver$FullBytesCallback.handle:(Lio/undertow/server/HttpServerExchange;[B)V
31: aload 11
ifnull 39
aload 11
invokeinterface io.undertow.connector.PooledByteBuffer.close:()V
goto 39
end local 8 StackMap locals:
StackMap stack: java.lang.Throwable
32: astore 9
aload 11
ifnull 33
aload 11
invokeinterface io.undertow.connector.PooledByteBuffer.close:()V
end local 11 StackMap locals:
StackMap stack:
33: aload 9
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
34: astore 10
aload 9
ifnonnull 35
aload 10
astore 9
goto 36
StackMap locals:
StackMap stack:
35: aload 9
aload 10
if_acmpeq 36
aload 9
aload 10
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
36: aload 9
athrow
StackMap locals: io.undertow.io.BlockingReceiverImpl io.undertow.io.Receiver$FullBytesCallback io.undertow.io.Receiver$ErrorCallback io.undertow.io.Receiver$ErrorCallback java.lang.String long java.io.ByteArrayOutputStream
StackMap stack: java.io.IOException
37: astore 9
start local 9 38: aload 3
aload 0
getfield io.undertow.io.BlockingReceiverImpl.exchange:Lio/undertow/server/HttpServerExchange;
aload 9
invokeinterface io.undertow.io.Receiver$ErrorCallback.error:(Lio/undertow/server/HttpServerExchange;Ljava/io/IOException;)V
end local 9 39: StackMap locals:
StackMap stack:
return
end local 7 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 40 0 this Lio/undertow/io/BlockingReceiverImpl;
0 40 1 callback Lio/undertow/io/Receiver$FullBytesCallback;
0 40 2 errorCallback Lio/undertow/io/Receiver$ErrorCallback;
5 40 3 error Lio/undertow/io/Receiver$ErrorCallback;
11 40 4 contentLengthString Ljava/lang/String;
13 18 5 contentLength J
19 40 5 contentLength J
17 18 7 sb Ljava/io/ByteArrayOutputStream;
20 40 7 sb Ljava/io/ByteArrayOutputStream;
27 28 8 s I
29 32 8 s I
26 33 11 pooled Lio/undertow/connector/PooledByteBuffer;
38 39 9 e Ljava/io/IOException;
Exception table:
from to target type
26 31 32 any
25 34 34 any
24 37 37 Class java.io.IOException
MethodParameters:
Name Flags
callback final
errorCallback final
public void receiveFullBytes(io.undertow.io.Receiver$FullBytesCallback);
descriptor: (Lio/undertow/io/Receiver$FullBytesCallback;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
getstatic io.undertow.io.BlockingReceiverImpl.END_EXCHANGE:Lio/undertow/io/Receiver$ErrorCallback;
invokevirtual io.undertow.io.BlockingReceiverImpl.receiveFullBytes:(Lio/undertow/io/Receiver$FullBytesCallback;Lio/undertow/io/Receiver$ErrorCallback;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/undertow/io/BlockingReceiverImpl;
0 2 1 callback Lio/undertow/io/Receiver$FullBytesCallback;
MethodParameters:
Name Flags
callback
public void receivePartialBytes(io.undertow.io.Receiver$PartialBytesCallback, io.undertow.io.Receiver$ErrorCallback);
descriptor: (Lio/undertow/io/Receiver$PartialBytesCallback;Lio/undertow/io/Receiver$ErrorCallback;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=12, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield io.undertow.io.BlockingReceiverImpl.done:Z
ifeq 2
1: getstatic io.undertow.UndertowMessages.MESSAGES:Lio/undertow/UndertowMessages;
invokeinterface io.undertow.UndertowMessages.requestBodyAlreadyRead:()Ljava/lang/IllegalStateException;
athrow
2: StackMap locals:
StackMap stack:
aload 2
ifnonnull 3
getstatic io.undertow.io.BlockingReceiverImpl.END_EXCHANGE:Lio/undertow/io/Receiver$ErrorCallback;
goto 4
StackMap locals:
StackMap stack:
3: aload 2
StackMap locals:
StackMap stack: io.undertow.io.Receiver$ErrorCallback
4: astore 3
start local 3 5: aload 1
ifnonnull 7
6: getstatic io.undertow.UndertowMessages.MESSAGES:Lio/undertow/UndertowMessages;
ldc "callback"
invokeinterface io.undertow.UndertowMessages.argumentCannotBeNull:(Ljava/lang/String;)Ljava/lang/IllegalArgumentException;
athrow
7: StackMap locals: io.undertow.io.Receiver$ErrorCallback
StackMap stack:
aload 0
getfield io.undertow.io.BlockingReceiverImpl.exchange:Lio/undertow/server/HttpServerExchange;
invokevirtual io.undertow.server.HttpServerExchange.isRequestComplete:()Z
ifeq 10
8: aload 1
aload 0
getfield io.undertow.io.BlockingReceiverImpl.exchange:Lio/undertow/server/HttpServerExchange;
getstatic io.undertow.io.BlockingReceiverImpl.EMPTY_BYTE_ARRAY:[B
iconst_1
invokeinterface io.undertow.io.Receiver$PartialBytesCallback.handle:(Lio/undertow/server/HttpServerExchange;[BZ)V
9: return
10: StackMap locals:
StackMap stack:
aload 0
getfield io.undertow.io.BlockingReceiverImpl.exchange:Lio/undertow/server/HttpServerExchange;
invokevirtual io.undertow.server.HttpServerExchange.getRequestHeaders:()Lio/undertow/util/HeaderMap;
getstatic io.undertow.util.Headers.CONTENT_LENGTH:Lio/undertow/util/HttpString;
invokevirtual io.undertow.util.HeaderMap.getFirst:(Lio/undertow/util/HttpString;)Ljava/lang/String;
astore 4
start local 4 11: aload 4
ifnull 16
12: aload 4
invokestatic java.lang.Long.parseLong:(Ljava/lang/String;)J
lstore 5
start local 5 13: lload 5
ldc 2147483647
lcmp
ifle 17
14: aload 3
aload 0
getfield io.undertow.io.BlockingReceiverImpl.exchange:Lio/undertow/server/HttpServerExchange;
new io.undertow.io.Receiver$RequestToLargeException
dup
invokespecial io.undertow.io.Receiver$RequestToLargeException.<init>:()V
invokeinterface io.undertow.io.Receiver$ErrorCallback.error:(Lio/undertow/server/HttpServerExchange;Ljava/io/IOException;)V
15: return
end local 5 16: StackMap locals: java.lang.String
StackMap stack:
ldc -1
lstore 5
start local 5 17: StackMap locals: long
StackMap stack:
aload 0
getfield io.undertow.io.BlockingReceiverImpl.maxBufferSize:I
ifle 21
18: lload 5
aload 0
getfield io.undertow.io.BlockingReceiverImpl.maxBufferSize:I
i2l
lcmp
ifle 21
19: aload 3
aload 0
getfield io.undertow.io.BlockingReceiverImpl.exchange:Lio/undertow/server/HttpServerExchange;
new io.undertow.io.Receiver$RequestToLargeException
dup
invokespecial io.undertow.io.Receiver$RequestToLargeException.<init>:()V
invokeinterface io.undertow.io.Receiver$ErrorCallback.error:(Lio/undertow/server/HttpServerExchange;Ljava/io/IOException;)V
20: return
21: StackMap locals:
StackMap stack:
aconst_null
astore 8
aconst_null
astore 9
22: aload 0
getfield io.undertow.io.BlockingReceiverImpl.exchange:Lio/undertow/server/HttpServerExchange;
invokevirtual io.undertow.server.HttpServerExchange.getConnection:()Lio/undertow/server/ServerConnection;
invokevirtual io.undertow.server.ServerConnection.getByteBufferPool:()Lio/undertow/connector/ByteBufferPool;
invokeinterface io.undertow.connector.ByteBufferPool.getArrayBackedPool:()Lio/undertow/connector/ByteBufferPool;
invokeinterface io.undertow.connector.ByteBufferPool.allocate:()Lio/undertow/connector/PooledByteBuffer;
astore 10
start local 10 23: goto 27
start local 7 24: StackMap locals: io.undertow.io.BlockingReceiverImpl io.undertow.io.Receiver$PartialBytesCallback io.undertow.io.Receiver$ErrorCallback io.undertow.io.Receiver$ErrorCallback java.lang.String long int java.lang.Throwable java.lang.Throwable io.undertow.connector.PooledByteBuffer
StackMap stack:
iload 7
newarray 8
astore 11
start local 11 25: aload 10
invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
invokevirtual java.nio.ByteBuffer.array:()[B
aload 10
invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
invokevirtual java.nio.ByteBuffer.arrayOffset:()I
aload 11
iconst_0
iload 7
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
26: aload 1
aload 0
getfield io.undertow.io.BlockingReceiverImpl.exchange:Lio/undertow/server/HttpServerExchange;
aload 11
iconst_0
invokeinterface io.undertow.io.Receiver$PartialBytesCallback.handle:(Lio/undertow/server/HttpServerExchange;[BZ)V
end local 11 end local 7 27: StackMap locals: io.undertow.io.BlockingReceiverImpl io.undertow.io.Receiver$PartialBytesCallback io.undertow.io.Receiver$ErrorCallback io.undertow.io.Receiver$ErrorCallback java.lang.String long top java.lang.Throwable java.lang.Throwable io.undertow.connector.PooledByteBuffer
StackMap stack:
aload 0
getfield io.undertow.io.BlockingReceiverImpl.inputStream:Ljava/io/InputStream;
aload 10
invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
invokevirtual java.nio.ByteBuffer.array:()[B
aload 10
invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
invokevirtual java.nio.ByteBuffer.arrayOffset:()I
aload 10
invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
invokevirtual java.nio.ByteBuffer.remaining:()I
invokevirtual java.io.InputStream.read:([BII)I
dup
istore 7
start local 7 28: ifgt 24
29: aload 1
aload 0
getfield io.undertow.io.BlockingReceiverImpl.exchange:Lio/undertow/server/HttpServerExchange;
getstatic io.undertow.io.BlockingReceiverImpl.EMPTY_BYTE_ARRAY:[B
iconst_1
invokeinterface io.undertow.io.Receiver$PartialBytesCallback.handle:(Lio/undertow/server/HttpServerExchange;[BZ)V
30: aload 10
ifnull 38
aload 10
invokeinterface io.undertow.connector.PooledByteBuffer.close:()V
goto 38
end local 7 StackMap locals:
StackMap stack: java.lang.Throwable
31: astore 8
aload 10
ifnull 32
aload 10
invokeinterface io.undertow.connector.PooledByteBuffer.close:()V
end local 10 StackMap locals:
StackMap stack:
32: aload 8
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
33: astore 9
aload 8
ifnonnull 34
aload 9
astore 8
goto 35
StackMap locals:
StackMap stack:
34: aload 8
aload 9
if_acmpeq 35
aload 8
aload 9
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
35: aload 8
athrow
StackMap locals: io.undertow.io.BlockingReceiverImpl io.undertow.io.Receiver$PartialBytesCallback io.undertow.io.Receiver$ErrorCallback io.undertow.io.Receiver$ErrorCallback java.lang.String long
StackMap stack: java.io.IOException
36: astore 8
start local 8 37: aload 3
aload 0
getfield io.undertow.io.BlockingReceiverImpl.exchange:Lio/undertow/server/HttpServerExchange;
aload 8
invokeinterface io.undertow.io.Receiver$ErrorCallback.error:(Lio/undertow/server/HttpServerExchange;Ljava/io/IOException;)V
end local 8 38: StackMap locals:
StackMap stack:
return
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 39 0 this Lio/undertow/io/BlockingReceiverImpl;
0 39 1 callback Lio/undertow/io/Receiver$PartialBytesCallback;
0 39 2 errorCallback Lio/undertow/io/Receiver$ErrorCallback;
5 39 3 error Lio/undertow/io/Receiver$ErrorCallback;
11 39 4 contentLengthString Ljava/lang/String;
13 16 5 contentLength J
17 39 5 contentLength J
24 27 7 s I
28 31 7 s I
23 32 10 pooled Lio/undertow/connector/PooledByteBuffer;
25 27 11 newData [B
37 38 8 e Ljava/io/IOException;
Exception table:
from to target type
23 30 31 any
22 33 33 any
21 36 36 Class java.io.IOException
MethodParameters:
Name Flags
callback final
errorCallback final
public void receivePartialBytes(io.undertow.io.Receiver$PartialBytesCallback);
descriptor: (Lio/undertow/io/Receiver$PartialBytesCallback;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
getstatic io.undertow.io.BlockingReceiverImpl.END_EXCHANGE:Lio/undertow/io/Receiver$ErrorCallback;
invokevirtual io.undertow.io.BlockingReceiverImpl.receivePartialBytes:(Lio/undertow/io/Receiver$PartialBytesCallback;Lio/undertow/io/Receiver$ErrorCallback;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/undertow/io/BlockingReceiverImpl;
0 2 1 callback Lio/undertow/io/Receiver$PartialBytesCallback;
MethodParameters:
Name Flags
callback
public void pause();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=0, locals=1, args_size=1
start local 0 0: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/undertow/io/BlockingReceiverImpl;
public void resume();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=0, locals=1, args_size=1
start local 0 0: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/undertow/io/BlockingReceiverImpl;
}
SourceFile: "BlockingReceiverImpl.java"
NestMembers:
io.undertow.io.BlockingReceiverImpl$1
InnerClasses:
io.undertow.io.BlockingReceiverImpl$1
public abstract ErrorCallback = io.undertow.io.Receiver$ErrorCallback of io.undertow.io.Receiver
public abstract FullBytesCallback = io.undertow.io.Receiver$FullBytesCallback of io.undertow.io.Receiver
public abstract FullStringCallback = io.undertow.io.Receiver$FullStringCallback of io.undertow.io.Receiver
public abstract PartialBytesCallback = io.undertow.io.Receiver$PartialBytesCallback of io.undertow.io.Receiver
public abstract PartialStringCallback = io.undertow.io.Receiver$PartialStringCallback of io.undertow.io.Receiver
public RequestToLargeException = io.undertow.io.Receiver$RequestToLargeException of io.undertow.io.Receiver