class org.apache.commons.pool2.impl.BaseGenericObjectPool$Evictor implements java.lang.Runnable
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.apache.commons.pool2.impl.BaseGenericObjectPool$Evictor
super_class: java.lang.Object
{
private java.util.concurrent.ScheduledFuture<?> scheduledFuture;
descriptor: Ljava/util/concurrent/ScheduledFuture;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/concurrent/ScheduledFuture<*>;
final org.apache.commons.pool2.impl.BaseGenericObjectPool this$0;
descriptor: Lorg/apache/commons/pool2/impl/BaseGenericObjectPool;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
void <init>(org.apache.commons.pool2.impl.BaseGenericObjectPool);
descriptor: (Lorg/apache/commons/pool2/impl/BaseGenericObjectPool;)V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 // org.apache.commons.pool2.impl.BaseGenericObjectPool$Evictor this
0: .line 1106
aload 0 /* this */
aload 1
putfield org.apache.commons.pool2.impl.BaseGenericObjectPool$Evictor.this$0:Lorg/apache/commons/pool2/impl/BaseGenericObjectPool;
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
return
end local 0 // org.apache.commons.pool2.impl.BaseGenericObjectPool$Evictor this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/commons/pool2/impl/BaseGenericObjectPool$Evictor;
MethodParameters:
Name Flags
this$0 final
public void run();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=1
start local 0 // org.apache.commons.pool2.impl.BaseGenericObjectPool$Evictor this
0: .line 1121
invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
invokevirtual java.lang.Thread.getContextClassLoader:()Ljava/lang/ClassLoader;
1: .line 1120
astore 1 /* savedClassLoader */
start local 1 // java.lang.ClassLoader savedClassLoader
2: .line 1123
aload 0 /* this */
getfield org.apache.commons.pool2.impl.BaseGenericObjectPool$Evictor.this$0:Lorg/apache/commons/pool2/impl/BaseGenericObjectPool;
getfield org.apache.commons.pool2.impl.BaseGenericObjectPool.factoryClassLoader:Ljava/lang/ref/WeakReference;
ifnull 9
3: .line 1125
aload 0 /* this */
getfield org.apache.commons.pool2.impl.BaseGenericObjectPool$Evictor.this$0:Lorg/apache/commons/pool2/impl/BaseGenericObjectPool;
getfield org.apache.commons.pool2.impl.BaseGenericObjectPool.factoryClassLoader:Ljava/lang/ref/WeakReference;
invokevirtual java.lang.ref.WeakReference.get:()Ljava/lang/Object;
checkcast java.lang.ClassLoader
astore 2 /* cl */
start local 2 // java.lang.ClassLoader cl
4: .line 1126
aload 2 /* cl */
ifnonnull 8
5: .line 1130
aload 0 /* this */
invokevirtual org.apache.commons.pool2.impl.BaseGenericObjectPool$Evictor.cancel:()V
6: .line 1154
invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
aload 1 /* savedClassLoader */
invokevirtual java.lang.Thread.setContextClassLoader:(Ljava/lang/ClassLoader;)V
7: .line 1131
return
8: .line 1133
StackMap locals: java.lang.ClassLoader java.lang.ClassLoader
StackMap stack:
invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
aload 2 /* cl */
invokevirtual java.lang.Thread.setContextClassLoader:(Ljava/lang/ClassLoader;)V
end local 2 // java.lang.ClassLoader cl
9: .line 1138
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield org.apache.commons.pool2.impl.BaseGenericObjectPool$Evictor.this$0:Lorg/apache/commons/pool2/impl/BaseGenericObjectPool;
invokevirtual org.apache.commons.pool2.impl.BaseGenericObjectPool.evict:()V
10: .line 1139
goto 16
StackMap locals:
StackMap stack: java.lang.Exception
11: astore 2 /* e */
start local 2 // java.lang.Exception e
12: .line 1140
aload 0 /* this */
getfield org.apache.commons.pool2.impl.BaseGenericObjectPool$Evictor.this$0:Lorg/apache/commons/pool2/impl/BaseGenericObjectPool;
aload 2 /* e */
invokevirtual org.apache.commons.pool2.impl.BaseGenericObjectPool.swallowException:(Ljava/lang/Exception;)V
end local 2 // java.lang.Exception e
13: goto 16
14: .line 1141
StackMap locals:
StackMap stack: java.lang.OutOfMemoryError
astore 2 /* oome */
start local 2 // java.lang.OutOfMemoryError oome
15: .line 1144
aload 2 /* oome */
getstatic java.lang.System.err:Ljava/io/PrintStream;
invokevirtual java.lang.OutOfMemoryError.printStackTrace:(Ljava/io/PrintStream;)V
end local 2 // java.lang.OutOfMemoryError oome
16: .line 1148
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield org.apache.commons.pool2.impl.BaseGenericObjectPool$Evictor.this$0:Lorg/apache/commons/pool2/impl/BaseGenericObjectPool;
invokevirtual org.apache.commons.pool2.impl.BaseGenericObjectPool.ensureMinIdle:()V
17: .line 1149
goto 24
StackMap locals:
StackMap stack: java.lang.Exception
18: astore 2 /* e */
start local 2 // java.lang.Exception e
19: .line 1150
aload 0 /* this */
getfield org.apache.commons.pool2.impl.BaseGenericObjectPool$Evictor.this$0:Lorg/apache/commons/pool2/impl/BaseGenericObjectPool;
aload 2 /* e */
invokevirtual org.apache.commons.pool2.impl.BaseGenericObjectPool.swallowException:(Ljava/lang/Exception;)V
end local 2 // java.lang.Exception e
20: .line 1152
goto 24
StackMap locals:
StackMap stack: java.lang.Throwable
21: astore 3
22: .line 1154
invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
aload 1 /* savedClassLoader */
invokevirtual java.lang.Thread.setContextClassLoader:(Ljava/lang/ClassLoader;)V
23: .line 1155
aload 3
athrow
24: .line 1154
StackMap locals:
StackMap stack:
invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
aload 1 /* savedClassLoader */
invokevirtual java.lang.Thread.setContextClassLoader:(Ljava/lang/ClassLoader;)V
25: .line 1156
return
end local 1 // java.lang.ClassLoader savedClassLoader
end local 0 // org.apache.commons.pool2.impl.BaseGenericObjectPool$Evictor this
LocalVariableTable:
Start End Slot Name Signature
0 26 0 this Lorg/apache/commons/pool2/impl/BaseGenericObjectPool$Evictor;
2 26 1 savedClassLoader Ljava/lang/ClassLoader;
4 9 2 cl Ljava/lang/ClassLoader;
12 13 2 e Ljava/lang/Exception;
15 16 2 oome Ljava/lang/OutOfMemoryError;
19 20 2 e Ljava/lang/Exception;
Exception table:
from to target type
9 10 11 Class java.lang.Exception
9 10 14 Class java.lang.OutOfMemoryError
16 17 18 Class java.lang.Exception
2 6 21 any
8 21 21 any
void setScheduledFuture(java.util.concurrent.ScheduledFuture<?>);
descriptor: (Ljava/util/concurrent/ScheduledFuture;)V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 // org.apache.commons.pool2.impl.BaseGenericObjectPool$Evictor this
start local 1 // java.util.concurrent.ScheduledFuture scheduledFuture
0: .line 1160
aload 0 /* this */
aload 1 /* scheduledFuture */
putfield org.apache.commons.pool2.impl.BaseGenericObjectPool$Evictor.scheduledFuture:Ljava/util/concurrent/ScheduledFuture;
1: .line 1161
return
end local 1 // java.util.concurrent.ScheduledFuture scheduledFuture
end local 0 // org.apache.commons.pool2.impl.BaseGenericObjectPool$Evictor this
LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/commons/pool2/impl/BaseGenericObjectPool$Evictor;
0 2 1 scheduledFuture Ljava/util/concurrent/ScheduledFuture<*>;
Signature: (Ljava/util/concurrent/ScheduledFuture<*>;)V
MethodParameters:
Name Flags
scheduledFuture final
void cancel();
descriptor: ()V
flags: (0x0000)
Code:
stack=2, locals=1, args_size=1
start local 0 // org.apache.commons.pool2.impl.BaseGenericObjectPool$Evictor this
0: .line 1165
aload 0 /* this */
getfield org.apache.commons.pool2.impl.BaseGenericObjectPool$Evictor.scheduledFuture:Ljava/util/concurrent/ScheduledFuture;
iconst_0
invokeinterface java.util.concurrent.ScheduledFuture.cancel:(Z)Z
pop
1: .line 1166
return
end local 0 // org.apache.commons.pool2.impl.BaseGenericObjectPool$Evictor this
LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/commons/pool2/impl/BaseGenericObjectPool$Evictor;
}
SourceFile: "BaseGenericObjectPool.java"
NestHost: org.apache.commons.pool2.impl.BaseGenericObjectPool
InnerClasses:
Evictor = org.apache.commons.pool2.impl.BaseGenericObjectPool$Evictor of org.apache.commons.pool2.impl.BaseGenericObjectPool