class org.xnio.http.HttpUpgrade$HttpUpgradeState$ConnectionOpenListener implements org.xnio.ChannelListener<org.xnio.StreamConnection>
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.xnio.http.HttpUpgrade$HttpUpgradeState$ConnectionOpenListener
super_class: java.lang.Object
{
final org.xnio.http.HttpUpgrade$HttpUpgradeState this$1;
descriptor: Lorg/xnio/http/HttpUpgrade$HttpUpgradeState;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
private void <init>(org.xnio.http.HttpUpgrade$HttpUpgradeState);
descriptor: (Lorg/xnio/http/HttpUpgrade$HttpUpgradeState;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 // org.xnio.http.HttpUpgrade$HttpUpgradeState$ConnectionOpenListener this
0: .line 320
aload 0 /* this */
aload 1
putfield org.xnio.http.HttpUpgrade$HttpUpgradeState$ConnectionOpenListener.this$1:Lorg/xnio/http/HttpUpgrade$HttpUpgradeState;
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
return
end local 0 // org.xnio.http.HttpUpgrade$HttpUpgradeState$ConnectionOpenListener this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/xnio/http/HttpUpgrade$HttpUpgradeState$ConnectionOpenListener;
MethodParameters:
Name Flags
this$0 final
public void handleEvent(org.xnio.StreamConnection);
descriptor: (Lorg/xnio/StreamConnection;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=2
start local 0 // org.xnio.http.HttpUpgrade$HttpUpgradeState$ConnectionOpenListener this
start local 1 // org.xnio.StreamConnection channel
0: .line 323
aload 0 /* this */
getfield org.xnio.http.HttpUpgrade$HttpUpgradeState$ConnectionOpenListener.this$1:Lorg/xnio/http/HttpUpgrade$HttpUpgradeState;
aload 1 /* channel */
putfield org.xnio.http.HttpUpgrade$HttpUpgradeState.connection:Lorg/xnio/StreamConnection;
1: .line 324
aload 0 /* this */
getfield org.xnio.http.HttpUpgrade$HttpUpgradeState$ConnectionOpenListener.this$1:Lorg/xnio/http/HttpUpgrade$HttpUpgradeState;
invokevirtual org.xnio.http.HttpUpgrade$HttpUpgradeState.buildHttpRequest:()Ljava/lang/String;
invokevirtual java.lang.String.getBytes:()[B
invokestatic java.nio.ByteBuffer.wrap:([B)Ljava/nio/ByteBuffer;
astore 2 /* buffer */
start local 2 // java.nio.ByteBuffer buffer
2: .line 328
StackMap locals: java.nio.ByteBuffer
StackMap stack:
aload 1 /* channel */
invokevirtual org.xnio.StreamConnection.getSinkChannel:()Lorg/xnio/conduits/ConduitStreamSinkChannel;
aload 2 /* buffer */
invokevirtual org.xnio.conduits.ConduitStreamSinkChannel.write:(Ljava/nio/ByteBuffer;)I
istore 3 /* r */
start local 3 // int r
3: .line 329
iload 3 /* r */
ifne 11
4: .line 330
aload 1 /* channel */
invokevirtual org.xnio.StreamConnection.getSinkChannel:()Lorg/xnio/conduits/ConduitStreamSinkChannel;
invokevirtual org.xnio.conduits.ConduitStreamSinkChannel.getWriteSetter:()Lorg/xnio/ChannelListener$Setter;
new org.xnio.http.HttpUpgrade$HttpUpgradeState$StringWriteListener
dup
aload 0 /* this */
getfield org.xnio.http.HttpUpgrade$HttpUpgradeState$ConnectionOpenListener.this$1:Lorg/xnio/http/HttpUpgrade$HttpUpgradeState;
aload 2 /* buffer */
invokespecial org.xnio.http.HttpUpgrade$HttpUpgradeState$StringWriteListener.<init>:(Lorg/xnio/http/HttpUpgrade$HttpUpgradeState;Ljava/nio/ByteBuffer;)V
invokeinterface org.xnio.ChannelListener$Setter.set:(Lorg/xnio/ChannelListener;)V
5: .line 331
aload 1 /* channel */
invokevirtual org.xnio.StreamConnection.getSinkChannel:()Lorg/xnio/conduits/ConduitStreamSinkChannel;
invokevirtual org.xnio.conduits.ConduitStreamSinkChannel.resumeWrites:()V
6: .line 332
return
end local 3 // int r
7: .line 334
StackMap locals:
StackMap stack: java.io.IOException
astore 4 /* e */
start local 4 // java.io.IOException e
8: .line 335
aload 1 /* channel */
invokestatic org.xnio.IoUtils.safeClose:(Ljava/io/Closeable;)V
9: .line 336
aload 0 /* this */
getfield org.xnio.http.HttpUpgrade$HttpUpgradeState$ConnectionOpenListener.this$1:Lorg/xnio/http/HttpUpgrade$HttpUpgradeState;
getfield org.xnio.http.HttpUpgrade$HttpUpgradeState.future:Lorg/xnio/FutureResult;
aload 4 /* e */
invokevirtual org.xnio.FutureResult.setException:(Ljava/io/IOException;)Z
pop
10: .line 337
return
end local 4 // java.io.IOException e
start local 3 // int r
11: .line 339
StackMap locals: int
StackMap stack:
aload 2 /* buffer */
invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
ifne 2
12: .line 340
aload 0 /* this */
getfield org.xnio.http.HttpUpgrade$HttpUpgradeState$ConnectionOpenListener.this$1:Lorg/xnio/http/HttpUpgrade$HttpUpgradeState;
invokevirtual org.xnio.http.HttpUpgrade$HttpUpgradeState.flushUpgradeChannel:()V
13: .line 341
return
end local 3 // int r
end local 2 // java.nio.ByteBuffer buffer
end local 1 // org.xnio.StreamConnection channel
end local 0 // org.xnio.http.HttpUpgrade$HttpUpgradeState$ConnectionOpenListener this
LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lorg/xnio/http/HttpUpgrade$HttpUpgradeState$ConnectionOpenListener;
0 14 1 channel Lorg/xnio/StreamConnection;
2 14 2 buffer Ljava/nio/ByteBuffer;
3 7 3 r I
11 14 3 r I
8 11 4 e Ljava/io/IOException;
Exception table:
from to target type
2 6 7 Class java.io.IOException
MethodParameters:
Name Flags
channel final
public void handleEvent(java.nio.channels.Channel);
descriptor: (Ljava/nio/channels/Channel;)V
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: .line 1
aload 0
aload 1
checkcast org.xnio.StreamConnection
invokevirtual org.xnio.http.HttpUpgrade$HttpUpgradeState$ConnectionOpenListener.handleEvent:(Lorg/xnio/StreamConnection;)V
return
LocalVariableTable:
Start End Slot Name Signature
}
Signature: Ljava/lang/Object;Lorg/xnio/ChannelListener<Lorg/xnio/StreamConnection;>;
SourceFile: "HttpUpgrade.java"
NestHost: org.xnio.http.HttpUpgrade
InnerClasses:
public abstract Setter = org.xnio.ChannelListener$Setter of org.xnio.ChannelListener
private HttpUpgradeState = org.xnio.http.HttpUpgrade$HttpUpgradeState of org.xnio.http.HttpUpgrade
private ConnectionOpenListener = org.xnio.http.HttpUpgrade$HttpUpgradeState$ConnectionOpenListener of org.xnio.http.HttpUpgrade$HttpUpgradeState
private final StringWriteListener = org.xnio.http.HttpUpgrade$HttpUpgradeState$StringWriteListener of org.xnio.http.HttpUpgrade$HttpUpgradeState