final class jdk.incubator.http.internal.websocket.OutgoingMessage$Binary extends jdk.incubator.http.internal.websocket.OutgoingMessage
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: jdk.incubator.http.internal.websocket.OutgoingMessage$Binary
super_class: jdk.incubator.http.internal.websocket.OutgoingMessage
{
private final java.nio.ByteBuffer payload;
descriptor: Ljava/nio/ByteBuffer;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final boolean isLast;
descriptor: Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
void <init>(java.nio.ByteBuffer, boolean);
descriptor: (Ljava/nio/ByteBuffer;Z)V
flags: (0x0000)
Code:
stack=2, locals=3, args_size=3
start local 0 // jdk.incubator.http.internal.websocket.OutgoingMessage$Binary this
start local 1 // java.nio.ByteBuffer payload
start local 2 // boolean isLast
0: .line 138
aload 0 /* this */
invokespecial jdk.incubator.http.internal.websocket.OutgoingMessage.<init>:()V
1: .line 139
aload 0 /* this */
aload 1 /* payload */
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.nio.ByteBuffer
putfield jdk.incubator.http.internal.websocket.OutgoingMessage$Binary.payload:Ljava/nio/ByteBuffer;
2: .line 140
aload 0 /* this */
iload 2 /* isLast */
putfield jdk.incubator.http.internal.websocket.OutgoingMessage$Binary.isLast:Z
3: .line 141
return
end local 2 // boolean isLast
end local 1 // java.nio.ByteBuffer payload
end local 0 // jdk.incubator.http.internal.websocket.OutgoingMessage$Binary this
LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljdk/incubator/http/internal/websocket/OutgoingMessage$Binary;
0 4 1 payload Ljava/nio/ByteBuffer;
0 4 2 isLast Z
MethodParameters:
Name Flags
payload
isLast
protected boolean contextualize(jdk.incubator.http.internal.websocket.OutgoingMessage$Context);
descriptor: (Ljdk/incubator/http/internal/websocket/OutgoingMessage$Context;)Z
flags: (0x0004) ACC_PROTECTED
Code:
stack=6, locals=3, args_size=2
start local 0 // jdk.incubator.http.internal.websocket.OutgoingMessage$Binary this
start local 1 // jdk.incubator.http.internal.websocket.OutgoingMessage$Context context
0: .line 145
aload 0 /* this */
aload 1 /* context */
invokespecial jdk.incubator.http.internal.websocket.OutgoingMessage.contextualize:(Ljdk/incubator/http/internal/websocket/OutgoingMessage$Context;)Z
pop
1: .line 146
aload 1 /* context */
invokevirtual jdk.incubator.http.internal.websocket.OutgoingMessage$Context.isPreviousText:()Z
ifeq 3
aload 1 /* context */
invokevirtual jdk.incubator.http.internal.websocket.OutgoingMessage$Context.isPreviousLast:()Z
ifne 3
2: .line 147
new java.lang.IllegalStateException
dup
ldc "Unexpected binary message"
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
3: .line 149
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield jdk.incubator.http.internal.websocket.OutgoingMessage$Binary.payload:Ljava/nio/ByteBuffer;
invokevirtual java.nio.ByteBuffer.remaining:()I
invokestatic java.nio.ByteBuffer.allocate:(I)Ljava/nio/ByteBuffer;
astore 2 /* newBuffer */
start local 2 // java.nio.ByteBuffer newBuffer
4: .line 150
aload 0 /* this */
5: .line 151
getstatic jdk.incubator.http.internal.websocket.Frame$Opcode.BINARY:Ljdk/incubator/http/internal/websocket/Frame$Opcode;
aload 1 /* context */
invokevirtual jdk.incubator.http.internal.websocket.OutgoingMessage$Context.isPreviousLast:()Z
aload 0 /* this */
getfield jdk.incubator.http.internal.websocket.OutgoingMessage$Binary.isLast:Z
aload 0 /* this */
getfield jdk.incubator.http.internal.websocket.OutgoingMessage$Binary.payload:Ljava/nio/ByteBuffer;
aload 2 /* newBuffer */
6: .line 150
invokestatic jdk.incubator.http.internal.websocket.OutgoingMessage.getDataMessageBuffers:(Ljdk/incubator/http/internal/websocket/Frame$Opcode;ZZLjava/nio/ByteBuffer;Ljava/nio/ByteBuffer;)[Ljava/nio/ByteBuffer;
putfield jdk.incubator.http.internal.websocket.OutgoingMessage$Binary.frame:[Ljava/nio/ByteBuffer;
7: .line 152
aload 1 /* context */
iconst_0
invokevirtual jdk.incubator.http.internal.websocket.OutgoingMessage$Context.setPreviousText:(Z)V
8: .line 153
aload 1 /* context */
iconst_1
invokevirtual jdk.incubator.http.internal.websocket.OutgoingMessage$Context.setPreviousBinary:(Z)V
9: .line 154
aload 1 /* context */
aload 0 /* this */
getfield jdk.incubator.http.internal.websocket.OutgoingMessage$Binary.isLast:Z
invokevirtual jdk.incubator.http.internal.websocket.OutgoingMessage$Context.setPreviousLast:(Z)V
10: .line 155
iconst_1
ireturn
end local 2 // java.nio.ByteBuffer newBuffer
end local 1 // jdk.incubator.http.internal.websocket.OutgoingMessage$Context context
end local 0 // jdk.incubator.http.internal.websocket.OutgoingMessage$Binary this
LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Ljdk/incubator/http/internal/websocket/OutgoingMessage$Binary;
0 11 1 context Ljdk/incubator/http/internal/websocket/OutgoingMessage$Context;
4 11 2 newBuffer Ljava/nio/ByteBuffer;
MethodParameters:
Name Flags
context
}
SourceFile: "OutgoingMessage.java"
NestHost: jdk.incubator.http.internal.websocket.OutgoingMessage
InnerClasses:
final Opcode = jdk.incubator.http.internal.websocket.Frame$Opcode of jdk.incubator.http.internal.websocket.Frame
final Binary = jdk.incubator.http.internal.websocket.OutgoingMessage$Binary of jdk.incubator.http.internal.websocket.OutgoingMessage
public Context = jdk.incubator.http.internal.websocket.OutgoingMessage$Context of jdk.incubator.http.internal.websocket.OutgoingMessage