public final class org.jboss.resteasy.plugins.providers.ProviderHelper
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: org.jboss.resteasy.plugins.providers.ProviderHelper
super_class: java.lang.Object
{
private void <init>();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/jboss/resteasy/plugins/providers/ProviderHelper;
public static java.lang.String readString(java.io.InputStream);
descriptor: (Ljava/io/InputStream;)Ljava/lang/String;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=5, args_size=1
start local 0 0: sipush 1024
newarray 5
astore 1
start local 1 1: new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 2
start local 2 2: new java.io.BufferedReader
dup
new java.io.InputStreamReader
dup
aload 0
invokespecial java.io.InputStreamReader.<init>:(Ljava/io/InputStream;)V
invokespecial java.io.BufferedReader.<init>:(Ljava/io/Reader;)V
astore 3
start local 3 3: iconst_0
istore 4
start local 4 4: StackMap locals: java.io.InputStream char[] java.lang.StringBuilder java.io.BufferedReader int
StackMap stack:
aload 3
aload 1
iconst_0
sipush 1024
invokevirtual java.io.BufferedReader.read:([CII)I
istore 4
5: iload 4
ifle 7
6: aload 2
aload 1
iconst_0
iload 4
invokevirtual java.lang.StringBuilder.append:([CII)Ljava/lang/StringBuilder;
pop
7: StackMap locals:
StackMap stack:
iload 4
iconst_m1
8: if_icmpgt 4
9: aload 2
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 in Ljava/io/InputStream;
1 10 1 buffer [C
2 10 2 builder Ljava/lang/StringBuilder;
3 10 3 reader Ljava/io/BufferedReader;
4 10 4 wasRead I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
in
public static java.lang.String readString(java.io.InputStream, javax.ws.rs.core.MediaType);
descriptor: (Ljava/io/InputStream;Ljavax/ws/rs/core/MediaType;)Ljava/lang/String;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=7, args_size=2
start local 0 start local 1 0: sipush 1024
newarray 8
astore 2
start local 2 1: new java.io.ByteArrayOutputStream
dup
invokespecial java.io.ByteArrayOutputStream.<init>:()V
astore 3
start local 3 2: iconst_0
istore 4
start local 4 3: StackMap locals: byte[] java.io.ByteArrayOutputStream int
StackMap stack:
aload 0
aload 2
iconst_0
sipush 1024
invokevirtual java.io.InputStream.read:([BII)I
istore 4
4: iload 4
ifle 6
5: aload 3
aload 2
iconst_0
iload 4
invokevirtual java.io.ByteArrayOutputStream.write:([BII)V
6: StackMap locals:
StackMap stack:
iload 4
iconst_m1
7: if_icmpgt 3
8: aload 3
invokevirtual java.io.ByteArrayOutputStream.toByteArray:()[B
astore 5
start local 5 9: aload 1
invokevirtual javax.ws.rs.core.MediaType.getParameters:()Ljava/util/Map;
ldc "charset"
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
astore 6
start local 6 10: aload 6
ifnull 11
new java.lang.String
dup
aload 5
aload 6
invokespecial java.lang.String.<init>:([BLjava/lang/String;)V
areturn
11: StackMap locals: byte[] java.lang.String
StackMap stack:
new java.lang.String
dup
aload 5
getstatic java.nio.charset.StandardCharsets.UTF_8:Ljava/nio/charset/Charset;
invokespecial java.lang.String.<init>:([BLjava/nio/charset/Charset;)V
areturn
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 12 0 in Ljava/io/InputStream;
0 12 1 mediaType Ljavax/ws/rs/core/MediaType;
1 12 2 buffer [B
2 12 3 builder Ljava/io/ByteArrayOutputStream;
3 12 4 wasRead I
9 12 5 bytes [B
10 12 6 charset Ljava/lang/String;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
in
mediaType
public static java.util.List<javax.ws.rs.core.MediaType> getAvailableMediaTypes(java.lang.String[]);
descriptor: ([Ljava/lang/String;)Ljava/util/List;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=6, args_size=1
start local 0 0: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 1
start local 1 1: aload 0
dup
astore 5
arraylength
istore 4
iconst_0
istore 3
goto 5
StackMap locals: java.lang.String[] java.util.List top int int java.lang.String[]
StackMap stack:
2: aload 5
iload 3
aaload
astore 2
start local 2 3: aload 1
aload 2
invokestatic javax.ws.rs.core.MediaType.valueOf:(Ljava/lang/String;)Ljavax/ws/rs/core/MediaType;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 2 4: iinc 3 1
StackMap locals:
StackMap stack:
5: iload 3
iload 4
if_icmplt 2
6: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 mediaTypes [Ljava/lang/String;
1 7 1 types Ljava/util/List<Ljavax/ws/rs/core/MediaType;>;
3 4 2 mediaType Ljava/lang/String;
Signature: ([Ljava/lang/String;)Ljava/util/List<Ljavax/ws/rs/core/MediaType;>;
MethodParameters:
Name Flags
mediaTypes
public static java.util.List<javax.ws.rs.core.Variant> getAvailableVariants(java.lang.String[]);
descriptor: ([Ljava/lang/String;)Ljava/util/List;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokestatic org.jboss.resteasy.plugins.providers.ProviderHelper.getAvailableMediaTypes:([Ljava/lang/String;)Ljava/util/List;
invokestatic org.jboss.resteasy.plugins.providers.ProviderHelper.getAvailableVariants:(Ljava/util/List;)Ljava/util/List;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 mediaTypes [Ljava/lang/String;
Signature: ([Ljava/lang/String;)Ljava/util/List<Ljavax/ws/rs/core/Variant;>;
MethodParameters:
Name Flags
mediaTypes
public static java.util.List<javax.ws.rs.core.Variant> getAvailableVariants(java.util.List<javax.ws.rs.core.MediaType>);
descriptor: (Ljava/util/List;)Ljava/util/List;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=3, args_size=1
start local 0 0: invokestatic javax.ws.rs.core.Variant$VariantListBuilder.newInstance:()Ljavax/ws/rs/core/Variant$VariantListBuilder;
astore 1
start local 1 1: aload 0
aload 0
invokeinterface java.util.List.size:()I
anewarray javax.ws.rs.core.MediaType
invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
checkcast javax.ws.rs.core.MediaType[]
astore 2
start local 2 2: aload 1
aload 2
invokevirtual javax.ws.rs.core.Variant$VariantListBuilder.mediaTypes:([Ljavax/ws/rs/core/MediaType;)Ljavax/ws/rs/core/Variant$VariantListBuilder;
pop
3: aload 1
invokevirtual javax.ws.rs.core.Variant$VariantListBuilder.build:()Ljava/util/List;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 mediaTypes Ljava/util/List<Ljavax/ws/rs/core/MediaType;>;
1 4 1 builder Ljavax/ws/rs/core/Variant$VariantListBuilder;
2 4 2 types [Ljavax/ws/rs/core/MediaType;
Signature: (Ljava/util/List<Ljavax/ws/rs/core/MediaType;>;)Ljava/util/List<Ljavax/ws/rs/core/Variant;>;
MethodParameters:
Name Flags
mediaTypes
public static void writeTo(java.io.InputStream, java.io.OutputStream);
descriptor: (Ljava/io/InputStream;Ljava/io/OutputStream;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: sipush 2048
newarray 8
astore 3
start local 3 1: goto 3
start local 2 2: StackMap locals: int byte[]
StackMap stack:
aload 1
aload 3
iconst_0
iload 2
invokevirtual java.io.OutputStream.write:([BII)V
end local 2 3: StackMap locals: java.io.InputStream java.io.OutputStream top byte[]
StackMap stack:
aload 0
aload 3
invokevirtual java.io.InputStream.read:([B)I
dup
istore 2
start local 2 4: iconst_m1
if_icmpne 2
5: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 in Ljava/io/InputStream;
0 6 1 out Ljava/io/OutputStream;
2 3 2 read I
4 6 2 read I
1 6 3 buf [B
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
in final
out final
public static java.util.concurrent.CompletionStage<java.lang.Void> writeToAndCloseInput(java.io.InputStream, org.jboss.resteasy.spi.AsyncOutputStream);
descriptor: (Ljava/io/InputStream;Lorg/jboss/resteasy/spi/AsyncOutputStream;)Ljava/util/concurrent/CompletionStage;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokestatic org.jboss.resteasy.plugins.providers.ProviderHelper.writeTo:(Ljava/io/InputStream;Lorg/jboss/resteasy/spi/AsyncOutputStream;)Ljava/util/concurrent/CompletionStage;
aload 0
invokedynamic accept(Ljava/io/InputStream;)Ljava/util/function/BiConsumer;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;Ljava/lang/Object;)V
org/jboss/resteasy/plugins/providers/ProviderHelper.lambda$0(Ljava/io/InputStream;Ljava/lang/Void;Ljava/lang/Throwable;)V (6)
(Ljava/lang/Void;Ljava/lang/Throwable;)V
invokeinterface java.util.concurrent.CompletionStage.whenComplete:(Ljava/util/function/BiConsumer;)Ljava/util/concurrent/CompletionStage;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 in Ljava/io/InputStream;
0 1 1 out Lorg/jboss/resteasy/spi/AsyncOutputStream;
Signature: (Ljava/io/InputStream;Lorg/jboss/resteasy/spi/AsyncOutputStream;)Ljava/util/concurrent/CompletionStage<Ljava/lang/Void;>;
MethodParameters:
Name Flags
in final
out final
public static java.util.concurrent.CompletionStage<java.lang.Void> writeTo(java.io.InputStream, org.jboss.resteasy.spi.AsyncOutputStream);
descriptor: (Ljava/io/InputStream;Lorg/jboss/resteasy/spi/AsyncOutputStream;)Ljava/util/concurrent/CompletionStage;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: sipush 2048
newarray 8
astore 2
start local 2 1: invokedynamic test()Ljava/util/function/Predicate;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Z
org/jboss/resteasy/plugins/providers/ProviderHelper.lambda$1(Ljava/lang/Integer;)Z (6)
(Ljava/lang/Integer;)Z
2: aload 0
aload 2
aload 1
invokedynamic apply(Ljava/io/InputStream;[BLorg/jboss/resteasy/spi/AsyncOutputStream;)Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
org/jboss/resteasy/plugins/providers/ProviderHelper.lambda$2(Ljava/io/InputStream;[BLorg/jboss/resteasy/spi/AsyncOutputStream;Ljava/lang/Integer;)Ljava/util/concurrent/CompletionStage; (6)
(Ljava/lang/Integer;)Ljava/util/concurrent/CompletionStage;
3: aload 0
aload 2
invokestatic org.jboss.resteasy.plugins.providers.ProviderHelper.asyncRead:(Ljava/io/InputStream;[B)I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
4: invokestatic com.ibm.asyncutil.iteration.AsyncTrampoline.asyncWhile:(Ljava/util/function/Predicate;Ljava/util/function/Function;Ljava/lang/Object;)Ljava/util/concurrent/CompletionStage;
5: invokedynamic apply()Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
org/jboss/resteasy/plugins/providers/ProviderHelper.lambda$4(Ljava/lang/Integer;)Ljava/lang/Void; (6)
(Ljava/lang/Integer;)Ljava/lang/Void;
invokeinterface java.util.concurrent.CompletionStage.thenApply:(Ljava/util/function/Function;)Ljava/util/concurrent/CompletionStage;
6: areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 in Ljava/io/InputStream;
0 7 1 out Lorg/jboss/resteasy/spi/AsyncOutputStream;
1 7 2 buf [B
Signature: (Ljava/io/InputStream;Lorg/jboss/resteasy/spi/AsyncOutputStream;)Ljava/util/concurrent/CompletionStage<Ljava/lang/Void;>;
MethodParameters:
Name Flags
in final
out final
public static int asyncRead(java.io.InputStream, byte[]);
descriptor: (Ljava/io/InputStream;[B)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual java.io.InputStream.read:([B)I
1: ireturn
2: StackMap locals:
StackMap stack: java.io.IOException
astore 2
start local 2 3: new java.util.concurrent.CompletionException
dup
aload 2
invokespecial java.util.concurrent.CompletionException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 in Ljava/io/InputStream;
0 4 1 buf [B
3 4 2 e Ljava/io/IOException;
Exception table:
from to target type
0 1 2 Class java.io.IOException
MethodParameters:
Name Flags
in
buf
public static int asyncRead(java.io.InputStream, byte[], int, int);
descriptor: (Ljava/io/InputStream;[BII)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
iload 2
iload 3
invokevirtual java.io.InputStream.read:([BII)I
1: ireturn
2: StackMap locals:
StackMap stack: java.io.IOException
astore 4
start local 4 3: new java.util.concurrent.CompletionException
dup
aload 4
invokespecial java.util.concurrent.CompletionException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 in Ljava/io/InputStream;
0 4 1 buf [B
0 4 2 offset I
0 4 3 length I
3 4 4 e Ljava/io/IOException;
Exception table:
from to target type
0 1 2 Class java.io.IOException
MethodParameters:
Name Flags
in
buf
offset
length
public static java.util.concurrent.CompletionStage<java.lang.Void> completedException(java.lang.Throwable);
descriptor: (Ljava/lang/Throwable;)Ljava/util/concurrent/CompletionStage;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: new java.util.concurrent.CompletableFuture
dup
invokespecial java.util.concurrent.CompletableFuture.<init>:()V
astore 1
start local 1 1: aload 1
aload 0
invokevirtual java.util.concurrent.CompletableFuture.completeExceptionally:(Ljava/lang/Throwable;)Z
pop
2: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 t Ljava/lang/Throwable;
1 3 1 ret Ljava/util/concurrent/CompletableFuture<Ljava/lang/Void;>;
Signature: (Ljava/lang/Throwable;)Ljava/util/concurrent/CompletionStage<Ljava/lang/Void;>;
MethodParameters:
Name Flags
t
private static void lambda$0(java.io.InputStream, java.lang.Void, java.lang.Throwable);
descriptor: (Ljava/io/InputStream;Ljava/lang/Void;Ljava/lang/Throwable;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=4, args_size=3
start local 1 start local 2 0: aload 0
invokevirtual java.io.InputStream.close:()V
1: goto 4
StackMap locals:
StackMap stack: java.io.IOException
2: astore 3
start local 3 3: new java.lang.RuntimeException
dup
aload 3
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 3 4: StackMap locals:
StackMap stack:
return
end local 2 end local 1 LocalVariableTable:
Start End Slot Name Signature
0 5 1 v Ljava/lang/Void;
0 5 2 t Ljava/lang/Throwable;
3 4 3 x Ljava/io/IOException;
Exception table:
from to target type
0 1 2 Class java.io.IOException
private static boolean lambda$1(java.lang.Integer);
descriptor: (Ljava/lang/Integer;)Z
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual java.lang.Integer.intValue:()I
iconst_m1
if_icmpeq 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 read Ljava/lang/Integer;
private static java.util.concurrent.CompletionStage lambda$2(java.io.InputStream, byte[], org.jboss.resteasy.spi.AsyncOutputStream, java.lang.Integer);
descriptor: (Ljava/io/InputStream;[BLorg/jboss/resteasy/spi/AsyncOutputStream;Ljava/lang/Integer;)Ljava/util/concurrent/CompletionStage;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=4, locals=4, args_size=4
start local 3 0: aload 2
aload 1
iconst_0
aload 3
invokevirtual java.lang.Integer.intValue:()I
invokevirtual org.jboss.resteasy.spi.AsyncOutputStream.asyncWrite:([BII)Ljava/util/concurrent/CompletionStage;
aload 0
aload 1
invokedynamic apply(Ljava/io/InputStream;[B)Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
org/jboss/resteasy/plugins/providers/ProviderHelper.lambda$3(Ljava/io/InputStream;[BLjava/lang/Void;)Ljava/lang/Integer; (6)
(Ljava/lang/Void;)Ljava/lang/Integer;
invokeinterface java.util.concurrent.CompletionStage.thenApply:(Ljava/util/function/Function;)Ljava/util/concurrent/CompletionStage;
areturn
end local 3 LocalVariableTable:
Start End Slot Name Signature
0 1 3 read Ljava/lang/Integer;
private static java.lang.Void lambda$4(java.lang.Integer);
descriptor: (Ljava/lang/Integer;)Ljava/lang/Void;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 v Ljava/lang/Integer;
private static java.lang.Integer lambda$3(java.io.InputStream, byte[], java.lang.Void);
descriptor: (Ljava/io/InputStream;[BLjava/lang/Void;)Ljava/lang/Integer;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=3, args_size=3
start local 2 0: aload 0
aload 1
invokestatic org.jboss.resteasy.plugins.providers.ProviderHelper.asyncRead:(Ljava/io/InputStream;[B)I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
areturn
end local 2 LocalVariableTable:
Start End Slot Name Signature
0 1 2 v Ljava/lang/Void;
}
SourceFile: "ProviderHelper.java"
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
public abstract VariantListBuilder = javax.ws.rs.core.Variant$VariantListBuilder of javax.ws.rs.core.Variant