class jdk.internal.net.http.common.SSLFlowDelegate$Writer extends jdk.internal.net.http.common.SubscriberWrapper
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: jdk.internal.net.http.common.SSLFlowDelegate$Writer
super_class: jdk.internal.net.http.common.SubscriberWrapper
{
final jdk.internal.net.http.common.SequentialScheduler scheduler;
descriptor: Ljdk/internal/net/http/common/SequentialScheduler;
flags: (0x0010) ACC_FINAL
final java.util.List<java.nio.ByteBuffer> writeList;
descriptor: Ljava/util/List;
flags: (0x0010) ACC_FINAL
Signature: Ljava/util/List<Ljava/nio/ByteBuffer;>;
final jdk.internal.net.http.common.Logger debugw;
descriptor: Ljdk/internal/net/http/common/Logger;
flags: (0x0010) ACC_FINAL
volatile boolean completing;
descriptor: Z
flags: (0x0040) ACC_VOLATILE
boolean completed;
descriptor: Z
flags: (0x0000)
volatile java.nio.ByteBuffer writeBuffer;
descriptor: Ljava/nio/ByteBuffer;
flags: (0x0040) ACC_VOLATILE
private volatile javax.net.ssl.SSLEngineResult$Status lastWrappedStatus;
descriptor: Ljavax/net/ssl/SSLEngineResult$Status;
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
final jdk.internal.net.http.common.SSLFlowDelegate this$0;
descriptor: Ljdk/internal/net/http/common/SSLFlowDelegate;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
private static volatile int[] $SWITCH_TABLE$javax$net$ssl$SSLEngineResult$Status;
descriptor: [I
flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Ljdk/internal/net/http/common/SSLFlowDelegate;
invokevirtual java.lang.Class.desiredAssertionStatus:()Z
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: putstatic jdk.internal.net.http.common.SSLFlowDelegate$Writer.$assertionsDisabled:Z
return
LocalVariableTable:
Start End Slot Name Signature
void <init>(jdk.internal.net.http.common.SSLFlowDelegate);
descriptor: (Ljdk/internal/net/http/common/SSLFlowDelegate;)V
flags: (0x0000)
Code:
stack=6, locals=2, args_size=2
start local 0 0: aload 0
aload 1
putfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.this$0:Ljdk/internal/net/http/common/SSLFlowDelegate;
1: aload 0
invokespecial jdk.internal.net.http.common.SubscriberWrapper.<init>:()V
2: aload 0
aload 0
invokedynamic get(Ljdk/internal/net/http/common/SSLFlowDelegate$Writer;)Ljava/util/function/Supplier;
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;
jdk/internal/net/http/common/SSLFlowDelegate$Writer.dbgString()Ljava/lang/String; (5)
()Ljava/lang/String;
getstatic jdk.internal.net.http.common.Utils.DEBUG:Z
invokestatic jdk.internal.net.http.common.Utils.getDebugLogger:(Ljava/util/function/Supplier;Z)Ljdk/internal/net/http/common/Logger;
putfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.debugw:Ljdk/internal/net/http/common/Logger;
3: aload 0
new java.util.LinkedList
dup
invokespecial java.util.LinkedList.<init>:()V
invokestatic java.util.Collections.synchronizedList:(Ljava/util/List;)Ljava/util/List;
putfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.writeList:Ljava/util/List;
4: aload 0
new jdk.internal.net.http.common.SequentialScheduler
dup
new jdk.internal.net.http.common.SSLFlowDelegate$Writer$WriterDownstreamPusher
dup
aload 0
invokespecial jdk.internal.net.http.common.SSLFlowDelegate$Writer$WriterDownstreamPusher.<init>:(Ljdk/internal/net/http/common/SSLFlowDelegate$Writer;)V
invokespecial jdk.internal.net.http.common.SequentialScheduler.<init>:(Ljdk/internal/net/http/common/SequentialScheduler$RestartableTask;)V
putfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.scheduler:Ljdk/internal/net/http/common/SequentialScheduler;
5: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Ljdk/internal/net/http/common/SSLFlowDelegate$Writer;
MethodParameters:
Name Flags
this$0 final
protected void incoming(java.util.List<java.nio.ByteBuffer>, );
descriptor: (Ljava/util/List;Z)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: getstatic jdk.internal.net.http.common.SSLFlowDelegate$Writer.$assertionsDisabled:Z
ifne 1
iload 2
ifeq 1
aload 1
getstatic jdk.internal.net.http.common.Utils.EMPTY_BB_LIST:Ljava/util/List;
if_acmpeq 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
getstatic jdk.internal.net.http.common.SSLFlowDelegate$Writer.$assertionsDisabled:Z
ifne 2
aload 1
getstatic jdk.internal.net.http.common.Utils.EMPTY_BB_LIST:Ljava/util/List;
if_acmpeq 2
iload 2
ifeq 2
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
iload 2
ifeq 7
3: aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.debugw:Ljdk/internal/net/http/common/Logger;
invokeinterface jdk.internal.net.http.common.Logger.on:()Z
ifeq 4
aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.debugw:Ljdk/internal/net/http/common/Logger;
ldc "adding SENTINEL"
invokeinterface jdk.internal.net.http.common.Logger.log:(Ljava/lang/String;)V
4: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.completing:Z
5: aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.writeList:Ljava/util/List;
getstatic jdk.internal.net.http.common.SSLFlowDelegate.SENTINEL:Ljava/nio/ByteBuffer;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
6: goto 8
7: StackMap locals:
StackMap stack:
aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.writeList:Ljava/util/List;
aload 1
invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
pop
8: StackMap locals:
StackMap stack:
aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.debugw:Ljdk/internal/net/http/common/Logger;
invokeinterface jdk.internal.net.http.common.Logger.on:()Z
ifeq 13
9: aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.debugw:Ljdk/internal/net/http/common/Logger;
new java.lang.StringBuilder
dup
ldc "added "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokeinterface java.util.List.size:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
10: ldc " ("
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokestatic jdk.internal.net.http.common.Utils.remaining:(Ljava/util/List;)J
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
11: ldc " bytes) to the writeList"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
12: invokeinterface jdk.internal.net.http.common.Logger.log:(Ljava/lang/String;)V
13: StackMap locals:
StackMap stack:
aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.scheduler:Ljdk/internal/net/http/common/SequentialScheduler;
invokevirtual jdk.internal.net.http.common.SequentialScheduler.runOrSchedule:()V
14: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Ljdk/internal/net/http/common/SSLFlowDelegate$Writer;
0 15 1 buffers Ljava/util/List<Ljava/nio/ByteBuffer;>;
0 15 2 complete Z
Signature: (Ljava/util/List<Ljava/nio/ByteBuffer;>;Z)V
MethodParameters:
Name Flags
buffers
complete
public final java.lang.String dbgString();
descriptor: ()Ljava/lang/String;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
ldc "SSL Writer("
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.this$0:Ljdk/internal/net/http/common/SSLFlowDelegate;
getfield jdk.internal.net.http.common.SSLFlowDelegate.tubeName:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc ")"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/internal/net/http/common/SSLFlowDelegate$Writer;
protected void onSubscribe();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.debugw:Ljdk/internal/net/http/common/Logger;
invokeinterface jdk.internal.net.http.common.Logger.on:()Z
ifeq 1
aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.debugw:Ljdk/internal/net/http/common/Logger;
ldc "onSubscribe initiating handshaking"
invokeinterface jdk.internal.net.http.common.Logger.log:(Ljava/lang/String;)V
1: StackMap locals:
StackMap stack:
aload 0
getstatic jdk.internal.net.http.common.SSLFlowDelegate.HS_TRIGGER:Ljava/nio/ByteBuffer;
invokevirtual jdk.internal.net.http.common.SSLFlowDelegate$Writer.addData:(Ljava/nio/ByteBuffer;)V
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljdk/internal/net/http/common/SSLFlowDelegate$Writer;
void schedule();
descriptor: ()V
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.scheduler:Ljdk/internal/net/http/common/SequentialScheduler;
invokevirtual jdk.internal.net.http.common.SequentialScheduler.runOrSchedule:()V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljdk/internal/net/http/common/SSLFlowDelegate$Writer;
void stop();
descriptor: ()V
flags: (0x0000)
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.debugw:Ljdk/internal/net/http/common/Logger;
invokeinterface jdk.internal.net.http.common.Logger.on:()Z
ifeq 1
aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.debugw:Ljdk/internal/net/http/common/Logger;
ldc "stop"
invokeinterface jdk.internal.net.http.common.Logger.log:(Ljava/lang/String;)V
1: StackMap locals:
StackMap stack:
aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.scheduler:Ljdk/internal/net/http/common/SequentialScheduler;
invokevirtual jdk.internal.net.http.common.SequentialScheduler.stop:()V
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljdk/internal/net/http/common/SSLFlowDelegate$Writer;
public boolean closing();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.this$0:Ljdk/internal/net/http/common/SSLFlowDelegate;
invokevirtual jdk.internal.net.http.common.SSLFlowDelegate.closeNotifyReceived:()Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/internal/net/http/common/SSLFlowDelegate$Writer;
private boolean isCompleting();
descriptor: ()Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.completing:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/internal/net/http/common/SSLFlowDelegate$Writer;
protected long upstreamWindowUpdate(long, long);
descriptor: (JJ)J
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=5, args_size=3
start local 0 start local 1 start local 3 0: aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.writeList:Ljava/util/List;
invokeinterface java.util.List.size:()I
bipush 10
if_icmple 2
1: lconst_0
lreturn
2: StackMap locals:
StackMap stack:
aload 0
lload 1
lload 3
invokespecial jdk.internal.net.http.common.SubscriberWrapper.upstreamWindowUpdate:(JJ)J
lreturn
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljdk/internal/net/http/common/SSLFlowDelegate$Writer;
0 3 1 currentWindow J
0 3 3 downstreamQsize J
MethodParameters:
Name Flags
currentWindow
downstreamQsize
private boolean hsTriggered();
descriptor: ()Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=4, args_size=1
start local 0 0: aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.writeList:Ljava/util/List;
dup
astore 1
monitorenter
1: aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.writeList:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 3
goto 6
StackMap locals: jdk.internal.net.http.common.SSLFlowDelegate$Writer java.util.List top java.util.Iterator
StackMap stack:
2: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.nio.ByteBuffer
astore 2
start local 2 3: aload 2
getstatic jdk.internal.net.http.common.SSLFlowDelegate.HS_TRIGGER:Ljava/nio/ByteBuffer;
if_acmpne 6
4: aload 1
monitorexit
5: iconst_1
ireturn
end local 2 6: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
7: aload 1
monitorexit
8: iconst_0
ireturn
9: StackMap locals: jdk.internal.net.http.common.SSLFlowDelegate$Writer java.util.List
StackMap stack: java.lang.Throwable
aload 1
monitorexit
10: athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Ljdk/internal/net/http/common/SSLFlowDelegate$Writer;
3 6 2 b Ljava/nio/ByteBuffer;
Exception table:
from to target type
1 5 9 any
6 8 9 any
9 10 9 any
void triggerWrite();
descriptor: ()V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.writeList:Ljava/util/List;
dup
astore 1
monitorenter
1: aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.writeList:Ljava/util/List;
invokeinterface java.util.List.isEmpty:()Z
ifeq 3
2: aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.writeList:Ljava/util/List;
getstatic jdk.internal.net.http.common.SSLFlowDelegate.HS_TRIGGER:Ljava/nio/ByteBuffer;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
3: StackMap locals: java.util.List
StackMap stack:
aload 1
monitorexit
4: goto 7
StackMap locals:
StackMap stack: java.lang.Throwable
5: aload 1
monitorexit
6: athrow
7: StackMap locals:
StackMap stack:
aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.scheduler:Ljdk/internal/net/http/common/SequentialScheduler;
invokevirtual jdk.internal.net.http.common.SequentialScheduler.runOrSchedule:()V
8: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Ljdk/internal/net/http/common/SSLFlowDelegate$Writer;
Exception table:
from to target type
1 4 5 any
5 6 5 any
private void processData();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=5, args_size=1
start local 0 0: aload 0
invokevirtual jdk.internal.net.http.common.SSLFlowDelegate$Writer.isCompleting:()Z
istore 1
start local 1 1: aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.debugw:Ljdk/internal/net/http/common/Logger;
invokeinterface jdk.internal.net.http.common.Logger.on:()Z
ifeq 35
2: aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.debugw:Ljdk/internal/net/http/common/Logger;
new java.lang.StringBuilder
dup
ldc "processData, writeList remaining:"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
3: aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.writeList:Ljava/util/List;
invokestatic jdk.internal.net.http.common.Utils.remaining:(Ljava/util/List;)J
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
ldc ", hsTriggered:"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
4: aload 0
invokevirtual jdk.internal.net.http.common.SSLFlowDelegate$Writer.hsTriggered:()Z
invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
ldc ", needWrap:"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
invokevirtual jdk.internal.net.http.common.SSLFlowDelegate$Writer.needWrap:()Z
invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
5: invokeinterface jdk.internal.net.http.common.Logger.log:(Ljava/lang/String;)V
6: goto 35
7: StackMap locals: int
StackMap stack:
aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.writeList:Ljava/util/List;
getstatic jdk.internal.net.http.common.Utils.EMPTY_BB_ARRAY:[Ljava/nio/ByteBuffer;
invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
checkcast java.nio.ByteBuffer[]
astore 2
start local 2 8: aload 0
aload 2
invokevirtual jdk.internal.net.http.common.SSLFlowDelegate$Writer.wrapBuffers:([Ljava/nio/ByteBuffer;)Ljdk/internal/net/http/common/SSLFlowDelegate$EngineResult;
astore 3
start local 3 9: aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.debugw:Ljdk/internal/net/http/common/Logger;
invokeinterface jdk.internal.net.http.common.Logger.on:()Z
ifeq 11
10: aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.debugw:Ljdk/internal/net/http/common/Logger;
ldc "wrapBuffer returned %s"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 3
getfield jdk.internal.net.http.common.SSLFlowDelegate$EngineResult.result:Ljavax/net/ssl/SSLEngineResult;
aastore
invokeinterface jdk.internal.net.http.common.Logger.log:(Ljava/lang/String;[Ljava/lang/Object;)V
11: StackMap locals: java.nio.ByteBuffer[] jdk.internal.net.http.common.SSLFlowDelegate$EngineResult
StackMap stack:
aload 3
invokevirtual jdk.internal.net.http.common.SSLFlowDelegate$EngineResult.status:()Ljavax/net/ssl/SSLEngineResult$Status;
getstatic javax.net.ssl.SSLEngineResult$Status.CLOSED:Ljavax/net/ssl/SSLEngineResult$Status;
if_acmpne 21
12: aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.upstreamCompleted:Z
ifne 16
13: aload 0
iconst_1
putfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.upstreamCompleted:Z
14: aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.upstreamSubscription:Ljava/util/concurrent/Flow$Subscription;
invokeinterface java.util.concurrent.Flow$Subscription.cancel:()V
15: aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.this$0:Ljdk/internal/net/http/common/SSLFlowDelegate;
invokevirtual jdk.internal.net.http.common.SSLFlowDelegate.setALPN:()V
16: StackMap locals:
StackMap stack:
aload 3
invokevirtual jdk.internal.net.http.common.SSLFlowDelegate$EngineResult.bytesProduced:()I
ifgt 18
17: return
18: StackMap locals:
StackMap stack:
iload 1
ifne 21
aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.completed:Z
ifne 21
19: aload 0
iconst_1
dup_x1
putfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.completing:Z
istore 1
20: aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.writeList:Ljava/util/List;
getstatic jdk.internal.net.http.common.SSLFlowDelegate.SENTINEL:Ljava/nio/ByteBuffer;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
21: StackMap locals:
StackMap stack:
iconst_0
istore 4
start local 4 22: aload 3
invokevirtual jdk.internal.net.http.common.SSLFlowDelegate$EngineResult.handshaking:()Z
ifeq 27
23: aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.debugw:Ljdk/internal/net/http/common/Logger;
invokeinterface jdk.internal.net.http.common.Logger.on:()Z
ifeq 24
aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.debugw:Ljdk/internal/net/http/common/Logger;
ldc "handshaking"
invokeinterface jdk.internal.net.http.common.Logger.log:(Ljava/lang/String;)V
24: StackMap locals: int
StackMap stack:
aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.this$0:Ljdk/internal/net/http/common/SSLFlowDelegate;
aload 3
iconst_2
invokevirtual jdk.internal.net.http.common.SSLFlowDelegate.doHandshake:(Ljdk/internal/net/http/common/SSLFlowDelegate$EngineResult;I)Z
pop
25: iconst_1
istore 4
26: goto 29
27: StackMap locals:
StackMap stack:
aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.this$0:Ljdk/internal/net/http/common/SSLFlowDelegate;
invokevirtual jdk.internal.net.http.common.SSLFlowDelegate.trySetALPN:()Z
ifeq 29
28: aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.this$0:Ljdk/internal/net/http/common/SSLFlowDelegate;
invokevirtual jdk.internal.net.http.common.SSLFlowDelegate.resumeActivity:()V
29: StackMap locals:
StackMap stack:
aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.this$0:Ljdk/internal/net/http/common/SSLFlowDelegate;
aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.writeList:Ljava/util/List;
invokevirtual jdk.internal.net.http.common.SSLFlowDelegate.cleanList:(Ljava/util/List;)V
30: aload 0
aload 3
invokevirtual jdk.internal.net.http.common.SSLFlowDelegate$Writer.sendResultBytes:(Ljdk/internal/net/http/common/SSLFlowDelegate$EngineResult;)V
31: iload 4
ifeq 35
32: iload 1
ifne 34
aload 0
invokevirtual jdk.internal.net.http.common.SSLFlowDelegate$Writer.needWrap:()Z
ifeq 34
33: goto 35
34: StackMap locals:
StackMap stack:
return
end local 4 end local 3 end local 2 35: StackMap locals:
StackMap stack:
aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.writeList:Ljava/util/List;
invokestatic jdk.internal.net.http.common.Utils.remaining:(Ljava/util/List;)J
lconst_0
lcmp
ifgt 7
aload 0
invokevirtual jdk.internal.net.http.common.SSLFlowDelegate$Writer.hsTriggered:()Z
ifne 7
aload 0
invokevirtual jdk.internal.net.http.common.SSLFlowDelegate$Writer.needWrap:()Z
ifne 7
36: iload 1
ifeq 42
aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.writeList:Ljava/util/List;
invokestatic jdk.internal.net.http.common.Utils.remaining:(Ljava/util/List;)J
lconst_0
lcmp
ifne 42
37: aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.completed:Z
ifne 41
38: aload 0
iconst_1
putfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.completed:Z
39: aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.writeList:Ljava/util/List;
invokeinterface java.util.List.clear:()V
40: aload 0
getstatic jdk.internal.net.http.common.Utils.EMPTY_BB_LIST:Ljava/util/List;
iconst_1
invokevirtual jdk.internal.net.http.common.SSLFlowDelegate$Writer.outgoing:(Ljava/util/List;Z)V
41: StackMap locals:
StackMap stack:
return
42: StackMap locals:
StackMap stack:
aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.writeList:Ljava/util/List;
invokeinterface java.util.List.isEmpty:()Z
ifeq 48
aload 0
invokevirtual jdk.internal.net.http.common.SSLFlowDelegate$Writer.needWrap:()Z
ifeq 48
43: aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.this$0:Ljdk/internal/net/http/common/SSLFlowDelegate;
getfield jdk.internal.net.http.common.SSLFlowDelegate.writer:Ljdk/internal/net/http/common/SSLFlowDelegate$Writer;
getstatic jdk.internal.net.http.common.SSLFlowDelegate.HS_TRIGGER:Ljava/nio/ByteBuffer;
invokevirtual jdk.internal.net.http.common.SSLFlowDelegate$Writer.addData:(Ljava/nio/ByteBuffer;)V
44: goto 48
StackMap locals:
StackMap stack: java.lang.Throwable
45: astore 2
start local 2 46: aload 0
aload 2
invokevirtual jdk.internal.net.http.common.SSLFlowDelegate$Writer.errorCommon:(Ljava/lang/Throwable;)Z
pop
47: aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.this$0:Ljdk/internal/net/http/common/SSLFlowDelegate;
aload 2
invokevirtual jdk.internal.net.http.common.SSLFlowDelegate.handleError:(Ljava/lang/Throwable;)V
end local 2 48: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 49 0 this Ljdk/internal/net/http/common/SSLFlowDelegate$Writer;
1 49 1 completing Z
8 35 2 outbufs [Ljava/nio/ByteBuffer;
9 35 3 result Ljdk/internal/net/http/common/SSLFlowDelegate$EngineResult;
22 35 4 handshaking Z
46 48 2 ex Ljava/lang/Throwable;
Exception table:
from to target type
1 17 45 Class java.lang.Throwable
18 34 45 Class java.lang.Throwable
35 41 45 Class java.lang.Throwable
42 44 45 Class java.lang.Throwable
jdk.internal.net.http.common.SSLFlowDelegate$EngineResult wrapBuffers(java.nio.ByteBuffer[]);
descriptor: ([Ljava/nio/ByteBuffer;)Ljdk/internal/net/http/common/SSLFlowDelegate$EngineResult;
flags: (0x0000)
Code:
stack=7, locals=9, args_size=2
start local 0 start local 1 0: aload 1
invokestatic jdk.internal.net.http.common.Utils.remaining:([Ljava/nio/ByteBuffer;)J
lstore 2
start local 2 1: aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.debugw:Ljdk/internal/net/http/common/Logger;
invokeinterface jdk.internal.net.http.common.Logger.on:()Z
ifeq 3
2: aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.debugw:Ljdk/internal/net/http/common/Logger;
new java.lang.StringBuilder
dup
ldc "wrapping "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
lload 2
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
ldc " bytes"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokeinterface jdk.internal.net.http.common.Logger.log:(Ljava/lang/String;)V
3: StackMap locals: long
StackMap stack:
aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.writeBuffer:Ljava/nio/ByteBuffer;
astore 4
start local 4 4: aload 4
ifnonnull 5
aload 0
aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.this$0:Ljdk/internal/net/http/common/SSLFlowDelegate;
invokevirtual jdk.internal.net.http.common.SSLFlowDelegate.getNetBuffer:()Ljava/nio/ByteBuffer;
dup_x1
putfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.writeBuffer:Ljava/nio/ByteBuffer;
astore 4
5: StackMap locals: java.nio.ByteBuffer
StackMap stack:
getstatic jdk.internal.net.http.common.SSLFlowDelegate$Writer.$assertionsDisabled:Z
ifne 6
aload 4
invokevirtual java.nio.ByteBuffer.position:()I
ifeq 6
new java.lang.AssertionError
dup
new java.lang.StringBuilder
dup
ldc "buffer position is "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 4
invokevirtual java.nio.ByteBuffer.position:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
6: StackMap locals:
StackMap stack:
getstatic jdk.internal.net.http.common.SSLFlowDelegate$Writer.$assertionsDisabled:Z
ifne 7
aload 4
invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
ifne 7
new java.lang.AssertionError
dup
new java.lang.StringBuilder
dup
ldc "buffer has no remaining space: capacity="
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 4
invokevirtual java.nio.ByteBuffer.capacity:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
7: StackMap locals:
StackMap stack:
aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.this$0:Ljdk/internal/net/http/common/SSLFlowDelegate;
getfield jdk.internal.net.http.common.SSLFlowDelegate.engine:Ljavax/net/ssl/SSLEngine;
aload 1
aload 4
invokevirtual javax.net.ssl.SSLEngine.wrap:([Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;)Ljavax/net/ssl/SSLEngineResult;
astore 5
start local 5 8: aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.debugw:Ljdk/internal/net/http/common/Logger;
invokeinterface jdk.internal.net.http.common.Logger.on:()Z
ifeq 9
aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.debugw:Ljdk/internal/net/http/common/Logger;
new java.lang.StringBuilder
dup
ldc "SSLResult: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 5
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokeinterface jdk.internal.net.http.common.Logger.log:(Ljava/lang/String;)V
9: StackMap locals: javax.net.ssl.SSLEngineResult
StackMap stack:
invokestatic jdk.internal.net.http.common.SSLFlowDelegate$Writer.$SWITCH_TABLE$javax$net$ssl$SSLEngineResult$Status:()[I
aload 0
aload 5
invokevirtual javax.net.ssl.SSLEngineResult.getStatus:()Ljavax/net/ssl/SSLEngineResult$Status;
dup_x1
putfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.lastWrappedStatus:Ljavax/net/ssl/SSLEngineResult$Status;
invokevirtual javax.net.ssl.SSLEngineResult$Status.ordinal:()I
iaload
tableswitch { // 1 - 4
1: 36
2: 10
3: 20
4: 19
default: 38
}
10: StackMap locals:
StackMap stack:
aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.debugw:Ljdk/internal/net/http/common/Logger;
invokeinterface jdk.internal.net.http.common.Logger.on:()Z
ifeq 11
aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.debugw:Ljdk/internal/net/http/common/Logger;
ldc "BUFFER_OVERFLOW"
invokeinterface jdk.internal.net.http.common.Logger.log:(Ljava/lang/String;)V
11: StackMap locals:
StackMap stack:
aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.this$0:Ljdk/internal/net/http/common/SSLFlowDelegate;
12: aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.this$0:Ljdk/internal/net/http/common/SSLFlowDelegate;
getfield jdk.internal.net.http.common.SSLFlowDelegate.engine:Ljavax/net/ssl/SSLEngine;
invokevirtual javax.net.ssl.SSLEngine.getSession:()Ljavax/net/ssl/SSLSession;
invokeinterface javax.net.ssl.SSLSession.getPacketBufferSize:()I
13: dup_x1
putfield jdk.internal.net.http.common.SSLFlowDelegate.packetBufferSize:I
istore 6
start local 6 14: aload 0
iload 6
aload 4
invokevirtual java.nio.ByteBuffer.position:()I
iadd
invokestatic java.nio.ByteBuffer.allocate:(I)Ljava/nio/ByteBuffer;
dup_x1
putfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.writeBuffer:Ljava/nio/ByteBuffer;
astore 7
start local 7 15: aload 4
invokevirtual java.nio.ByteBuffer.flip:()Ljava/nio/ByteBuffer;
pop
16: aload 7
aload 4
invokevirtual java.nio.ByteBuffer.put:(Ljava/nio/ByteBuffer;)Ljava/nio/ByteBuffer;
pop
17: aload 7
astore 4
18: goto 7
end local 7 end local 6 19: StackMap locals:
StackMap stack:
aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.debugw:Ljdk/internal/net/http/common/Logger;
invokeinterface jdk.internal.net.http.common.Logger.on:()Z
ifeq 20
aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.debugw:Ljdk/internal/net/http/common/Logger;
ldc "CLOSED"
invokeinterface jdk.internal.net.http.common.Logger.log:(Ljava/lang/String;)V
20: StackMap locals:
StackMap stack:
aload 4
invokevirtual java.nio.ByteBuffer.position:()I
ifne 23
21: getstatic jdk.internal.net.http.common.SSLFlowDelegate.NOTHING:Ljava/nio/ByteBuffer;
astore 8
start local 8 22: goto 31
end local 8 StackMap locals:
StackMap stack:
23: aload 4
invokevirtual java.nio.ByteBuffer.position:()I
aload 4
invokevirtual java.nio.ByteBuffer.capacity:()I
iconst_2
idiv
if_icmpge 28
24: aload 4
invokevirtual java.nio.ByteBuffer.flip:()Ljava/nio/ByteBuffer;
pop
25: aload 4
invokestatic jdk.internal.net.http.common.Utils.copyAligned:(Ljava/nio/ByteBuffer;)Ljava/nio/ByteBuffer;
astore 8
start local 8 26: aload 4
invokevirtual java.nio.ByteBuffer.clear:()Ljava/nio/ByteBuffer;
pop
27: goto 31
end local 8 28: StackMap locals:
StackMap stack:
aload 4
invokevirtual java.nio.ByteBuffer.flip:()Ljava/nio/ByteBuffer;
pop
29: aload 4
astore 8
start local 8 30: aload 0
aconst_null
putfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.writeBuffer:Ljava/nio/ByteBuffer;
31: StackMap locals: jdk.internal.net.http.common.SSLFlowDelegate$Writer java.nio.ByteBuffer[] long java.nio.ByteBuffer javax.net.ssl.SSLEngineResult top top java.nio.ByteBuffer
StackMap stack:
aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.debugw:Ljdk/internal/net/http/common/Logger;
invokeinterface jdk.internal.net.http.common.Logger.on:()Z
ifeq 35
32: aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.debugw:Ljdk/internal/net/http/common/Logger;
ldc "OK => produced: %d bytes into %d, not wrapped: %d"
iconst_3
anewarray java.lang.Object
dup
iconst_0
33: aload 8
invokevirtual java.nio.ByteBuffer.remaining:()I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_1
aload 8
invokevirtual java.nio.ByteBuffer.capacity:()I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_2
aload 1
invokestatic jdk.internal.net.http.common.Utils.remaining:([Ljava/nio/ByteBuffer;)J
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aastore
34: invokeinterface jdk.internal.net.http.common.Logger.log:(Ljava/lang/String;[Ljava/lang/Object;)V
35: StackMap locals:
StackMap stack:
new jdk.internal.net.http.common.SSLFlowDelegate$EngineResult
dup
aload 5
aload 8
invokespecial jdk.internal.net.http.common.SSLFlowDelegate$EngineResult.<init>:(Ljavax/net/ssl/SSLEngineResult;Ljava/nio/ByteBuffer;)V
areturn
end local 8 36: StackMap locals: jdk.internal.net.http.common.SSLFlowDelegate$Writer java.nio.ByteBuffer[] long java.nio.ByteBuffer javax.net.ssl.SSLEngineResult
StackMap stack:
aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.debug:Ljdk/internal/net/http/common/Logger;
invokeinterface jdk.internal.net.http.common.Logger.on:()Z
ifeq 37
aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.debug:Ljdk/internal/net/http/common/Logger;
ldc "BUFFER_UNDERFLOW"
invokeinterface jdk.internal.net.http.common.Logger.log:(Ljava/lang/String;)V
37: StackMap locals:
StackMap stack:
new jdk.internal.net.http.common.SSLFlowDelegate$EngineResult
dup
aload 5
invokespecial jdk.internal.net.http.common.SSLFlowDelegate$EngineResult.<init>:(Ljavax/net/ssl/SSLEngineResult;)V
areturn
38: StackMap locals:
StackMap stack:
aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.debugw:Ljdk/internal/net/http/common/Logger;
invokeinterface jdk.internal.net.http.common.Logger.on:()Z
ifeq 40
39: aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.debugw:Ljdk/internal/net/http/common/Logger;
ldc "result: %s"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 5
invokevirtual javax.net.ssl.SSLEngineResult.getStatus:()Ljavax/net/ssl/SSLEngineResult$Status;
aastore
invokeinterface jdk.internal.net.http.common.Logger.log:(Ljava/lang/String;[Ljava/lang/Object;)V
40: StackMap locals:
StackMap stack:
getstatic jdk.internal.net.http.common.SSLFlowDelegate$Writer.$assertionsDisabled:Z
ifne 7
new java.lang.AssertionError
dup
new java.lang.StringBuilder
dup
ldc "result:"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 5
invokevirtual javax.net.ssl.SSLEngineResult.getStatus:()Ljavax/net/ssl/SSLEngineResult$Status;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
end local 5 end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 41 0 this Ljdk/internal/net/http/common/SSLFlowDelegate$Writer;
0 41 1 src [Ljava/nio/ByteBuffer;
1 41 2 len J
4 41 4 dst Ljava/nio/ByteBuffer;
8 41 5 sslResult Ljavax/net/ssl/SSLEngineResult;
14 19 6 netSize I
15 19 7 b Ljava/nio/ByteBuffer;
22 23 8 dest Ljava/nio/ByteBuffer;
26 28 8 dest Ljava/nio/ByteBuffer;
30 36 8 dest Ljava/nio/ByteBuffer;
Exceptions:
throws javax.net.ssl.SSLException
MethodParameters:
Name Flags
src
private boolean needWrap();
descriptor: ()Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.this$0:Ljdk/internal/net/http/common/SSLFlowDelegate;
getfield jdk.internal.net.http.common.SSLFlowDelegate.engine:Ljavax/net/ssl/SSLEngine;
invokevirtual javax.net.ssl.SSLEngine.getHandshakeStatus:()Ljavax/net/ssl/SSLEngineResult$HandshakeStatus;
getstatic javax.net.ssl.SSLEngineResult$HandshakeStatus.NEED_WRAP:Ljavax/net/ssl/SSLEngineResult$HandshakeStatus;
if_acmpne 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljdk/internal/net/http/common/SSLFlowDelegate$Writer;
private void sendResultBytes(jdk.internal.net.http.common.SSLFlowDelegate$EngineResult);
descriptor: (Ljdk/internal/net/http/common/SSLFlowDelegate$EngineResult;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual jdk.internal.net.http.common.SSLFlowDelegate$EngineResult.bytesProduced:()I
ifle 6
1: aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.debugw:Ljdk/internal/net/http/common/Logger;
invokeinterface jdk.internal.net.http.common.Logger.on:()Z
ifeq 5
2: aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.debugw:Ljdk/internal/net/http/common/Logger;
ldc "Sending %d bytes downstream"
iconst_1
anewarray java.lang.Object
dup
iconst_0
3: aload 1
invokevirtual jdk.internal.net.http.common.SSLFlowDelegate$EngineResult.bytesProduced:()I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
4: invokeinterface jdk.internal.net.http.common.Logger.log:(Ljava/lang/String;[Ljava/lang/Object;)V
5: StackMap locals:
StackMap stack:
aload 0
aload 1
getfield jdk.internal.net.http.common.SSLFlowDelegate$EngineResult.destBuffer:Ljava/nio/ByteBuffer;
iconst_0
invokevirtual jdk.internal.net.http.common.SSLFlowDelegate$Writer.outgoing:(Ljava/nio/ByteBuffer;Z)V
6: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Ljdk/internal/net/http/common/SSLFlowDelegate$Writer;
0 7 1 result Ljdk/internal/net/http/common/SSLFlowDelegate$EngineResult;
MethodParameters:
Name Flags
result
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
ldc "WRITER: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokespecial jdk.internal.net.http.common.SubscriberWrapper.toString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
1: ldc ", writeList size: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.writeList:Ljava/util/List;
invokeinterface java.util.List.size:()I
invokestatic java.lang.Integer.toString:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
2: ldc ", scheduler: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.scheduler:Ljdk/internal/net/http/common/SequentialScheduler;
invokevirtual jdk.internal.net.http.common.SequentialScheduler.isStopped:()Z
ifeq 3
ldc "stopped"
goto 4
StackMap locals:
StackMap stack: java.lang.StringBuilder
3: ldc "running"
StackMap locals: jdk.internal.net.http.common.SSLFlowDelegate$Writer
StackMap stack: java.lang.StringBuilder java.lang.String
4: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
5: ldc ", status: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield jdk.internal.net.http.common.SSLFlowDelegate$Writer.lastWrappedStatus:Ljavax/net/ssl/SSLEngineResult$Status;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
6: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Ljdk/internal/net/http/common/SSLFlowDelegate$Writer;
static int[] $SWITCH_TABLE$javax$net$ssl$SSLEngineResult$Status();
descriptor: ()[I
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=0
0: getstatic jdk.internal.net.http.common.SSLFlowDelegate$Writer.$SWITCH_TABLE$javax$net$ssl$SSLEngineResult$Status:[I
dup
ifnull 1
areturn
StackMap locals:
StackMap stack: int[]
1: pop
invokestatic javax.net.ssl.SSLEngineResult$Status.values:()[Ljavax/net/ssl/SSLEngineResult$Status;
arraylength
newarray 10
astore 0
2: aload 0
getstatic javax.net.ssl.SSLEngineResult$Status.BUFFER_OVERFLOW:Ljavax/net/ssl/SSLEngineResult$Status;
invokevirtual javax.net.ssl.SSLEngineResult$Status.ordinal:()I
iconst_2
iastore
3: goto 5
StackMap locals: int[]
StackMap stack: java.lang.NoSuchFieldError
4: pop
StackMap locals:
StackMap stack:
5: aload 0
getstatic javax.net.ssl.SSLEngineResult$Status.BUFFER_UNDERFLOW:Ljavax/net/ssl/SSLEngineResult$Status;
invokevirtual javax.net.ssl.SSLEngineResult$Status.ordinal:()I
iconst_1
iastore
6: goto 8
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
7: pop
StackMap locals:
StackMap stack:
8: aload 0
getstatic javax.net.ssl.SSLEngineResult$Status.CLOSED:Ljavax/net/ssl/SSLEngineResult$Status;
invokevirtual javax.net.ssl.SSLEngineResult$Status.ordinal:()I
iconst_4
iastore
9: goto 11
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
10: pop
StackMap locals:
StackMap stack:
11: aload 0
getstatic javax.net.ssl.SSLEngineResult$Status.OK:Ljavax/net/ssl/SSLEngineResult$Status;
invokevirtual javax.net.ssl.SSLEngineResult$Status.ordinal:()I
iconst_3
iastore
12: goto 14
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
13: pop
StackMap locals:
StackMap stack:
14: aload 0
dup
putstatic jdk.internal.net.http.common.SSLFlowDelegate$Writer.$SWITCH_TABLE$javax$net$ssl$SSLEngineResult$Status:[I
areturn
LocalVariableTable:
Start End Slot Name Signature
Exception table:
from to target type
2 3 4 Class java.lang.NoSuchFieldError
5 6 7 Class java.lang.NoSuchFieldError
8 9 10 Class java.lang.NoSuchFieldError
11 12 13 Class java.lang.NoSuchFieldError
}
SourceFile: "SSLFlowDelegate.java"
NestHost: jdk.internal.net.http.common.SSLFlowDelegate
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
public abstract Subscription = java.util.concurrent.Flow$Subscription of java.util.concurrent.Flow
public final HandshakeStatus = javax.net.ssl.SSLEngineResult$HandshakeStatus of javax.net.ssl.SSLEngineResult
public final Status = javax.net.ssl.SSLEngineResult$Status of javax.net.ssl.SSLEngineResult
EngineResult = jdk.internal.net.http.common.SSLFlowDelegate$EngineResult of jdk.internal.net.http.common.SSLFlowDelegate
Writer = jdk.internal.net.http.common.SSLFlowDelegate$Writer of jdk.internal.net.http.common.SSLFlowDelegate
WriterDownstreamPusher = jdk.internal.net.http.common.SSLFlowDelegate$Writer$WriterDownstreamPusher of jdk.internal.net.http.common.SSLFlowDelegate$Writer
public abstract RestartableTask = jdk.internal.net.http.common.SequentialScheduler$RestartableTask of jdk.internal.net.http.common.SequentialScheduler