public final class org.glassfish.grizzly.http.util.UEncoder
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: org.glassfish.grizzly.http.util.UEncoder
super_class: java.lang.Object
{
private static final java.util.logging.Logger logger;
descriptor: Ljava/util/logging/Logger;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.util.BitSet initialSafeChars;
descriptor: Ljava/util/BitSet;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private final java.util.BitSet safeChars;
descriptor: Ljava/util/BitSet;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private org.glassfish.grizzly.http.util.C2BConverter c2b;
descriptor: Lorg/glassfish/grizzly/http/util/C2BConverter;
flags: (0x0002) ACC_PRIVATE
private org.glassfish.grizzly.http.util.ByteChunk bb;
descriptor: Lorg/glassfish/grizzly/http/util/ByteChunk;
flags: (0x0002) ACC_PRIVATE
private java.lang.String encoding;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private static final int debug;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 0
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=0, args_size=0
0: ldc Lorg/glassfish/grizzly/http/util/UEncoder;
invokestatic org.glassfish.grizzly.Grizzly.logger:(Ljava/lang/Class;)Ljava/util/logging/Logger;
putstatic org.glassfish.grizzly.http.util.UEncoder.logger:Ljava/util/logging/Logger;
1: new java.util.BitSet
dup
sipush 128
invokespecial java.util.BitSet.<init>:(I)V
putstatic org.glassfish.grizzly.http.util.UEncoder.initialSafeChars:Ljava/util/BitSet;
2: invokestatic org.glassfish.grizzly.http.util.UEncoder.initSafeChars:()V
3: return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
ldc "UTF8"
putfield org.glassfish.grizzly.http.util.UEncoder.encoding:Ljava/lang/String;
2: aload 0
getstatic org.glassfish.grizzly.http.util.UEncoder.initialSafeChars:Ljava/util/BitSet;
invokevirtual java.util.BitSet.clone:()Ljava/lang/Object;
checkcast java.util.BitSet
putfield org.glassfish.grizzly.http.util.UEncoder.safeChars:Ljava/util/BitSet;
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/glassfish/grizzly/http/util/UEncoder;
public void setEncoding(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield org.glassfish.grizzly.http.util.UEncoder.encoding:Ljava/lang/String;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/glassfish/grizzly/http/util/UEncoder;
0 2 1 s Ljava/lang/String;
MethodParameters:
Name Flags
s
public void addSafeCharacter(char);
descriptor: (C)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.glassfish.grizzly.http.util.UEncoder.safeChars:Ljava/util/BitSet;
iload 1
invokevirtual java.util.BitSet.set:(I)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/glassfish/grizzly/http/util/UEncoder;
0 2 1 c C
MethodParameters:
Name Flags
c
public void urlEncode(java.io.Writer, java.lang.String);
descriptor: (Ljava/io/Writer;Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
iconst_0
invokevirtual org.glassfish.grizzly.http.util.UEncoder.urlEncode:(Ljava/io/Writer;Ljava/lang/String;Z)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/glassfish/grizzly/http/util/UEncoder;
0 2 1 buf Ljava/io/Writer;
0 2 2 s Ljava/lang/String;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
buf
s
public void urlEncode(java.io.Writer, java.lang.String, boolean);
descriptor: (Ljava/io/Writer;Ljava/lang/String;Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield org.glassfish.grizzly.http.util.UEncoder.c2b:Lorg/glassfish/grizzly/http/util/C2BConverter;
ifnonnull 3
1: aload 0
new org.glassfish.grizzly.http.util.ByteChunk
dup
bipush 16
invokespecial org.glassfish.grizzly.http.util.ByteChunk.<init>:(I)V
putfield org.glassfish.grizzly.http.util.UEncoder.bb:Lorg/glassfish/grizzly/http/util/ByteChunk;
2: aload 0
aload 0
getfield org.glassfish.grizzly.http.util.UEncoder.bb:Lorg/glassfish/grizzly/http/util/ByteChunk;
aload 0
getfield org.glassfish.grizzly.http.util.UEncoder.encoding:Ljava/lang/String;
invokestatic org.glassfish.grizzly.http.util.C2BConverter.getInstance:(Lorg/glassfish/grizzly/http/util/ByteChunk;Ljava/lang/String;)Lorg/glassfish/grizzly/http/util/C2BConverter;
putfield org.glassfish.grizzly.http.util.UEncoder.c2b:Lorg/glassfish/grizzly/http/util/C2BConverter;
3: StackMap locals:
StackMap stack:
iconst_0
istore 4
start local 4 4: goto 19
5: StackMap locals: int
StackMap stack:
aload 2
iload 4
invokevirtual java.lang.String.charAt:(I)C
istore 5
start local 5 6: aload 0
getfield org.glassfish.grizzly.http.util.UEncoder.safeChars:Ljava/util/BitSet;
iload 5
invokevirtual java.util.BitSet.get:(I)Z
ifeq 9
7: aload 1
iload 5
i2c
invokevirtual java.io.Writer.write:(I)V
8: goto 18
9: StackMap locals: int
StackMap stack:
aload 0
getfield org.glassfish.grizzly.http.util.UEncoder.c2b:Lorg/glassfish/grizzly/http/util/C2BConverter;
iload 5
i2c
invokevirtual org.glassfish.grizzly.http.util.C2BConverter.convert:(C)V
10: iload 5
ldc 55296
if_icmplt 16
iload 5
ldc 56319
if_icmpgt 16
11: iload 4
iconst_1
iadd
aload 2
invokevirtual java.lang.String.length:()I
if_icmpge 16
12: aload 2
iload 4
iconst_1
iadd
invokevirtual java.lang.String.charAt:(I)C
istore 6
start local 6 13: iload 6
ldc 56320
if_icmplt 16
iload 6
ldc 57343
if_icmpgt 16
14: aload 0
getfield org.glassfish.grizzly.http.util.UEncoder.c2b:Lorg/glassfish/grizzly/http/util/C2BConverter;
iload 6
i2c
invokevirtual org.glassfish.grizzly.http.util.C2BConverter.convert:(C)V
15: iinc 4 1
end local 6 16: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 0
getfield org.glassfish.grizzly.http.util.UEncoder.bb:Lorg/glassfish/grizzly/http/util/ByteChunk;
invokevirtual org.glassfish.grizzly.http.util.ByteChunk.getBuffer:()[B
aload 0
getfield org.glassfish.grizzly.http.util.UEncoder.bb:Lorg/glassfish/grizzly/http/util/ByteChunk;
invokevirtual org.glassfish.grizzly.http.util.ByteChunk.getStart:()I
aload 0
getfield org.glassfish.grizzly.http.util.UEncoder.bb:Lorg/glassfish/grizzly/http/util/ByteChunk;
invokevirtual org.glassfish.grizzly.http.util.ByteChunk.getLength:()I
iload 3
invokevirtual org.glassfish.grizzly.http.util.UEncoder.urlEncode:(Ljava/io/Writer;[BIIZ)V
17: aload 0
getfield org.glassfish.grizzly.http.util.UEncoder.bb:Lorg/glassfish/grizzly/http/util/ByteChunk;
invokevirtual org.glassfish.grizzly.http.util.ByteChunk.recycle:()V
end local 5 18: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
19: iload 4
aload 2
invokevirtual java.lang.String.length:()I
if_icmplt 5
end local 4 20: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 21 0 this Lorg/glassfish/grizzly/http/util/UEncoder;
0 21 1 buf Ljava/io/Writer;
0 21 2 s Ljava/lang/String;
0 21 3 toHexUpperCase Z
4 20 4 i I
6 18 5 c I
13 16 6 d I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
buf
s
toHexUpperCase
public void urlEncode(java.io.Writer, byte[], int, int);
descriptor: (Ljava/io/Writer;[BII)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
aload 1
aload 2
iload 3
iload 4
iconst_0
invokevirtual org.glassfish.grizzly.http.util.UEncoder.urlEncode:(Ljava/io/Writer;[BIIZ)V
1: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/glassfish/grizzly/http/util/UEncoder;
0 2 1 buf Ljava/io/Writer;
0 2 2 bytes [B
0 2 3 off I
0 2 4 len I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
buf
bytes
off
len
public void urlEncode(java.io.Writer, byte[], int, int, boolean);
descriptor: (Ljava/io/Writer;[BIIZ)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=8, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: iload 3
istore 6
start local 6 1: goto 12
2: StackMap locals: int
StackMap stack:
aload 1
bipush 37
invokevirtual java.io.Writer.write:(I)V
3: aload 2
iload 6
baload
iconst_4
ishr
bipush 15
iand
bipush 16
invokestatic java.lang.Character.forDigit:(II)C
istore 7
start local 7 4: iload 5
ifeq 6
5: iload 7
invokestatic java.lang.Character.toUpperCase:(C)C
istore 7
6: StackMap locals: int
StackMap stack:
aload 1
iload 7
invokevirtual java.io.Writer.write:(I)V
7: aload 2
iload 6
baload
bipush 15
iand
bipush 16
invokestatic java.lang.Character.forDigit:(II)C
istore 7
8: iload 5
ifeq 10
9: iload 7
invokestatic java.lang.Character.toUpperCase:(C)C
istore 7
10: StackMap locals:
StackMap stack:
aload 1
iload 7
invokevirtual java.io.Writer.write:(I)V
end local 7 11: iinc 6 1
StackMap locals:
StackMap stack:
12: iload 6
iload 4
if_icmplt 2
end local 6 13: return
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 this Lorg/glassfish/grizzly/http/util/UEncoder;
0 14 1 buf Ljava/io/Writer;
0 14 2 bytes [B
0 14 3 off I
0 14 4 len I
0 14 5 toHexUpperCase Z
1 13 6 j I
4 11 7 ch C
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
buf
bytes
off
len
toHexUpperCase
public java.lang.String encodeURL(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
iconst_0
invokevirtual org.glassfish.grizzly.http.util.UEncoder.encodeURL:(Ljava/lang/String;Z)Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/glassfish/grizzly/http/util/UEncoder;
0 1 1 url Ljava/lang/String;
MethodParameters:
Name Flags
url
public java.lang.String encodeURL(java.lang.String, boolean);
descriptor: (Ljava/lang/String;Z)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aconst_null
astore 3
start local 3 1: new java.io.CharArrayWriter
dup
invokespecial java.io.CharArrayWriter.<init>:()V
astore 4
start local 4 2: aload 0
aload 4
aload 1
iload 2
invokevirtual org.glassfish.grizzly.http.util.UEncoder.urlEncode:(Ljava/io/Writer;Ljava/lang/String;Z)V
3: aload 4
invokevirtual java.io.CharArrayWriter.toString:()Ljava/lang/String;
astore 3
end local 4 4: goto 6
StackMap locals: org.glassfish.grizzly.http.util.UEncoder java.lang.String int java.lang.String
StackMap stack: java.io.IOException
5: pop
6: StackMap locals:
StackMap stack:
aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/glassfish/grizzly/http/util/UEncoder;
0 7 1 uri Ljava/lang/String;
0 7 2 toHexUpperCase Z
1 7 3 outUri Ljava/lang/String;
2 4 4 out Ljava/io/CharArrayWriter;
Exception table:
from to target type
1 4 5 Class java.io.IOException
MethodParameters:
Name Flags
uri
toHexUpperCase
private static void initSafeChars();
descriptor: ()V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=1, args_size=0
0: bipush 97
istore 0
start local 0 1: goto 4
2: StackMap locals: int
StackMap stack:
getstatic org.glassfish.grizzly.http.util.UEncoder.initialSafeChars:Ljava/util/BitSet;
iload 0
invokevirtual java.util.BitSet.set:(I)V
3: iinc 0 1
StackMap locals:
StackMap stack:
4: iload 0
bipush 122
if_icmple 2
5: bipush 65
istore 0
goto 8
6: StackMap locals:
StackMap stack:
getstatic org.glassfish.grizzly.http.util.UEncoder.initialSafeChars:Ljava/util/BitSet;
iload 0
invokevirtual java.util.BitSet.set:(I)V
7: iinc 0 1
StackMap locals:
StackMap stack:
8: iload 0
bipush 90
if_icmple 6
9: bipush 48
istore 0
goto 12
10: StackMap locals:
StackMap stack:
getstatic org.glassfish.grizzly.http.util.UEncoder.initialSafeChars:Ljava/util/BitSet;
iload 0
invokevirtual java.util.BitSet.set:(I)V
11: iinc 0 1
StackMap locals:
StackMap stack:
12: iload 0
bipush 57
if_icmple 10
13: getstatic org.glassfish.grizzly.http.util.UEncoder.initialSafeChars:Ljava/util/BitSet;
bipush 36
invokevirtual java.util.BitSet.set:(I)V
14: getstatic org.glassfish.grizzly.http.util.UEncoder.initialSafeChars:Ljava/util/BitSet;
bipush 45
invokevirtual java.util.BitSet.set:(I)V
15: getstatic org.glassfish.grizzly.http.util.UEncoder.initialSafeChars:Ljava/util/BitSet;
bipush 95
invokevirtual java.util.BitSet.set:(I)V
16: getstatic org.glassfish.grizzly.http.util.UEncoder.initialSafeChars:Ljava/util/BitSet;
bipush 46
invokevirtual java.util.BitSet.set:(I)V
17: getstatic org.glassfish.grizzly.http.util.UEncoder.initialSafeChars:Ljava/util/BitSet;
bipush 33
invokevirtual java.util.BitSet.set:(I)V
18: getstatic org.glassfish.grizzly.http.util.UEncoder.initialSafeChars:Ljava/util/BitSet;
bipush 42
invokevirtual java.util.BitSet.set:(I)V
19: getstatic org.glassfish.grizzly.http.util.UEncoder.initialSafeChars:Ljava/util/BitSet;
bipush 39
invokevirtual java.util.BitSet.set:(I)V
20: getstatic org.glassfish.grizzly.http.util.UEncoder.initialSafeChars:Ljava/util/BitSet;
bipush 40
invokevirtual java.util.BitSet.set:(I)V
21: getstatic org.glassfish.grizzly.http.util.UEncoder.initialSafeChars:Ljava/util/BitSet;
bipush 41
invokevirtual java.util.BitSet.set:(I)V
22: getstatic org.glassfish.grizzly.http.util.UEncoder.initialSafeChars:Ljava/util/BitSet;
bipush 44
invokevirtual java.util.BitSet.set:(I)V
23: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
1 24 0 i I
private static void log(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: getstatic org.glassfish.grizzly.http.util.UEncoder.logger:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINE:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 2
1: getstatic org.glassfish.grizzly.http.util.UEncoder.logger:Ljava/util/logging/Logger;
aload 0
invokevirtual java.util.logging.Logger.fine:(Ljava/lang/String;)V
2: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 s Ljava/lang/String;
MethodParameters:
Name Flags
s
}
SourceFile: "UEncoder.java"