class io.undertow.util.MultipartParser$Base64Encoding implements io.undertow.util.MultipartParser$Encoding
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: io.undertow.util.MultipartParser$Base64Encoding
super_class: java.lang.Object
{
private final io.undertow.util.FlexBase64$Decoder decoder;
descriptor: Lio/undertow/util/FlexBase64$Decoder;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final io.undertow.connector.ByteBufferPool bufferPool;
descriptor: Lio/undertow/connector/ByteBufferPool;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private void <init>(io.undertow.connector.ByteBufferPool);
descriptor: (Lio/undertow/connector/ByteBufferPool;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 // io.undertow.util.MultipartParser$Base64Encoding this
start local 1 // io.undertow.connector.ByteBufferPool bufferPool
0: .line 376
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
1: .line 372
aload 0 /* this */
invokestatic io.undertow.util.FlexBase64.createDecoder:()Lio/undertow/util/FlexBase64$Decoder;
putfield io.undertow.util.MultipartParser$Base64Encoding.decoder:Lio/undertow/util/FlexBase64$Decoder;
2: .line 377
aload 0 /* this */
aload 1 /* bufferPool */
putfield io.undertow.util.MultipartParser$Base64Encoding.bufferPool:Lio/undertow/connector/ByteBufferPool;
3: .line 378
return
end local 1 // io.undertow.connector.ByteBufferPool bufferPool
end local 0 // io.undertow.util.MultipartParser$Base64Encoding this
LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lio/undertow/util/MultipartParser$Base64Encoding;
0 4 1 bufferPool Lio/undertow/connector/ByteBufferPool;
MethodParameters:
Name Flags
bufferPool final
public void handle(io.undertow.util.MultipartParser$PartHandler, java.nio.ByteBuffer);
descriptor: (Lio/undertow/util/MultipartParser$PartHandler;Ljava/nio/ByteBuffer;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=7, args_size=3
start local 0 // io.undertow.util.MultipartParser$Base64Encoding this
start local 1 // io.undertow.util.MultipartParser$PartHandler handler
start local 2 // java.nio.ByteBuffer rawData
0: .line 382
aload 0 /* this */
getfield io.undertow.util.MultipartParser$Base64Encoding.bufferPool:Lio/undertow/connector/ByteBufferPool;
invokeinterface io.undertow.connector.ByteBufferPool.allocate:()Lio/undertow/connector/PooledByteBuffer;
astore 3 /* resource */
start local 3 // io.undertow.connector.PooledByteBuffer resource
1: .line 383
aload 3 /* resource */
invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
astore 4 /* buf */
start local 4 // java.nio.ByteBuffer buf
2: .line 386
StackMap locals: io.undertow.connector.PooledByteBuffer java.nio.ByteBuffer
StackMap stack:
aload 4 /* buf */
invokevirtual java.nio.ByteBuffer.clear:()Ljava/nio/Buffer;
pop
3: .line 388
aload 0 /* this */
getfield io.undertow.util.MultipartParser$Base64Encoding.decoder:Lio/undertow/util/FlexBase64$Decoder;
aload 2 /* rawData */
aload 4 /* buf */
invokevirtual io.undertow.util.FlexBase64$Decoder.decode:(Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;)V
4: .line 389
goto 7
StackMap locals:
StackMap stack: java.io.IOException
5: astore 5 /* e */
start local 5 // java.io.IOException e
6: .line 390
new java.lang.RuntimeException
dup
aload 5 /* e */
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 5 // java.io.IOException e
7: .line 392
StackMap locals:
StackMap stack:
aload 4 /* buf */
invokevirtual java.nio.ByteBuffer.flip:()Ljava/nio/Buffer;
pop
8: .line 393
aload 1 /* handler */
aload 4 /* buf */
invokeinterface io.undertow.util.MultipartParser$PartHandler.data:(Ljava/nio/ByteBuffer;)V
9: .line 394
aload 2 /* rawData */
invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
ifne 2
10: .line 395
goto 14
StackMap locals:
StackMap stack: java.lang.Throwable
11: astore 6
12: .line 396
aload 3 /* resource */
invokeinterface io.undertow.connector.PooledByteBuffer.close:()V
13: .line 397
aload 6
athrow
14: .line 396
StackMap locals:
StackMap stack:
aload 3 /* resource */
invokeinterface io.undertow.connector.PooledByteBuffer.close:()V
15: .line 398
return
end local 4 // java.nio.ByteBuffer buf
end local 3 // io.undertow.connector.PooledByteBuffer resource
end local 2 // java.nio.ByteBuffer rawData
end local 1 // io.undertow.util.MultipartParser$PartHandler handler
end local 0 // io.undertow.util.MultipartParser$Base64Encoding this
LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lio/undertow/util/MultipartParser$Base64Encoding;
0 16 1 handler Lio/undertow/util/MultipartParser$PartHandler;
0 16 2 rawData Ljava/nio/ByteBuffer;
1 16 3 resource Lio/undertow/connector/PooledByteBuffer;
2 16 4 buf Ljava/nio/ByteBuffer;
6 7 5 e Ljava/io/IOException;
Exception table:
from to target type
3 4 5 Class java.io.IOException
2 11 11 any
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
handler final
rawData final
}
SourceFile: "MultipartParser.java"
NestHost: io.undertow.util.MultipartParser
InnerClasses:
public final Decoder = io.undertow.util.FlexBase64$Decoder of io.undertow.util.FlexBase64
private Base64Encoding = io.undertow.util.MultipartParser$Base64Encoding of io.undertow.util.MultipartParser
private abstract Encoding = io.undertow.util.MultipartParser$Encoding of io.undertow.util.MultipartParser
public abstract PartHandler = io.undertow.util.MultipartParser$PartHandler of io.undertow.util.MultipartParser