public abstract class org.apache.commons.vfs2.provider.AbstractVfsContainer extends org.apache.commons.vfs2.provider.AbstractVfsComponent
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: org.apache.commons.vfs2.provider.AbstractVfsContainer
super_class: org.apache.commons.vfs2.provider.AbstractVfsComponent
{
private final java.util.ArrayList<java.lang.Object> components;
descriptor: Ljava/util/ArrayList;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/ArrayList<Ljava/lang/Object;>;
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
invokespecial org.apache.commons.vfs2.provider.AbstractVfsComponent.<init>:()V
1: aload 0
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
putfield org.apache.commons.vfs2.provider.AbstractVfsContainer.components:Ljava/util/ArrayList;
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/apache/commons/vfs2/provider/AbstractVfsContainer;
protected void addComponent(java.lang.Object);
descriptor: (Ljava/lang/Object;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield org.apache.commons.vfs2.provider.AbstractVfsContainer.components:Ljava/util/ArrayList;
dup
astore 2
monitorenter
1: aload 0
getfield org.apache.commons.vfs2.provider.AbstractVfsContainer.components:Ljava/util/ArrayList;
aload 1
invokevirtual java.util.ArrayList.contains:(Ljava/lang/Object;)Z
ifne 8
2: aload 1
instanceof org.apache.commons.vfs2.provider.VfsComponent
ifeq 7
3: aload 1
checkcast org.apache.commons.vfs2.provider.VfsComponent
astore 3
start local 3 4: aload 3
aload 0
invokevirtual org.apache.commons.vfs2.provider.AbstractVfsContainer.getLogger:()Lorg/apache/commons/logging/Log;
invokeinterface org.apache.commons.vfs2.provider.VfsComponent.setLogger:(Lorg/apache/commons/logging/Log;)V
5: aload 3
aload 0
invokevirtual org.apache.commons.vfs2.provider.AbstractVfsContainer.getContext:()Lorg/apache/commons/vfs2/provider/VfsComponentContext;
invokeinterface org.apache.commons.vfs2.provider.VfsComponent.setContext:(Lorg/apache/commons/vfs2/provider/VfsComponentContext;)V
6: aload 3
invokeinterface org.apache.commons.vfs2.provider.VfsComponent.init:()V
end local 3 7: StackMap locals: java.util.ArrayList
StackMap stack:
aload 0
getfield org.apache.commons.vfs2.provider.AbstractVfsContainer.components:Ljava/util/ArrayList;
aload 1
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
8: StackMap locals:
StackMap stack:
aload 2
monitorexit
9: goto 12
StackMap locals:
StackMap stack: java.lang.Throwable
10: aload 2
monitorexit
11: athrow
12: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lorg/apache/commons/vfs2/provider/AbstractVfsContainer;
0 13 1 component Ljava/lang/Object;
4 7 3 vfsComponent Lorg/apache/commons/vfs2/provider/VfsComponent;
Exception table:
from to target type
1 9 10 any
10 11 10 any
Exceptions:
throws org.apache.commons.vfs2.FileSystemException
MethodParameters:
Name Flags
component final
protected void removeComponent(java.lang.Object);
descriptor: (Ljava/lang/Object;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield org.apache.commons.vfs2.provider.AbstractVfsContainer.components:Ljava/util/ArrayList;
dup
astore 2
monitorenter
1: aload 0
getfield org.apache.commons.vfs2.provider.AbstractVfsContainer.components:Ljava/util/ArrayList;
aload 1
invokevirtual java.util.ArrayList.remove:(Ljava/lang/Object;)Z
pop
2: aload 2
monitorexit
3: goto 6
StackMap locals: org.apache.commons.vfs2.provider.AbstractVfsContainer java.lang.Object java.util.ArrayList
StackMap stack: java.lang.Throwable
4: aload 2
monitorexit
5: athrow
6: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/apache/commons/vfs2/provider/AbstractVfsContainer;
0 7 1 component Ljava/lang/Object;
Exception table:
from to target type
1 3 4 any
4 5 4 any
MethodParameters:
Name Flags
component final
public void close();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=7, args_size=1
start local 0 0: aload 0
getfield org.apache.commons.vfs2.provider.AbstractVfsContainer.components:Ljava/util/ArrayList;
dup
astore 2
monitorenter
1: aload 0
getfield org.apache.commons.vfs2.provider.AbstractVfsContainer.components:Ljava/util/ArrayList;
invokevirtual java.util.ArrayList.toArray:()[Ljava/lang/Object;
astore 1
start local 1 2: aload 0
getfield org.apache.commons.vfs2.provider.AbstractVfsContainer.components:Ljava/util/ArrayList;
invokevirtual java.util.ArrayList.clear:()V
3: aload 2
monitorexit
4: goto 7
end local 1 StackMap locals: org.apache.commons.vfs2.provider.AbstractVfsContainer top java.util.ArrayList
StackMap stack: java.lang.Throwable
5: aload 2
monitorexit
6: athrow
start local 1 7: StackMap locals: org.apache.commons.vfs2.provider.AbstractVfsContainer java.lang.Object[]
StackMap stack:
aload 1
dup
astore 5
arraylength
istore 4
iconst_0
istore 3
goto 13
StackMap locals: org.apache.commons.vfs2.provider.AbstractVfsContainer java.lang.Object[] top int int java.lang.Object[]
StackMap stack:
8: aload 5
iload 3
aaload
astore 2
start local 2 9: aload 2
instanceof org.apache.commons.vfs2.provider.VfsComponent
ifeq 12
10: aload 2
checkcast org.apache.commons.vfs2.provider.VfsComponent
astore 6
start local 6 11: aload 6
invokeinterface org.apache.commons.vfs2.provider.VfsComponent.close:()V
end local 6 end local 2 12: StackMap locals:
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
13: iload 3
iload 4
if_icmplt 8
14: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lorg/apache/commons/vfs2/provider/AbstractVfsContainer;
2 5 1 toclose [Ljava/lang/Object;
7 15 1 toclose [Ljava/lang/Object;
9 12 2 component Ljava/lang/Object;
11 12 6 vfsComponent Lorg/apache/commons/vfs2/provider/VfsComponent;
Exception table:
from to target type
1 4 5 any
5 6 5 any
}
SourceFile: "AbstractVfsContainer.java"