public final class sun.net.www.ParseUtil
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: sun.net.www.ParseUtil
super_class: java.lang.Object
{
private static final char[] hexDigits;
descriptor: [C
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final long L_DIGIT;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 287948901175001088
private static final long H_DIGIT;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 0
private static final long L_HEX;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 287948901175001088
private static final long H_HEX;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 541165879422
private static final long L_UPALPHA;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 0
private static final long H_UPALPHA;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 134217726
private static final long L_LOWALPHA;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 0
private static final long H_LOWALPHA;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 576460743713488896
private static final long L_ALPHA;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 0
private static final long H_ALPHA;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 576460743847706622
private static final long L_ALPHANUM;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 287948901175001088
private static final long H_ALPHANUM;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 576460743847706622
private static final long L_MARK;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 113808043409408
private static final long H_MARK;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 4611686020574871552
private static final long L_UNRESERVED;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 288062709218410496
private static final long H_UNRESERVED;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 5188146764422578174
private static final long L_RESERVED;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: -6052670429821140992
private static final long H_RESERVED;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 671088641
private static final long L_ESCAPED;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1
private static final long H_ESCAPED;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 0
private static final long L_URIC;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: -5764607720602730495
private static final long H_URIC;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 5188146765093666815
private static final long L_PCHAR;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 2882162826460266497
private static final long H_PCHAR;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 5188146764422578175
private static final long L_PATH;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 3458764316252045313
private static final long H_PATH;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 5188146764422578175
private static final long L_DASH;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 35184372088832
private static final long H_DASH;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 0
private static final long L_USERINFO;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 3458623578763689985
private static final long H_USERINFO;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 5188146764422578174
private static final long L_REG_NAME;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 3458623578763689985
private static final long H_REG_NAME;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 5188146764422578175
private static final long L_SERVER;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 3458623578763689985
private static final long H_SERVER;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 5188146765093666815
private static final long L_ENCODED;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: -576319817246572545
private static final long H_ENCODED;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: -5188146764422578176
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=4, locals=0, args_size=0
0: ldc Lsun/net/www/ParseUtil;
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 sun.net.www.ParseUtil.$assertionsDisabled:Z
3: bipush 16
newarray 5
dup
iconst_0
4: bipush 48
castore
dup
iconst_1
bipush 49
castore
dup
iconst_2
bipush 50
castore
dup
iconst_3
bipush 51
castore
dup
iconst_4
bipush 52
castore
dup
iconst_5
bipush 53
castore
dup
bipush 6
bipush 54
castore
dup
bipush 7
bipush 55
castore
dup
bipush 8
5: bipush 56
castore
dup
bipush 9
bipush 57
castore
dup
bipush 10
bipush 65
castore
dup
bipush 11
bipush 66
castore
dup
bipush 12
bipush 67
castore
dup
bipush 13
bipush 68
castore
dup
bipush 14
bipush 69
castore
dup
bipush 15
bipush 70
castore
6: putstatic sun.net.www.ParseUtil.hexDigits:[C
7: return
LocalVariableTable:
Start End Slot Name Signature
private void <init>();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
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 Lsun/net/www/ParseUtil;
public static java.lang.String encodePath(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
iconst_1
invokestatic sun.net.www.ParseUtil.encodePath:(Ljava/lang/String;Z)Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 path Ljava/lang/String;
MethodParameters:
Name Flags
path
public static java.lang.String encodePath(java.lang.String, boolean);
descriptor: (Ljava/lang/String;Z)Ljava/lang/String;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: iload 1
ifeq 2
getstatic java.io.File.separatorChar:C
bipush 47
if_icmpeq 2
1: aload 0
iconst_0
getstatic java.io.File.separatorChar:C
invokestatic sun.net.www.ParseUtil.encodePath:(Ljava/lang/String;IC)Ljava/lang/String;
areturn
2: StackMap locals:
StackMap stack:
aload 0
invokestatic sun.net.www.ParseUtil.firstEncodeIndex:(Ljava/lang/String;)I
istore 2
start local 2 3: iload 2
iconst_m1
if_icmple 5
4: aload 0
iload 2
bipush 47
invokestatic sun.net.www.ParseUtil.encodePath:(Ljava/lang/String;IC)Ljava/lang/String;
areturn
5: StackMap locals: int
StackMap stack:
aload 0
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 path Ljava/lang/String;
0 6 1 flag Z
3 6 2 index I
MethodParameters:
Name Flags
path
flag
private static int firstEncodeIndex(java.lang.String);
descriptor: (Ljava/lang/String;)I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=4, args_size=1
start local 0 0: aload 0
invokevirtual java.lang.String.length:()I
istore 1
start local 1 1: iconst_0
istore 2
start local 2 2: goto 11
3: StackMap locals: int int
StackMap stack:
aload 0
iload 2
invokevirtual java.lang.String.charAt:(I)C
istore 3
start local 3 4: iload 3
bipush 97
if_icmplt 5
iload 3
bipush 122
if_icmple 10
5: StackMap locals: int
StackMap stack:
iload 3
bipush 38
if_icmplt 6
iload 3
bipush 58
if_icmple 10
6: StackMap locals:
StackMap stack:
iload 3
bipush 65
if_icmplt 8
iload 3
bipush 90
if_icmpgt 8
7: goto 10
8: StackMap locals:
StackMap stack:
iload 3
bipush 127
if_icmpgt 9
iload 3
ldc -576319817246572545
ldc -5188146764422578176
invokestatic sun.net.www.ParseUtil.match:(CJJ)Z
ifeq 10
9: StackMap locals:
StackMap stack:
iload 2
ireturn
end local 3 10: StackMap locals:
StackMap stack:
iinc 2 1
StackMap locals:
StackMap stack:
11: iload 2
iload 1
if_icmplt 3
end local 2 12: iconst_m1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 path Ljava/lang/String;
1 13 1 len I
2 12 2 i I
4 10 3 c C
MethodParameters:
Name Flags
path
private static java.lang.String encodePath(java.lang.String, int, char);
descriptor: (Ljava/lang/String;IC)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=10, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokevirtual java.lang.String.toCharArray:()[C
astore 3
start local 3 1: aload 3
arraylength
iconst_2
imul
bipush 16
iadd
iload 1
isub
newarray 5
astore 4
start local 4 2: iload 1
ifle 4
3: aload 3
iconst_0
aload 4
iconst_0
iload 1
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
4: StackMap locals: char[] char[]
StackMap stack:
iload 1
istore 5
start local 5 5: iload 1
istore 6
start local 6 6: goto 36
7: StackMap locals: int int
StackMap stack:
aload 3
iload 6
caload
istore 7
start local 7 8: iload 7
iload 2
if_icmpne 10
9: aload 4
iload 5
iinc 5 1
bipush 47
castore
goto 28
10: StackMap locals: int
StackMap stack:
iload 7
bipush 127
if_icmpgt 21
11: iload 7
bipush 97
if_icmplt 12
iload 7
bipush 122
if_icmple 14
12: StackMap locals:
StackMap stack:
iload 7
bipush 65
if_icmplt 13
iload 7
bipush 90
if_icmple 14
13: StackMap locals:
StackMap stack:
iload 7
bipush 48
if_icmplt 16
iload 7
bipush 57
if_icmpgt 16
14: StackMap locals:
StackMap stack:
aload 4
iload 5
iinc 5 1
iload 7
castore
15: goto 28
StackMap locals:
StackMap stack:
16: iload 7
ldc -576319817246572545
ldc -5188146764422578176
invokestatic sun.net.www.ParseUtil.match:(CJJ)Z
ifeq 19
17: aload 4
iload 7
iload 5
invokestatic sun.net.www.ParseUtil.escape:([CCI)I
istore 5
18: goto 28
19: StackMap locals:
StackMap stack:
aload 4
iload 5
iinc 5 1
iload 7
castore
20: goto 28
StackMap locals:
StackMap stack:
21: iload 7
sipush 2047
if_icmple 26
22: aload 4
sipush 224
iload 7
bipush 12
ishr
bipush 15
iand
ior
i2c
iload 5
invokestatic sun.net.www.ParseUtil.escape:([CCI)I
istore 5
23: aload 4
sipush 128
iload 7
bipush 6
ishr
bipush 63
iand
ior
i2c
iload 5
invokestatic sun.net.www.ParseUtil.escape:([CCI)I
istore 5
24: aload 4
sipush 128
iload 7
iconst_0
ishr
bipush 63
iand
ior
i2c
iload 5
invokestatic sun.net.www.ParseUtil.escape:([CCI)I
istore 5
25: goto 28
26: StackMap locals:
StackMap stack:
aload 4
sipush 192
iload 7
bipush 6
ishr
bipush 31
iand
ior
i2c
iload 5
invokestatic sun.net.www.ParseUtil.escape:([CCI)I
istore 5
27: aload 4
sipush 128
iload 7
iconst_0
ishr
bipush 63
iand
ior
i2c
iload 5
invokestatic sun.net.www.ParseUtil.escape:([CCI)I
istore 5
28: StackMap locals:
StackMap stack:
iload 5
bipush 9
iadd
aload 4
arraylength
if_icmple 35
29: aload 4
arraylength
iconst_2
imul
bipush 16
iadd
istore 8
start local 8 30: iload 8
ifge 32
31: ldc 2147483647
istore 8
32: StackMap locals: int
StackMap stack:
iload 8
newarray 5
astore 9
start local 9 33: aload 4
iconst_0
aload 9
iconst_0
iload 5
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
34: aload 9
astore 4
end local 9 end local 8 end local 7 35: StackMap locals:
StackMap stack:
iinc 6 1
StackMap locals:
StackMap stack:
36: iload 6
aload 3
arraylength
if_icmplt 7
end local 6 37: new java.lang.String
dup
aload 4
iconst_0
iload 5
invokespecial java.lang.String.<init>:([CII)V
areturn
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 38 0 path Ljava/lang/String;
0 38 1 index I
0 38 2 sep C
1 38 3 pathCC [C
2 38 4 retCC [C
5 38 5 retLen I
6 37 6 i I
8 35 7 c C
30 35 8 newLen I
33 35 9 buf [C
MethodParameters:
Name Flags
path
index
sep
private static int escape(char[], char, int);
descriptor: ([CCI)I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
iload 2
iinc 2 1
bipush 37
castore
1: aload 0
iload 2
iinc 2 1
iload 1
iconst_4
ishr
bipush 15
iand
bipush 16
invokestatic java.lang.Character.forDigit:(II)C
castore
2: aload 0
iload 2
iinc 2 1
iload 1
bipush 15
iand
bipush 16
invokestatic java.lang.Character.forDigit:(II)C
castore
3: iload 2
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 cc [C
0 4 1 c C
0 4 2 index I
MethodParameters:
Name Flags
cc
c
index
private static byte unescape(java.lang.String, int);
descriptor: (Ljava/lang/String;I)B
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
iconst_1
iadd
iload 1
iconst_3
iadd
bipush 16
invokestatic java.lang.Integer.parseInt:(Ljava/lang/CharSequence;III)I
i2b
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 s Ljava/lang/String;
0 1 1 i I
MethodParameters:
Name Flags
s
i
public static java.lang.String decode(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=9, args_size=1
start local 0 0: aload 0
invokevirtual java.lang.String.length:()I
istore 1
start local 1 1: iload 1
ifeq 2
aload 0
bipush 37
invokevirtual java.lang.String.indexOf:(I)I
ifge 3
2: StackMap locals: int
StackMap stack:
aload 0
areturn
3: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
iload 1
invokespecial java.lang.StringBuilder.<init>:(I)V
astore 2
start local 2 4: iload 1
invokestatic java.nio.ByteBuffer.allocate:(I)Ljava/nio/ByteBuffer;
astore 3
start local 3 5: iload 1
invokestatic java.nio.CharBuffer.allocate:(I)Ljava/nio/CharBuffer;
astore 4
start local 4 6: getstatic sun.nio.cs.UTF_8.INSTANCE:Lsun/nio/cs/UTF_8;
invokestatic sun.nio.cs.ThreadLocalCoders.decoderFor:(Ljava/lang/Object;)Ljava/nio/charset/CharsetDecoder;
7: getstatic java.nio.charset.CodingErrorAction.REPORT:Ljava/nio/charset/CodingErrorAction;
invokevirtual java.nio.charset.CharsetDecoder.onMalformedInput:(Ljava/nio/charset/CodingErrorAction;)Ljava/nio/charset/CharsetDecoder;
8: getstatic java.nio.charset.CodingErrorAction.REPORT:Ljava/nio/charset/CodingErrorAction;
invokevirtual java.nio.charset.CharsetDecoder.onUnmappableCharacter:(Ljava/nio/charset/CodingErrorAction;)Ljava/nio/charset/CharsetDecoder;
9: astore 5
start local 5 10: aload 0
iconst_0
invokevirtual java.lang.String.charAt:(I)C
istore 6
start local 6 11: iconst_0
istore 7
start local 7 12: goto 41
13: StackMap locals: java.lang.String int java.lang.StringBuilder java.nio.ByteBuffer java.nio.CharBuffer java.nio.charset.CharsetDecoder int int
StackMap stack:
getstatic sun.net.www.ParseUtil.$assertionsDisabled:Z
ifne 14
iload 6
aload 0
iload 7
invokevirtual java.lang.String.charAt:(I)C
if_icmpeq 14
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
14: StackMap locals:
StackMap stack:
iload 6
bipush 37
if_icmpeq 20
15: aload 2
iload 6
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
16: iinc 7 1
iload 7
iload 1
if_icmplt 18
17: goto 42
18: StackMap locals:
StackMap stack:
aload 0
iload 7
invokevirtual java.lang.String.charAt:(I)C
istore 6
19: goto 41
20: StackMap locals:
StackMap stack:
aload 3
invokevirtual java.nio.ByteBuffer.clear:()Ljava/nio/ByteBuffer;
pop
21: StackMap locals:
StackMap stack:
getstatic sun.net.www.ParseUtil.$assertionsDisabled:Z
ifne 22
iload 1
iload 7
isub
iconst_2
if_icmpge 22
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
22: StackMap locals:
StackMap stack:
aload 3
aload 0
iload 7
invokestatic sun.net.www.ParseUtil.unescape:(Ljava/lang/String;I)B
invokevirtual java.nio.ByteBuffer.put:(B)Ljava/nio/ByteBuffer;
pop
23: goto 26
StackMap locals:
StackMap stack: java.lang.NumberFormatException
24: pop
25: new java.lang.IllegalArgumentException
dup
invokespecial java.lang.IllegalArgumentException.<init>:()V
athrow
26: StackMap locals:
StackMap stack:
iinc 7 3
27: iload 7
iload 1
if_icmplt 29
28: goto 31
29: StackMap locals:
StackMap stack:
aload 0
iload 7
invokevirtual java.lang.String.charAt:(I)C
istore 6
30: iload 6
bipush 37
if_icmpeq 21
31: StackMap locals:
StackMap stack:
aload 3
invokevirtual java.nio.ByteBuffer.flip:()Ljava/nio/ByteBuffer;
pop
32: aload 4
invokevirtual java.nio.CharBuffer.clear:()Ljava/nio/CharBuffer;
pop
33: aload 5
invokevirtual java.nio.charset.CharsetDecoder.reset:()Ljava/nio/charset/CharsetDecoder;
pop
34: aload 5
aload 3
aload 4
iconst_1
invokevirtual java.nio.charset.CharsetDecoder.decode:(Ljava/nio/ByteBuffer;Ljava/nio/CharBuffer;Z)Ljava/nio/charset/CoderResult;
astore 8
start local 8 35: aload 8
invokevirtual java.nio.charset.CoderResult.isError:()Z
ifeq 37
36: new java.lang.IllegalArgumentException
dup
ldc "Error decoding percent encoded characters"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
37: StackMap locals: java.nio.charset.CoderResult
StackMap stack:
aload 5
aload 4
invokevirtual java.nio.charset.CharsetDecoder.flush:(Ljava/nio/CharBuffer;)Ljava/nio/charset/CoderResult;
astore 8
38: aload 8
invokevirtual java.nio.charset.CoderResult.isError:()Z
ifeq 40
39: new java.lang.IllegalArgumentException
dup
ldc "Error decoding percent encoded characters"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
40: StackMap locals:
StackMap stack:
aload 2
aload 4
invokevirtual java.nio.CharBuffer.flip:()Ljava/nio/CharBuffer;
invokevirtual java.nio.CharBuffer.toString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
end local 8 41: StackMap locals:
StackMap stack:
iload 7
iload 1
if_icmplt 13
end local 7 42: StackMap locals:
StackMap stack:
aload 2
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
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 43 0 s Ljava/lang/String;
1 43 1 n I
4 43 2 sb Ljava/lang/StringBuilder;
5 43 3 bb Ljava/nio/ByteBuffer;
6 43 4 cb Ljava/nio/CharBuffer;
10 43 5 dec Ljava/nio/charset/CharsetDecoder;
11 43 6 c C
12 42 7 i I
35 41 8 cr Ljava/nio/charset/CoderResult;
Exception table:
from to target type
22 23 24 Class java.lang.NumberFormatException
MethodParameters:
Name Flags
s
public static java.lang.String canonizeString(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual java.lang.String.length:()I
istore 1
start local 1 1: iload 1
ifeq 2
aload 0
ldc "./"
invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
iconst_m1
if_icmpne 3
aload 0
iload 1
iconst_1
isub
invokevirtual java.lang.String.charAt:(I)C
bipush 46
if_icmpeq 3
2: StackMap locals: int
StackMap stack:
aload 0
areturn
3: StackMap locals:
StackMap stack:
aload 0
invokestatic sun.net.www.ParseUtil.doCanonize:(Ljava/lang/String;)Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 file Ljava/lang/String;
1 4 1 len I
MethodParameters:
Name Flags
file
private static java.lang.String doCanonize(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=3, args_size=1
start local 0 0: goto 6
start local 1 1: StackMap locals: int
StackMap stack:
aload 0
bipush 47
iload 1
iconst_1
isub
invokevirtual java.lang.String.lastIndexOf:(II)I
dup
istore 2
start local 2 2: iflt 5
3: new java.lang.StringBuilder
dup
aload 0
iconst_0
iload 2
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
iload 1
iconst_3
iadd
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 0
4: goto 6
5: StackMap locals: int
StackMap stack:
aload 0
iload 1
iconst_3
iadd
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
astore 0
end local 2 end local 1 6: StackMap locals:
StackMap stack:
aload 0
ldc "/../"
invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
dup
istore 1
start local 1 7: ifge 1
8: goto 10
9: StackMap locals: int
StackMap stack:
new java.lang.StringBuilder
dup
aload 0
iconst_0
iload 1
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
iload 1
iconst_2
iadd
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 0
10: StackMap locals:
StackMap stack:
aload 0
ldc "/./"
invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
dup
istore 1
ifge 9
11: goto 18
12: StackMap locals:
StackMap stack:
aload 0
ldc "/.."
invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
istore 1
13: aload 0
bipush 47
iload 1
iconst_1
isub
invokevirtual java.lang.String.lastIndexOf:(II)I
dup
istore 2
start local 2 14: iflt 17
15: aload 0
iconst_0
iload 2
iconst_1
iadd
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
astore 0
16: goto 18
17: StackMap locals: int
StackMap stack:
aload 0
iconst_0
iload 1
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
astore 0
end local 2 18: StackMap locals:
StackMap stack:
aload 0
ldc "/.."
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifne 12
19: aload 0
ldc "/."
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifeq 21
20: aload 0
iconst_0
aload 0
invokevirtual java.lang.String.length:()I
iconst_1
isub
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
astore 0
21: StackMap locals:
StackMap stack:
aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 22 0 file Ljava/lang/String;
1 6 1 i I
7 22 1 i I
2 6 2 lim I
14 18 2 lim I
MethodParameters:
Name Flags
file
public static java.net.URL fileToEncodedURL(java.io.File);
descriptor: (Ljava/io/File;)Ljava/net/URL;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
astore 1
start local 1 1: aload 1
invokestatic sun.net.www.ParseUtil.encodePath:(Ljava/lang/String;)Ljava/lang/String;
astore 1
2: aload 1
ldc "/"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifne 4
3: new java.lang.StringBuilder
dup
ldc "/"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 1
4: StackMap locals: java.lang.String
StackMap stack:
aload 1
ldc "/"
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifne 6
aload 0
invokevirtual java.io.File.isDirectory:()Z
ifeq 6
5: new java.lang.StringBuilder
dup
aload 1
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "/"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 1
6: StackMap locals:
StackMap stack:
new java.net.URL
dup
ldc "file"
ldc ""
aload 1
invokespecial java.net.URL.<init>:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 file Ljava/io/File;
1 7 1 path Ljava/lang/String;
Exceptions:
throws java.net.MalformedURLException
MethodParameters:
Name Flags
file
public static java.net.URI toURI(java.net.URL);
descriptor: (Ljava/net/URL;)Ljava/net/URI;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=7, args_size=1
start local 0 0: aload 0
invokevirtual java.net.URL.getProtocol:()Ljava/lang/String;
astore 1
start local 1 1: aload 0
invokevirtual java.net.URL.getAuthority:()Ljava/lang/String;
astore 2
start local 2 2: aload 0
invokevirtual java.net.URL.getPath:()Ljava/lang/String;
astore 3
start local 3 3: aload 0
invokevirtual java.net.URL.getQuery:()Ljava/lang/String;
astore 4
start local 4 4: aload 0
invokevirtual java.net.URL.getRef:()Ljava/lang/String;
astore 5
start local 5 5: aload 3
ifnull 7
aload 3
ldc "/"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifne 7
6: new java.lang.StringBuilder
dup
ldc "/"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 3
7: StackMap locals: java.net.URL java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String
StackMap stack:
aload 2
ifnull 9
aload 2
ldc ":-1"
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifeq 9
8: aload 2
iconst_0
aload 2
invokevirtual java.lang.String.length:()I
iconst_3
isub
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
astore 2
9: StackMap locals:
StackMap stack:
aload 1
aload 2
aload 3
aload 4
aload 5
invokestatic sun.net.www.ParseUtil.createURI:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/net/URI;
astore 6
start local 6 10: goto 13
end local 6 StackMap locals:
StackMap stack: java.net.URISyntaxException
11: pop
12: aconst_null
astore 6
start local 6 13: StackMap locals: java.net.URI
StackMap stack:
aload 6
areturn
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 14 0 url Ljava/net/URL;
1 14 1 protocol Ljava/lang/String;
2 14 2 auth Ljava/lang/String;
3 14 3 path Ljava/lang/String;
4 14 4 query Ljava/lang/String;
5 14 5 ref Ljava/lang/String;
10 11 6 uri Ljava/net/URI;
13 14 6 uri Ljava/net/URI;
Exception table:
from to target type
9 10 11 Class java.net.URISyntaxException
MethodParameters:
Name Flags
url
private static java.net.URI createURI(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String);
descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/net/URI;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=9, locals=6, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
aconst_null
1: aload 1
aconst_null
aconst_null
iconst_m1
2: aload 2
aload 3
aload 4
3: invokestatic sun.net.www.ParseUtil.toString:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
astore 5
start local 5 4: aload 5
aload 0
aload 2
invokestatic sun.net.www.ParseUtil.checkPath:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
5: new java.net.URI
dup
aload 5
invokespecial java.net.URI.<init>:(Ljava/lang/String;)V
areturn
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 6 0 scheme Ljava/lang/String;
0 6 1 authority Ljava/lang/String;
0 6 2 path Ljava/lang/String;
0 6 3 query Ljava/lang/String;
0 6 4 fragment Ljava/lang/String;
4 6 5 s Ljava/lang/String;
Exceptions:
throws java.net.URISyntaxException
MethodParameters:
Name Flags
scheme
authority
path
query
fragment
private static java.lang.String toString(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, int, java.lang.String, java.lang.String, java.lang.String);
descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=8, locals=10, args_size=9
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 start local 8 0: new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 9
start local 9 1: aload 0
ifnull 4
2: aload 9
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
3: aload 9
bipush 58
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
4: StackMap locals: java.lang.StringBuilder
StackMap stack:
aload 9
aload 1
5: aload 2
aload 3
aload 4
iload 5
6: aload 6
aload 7
7: invokestatic sun.net.www.ParseUtil.appendSchemeSpecificPart:(Ljava/lang/StringBuilder;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;)V
8: aload 9
aload 8
invokestatic sun.net.www.ParseUtil.appendFragment:(Ljava/lang/StringBuilder;Ljava/lang/String;)V
9: aload 9
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 9 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 10 0 scheme Ljava/lang/String;
0 10 1 opaquePart Ljava/lang/String;
0 10 2 authority Ljava/lang/String;
0 10 3 userInfo Ljava/lang/String;
0 10 4 host Ljava/lang/String;
0 10 5 port I
0 10 6 path Ljava/lang/String;
0 10 7 query Ljava/lang/String;
0 10 8 fragment Ljava/lang/String;
1 10 9 sb Ljava/lang/StringBuilder;
MethodParameters:
Name Flags
scheme
opaquePart
authority
userInfo
host
port
path
query
fragment
private static void appendSchemeSpecificPart(java.lang.StringBuilder, java.lang.String, java.lang.String, java.lang.String, java.lang.String, int, java.lang.String, java.lang.String);
descriptor: (Ljava/lang/StringBuilder;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=11, args_size=8
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 0: aload 1
ifnull 15
1: aload 1
ldc "//["
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 13
2: aload 1
bipush 93
invokevirtual java.lang.String.indexOf:(I)I
istore 8
start local 8 3: iload 8
iconst_m1
if_icmpeq 21
aload 1
bipush 58
invokevirtual java.lang.String.indexOf:(I)I
iconst_m1
if_icmpeq 21
4: iload 8
aload 1
invokevirtual java.lang.String.length:()I
if_icmpne 8
5: aload 1
astore 10
start local 10 6: ldc ""
astore 9
start local 9 7: goto 10
end local 10 end local 9 8: StackMap locals: int
StackMap stack:
aload 1
iconst_0
iload 8
iconst_1
iadd
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
astore 10
start local 10 9: aload 1
iload 8
iconst_1
iadd
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
astore 9
start local 9 10: StackMap locals: java.lang.String java.lang.String
StackMap stack:
aload 0
aload 10
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
11: aload 0
aload 9
ldc -5764607720602730495
ldc 5188146765093666815
invokestatic sun.net.www.ParseUtil.quote:(Ljava/lang/String;JJ)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
end local 10 end local 9 end local 8 12: goto 21
13: StackMap locals:
StackMap stack:
aload 0
aload 1
ldc -5764607720602730495
ldc 5188146765093666815
invokestatic sun.net.www.ParseUtil.quote:(Ljava/lang/String;JJ)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
14: goto 21
15: StackMap locals:
StackMap stack:
aload 0
aload 2
aload 3
aload 4
iload 5
invokestatic sun.net.www.ParseUtil.appendAuthority:(Ljava/lang/StringBuilder;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V
16: aload 6
ifnull 18
17: aload 0
aload 6
ldc 3458764316252045313
ldc 5188146764422578175
invokestatic sun.net.www.ParseUtil.quote:(Ljava/lang/String;JJ)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
18: StackMap locals:
StackMap stack:
aload 7
ifnull 21
19: aload 0
bipush 63
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
20: aload 0
aload 7
ldc -5764607720602730495
ldc 5188146765093666815
invokestatic sun.net.www.ParseUtil.quote:(Ljava/lang/String;JJ)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
21: StackMap locals:
StackMap stack:
return
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 22 0 sb Ljava/lang/StringBuilder;
0 22 1 opaquePart Ljava/lang/String;
0 22 2 authority Ljava/lang/String;
0 22 3 userInfo Ljava/lang/String;
0 22 4 host Ljava/lang/String;
0 22 5 port I
0 22 6 path Ljava/lang/String;
0 22 7 query Ljava/lang/String;
3 12 8 end I
7 8 9 doquote Ljava/lang/String;
10 12 9 doquote Ljava/lang/String;
6 8 10 dontquote Ljava/lang/String;
9 12 10 dontquote Ljava/lang/String;
MethodParameters:
Name Flags
sb
opaquePart
authority
userInfo
host
port
path
query
private static void appendAuthority(java.lang.StringBuilder, java.lang.String, java.lang.String, java.lang.String, int);
descriptor: (Ljava/lang/StringBuilder;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=8, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 3
ifnull 18
1: aload 0
ldc "//"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
2: aload 2
ifnull 5
3: aload 0
aload 2
ldc 3458623578763689985
ldc 5188146764422578174
invokestatic sun.net.www.ParseUtil.quote:(Ljava/lang/String;JJ)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
4: aload 0
bipush 64
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
5: StackMap locals:
StackMap stack:
aload 3
bipush 58
invokevirtual java.lang.String.indexOf:(I)I
iflt 9
6: aload 3
ldc "["
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifne 9
7: aload 3
ldc "]"
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifne 9
8: iconst_1
goto 10
StackMap locals:
StackMap stack:
9: iconst_0
StackMap locals:
StackMap stack: int
10: istore 5
start local 5 11: iload 5
ifeq 12
aload 0
bipush 91
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
12: StackMap locals: int
StackMap stack:
aload 0
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
13: iload 5
ifeq 14
aload 0
bipush 93
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
14: StackMap locals:
StackMap stack:
iload 4
iconst_m1
if_icmpeq 39
15: aload 0
bipush 58
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
16: aload 0
iload 4
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
pop
end local 5 17: goto 39
StackMap locals:
StackMap stack:
18: aload 1
ifnull 39
19: aload 0
ldc "//"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
20: aload 1
ldc "["
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 35
21: aload 1
bipush 93
invokevirtual java.lang.String.indexOf:(I)I
istore 5
start local 5 22: iload 5
iconst_m1
if_icmpeq 39
aload 1
bipush 58
invokevirtual java.lang.String.indexOf:(I)I
iconst_m1
if_icmpeq 39
23: iload 5
aload 1
invokevirtual java.lang.String.length:()I
if_icmpne 27
24: aload 1
astore 7
start local 7 25: ldc ""
astore 6
start local 6 26: goto 29
end local 7 end local 6 27: StackMap locals: int
StackMap stack:
aload 1
iconst_0
iload 5
iconst_1
iadd
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
astore 7
start local 7 28: aload 1
iload 5
iconst_1
iadd
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
astore 6
start local 6 29: StackMap locals: java.lang.String java.lang.String
StackMap stack:
aload 0
aload 7
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
30: aload 0
aload 6
31: ldc 3458623578763689985
32: ldc 5188146765093666815
33: invokestatic sun.net.www.ParseUtil.quote:(Ljava/lang/String;JJ)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
end local 7 end local 6 end local 5 34: goto 39
35: StackMap locals:
StackMap stack:
aload 0
aload 1
36: ldc 3458623578763689985
37: ldc 5188146765093666815
38: invokestatic sun.net.www.ParseUtil.quote:(Ljava/lang/String;JJ)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
39: StackMap locals:
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 40 0 sb Ljava/lang/StringBuilder;
0 40 1 authority Ljava/lang/String;
0 40 2 userInfo Ljava/lang/String;
0 40 3 host Ljava/lang/String;
0 40 4 port I
11 17 5 needBrackets Z
22 34 5 end I
26 27 6 doquote Ljava/lang/String;
29 34 6 doquote Ljava/lang/String;
25 27 7 dontquote Ljava/lang/String;
28 34 7 dontquote Ljava/lang/String;
MethodParameters:
Name Flags
sb
authority
userInfo
host
port
private static void appendFragment(java.lang.StringBuilder, java.lang.String);
descriptor: (Ljava/lang/StringBuilder;Ljava/lang/String;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ifnull 3
1: aload 0
bipush 35
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
2: aload 0
aload 1
ldc -5764607720602730495
ldc 5188146765093666815
invokestatic sun.net.www.ParseUtil.quote:(Ljava/lang/String;JJ)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
3: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 sb Ljava/lang/StringBuilder;
0 4 1 fragment Ljava/lang/String;
MethodParameters:
Name Flags
sb
fragment
private static java.lang.String quote(java.lang.String, long, long);
descriptor: (Ljava/lang/String;JJ)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=9, args_size=3
start local 0 start local 1 start local 3 0: aload 0
invokevirtual java.lang.String.length:()I
pop
1: aconst_null
astore 5
start local 5 2: lload 1
lconst_1
land
lconst_0
lcmp
ifeq 3
iconst_1
goto 4
StackMap locals: java.lang.StringBuilder
StackMap stack:
3: iconst_0
StackMap locals:
StackMap stack: int
4: istore 6
start local 6 5: iconst_0
istore 7
start local 7 6: goto 29
7: StackMap locals: int int
StackMap stack:
aload 0
iload 7
invokevirtual java.lang.String.charAt:(I)C
istore 8
start local 8 8: iload 8
sipush 128
if_icmpge 18
9: iload 8
lload 1
lload 3
invokestatic sun.net.www.ParseUtil.match:(CJJ)Z
ifne 15
aload 0
iload 7
invokestatic sun.net.www.ParseUtil.isEscaped:(Ljava/lang/String;I)Z
ifne 15
10: aload 5
ifnonnull 13
11: new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 5
12: aload 5
aload 0
iconst_0
iload 7
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/CharSequence;II)Ljava/lang/StringBuilder;
pop
13: StackMap locals: int
StackMap stack:
aload 5
iload 8
i2b
invokestatic sun.net.www.ParseUtil.appendEscape:(Ljava/lang/StringBuilder;B)V
14: goto 28
15: StackMap locals:
StackMap stack:
aload 5
ifnull 28
16: aload 5
iload 8
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
17: goto 28
StackMap locals:
StackMap stack:
18: iload 6
ifeq 26
19: iload 8
invokestatic java.lang.Character.isSpaceChar:(C)Z
ifne 21
20: iload 8
invokestatic java.lang.Character.isISOControl:(C)Z
ifeq 26
21: StackMap locals:
StackMap stack:
aload 5
ifnonnull 24
22: new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 5
23: aload 5
aload 0
iconst_0
iload 7
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/CharSequence;II)Ljava/lang/StringBuilder;
pop
24: StackMap locals:
StackMap stack:
aload 5
iload 8
invokestatic sun.net.www.ParseUtil.appendEncoded:(Ljava/lang/StringBuilder;C)V
25: goto 28
26: StackMap locals:
StackMap stack:
aload 5
ifnull 28
27: aload 5
iload 8
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
end local 8 28: StackMap locals:
StackMap stack:
iinc 7 1
StackMap locals:
StackMap stack:
29: iload 7
aload 0
invokevirtual java.lang.String.length:()I
if_icmplt 7
end local 7 30: aload 5
ifnonnull 31
aload 0
goto 32
StackMap locals:
StackMap stack:
31: aload 5
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
StackMap locals:
StackMap stack: java.lang.String
32: areturn
end local 6 end local 5 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 33 0 s Ljava/lang/String;
0 33 1 lowMask J
0 33 3 highMask J
2 33 5 sb Ljava/lang/StringBuilder;
5 33 6 allowNonASCII Z
6 30 7 i I
8 28 8 c C
MethodParameters:
Name Flags
s
lowMask
highMask
private static boolean isEscaped(java.lang.String, int);
descriptor: (Ljava/lang/String;I)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 0
ifnull 1
aload 0
invokevirtual java.lang.String.length:()I
iload 1
iconst_2
iadd
if_icmpgt 2
1: StackMap locals:
StackMap stack:
iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 0
iload 1
invokevirtual java.lang.String.charAt:(I)C
bipush 37
if_icmpne 6
3: aload 0
iload 1
iconst_1
iadd
invokevirtual java.lang.String.charAt:(I)C
ldc 287948901175001088
ldc 541165879422
invokestatic sun.net.www.ParseUtil.match:(CJJ)Z
ifeq 6
4: aload 0
iload 1
iconst_2
iadd
invokevirtual java.lang.String.charAt:(I)C
ldc 287948901175001088
ldc 541165879422
invokestatic sun.net.www.ParseUtil.match:(CJJ)Z
ifeq 6
5: iconst_1
ireturn
StackMap locals:
StackMap stack:
6: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 s Ljava/lang/String;
0 7 1 pos I
MethodParameters:
Name Flags
s
pos
private static void appendEncoded(java.lang.StringBuilder, char);
descriptor: (Ljava/lang/StringBuilder;C)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: aconst_null
astore 2
start local 2 1: getstatic sun.nio.cs.UTF_8.INSTANCE:Lsun/nio/cs/UTF_8;
invokestatic sun.nio.cs.ThreadLocalCoders.encoderFor:(Ljava/lang/Object;)Ljava/nio/charset/CharsetEncoder;
2: new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
iload 1
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic java.nio.CharBuffer.wrap:(Ljava/lang/CharSequence;)Ljava/nio/CharBuffer;
invokevirtual java.nio.charset.CharsetEncoder.encode:(Ljava/nio/CharBuffer;)Ljava/nio/ByteBuffer;
3: astore 2
4: goto 11
StackMap locals: java.lang.StringBuilder int java.nio.ByteBuffer
StackMap stack: java.nio.charset.CharacterCodingException
5: pop
6: getstatic sun.net.www.ParseUtil.$assertionsDisabled:Z
ifne 11
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
7: StackMap locals:
StackMap stack:
aload 2
invokevirtual java.nio.ByteBuffer.get:()B
sipush 255
iand
istore 3
start local 3 8: iload 3
sipush 128
if_icmplt 10
9: aload 0
iload 3
i2b
invokestatic sun.net.www.ParseUtil.appendEscape:(Ljava/lang/StringBuilder;B)V
goto 11
10: StackMap locals: int
StackMap stack:
aload 0
iload 3
i2c
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
end local 3 11: StackMap locals:
StackMap stack:
aload 2
invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
ifne 7
12: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 sb Ljava/lang/StringBuilder;
0 13 1 c C
1 13 2 bb Ljava/nio/ByteBuffer;
8 11 3 b I
Exception table:
from to target type
1 4 5 Class java.nio.charset.CharacterCodingException
MethodParameters:
Name Flags
sb
c
private static void appendEscape(java.lang.StringBuilder, byte);
descriptor: (Ljava/lang/StringBuilder;B)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
bipush 37
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
1: aload 0
getstatic sun.net.www.ParseUtil.hexDigits:[C
iload 1
iconst_4
ishr
bipush 15
iand
caload
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
2: aload 0
getstatic sun.net.www.ParseUtil.hexDigits:[C
iload 1
iconst_0
ishr
bipush 15
iand
caload
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 sb Ljava/lang/StringBuilder;
0 4 1 b B
MethodParameters:
Name Flags
sb
b
private static boolean match(char, long, long);
descriptor: (CJJ)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=5, args_size=3
start local 0 start local 1 start local 3 0: iload 0
bipush 64
if_icmpge 3
1: lconst_1
iload 0
lshl
lload 1
land
lconst_0
lcmp
ifeq 2
iconst_1
ireturn
StackMap locals:
StackMap stack:
2: iconst_0
ireturn
3: StackMap locals:
StackMap stack:
iload 0
sipush 128
if_icmpge 6
4: lconst_1
iload 0
bipush 64
isub
lshl
lload 3
land
lconst_0
lcmp
ifeq 5
iconst_1
ireturn
StackMap locals:
StackMap stack:
5: iconst_0
ireturn
6: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 c C
0 7 1 lowMask J
0 7 3 highMask J
MethodParameters:
Name Flags
c
lowMask
highMask
private static void checkPath(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=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
ifnull 5
1: aload 2
ifnull 5
aload 2
invokevirtual java.lang.String.isEmpty:()Z
ifne 5
aload 2
iconst_0
invokevirtual java.lang.String.charAt:(I)C
bipush 47
if_icmpeq 5
2: new java.net.URISyntaxException
dup
aload 0
3: ldc "Relative path in absolute URI"
4: invokespecial java.net.URISyntaxException.<init>:(Ljava/lang/String;Ljava/lang/String;)V
athrow
5: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 s Ljava/lang/String;
0 6 1 scheme Ljava/lang/String;
0 6 2 path Ljava/lang/String;
Exceptions:
throws java.net.URISyntaxException
MethodParameters:
Name Flags
s
scheme
path
}
SourceFile: "ParseUtil.java"