public class org.hsqldb.jdbc.JDBCClobFile$ReaderAdapter extends java.io.Reader
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.hsqldb.jdbc.JDBCClobFile$ReaderAdapter
super_class: java.io.Reader
{
private static final int CHARBUFFER_CAPACTIY;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 128
private final java.io.Reader m_reader;
descriptor: Ljava/io/Reader;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private long m_remaining;
descriptor: J
flags: (0x0002) ACC_PRIVATE
private long m_filePointer;
descriptor: J
flags: (0x0002) ACC_PRIVATE
private java.nio.ByteBuffer m_byteBuffer;
descriptor: Ljava/nio/ByteBuffer;
flags: (0x0002) ACC_PRIVATE
private java.nio.CharBuffer m_charBuffer;
descriptor: Ljava/nio/CharBuffer;
flags: (0x0002) ACC_PRIVATE
final org.hsqldb.jdbc.JDBCClobFile this$0;
descriptor: Lorg/hsqldb/jdbc/JDBCClobFile;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
protected void <init>(org.hsqldb.jdbc.JDBCClobFile, java.io.File, long, long);
descriptor: (Lorg/hsqldb/jdbc/JDBCClobFile;Ljava/io/File;JJ)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=14, args_size=5
start local 0 start local 2 start local 3 start local 5 0: aload 0
aload 1
putfield org.hsqldb.jdbc.JDBCClobFile$ReaderAdapter.this$0:Lorg/hsqldb/jdbc/JDBCClobFile;
1: aload 0
invokespecial java.io.Reader.<init>:()V
2: aload 0
ldc 9223372036854775807
putfield org.hsqldb.jdbc.JDBCClobFile$ReaderAdapter.m_remaining:J
3: aload 2
ifnonnull 5
4: new java.lang.NullPointerException
dup
ldc "file"
invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
athrow
5: StackMap locals: org.hsqldb.jdbc.JDBCClobFile$ReaderAdapter org.hsqldb.jdbc.JDBCClobFile java.io.File long long
StackMap stack:
lload 3
lconst_0
lcmp
ifge 7
6: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "pos: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
lload 3
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
7: StackMap locals:
StackMap stack:
lload 5
lconst_0
lcmp
ifge 9
8: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "length: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
lload 5
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
9: StackMap locals:
StackMap stack:
aload 2
invokevirtual java.io.File.length:()J
lstore 7
start local 7 10: aload 1
getfield org.hsqldb.jdbc.JDBCClobFile.m_fixedWidthCharset:Z
ifeq 15
11: lload 7
l2d
12: aload 1
getfield org.hsqldb.jdbc.JDBCClobFile.m_maxCharWidth:I
i2d
13: ddiv
invokestatic java.lang.Math.round:(D)J
14: goto 16
15: StackMap locals: long
StackMap stack:
lload 7
16: StackMap locals:
StackMap stack: long
lstore 9
start local 9 17: lload 9
lload 3
lsub
lconst_0
lcmp
ifge 19
18: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "pos: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
lload 3
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
19: StackMap locals: long
StackMap stack:
aload 1
getfield org.hsqldb.jdbc.JDBCClobFile.m_fixedWidthCharset:Z
ifne 23
20: sipush 128
aload 1
getfield org.hsqldb.jdbc.JDBCClobFile.m_maxCharWidth:I
imul
istore 11
start local 11 21: aload 0
sipush 128
invokestatic java.nio.CharBuffer.allocate:(I)Ljava/nio/CharBuffer;
putfield org.hsqldb.jdbc.JDBCClobFile$ReaderAdapter.m_charBuffer:Ljava/nio/CharBuffer;
22: aload 0
iload 11
invokestatic java.nio.ByteBuffer.allocate:(I)Ljava/nio/ByteBuffer;
putfield org.hsqldb.jdbc.JDBCClobFile$ReaderAdapter.m_byteBuffer:Ljava/nio/ByteBuffer;
end local 11 23: StackMap locals:
StackMap stack:
aconst_null
astore 11
start local 11 24: new java.io.FileInputStream
dup
aload 2
invokespecial java.io.FileInputStream.<init>:(Ljava/io/File;)V
astore 11
25: new java.io.BufferedInputStream
dup
aload 11
invokespecial java.io.BufferedInputStream.<init>:(Ljava/io/InputStream;)V
astore 12
start local 12 26: new java.io.InputStreamReader
dup
aload 12
27: aload 1
getfield org.hsqldb.jdbc.JDBCClobFile.m_charset:Ljava/nio/charset/Charset;
28: invokespecial java.io.InputStreamReader.<init>:(Ljava/io/InputStream;Ljava/nio/charset/Charset;)V
astore 13
start local 13 29: aload 0
aload 13
putfield org.hsqldb.jdbc.JDBCClobFile$ReaderAdapter.m_reader:Ljava/io/Reader;
end local 13 end local 12 30: goto 43
StackMap locals: org.hsqldb.jdbc.JDBCClobFile$ReaderAdapter org.hsqldb.jdbc.JDBCClobFile java.io.File long long long long java.io.FileInputStream
StackMap stack: java.io.FileNotFoundException
31: astore 12
start local 12 32: aload 11
invokestatic org.hsqldb.jdbc.JDBCClobFile.closeSafely:(Ljava/io/InputStream;)V
33: aload 12
athrow
end local 12 34: StackMap locals:
StackMap stack: java.lang.SecurityException
astore 12
start local 12 35: aload 11
invokestatic org.hsqldb.jdbc.JDBCClobFile.closeSafely:(Ljava/io/InputStream;)V
36: aload 12
athrow
end local 12 37: StackMap locals:
StackMap stack: java.lang.NullPointerException
astore 12
start local 12 38: aload 11
invokestatic org.hsqldb.jdbc.JDBCClobFile.closeSafely:(Ljava/io/InputStream;)V
39: aload 12
athrow
end local 12 40: StackMap locals:
StackMap stack: java.lang.RuntimeException
astore 12
start local 12 41: aload 11
invokestatic org.hsqldb.jdbc.JDBCClobFile.closeSafely:(Ljava/io/InputStream;)V
42: aload 12
athrow
end local 12 43: StackMap locals:
StackMap stack:
aload 0
lload 3
invokevirtual org.hsqldb.jdbc.JDBCClobFile$ReaderAdapter.skip:(J)J
lstore 12
start local 12 44: lload 12
lload 3
lcmp
ifge 46
45: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "pos: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
lload 3
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
46: StackMap locals: long
StackMap stack:
aload 0
lload 5
putfield org.hsqldb.jdbc.JDBCClobFile$ReaderAdapter.m_remaining:J
47: return
end local 12 end local 11 end local 9 end local 7 end local 5 end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 48 0 this Lorg/hsqldb/jdbc/JDBCClobFile$ReaderAdapter;
0 48 2 file Ljava/io/File;
0 48 3 pos J
0 48 5 length J
10 48 7 fileLength J
17 48 9 maxCharsLength J
21 23 11 byteCapacity I
24 48 11 fis Ljava/io/FileInputStream;
26 30 12 bis Ljava/io/BufferedInputStream;
29 30 13 isr Ljava/io/InputStreamReader;
32 34 12 ex Ljava/io/FileNotFoundException;
35 37 12 ex Ljava/lang/SecurityException;
38 40 12 ex Ljava/lang/NullPointerException;
41 43 12 ex Ljava/lang/RuntimeException;
44 48 12 skipped J
Exception table:
from to target type
24 30 31 Class java.io.FileNotFoundException
24 30 34 Class java.lang.SecurityException
24 30 37 Class java.lang.NullPointerException
24 30 40 Class java.lang.RuntimeException
Exceptions:
throws java.io.FileNotFoundException, java.io.IOException, java.lang.NullPointerException, java.lang.IllegalArgumentException, java.lang.SecurityException
MethodParameters:
Name Flags
this$0 final
file final
pos final
length final
public int read(char[], int, int);
descriptor: ([CII)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=11, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield org.hsqldb.jdbc.JDBCClobFile$ReaderAdapter.m_remaining:J
lstore 4
start local 4 1: lload 4
lconst_0
lcmp
ifgt 3
2: iconst_m1
ireturn
3: StackMap locals: long
StackMap stack:
lload 4
iload 3
i2l
lcmp
ifge 5
4: lload 4
l2i
istore 3
5: StackMap locals:
StackMap stack:
aload 0
getfield org.hsqldb.jdbc.JDBCClobFile$ReaderAdapter.m_reader:Ljava/io/Reader;
aload 1
iload 2
iload 3
invokevirtual java.io.Reader.read:([CII)I
istore 6
start local 6 6: iload 6
iconst_m1
if_icmpne 8
7: iconst_m1
ireturn
8: StackMap locals: int
StackMap stack:
iload 6
i2l
lload 4
lcmp
ifle 12
9: lload 4
l2i
istore 6
10: aload 0
lconst_0
putfield org.hsqldb.jdbc.JDBCClobFile$ReaderAdapter.m_remaining:J
11: goto 13
12: StackMap locals:
StackMap stack:
aload 0
dup
getfield org.hsqldb.jdbc.JDBCClobFile$ReaderAdapter.m_remaining:J
iload 6
i2l
lsub
putfield org.hsqldb.jdbc.JDBCClobFile$ReaderAdapter.m_remaining:J
13: StackMap locals:
StackMap stack:
aload 0
getfield org.hsqldb.jdbc.JDBCClobFile$ReaderAdapter.this$0:Lorg/hsqldb/jdbc/JDBCClobFile;
getfield org.hsqldb.jdbc.JDBCClobFile.m_fixedWidthCharset:Z
ifeq 16
14: aload 0
getfield org.hsqldb.jdbc.JDBCClobFile$ReaderAdapter.this$0:Lorg/hsqldb/jdbc/JDBCClobFile;
getfield org.hsqldb.jdbc.JDBCClobFile.m_maxCharWidth:I
iload 6
imul
istore 7
start local 7 15: goto 42
end local 7 16: StackMap locals:
StackMap stack:
iload 6
17: aload 0
getfield org.hsqldb.jdbc.JDBCClobFile$ReaderAdapter.m_charBuffer:Ljava/nio/CharBuffer;
invokevirtual java.nio.CharBuffer.capacity:()I
18: if_icmple 19
iconst_1
goto 20
StackMap locals:
StackMap stack:
19: iconst_0
StackMap locals:
StackMap stack: int
20: istore 8
start local 8 21: iload 8
ifeq 23
22: iload 6
invokestatic java.nio.CharBuffer.allocate:(I)Ljava/nio/CharBuffer;
goto 24
23: StackMap locals: org.hsqldb.jdbc.JDBCClobFile$ReaderAdapter char[] int int long int top int
StackMap stack:
aload 0
getfield org.hsqldb.jdbc.JDBCClobFile$ReaderAdapter.m_charBuffer:Ljava/nio/CharBuffer;
24: StackMap locals:
StackMap stack: java.nio.CharBuffer
astore 9
start local 9 25: iload 8
ifeq 30
26: iload 6
27: aload 0
getfield org.hsqldb.jdbc.JDBCClobFile$ReaderAdapter.this$0:Lorg/hsqldb/jdbc/JDBCClobFile;
getfield org.hsqldb.jdbc.JDBCClobFile.m_maxCharWidth:I
28: imul
invokestatic java.nio.ByteBuffer.allocate:(I)Ljava/nio/ByteBuffer;
29: goto 31
30: StackMap locals: java.nio.CharBuffer
StackMap stack:
aload 0
getfield org.hsqldb.jdbc.JDBCClobFile$ReaderAdapter.m_byteBuffer:Ljava/nio/ByteBuffer;
31: StackMap locals:
StackMap stack: java.nio.ByteBuffer
astore 10
start local 10 32: aload 9
invokevirtual java.nio.CharBuffer.clear:()Ljava/nio/Buffer;
pop
33: aload 10
invokevirtual java.nio.ByteBuffer.clear:()Ljava/nio/Buffer;
pop
34: aload 9
aload 1
iload 2
iload 6
invokevirtual java.nio.CharBuffer.put:([CII)Ljava/nio/CharBuffer;
pop
35: aload 9
invokevirtual java.nio.CharBuffer.flip:()Ljava/nio/Buffer;
pop
36: aload 0
getfield org.hsqldb.jdbc.JDBCClobFile$ReaderAdapter.this$0:Lorg/hsqldb/jdbc/JDBCClobFile;
getfield org.hsqldb.jdbc.JDBCClobFile.m_encoder:Ljava/nio/charset/CharsetEncoder;
aload 9
aload 10
iconst_1
invokevirtual java.nio.charset.CharsetEncoder.encode:(Ljava/nio/CharBuffer;Ljava/nio/ByteBuffer;Z)Ljava/nio/charset/CoderResult;
pop
37: aload 10
invokevirtual java.nio.ByteBuffer.flip:()Ljava/nio/Buffer;
pop
38: aload 10
invokevirtual java.nio.ByteBuffer.limit:()I
istore 7
start local 7 39: iload 8
ifeq 42
40: aload 0
aload 10
putfield org.hsqldb.jdbc.JDBCClobFile$ReaderAdapter.m_byteBuffer:Ljava/nio/ByteBuffer;
41: aload 0
aload 9
putfield org.hsqldb.jdbc.JDBCClobFile$ReaderAdapter.m_charBuffer:Ljava/nio/CharBuffer;
end local 10 end local 9 end local 8 42: StackMap locals: org.hsqldb.jdbc.JDBCClobFile$ReaderAdapter char[] int int long int int
StackMap stack:
aload 0
dup
getfield org.hsqldb.jdbc.JDBCClobFile$ReaderAdapter.m_filePointer:J
iload 7
i2l
ladd
putfield org.hsqldb.jdbc.JDBCClobFile$ReaderAdapter.m_filePointer:J
43: iload 6
ireturn
end local 7 end local 6 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 44 0 this Lorg/hsqldb/jdbc/JDBCClobFile$ReaderAdapter;
0 44 1 cbuf [C
0 44 2 off I
0 44 3 len I
1 44 4 l_remaining J
6 44 6 charsRead I
15 16 7 bytesRead I
39 44 7 bytesRead I
21 42 8 reallocate Z
25 42 9 cb Ljava/nio/CharBuffer;
32 42 10 bb Ljava/nio/ByteBuffer;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
cbuf final
off final
len
public void close();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.hsqldb.jdbc.JDBCClobFile$ReaderAdapter.m_reader:Ljava/io/Reader;
invokevirtual java.io.Reader.close:()V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/hsqldb/jdbc/JDBCClobFile$ReaderAdapter;
Exceptions:
throws java.io.IOException
public long getFilePointer();
descriptor: ()J
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.hsqldb.jdbc.JDBCClobFile$ReaderAdapter.m_filePointer:J
lreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/hsqldb/jdbc/JDBCClobFile$ReaderAdapter;
}
SourceFile: "JDBCClobFile.java"
NestHost: org.hsqldb.jdbc.JDBCClobFile
InnerClasses:
protected ReaderAdapter = org.hsqldb.jdbc.JDBCClobFile$ReaderAdapter of org.hsqldb.jdbc.JDBCClobFile