public final class com.oracle.truffle.tools.dap.test.DAPAddressTest
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: com.oracle.truffle.tools.dap.test.DAPAddressTest
super_class: java.lang.Object
{
private org.graalvm.polyglot.Context context;
descriptor: Lorg/graalvm/polyglot/Context;
flags: (0x0002) ACC_PRIVATE
private java.io.ByteArrayOutputStream output;
descriptor: Ljava/io/ByteArrayOutputStream;
flags: (0x0002) ACC_PRIVATE
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/tools/dap/test/DAPAddressTest;
public void setUp();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
new java.io.ByteArrayOutputStream
dup
invokespecial java.io.ByteArrayOutputStream.<init>:()V
putfield com.oracle.truffle.tools.dap.test.DAPAddressTest.output:Ljava/io/ByteArrayOutputStream;
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/tools/dap/test/DAPAddressTest;
RuntimeVisibleAnnotations:
org.junit.Before()
public void tearDown();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield com.oracle.truffle.tools.dap.test.DAPAddressTest.context:Lorg/graalvm/polyglot/Context;
ifnull 3
1: aload 0
getfield com.oracle.truffle.tools.dap.test.DAPAddressTest.context:Lorg/graalvm/polyglot/Context;
invokevirtual org.graalvm.polyglot.Context.close:()V
2: aload 0
aconst_null
putfield com.oracle.truffle.tools.dap.test.DAPAddressTest.context:Lorg/graalvm/polyglot/Context;
3: StackMap locals:
StackMap stack:
aload 0
getfield com.oracle.truffle.tools.dap.test.DAPAddressTest.output:Ljava/io/ByteArrayOutputStream;
invokevirtual java.io.ByteArrayOutputStream.reset:()V
4: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/oracle/truffle/tools/dap/test/DAPAddressTest;
RuntimeVisibleAnnotations:
org.junit.After()
public void testHostPortDefault();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: aload 0
iconst_0
anewarray java.lang.String
invokestatic org.graalvm.polyglot.Context.newBuilder:([Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
ldc "dap"
ldc ""
invokevirtual org.graalvm.polyglot.Context$Builder.option:(Ljava/lang/String;Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
aload 0
getfield com.oracle.truffle.tools.dap.test.DAPAddressTest.output:Ljava/io/ByteArrayOutputStream;
invokevirtual org.graalvm.polyglot.Context$Builder.out:(Ljava/io/OutputStream;)Lorg/graalvm/polyglot/Context$Builder;
invokevirtual org.graalvm.polyglot.Context$Builder.build:()Lorg/graalvm/polyglot/Context;
putfield com.oracle.truffle.tools.dap.test.DAPAddressTest.context:Lorg/graalvm/polyglot/Context;
1: aload 0
getfield com.oracle.truffle.tools.dap.test.DAPAddressTest.output:Ljava/io/ByteArrayOutputStream;
invokestatic com.oracle.truffle.tools.dap.test.DAPAddressTest.parseSocketAddress:(Ljava/io/ByteArrayOutputStream;)[Ljava/lang/String;
astore 1
start local 1 2: ldc "127.0.0.1"
ldc "4711"
aload 1
invokestatic com.oracle.truffle.tools.dap.test.DAPAddressTest.assertAddress:(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)V
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/oracle/truffle/tools/dap/test/DAPAddressTest;
2 4 1 address [Ljava/lang/String;
RuntimeVisibleAnnotations:
org.junit.Test()
public void testHost();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: ldc "os.name"
invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
ldc "Linux"
invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
invokestatic org.junit.Assume.assumeTrue:(Z)V
1: aload 0
iconst_0
anewarray java.lang.String
invokestatic org.graalvm.polyglot.Context.newBuilder:([Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
ldc "dap"
ldc "127.0.0.2"
invokevirtual org.graalvm.polyglot.Context$Builder.option:(Ljava/lang/String;Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
aload 0
getfield com.oracle.truffle.tools.dap.test.DAPAddressTest.output:Ljava/io/ByteArrayOutputStream;
invokevirtual org.graalvm.polyglot.Context$Builder.out:(Ljava/io/OutputStream;)Lorg/graalvm/polyglot/Context$Builder;
invokevirtual org.graalvm.polyglot.Context$Builder.build:()Lorg/graalvm/polyglot/Context;
putfield com.oracle.truffle.tools.dap.test.DAPAddressTest.context:Lorg/graalvm/polyglot/Context;
2: aload 0
getfield com.oracle.truffle.tools.dap.test.DAPAddressTest.output:Ljava/io/ByteArrayOutputStream;
invokestatic com.oracle.truffle.tools.dap.test.DAPAddressTest.parseSocketAddress:(Ljava/io/ByteArrayOutputStream;)[Ljava/lang/String;
astore 1
start local 1 3: ldc "127.0.0.2"
ldc "4711"
aload 1
invokestatic com.oracle.truffle.tools.dap.test.DAPAddressTest.assertAddress:(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)V
4: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/oracle/truffle/tools/dap/test/DAPAddressTest;
3 5 1 address [Ljava/lang/String;
RuntimeVisibleAnnotations:
org.junit.Test()
public void testPort();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: aload 0
iconst_0
anewarray java.lang.String
invokestatic org.graalvm.polyglot.Context.newBuilder:([Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
ldc "dap"
ldc "7411"
invokevirtual org.graalvm.polyglot.Context$Builder.option:(Ljava/lang/String;Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
aload 0
getfield com.oracle.truffle.tools.dap.test.DAPAddressTest.output:Ljava/io/ByteArrayOutputStream;
invokevirtual org.graalvm.polyglot.Context$Builder.out:(Ljava/io/OutputStream;)Lorg/graalvm/polyglot/Context$Builder;
invokevirtual org.graalvm.polyglot.Context$Builder.build:()Lorg/graalvm/polyglot/Context;
putfield com.oracle.truffle.tools.dap.test.DAPAddressTest.context:Lorg/graalvm/polyglot/Context;
1: aload 0
getfield com.oracle.truffle.tools.dap.test.DAPAddressTest.output:Ljava/io/ByteArrayOutputStream;
invokestatic com.oracle.truffle.tools.dap.test.DAPAddressTest.parseSocketAddress:(Ljava/io/ByteArrayOutputStream;)[Ljava/lang/String;
astore 1
start local 1 2: ldc "127.0.0.1"
ldc "7411"
aload 1
invokestatic com.oracle.truffle.tools.dap.test.DAPAddressTest.assertAddress:(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)V
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/oracle/truffle/tools/dap/test/DAPAddressTest;
2 4 1 address [Ljava/lang/String;
RuntimeVisibleAnnotations:
org.junit.Test()
public void testBadPorts();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
bipush -2
invokevirtual com.oracle.truffle.tools.dap.test.DAPAddressTest.assertBadPort:(I)V
1: iconst_1
istore 1
start local 1 2: goto 5
3: StackMap locals: int
StackMap stack:
aload 0
iload 1
invokevirtual com.oracle.truffle.tools.dap.test.DAPAddressTest.assertBadPort:(I)V
4: iinc 1 1022
StackMap locals:
StackMap stack:
5: iload 1
sipush 1024
if_icmplt 3
end local 1 6: aload 0
ldc 65536
invokevirtual com.oracle.truffle.tools.dap.test.DAPAddressTest.assertBadPort:(I)V
7: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/oracle/truffle/tools/dap/test/DAPAddressTest;
2 6 1 p I
RuntimeVisibleAnnotations:
org.junit.Test()
private void assertBadPort(int);
descriptor: (I)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: iconst_0
anewarray java.lang.String
invokestatic org.graalvm.polyglot.Context.newBuilder:([Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
ldc "dap"
iload 1
invokestatic java.lang.Integer.toString:(I)Ljava/lang/String;
invokevirtual org.graalvm.polyglot.Context$Builder.option:(Ljava/lang/String;Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
aload 0
getfield com.oracle.truffle.tools.dap.test.DAPAddressTest.output:Ljava/io/ByteArrayOutputStream;
invokevirtual org.graalvm.polyglot.Context$Builder.out:(Ljava/io/OutputStream;)Lorg/graalvm/polyglot/Context$Builder;
invokevirtual org.graalvm.polyglot.Context$Builder.build:()Lorg/graalvm/polyglot/Context;
pop
1: invokestatic org.junit.Assert.fail:()V
2: goto 5
StackMap locals:
StackMap stack: java.lang.IllegalArgumentException
3: astore 2
start local 2 4: aload 2
invokevirtual java.lang.IllegalArgumentException.getMessage:()Ljava/lang/String;
aload 2
invokevirtual java.lang.IllegalArgumentException.getMessage:()Ljava/lang/String;
new java.lang.StringBuilder
dup
ldc "Invalid port number: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc "."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
invokestatic org.junit.Assert.assertTrue:(Ljava/lang/String;Z)V
end local 2 5: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/oracle/truffle/tools/dap/test/DAPAddressTest;
0 6 1 p I
4 5 2 ex Ljava/lang/IllegalArgumentException;
Exception table:
from to target type
0 2 3 Class java.lang.IllegalArgumentException
MethodParameters:
Name Flags
p
public void testHostPort();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: ldc "os.name"
invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
ldc "Linux"
invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
invokestatic org.junit.Assume.assumeTrue:(Z)V
1: aload 0
iconst_0
anewarray java.lang.String
invokestatic org.graalvm.polyglot.Context.newBuilder:([Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
ldc "dap"
ldc "127.0.0.2:7411"
invokevirtual org.graalvm.polyglot.Context$Builder.option:(Ljava/lang/String;Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
aload 0
getfield com.oracle.truffle.tools.dap.test.DAPAddressTest.output:Ljava/io/ByteArrayOutputStream;
invokevirtual org.graalvm.polyglot.Context$Builder.out:(Ljava/io/OutputStream;)Lorg/graalvm/polyglot/Context$Builder;
invokevirtual org.graalvm.polyglot.Context$Builder.build:()Lorg/graalvm/polyglot/Context;
putfield com.oracle.truffle.tools.dap.test.DAPAddressTest.context:Lorg/graalvm/polyglot/Context;
2: aload 0
getfield com.oracle.truffle.tools.dap.test.DAPAddressTest.output:Ljava/io/ByteArrayOutputStream;
invokestatic com.oracle.truffle.tools.dap.test.DAPAddressTest.parseSocketAddress:(Ljava/io/ByteArrayOutputStream;)[Ljava/lang/String;
astore 1
start local 1 3: ldc "127.0.0.2"
ldc "7411"
aload 1
invokestatic com.oracle.truffle.tools.dap.test.DAPAddressTest.assertAddress:(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)V
4: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/oracle/truffle/tools/dap/test/DAPAddressTest;
3 5 1 address [Ljava/lang/String;
RuntimeVisibleAnnotations:
org.junit.Test()
public void testPort0();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: aload 0
iconst_0
anewarray java.lang.String
invokestatic org.graalvm.polyglot.Context.newBuilder:([Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
ldc "dap"
ldc "0"
invokevirtual org.graalvm.polyglot.Context$Builder.option:(Ljava/lang/String;Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
aload 0
getfield com.oracle.truffle.tools.dap.test.DAPAddressTest.output:Ljava/io/ByteArrayOutputStream;
invokevirtual org.graalvm.polyglot.Context$Builder.out:(Ljava/io/OutputStream;)Lorg/graalvm/polyglot/Context$Builder;
invokevirtual org.graalvm.polyglot.Context$Builder.build:()Lorg/graalvm/polyglot/Context;
putfield com.oracle.truffle.tools.dap.test.DAPAddressTest.context:Lorg/graalvm/polyglot/Context;
1: aload 0
getfield com.oracle.truffle.tools.dap.test.DAPAddressTest.output:Ljava/io/ByteArrayOutputStream;
invokestatic com.oracle.truffle.tools.dap.test.DAPAddressTest.parseSocketAddress:(Ljava/io/ByteArrayOutputStream;)[Ljava/lang/String;
astore 1
start local 1 2: ldc "127.0.0.1"
ldc "?"
aload 1
invokestatic com.oracle.truffle.tools.dap.test.DAPAddressTest.assertAddress:(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)V
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/oracle/truffle/tools/dap/test/DAPAddressTest;
2 4 1 address [Ljava/lang/String;
RuntimeVisibleAnnotations:
org.junit.Test()
private static java.lang.String[] parseSocketAddress(java.io.ByteArrayOutputStream);
descriptor: (Ljava/io/ByteArrayOutputStream;)[Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=9, args_size=1
start local 0 0: iconst_0
istore 1
start local 1 1: goto 6
2: StackMap locals: int
StackMap stack:
ldc 1000
invokestatic java.lang.Thread.sleep:(J)V
3: goto 6
StackMap locals:
StackMap stack: java.lang.InterruptedException
4: astore 2
start local 2 5: ldc Lcom/oracle/truffle/tools/dap/test/DAPAddressTest;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokestatic java.util.logging.Logger.getLogger:(Ljava/lang/String;)Ljava/util/logging/Logger;
getstatic java.util.logging.Level.SEVERE:Ljava/util/logging/Level;
aconst_null
aload 2
invokevirtual java.util.logging.Logger.log:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/Throwable;)V
end local 2 6: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.io.ByteArrayOutputStream.size:()I
ifne 7
iload 1
iinc 1 1
bipush 100
if_icmplt 2
7: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.io.ByteArrayOutputStream.toString:()Ljava/lang/String;
astore 2
start local 2 8: aload 2
ldc "[Graal DAP] Starting server and listening on "
invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
istore 3
start local 3 9: aload 2
iload 3
iflt 10
iconst_1
goto 11
StackMap locals: java.io.ByteArrayOutputStream int java.lang.String int
StackMap stack: java.lang.String
10: iconst_0
StackMap locals: java.io.ByteArrayOutputStream int java.lang.String int
StackMap stack: java.lang.String int
11: invokestatic org.junit.Assert.assertTrue:(Ljava/lang/String;Z)V
12: aload 2
ldc "/"
iload 3
invokevirtual java.lang.String.indexOf:(Ljava/lang/String;I)I
istore 4
start local 4 13: aload 2
iload 4
ifle 14
iconst_1
goto 15
StackMap locals: java.io.ByteArrayOutputStream int java.lang.String int int
StackMap stack: java.lang.String
14: iconst_0
StackMap locals: java.io.ByteArrayOutputStream int java.lang.String int int
StackMap stack: java.lang.String int
15: invokestatic org.junit.Assert.assertTrue:(Ljava/lang/String;Z)V
16: iinc 4 1
17: aload 2
ldc ":"
iload 4
invokevirtual java.lang.String.indexOf:(Ljava/lang/String;I)I
istore 5
start local 5 18: aload 2
iload 5
ifle 19
iconst_1
goto 20
StackMap locals: java.io.ByteArrayOutputStream int java.lang.String int int int
StackMap stack: java.lang.String
19: iconst_0
StackMap locals: java.io.ByteArrayOutputStream int java.lang.String int int int
StackMap stack: java.lang.String int
20: invokestatic org.junit.Assert.assertTrue:(Ljava/lang/String;Z)V
21: aload 2
iload 4
iload 5
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
astore 6
start local 6 22: iinc 5 1
23: iload 5
istore 7
start local 7 24: goto 26
25: StackMap locals: java.lang.String int
StackMap stack:
iinc 7 1
26: StackMap locals:
StackMap stack:
iload 7
aload 2
invokevirtual java.lang.String.length:()I
if_icmpge 27
aload 2
iload 7
invokevirtual java.lang.String.charAt:(I)C
invokestatic java.lang.Character.isWhitespace:(C)Z
ifeq 25
27: StackMap locals:
StackMap stack:
aload 2
iload 7
ifle 28
iconst_1
goto 29
StackMap locals:
StackMap stack: java.lang.String
28: iconst_0
StackMap locals: java.io.ByteArrayOutputStream int java.lang.String int int int java.lang.String int
StackMap stack: java.lang.String int
29: invokestatic org.junit.Assert.assertTrue:(Ljava/lang/String;Z)V
30: aload 2
iload 5
iload 7
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
astore 8
start local 8 31: iconst_2
anewarray java.lang.String
dup
iconst_0
aload 6
aastore
dup
iconst_1
aload 8
aastore
areturn
end local 8 end local 7 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 32 0 output Ljava/io/ByteArrayOutputStream;
1 32 1 i I
5 6 2 ex Ljava/lang/InterruptedException;
8 32 2 out Ljava/lang/String;
9 32 3 index I
13 32 4 hostStartIndex I
18 32 5 portStartIndex I
22 32 6 host Ljava/lang/String;
24 32 7 portEndIndex I
31 32 8 port Ljava/lang/String;
Exception table:
from to target type
2 3 4 Class java.lang.InterruptedException
MethodParameters:
Name Flags
output
private static void assertAddress(java.lang.String, java.lang.String, java.lang.String[]);
descriptor: (Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 2
iconst_0
aaload
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
1: ldc "?"
aload 1
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 4
2: aload 1
aload 2
iconst_1
aaload
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
3: goto 8
4: StackMap locals:
StackMap stack:
aload 2
iconst_1
aaload
invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
istore 3
start local 3 5: aload 1
sipush 1024
iload 3
if_icmpgt 6
iload 3
ldc 65536
if_icmpge 6
iconst_1
goto 7
StackMap locals: java.lang.String java.lang.String java.lang.String[] int
StackMap stack: java.lang.String
6: iconst_0
StackMap locals: java.lang.String java.lang.String java.lang.String[] int
StackMap stack: java.lang.String int
7: invokestatic org.junit.Assert.assertTrue:(Ljava/lang/String;Z)V
end local 3 8: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 host Ljava/lang/String;
0 9 1 port Ljava/lang/String;
0 9 2 address [Ljava/lang/String;
5 8 3 portNumber I
MethodParameters:
Name Flags
host
port
address
}
SourceFile: "DAPAddressTest.java"
InnerClasses:
public final Builder = org.graalvm.polyglot.Context$Builder of org.graalvm.polyglot.Context