class jdk.incubator.http.internal.websocket.Receiver$PushContinuouslyTask extends jdk.incubator.http.internal.common.SequentialScheduler$CompleteRestartableTask
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: jdk.incubator.http.internal.websocket.Receiver$PushContinuouslyTask
super_class: jdk.incubator.http.internal.common.SequentialScheduler$CompleteRestartableTask
{
final jdk.incubator.http.internal.websocket.Receiver this$0;
descriptor: Ljdk/incubator/http/internal/websocket/Receiver;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: .line 131
ldc Ljdk/incubator/http/internal/websocket/Receiver;
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.incubator.http.internal.websocket.Receiver$PushContinuouslyTask.$assertionsDisabled:Z
return
LocalVariableTable:
Start End Slot Name Signature
private void <init>(jdk.incubator.http.internal.websocket.Receiver);
descriptor: (Ljdk/incubator/http/internal/websocket/Receiver;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 // jdk.incubator.http.internal.websocket.Receiver$PushContinuouslyTask this
0: .line 131
aload 0 /* this */
aload 1
putfield jdk.incubator.http.internal.websocket.Receiver$PushContinuouslyTask.this$0:Ljdk/incubator/http/internal/websocket/Receiver;
aload 0 /* this */
invokespecial jdk.incubator.http.internal.common.SequentialScheduler$CompleteRestartableTask.<init>:()V
return
end local 0 // jdk.incubator.http.internal.websocket.Receiver$PushContinuouslyTask this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/incubator/http/internal/websocket/Receiver$PushContinuouslyTask;
MethodParameters:
Name Flags
this$0 final
public void run();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=1
start local 0 // jdk.incubator.http.internal.websocket.Receiver$PushContinuouslyTask this
0: .line 136
goto 34
1: .line 137
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield jdk.incubator.http.internal.websocket.Receiver$PushContinuouslyTask.this$0:Ljdk/incubator/http/internal/websocket/Receiver;
getfield jdk.incubator.http.internal.websocket.Receiver.data:Ljava/nio/ByteBuffer;
invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
ifeq 11
2: .line 138
aload 0 /* this */
getfield jdk.incubator.http.internal.websocket.Receiver$PushContinuouslyTask.this$0:Ljdk/incubator/http/internal/websocket/Receiver;
getfield jdk.incubator.http.internal.websocket.Receiver.demand:Ljdk/incubator/http/internal/common/Demand;
invokevirtual jdk.incubator.http.internal.common.Demand.isFulfilled:()Z
ifne 35
3: .line 140
aload 0 /* this */
getfield jdk.incubator.http.internal.websocket.Receiver$PushContinuouslyTask.this$0:Ljdk/incubator/http/internal/websocket/Receiver;
getfield jdk.incubator.http.internal.websocket.Receiver.data:Ljava/nio/ByteBuffer;
invokevirtual java.nio.ByteBuffer.position:()I
istore 1 /* oldPos */
start local 1 // int oldPos
4: .line 141
aload 0 /* this */
getfield jdk.incubator.http.internal.websocket.Receiver$PushContinuouslyTask.this$0:Ljdk/incubator/http/internal/websocket/Receiver;
getfield jdk.incubator.http.internal.websocket.Receiver.reader:Ljdk/incubator/http/internal/websocket/Frame$Reader;
aload 0 /* this */
getfield jdk.incubator.http.internal.websocket.Receiver$PushContinuouslyTask.this$0:Ljdk/incubator/http/internal/websocket/Receiver;
getfield jdk.incubator.http.internal.websocket.Receiver.data:Ljava/nio/ByteBuffer;
aload 0 /* this */
getfield jdk.incubator.http.internal.websocket.Receiver$PushContinuouslyTask.this$0:Ljdk/incubator/http/internal/websocket/Receiver;
getfield jdk.incubator.http.internal.websocket.Receiver.frameConsumer:Ljdk/incubator/http/internal/websocket/FrameConsumer;
invokevirtual jdk.incubator.http.internal.websocket.Frame$Reader.readFrame:(Ljava/nio/ByteBuffer;Ljdk/incubator/http/internal/websocket/Frame$Consumer;)V
5: .line 142
aload 0 /* this */
getfield jdk.incubator.http.internal.websocket.Receiver$PushContinuouslyTask.this$0:Ljdk/incubator/http/internal/websocket/Receiver;
getfield jdk.incubator.http.internal.websocket.Receiver.data:Ljava/nio/ByteBuffer;
invokevirtual java.nio.ByteBuffer.position:()I
istore 2 /* newPos */
start local 2 // int newPos
6: .line 143
getstatic jdk.incubator.http.internal.websocket.Receiver$PushContinuouslyTask.$assertionsDisabled:Z
ifne 34
iload 1 /* oldPos */
iload 2 /* newPos */
if_icmpne 34
new java.lang.AssertionError
dup
aload 0 /* this */
getfield jdk.incubator.http.internal.websocket.Receiver$PushContinuouslyTask.this$0:Ljdk/incubator/http/internal/websocket/Receiver;
getfield jdk.incubator.http.internal.websocket.Receiver.data:Ljava/nio/ByteBuffer;
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
end local 2 // int newPos
end local 1 // int oldPos
7: .line 144
StackMap locals:
StackMap stack: java.lang.Throwable
astore 1 /* e */
start local 1 // java.lang.Throwable e
8: .line 145
aload 0 /* this */
getfield jdk.incubator.http.internal.websocket.Receiver$PushContinuouslyTask.this$0:Ljdk/incubator/http/internal/websocket/Receiver;
getfield jdk.incubator.http.internal.websocket.Receiver.pushScheduler:Ljdk/incubator/http/internal/common/SequentialScheduler;
invokevirtual jdk.incubator.http.internal.common.SequentialScheduler.stop:()V
9: .line 146
aload 0 /* this */
getfield jdk.incubator.http.internal.websocket.Receiver$PushContinuouslyTask.this$0:Ljdk/incubator/http/internal/websocket/Receiver;
getfield jdk.incubator.http.internal.websocket.Receiver.messageConsumer:Ljdk/incubator/http/internal/websocket/MessageStreamConsumer;
aload 1 /* e */
invokeinterface jdk.incubator.http.internal.websocket.MessageStreamConsumer.onError:(Ljava/lang/Throwable;)V
end local 1 // java.lang.Throwable e
10: .line 148
goto 34
11: .line 152
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield jdk.incubator.http.internal.websocket.Receiver$PushContinuouslyTask.this$0:Ljdk/incubator/http/internal/websocket/Receiver;
getfield jdk.incubator.http.internal.websocket.Receiver.state:I
tableswitch { // 0 - 2
0: 13
1: 20
2: 12
default: 33
}
12: .line 154
StackMap locals:
StackMap stack:
return
13: .line 157
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield jdk.incubator.http.internal.websocket.Receiver$PushContinuouslyTask.this$0:Ljdk/incubator/http/internal/websocket/Receiver;
iconst_2
putfield jdk.incubator.http.internal.websocket.Receiver.state:I
14: .line 158
aload 0 /* this */
getfield jdk.incubator.http.internal.websocket.Receiver$PushContinuouslyTask.this$0:Ljdk/incubator/http/internal/websocket/Receiver;
getfield jdk.incubator.http.internal.websocket.Receiver.channel:Ljdk/incubator/http/internal/websocket/RawChannel;
aload 0 /* this */
getfield jdk.incubator.http.internal.websocket.Receiver$PushContinuouslyTask.this$0:Ljdk/incubator/http/internal/websocket/Receiver;
getfield jdk.incubator.http.internal.websocket.Receiver.event:Ljdk/incubator/http/internal/websocket/RawChannel$RawEvent;
invokeinterface jdk.incubator.http.internal.websocket.RawChannel.registerEvent:(Ljdk/incubator/http/internal/websocket/RawChannel$RawEvent;)V
15: .line 159
goto 19
StackMap locals:
StackMap stack: java.lang.Throwable
16: astore 1 /* e */
start local 1 // java.lang.Throwable e
17: .line 160
aload 0 /* this */
getfield jdk.incubator.http.internal.websocket.Receiver$PushContinuouslyTask.this$0:Ljdk/incubator/http/internal/websocket/Receiver;
getfield jdk.incubator.http.internal.websocket.Receiver.pushScheduler:Ljdk/incubator/http/internal/common/SequentialScheduler;
invokevirtual jdk.incubator.http.internal.common.SequentialScheduler.stop:()V
18: .line 161
aload 0 /* this */
getfield jdk.incubator.http.internal.websocket.Receiver$PushContinuouslyTask.this$0:Ljdk/incubator/http/internal/websocket/Receiver;
getfield jdk.incubator.http.internal.websocket.Receiver.messageConsumer:Ljdk/incubator/http/internal/websocket/MessageStreamConsumer;
aload 1 /* e */
invokeinterface jdk.incubator.http.internal.websocket.MessageStreamConsumer.onError:(Ljava/lang/Throwable;)V
end local 1 // java.lang.Throwable e
19: .line 163
StackMap locals:
StackMap stack:
return
20: .line 166
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield jdk.incubator.http.internal.websocket.Receiver$PushContinuouslyTask.this$0:Ljdk/incubator/http/internal/websocket/Receiver;
aload 0 /* this */
getfield jdk.incubator.http.internal.websocket.Receiver$PushContinuouslyTask.this$0:Ljdk/incubator/http/internal/websocket/Receiver;
getfield jdk.incubator.http.internal.websocket.Receiver.channel:Ljdk/incubator/http/internal/websocket/RawChannel;
invokeinterface jdk.incubator.http.internal.websocket.RawChannel.read:()Ljava/nio/ByteBuffer;
putfield jdk.incubator.http.internal.websocket.Receiver.data:Ljava/nio/ByteBuffer;
21: .line 167
goto 26
StackMap locals:
StackMap stack: java.lang.Throwable
22: astore 1 /* e */
start local 1 // java.lang.Throwable e
23: .line 168
aload 0 /* this */
getfield jdk.incubator.http.internal.websocket.Receiver$PushContinuouslyTask.this$0:Ljdk/incubator/http/internal/websocket/Receiver;
getfield jdk.incubator.http.internal.websocket.Receiver.pushScheduler:Ljdk/incubator/http/internal/common/SequentialScheduler;
invokevirtual jdk.incubator.http.internal.common.SequentialScheduler.stop:()V
24: .line 169
aload 0 /* this */
getfield jdk.incubator.http.internal.websocket.Receiver$PushContinuouslyTask.this$0:Ljdk/incubator/http/internal/websocket/Receiver;
getfield jdk.incubator.http.internal.websocket.Receiver.messageConsumer:Ljdk/incubator/http/internal/websocket/MessageStreamConsumer;
aload 1 /* e */
invokeinterface jdk.incubator.http.internal.websocket.MessageStreamConsumer.onError:(Ljava/lang/Throwable;)V
25: .line 170
return
end local 1 // java.lang.Throwable e
26: .line 172
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield jdk.incubator.http.internal.websocket.Receiver$PushContinuouslyTask.this$0:Ljdk/incubator/http/internal/websocket/Receiver;
getfield jdk.incubator.http.internal.websocket.Receiver.data:Ljava/nio/ByteBuffer;
ifnonnull 30
27: .line 173
aload 0 /* this */
getfield jdk.incubator.http.internal.websocket.Receiver$PushContinuouslyTask.this$0:Ljdk/incubator/http/internal/websocket/Receiver;
getfield jdk.incubator.http.internal.websocket.Receiver.pushScheduler:Ljdk/incubator/http/internal/common/SequentialScheduler;
invokevirtual jdk.incubator.http.internal.common.SequentialScheduler.stop:()V
28: .line 174
aload 0 /* this */
getfield jdk.incubator.http.internal.websocket.Receiver$PushContinuouslyTask.this$0:Ljdk/incubator/http/internal/websocket/Receiver;
getfield jdk.incubator.http.internal.websocket.Receiver.messageConsumer:Ljdk/incubator/http/internal/websocket/MessageStreamConsumer;
invokeinterface jdk.incubator.http.internal.websocket.MessageStreamConsumer.onComplete:()V
29: .line 175
return
30: .line 176
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield jdk.incubator.http.internal.websocket.Receiver$PushContinuouslyTask.this$0:Ljdk/incubator/http/internal/websocket/Receiver;
getfield jdk.incubator.http.internal.websocket.Receiver.data:Ljava/nio/ByteBuffer;
invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
ifne 34
31: .line 179
aload 0 /* this */
getfield jdk.incubator.http.internal.websocket.Receiver$PushContinuouslyTask.this$0:Ljdk/incubator/http/internal/websocket/Receiver;
iconst_0
putfield jdk.incubator.http.internal.websocket.Receiver.state:I
32: .line 181
goto 34
33: .line 183
StackMap locals:
StackMap stack:
new java.lang.InternalError
dup
aload 0 /* this */
getfield jdk.incubator.http.internal.websocket.Receiver$PushContinuouslyTask.this$0:Ljdk/incubator/http/internal/websocket/Receiver;
getfield jdk.incubator.http.internal.websocket.Receiver.state:I
invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
athrow
34: .line 136
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield jdk.incubator.http.internal.websocket.Receiver$PushContinuouslyTask.this$0:Ljdk/incubator/http/internal/websocket/Receiver;
getfield jdk.incubator.http.internal.websocket.Receiver.pushScheduler:Ljdk/incubator/http/internal/common/SequentialScheduler;
invokevirtual jdk.incubator.http.internal.common.SequentialScheduler.isStopped:()Z
ifeq 1
35: .line 186
StackMap locals:
StackMap stack:
return
end local 0 // jdk.incubator.http.internal.websocket.Receiver$PushContinuouslyTask this
LocalVariableTable:
Start End Slot Name Signature
0 36 0 this Ljdk/incubator/http/internal/websocket/Receiver$PushContinuouslyTask;
4 7 1 oldPos I
6 7 2 newPos I
8 10 1 e Ljava/lang/Throwable;
17 19 1 e Ljava/lang/Throwable;
23 26 1 e Ljava/lang/Throwable;
Exception table:
from to target type
3 7 7 Class java.lang.Throwable
13 15 16 Class java.lang.Throwable
20 21 22 Class java.lang.Throwable
}
SourceFile: "Receiver.java"
NestHost: jdk.incubator.http.internal.websocket.Receiver
InnerClasses:
public abstract CompleteRestartableTask = jdk.incubator.http.internal.common.SequentialScheduler$CompleteRestartableTask of jdk.incubator.http.internal.common.SequentialScheduler
abstract Consumer = jdk.incubator.http.internal.websocket.Frame$Consumer of jdk.incubator.http.internal.websocket.Frame
final Reader = jdk.incubator.http.internal.websocket.Frame$Reader of jdk.incubator.http.internal.websocket.Frame
public abstract RawEvent = jdk.incubator.http.internal.websocket.RawChannel$RawEvent of jdk.incubator.http.internal.websocket.RawChannel
private PushContinuouslyTask = jdk.incubator.http.internal.websocket.Receiver$PushContinuouslyTask of jdk.incubator.http.internal.websocket.Receiver