public class org.apache.commons.vfs2.util.MonitorOutputStream extends java.io.BufferedOutputStream
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.apache.commons.vfs2.util.MonitorOutputStream
super_class: java.io.BufferedOutputStream
{
private final java.util.concurrent.atomic.AtomicBoolean finished;
descriptor: Ljava/util/concurrent/atomic/AtomicBoolean;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
public void <init>(java.io.OutputStream);
descriptor: (Ljava/io/OutputStream;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokespecial java.io.BufferedOutputStream.<init>:(Ljava/io/OutputStream;)V
1: aload 0
new java.util.concurrent.atomic.AtomicBoolean
dup
iconst_0
invokespecial java.util.concurrent.atomic.AtomicBoolean.<init>:(Z)V
putfield org.apache.commons.vfs2.util.MonitorOutputStream.finished:Ljava/util/concurrent/atomic/AtomicBoolean;
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/apache/commons/vfs2/util/MonitorOutputStream;
0 3 1 out Ljava/io/OutputStream;
MethodParameters:
Name Flags
out final
public void <init>(java.io.OutputStream, int);
descriptor: (Ljava/io/OutputStream;I)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
iload 2
invokespecial java.io.BufferedOutputStream.<init>:(Ljava/io/OutputStream;I)V
1: aload 0
new java.util.concurrent.atomic.AtomicBoolean
dup
iconst_0
invokespecial java.util.concurrent.atomic.AtomicBoolean.<init>:(Z)V
putfield org.apache.commons.vfs2.util.MonitorOutputStream.finished:Ljava/util/concurrent/atomic/AtomicBoolean;
2: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/apache/commons/vfs2/util/MonitorOutputStream;
0 3 1 out Ljava/io/OutputStream;
0 3 2 bufferSize I
MethodParameters:
Name Flags
out final
bufferSize final
public void close();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=1
start local 0 0: aload 0
getfield org.apache.commons.vfs2.util.MonitorOutputStream.finished:Ljava/util/concurrent/atomic/AtomicBoolean;
iconst_1
invokevirtual java.util.concurrent.atomic.AtomicBoolean.getAndSet:(Z)Z
ifeq 2
1: return
2: StackMap locals:
StackMap stack:
aconst_null
astore 1
start local 1 3: aload 0
invokespecial java.io.BufferedOutputStream.flush:()V
4: goto 7
StackMap locals: org.apache.commons.vfs2.util.MonitorOutputStream java.io.IOException
StackMap stack: java.io.IOException
5: astore 2
start local 2 6: aload 2
astore 1
end local 2 7: StackMap locals:
StackMap stack:
aload 0
getfield java.io.BufferedOutputStream.out:Ljava/io/OutputStream;
invokevirtual java.io.OutputStream.close:()V
8: goto 11
StackMap locals:
StackMap stack: java.io.IOException
9: astore 2
start local 2 10: aload 2
astore 1
end local 2 11: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.apache.commons.vfs2.util.MonitorOutputStream.onClose:()V
12: goto 15
StackMap locals:
StackMap stack: java.io.IOException
13: astore 2
start local 2 14: aload 2
astore 1
end local 2 15: StackMap locals:
StackMap stack:
aload 1
ifnull 17
16: aload 1
athrow
17: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lorg/apache/commons/vfs2/util/MonitorOutputStream;
3 18 1 exc Ljava/io/IOException;
6 7 2 ioe Ljava/io/IOException;
10 11 2 ioe Ljava/io/IOException;
14 15 2 ioe Ljava/io/IOException;
Exception table:
from to target type
3 4 5 Class java.io.IOException
7 8 9 Class java.io.IOException
11 12 13 Class java.io.IOException
Exceptions:
throws java.io.IOException
public synchronized void write(int);
descriptor: (I)V
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.apache.commons.vfs2.util.MonitorOutputStream.assertOpen:()V
1: aload 0
iload 1
invokespecial java.io.BufferedOutputStream.write:(I)V
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/apache/commons/vfs2/util/MonitorOutputStream;
0 3 1 b I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
b final
public synchronized void write(byte[], int, int);
descriptor: ([BII)V
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokevirtual org.apache.commons.vfs2.util.MonitorOutputStream.assertOpen:()V
1: aload 0
aload 1
iload 2
iload 3
invokespecial java.io.BufferedOutputStream.write:([BII)V
2: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/apache/commons/vfs2/util/MonitorOutputStream;
0 3 1 b [B
0 3 2 off I
0 3 3 len I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
b final
off final
len final
public synchronized void flush();
descriptor: ()V
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.apache.commons.vfs2.util.MonitorOutputStream.assertOpen:()V
1: aload 0
invokespecial java.io.BufferedOutputStream.flush:()V
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/apache/commons/vfs2/util/MonitorOutputStream;
Exceptions:
throws java.io.IOException
public void write(byte[]);
descriptor: ([B)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.apache.commons.vfs2.util.MonitorOutputStream.assertOpen:()V
1: aload 0
aload 1
invokespecial java.io.BufferedOutputStream.write:([B)V
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/apache/commons/vfs2/util/MonitorOutputStream;
0 3 1 b [B
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
b final
protected void assertOpen();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.commons.vfs2.util.MonitorOutputStream.finished:Ljava/util/concurrent/atomic/AtomicBoolean;
invokevirtual java.util.concurrent.atomic.AtomicBoolean.get:()Z
ifeq 2
1: new org.apache.commons.vfs2.FileSystemException
dup
ldc "vfs.provider/closed.error"
invokespecial org.apache.commons.vfs2.FileSystemException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/apache/commons/vfs2/util/MonitorOutputStream;
Exceptions:
throws org.apache.commons.vfs2.FileSystemException
protected void onClose();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=0, locals=1, args_size=1
start local 0 0: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/commons/vfs2/util/MonitorOutputStream;
Exceptions:
throws java.io.IOException
}
SourceFile: "MonitorOutputStream.java"