public class org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor implements java.lang.Runnable
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor
super_class: java.lang.Object
{
final org.apache.catalina.core.ContainerBase this$0;
descriptor: Lorg/apache/catalina/core/ContainerBase;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
protected void <init>(org.apache.catalina.core.ContainerBase);
descriptor: (Lorg/apache/catalina/core/ContainerBase;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 // org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor this
0: .line 1331
aload 0 /* this */
aload 1
putfield org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.this$0:Lorg/apache/catalina/core/ContainerBase;
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
return
end local 0 // org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/catalina/core/ContainerBase$ContainerBackgroundProcessor;
MethodParameters:
Name Flags
this$0 final
public void run();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 // org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor this
0: .line 1335
aload 0 /* this */
aload 0 /* this */
getfield org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.this$0:Lorg/apache/catalina/core/ContainerBase;
invokevirtual org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren:(Lorg/apache/catalina/Container;)V
1: .line 1336
return
end local 0 // org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor this
LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/catalina/core/ContainerBase$ContainerBackgroundProcessor;
protected void processChildren(org.apache.catalina.Container);
descriptor: (Lorg/apache/catalina/Container;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=9, args_size=2
start local 0 // org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor this
start local 1 // org.apache.catalina.Container container
0: .line 1339
aconst_null
astore 2 /* originalClassLoader */
start local 2 // java.lang.ClassLoader originalClassLoader
1: .line 1342
aload 1 /* container */
instanceof org.apache.catalina.Context
ifeq 8
2: .line 1343
aload 1 /* container */
checkcast org.apache.catalina.Context
invokeinterface org.apache.catalina.Context.getLoader:()Lorg/apache/catalina/Loader;
astore 3 /* loader */
start local 3 // org.apache.catalina.Loader loader
3: .line 1345
aload 3 /* loader */
ifnonnull 7
4: .line 1364
aload 1 /* container */
instanceof org.apache.catalina.Context
ifeq 6
5: .line 1365
aload 1 /* container */
checkcast org.apache.catalina.Context
iconst_0
aload 2 /* originalClassLoader */
invokeinterface org.apache.catalina.Context.unbind:(ZLjava/lang/ClassLoader;)V
6: .line 1346
StackMap locals: java.lang.ClassLoader org.apache.catalina.Loader
StackMap stack:
return
7: .line 1351
StackMap locals:
StackMap stack:
aload 1 /* container */
checkcast org.apache.catalina.Context
iconst_0
aconst_null
invokeinterface org.apache.catalina.Context.bind:(ZLjava/lang/ClassLoader;)Ljava/lang/ClassLoader;
astore 2 /* originalClassLoader */
end local 3 // org.apache.catalina.Loader loader
8: .line 1353
StackMap locals:
StackMap stack:
aload 1 /* container */
invokeinterface org.apache.catalina.Container.backgroundProcess:()V
9: .line 1354
aload 1 /* container */
invokeinterface org.apache.catalina.Container.findChildren:()[Lorg/apache/catalina/Container;
astore 3 /* children */
start local 3 // org.apache.catalina.Container[] children
10: .line 1355
aload 3 /* children */
dup
astore 7
arraylength
istore 6
iconst_0
istore 5
goto 15
StackMap locals: org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor org.apache.catalina.Container java.lang.ClassLoader org.apache.catalina.Container[] top int int org.apache.catalina.Container[]
StackMap stack:
11: aload 7
iload 5
aaload
astore 4 /* child */
start local 4 // org.apache.catalina.Container child
12: .line 1356
aload 4 /* child */
invokeinterface org.apache.catalina.Container.getBackgroundProcessorDelay:()I
ifgt 14
13: .line 1357
aload 0 /* this */
aload 4 /* child */
invokevirtual org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren:(Lorg/apache/catalina/Container;)V
end local 4 // org.apache.catalina.Container child
14: .line 1355
StackMap locals:
StackMap stack:
iinc 5 1
StackMap locals:
StackMap stack:
15: iload 5
iload 6
if_icmplt 11
end local 3 // org.apache.catalina.Container[] children
16: .line 1360
goto 26
StackMap locals: org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor org.apache.catalina.Container java.lang.ClassLoader
StackMap stack: java.lang.Throwable
17: astore 3 /* t */
start local 3 // java.lang.Throwable t
18: .line 1361
aload 3 /* t */
invokestatic org.apache.tomcat.util.ExceptionUtils.handleThrowable:(Ljava/lang/Throwable;)V
19: .line 1362
getstatic org.apache.catalina.core.ContainerBase.log:Lorg/apache/juli/logging/Log;
getstatic org.apache.catalina.core.ContainerBase.sm:Lorg/apache/tomcat/util/res/StringManager;
ldc "containerBase.backgroundProcess.error"
invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;)Ljava/lang/String;
aload 3 /* t */
invokeinterface org.apache.juli.logging.Log.error:(Ljava/lang/Object;Ljava/lang/Throwable;)V
end local 3 // java.lang.Throwable t
20: .line 1364
aload 1 /* container */
instanceof org.apache.catalina.Context
ifeq 28
21: .line 1365
aload 1 /* container */
checkcast org.apache.catalina.Context
iconst_0
aload 2 /* originalClassLoader */
invokeinterface org.apache.catalina.Context.unbind:(ZLjava/lang/ClassLoader;)V
goto 28
22: .line 1363
StackMap locals:
StackMap stack: java.lang.Throwable
astore 8
23: .line 1364
aload 1 /* container */
instanceof org.apache.catalina.Context
ifeq 25
24: .line 1365
aload 1 /* container */
checkcast org.apache.catalina.Context
iconst_0
aload 2 /* originalClassLoader */
invokeinterface org.apache.catalina.Context.unbind:(ZLjava/lang/ClassLoader;)V
25: .line 1367
StackMap locals: org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor org.apache.catalina.Container java.lang.ClassLoader top top top top top java.lang.Throwable
StackMap stack:
aload 8
athrow
26: .line 1364
StackMap locals: org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor org.apache.catalina.Container java.lang.ClassLoader
StackMap stack:
aload 1 /* container */
instanceof org.apache.catalina.Context
ifeq 28
27: .line 1365
aload 1 /* container */
checkcast org.apache.catalina.Context
iconst_0
aload 2 /* originalClassLoader */
invokeinterface org.apache.catalina.Context.unbind:(ZLjava/lang/ClassLoader;)V
28: .line 1368
StackMap locals:
StackMap stack:
return
end local 2 // java.lang.ClassLoader originalClassLoader
end local 1 // org.apache.catalina.Container container
end local 0 // org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor this
LocalVariableTable:
Start End Slot Name Signature
0 29 0 this Lorg/apache/catalina/core/ContainerBase$ContainerBackgroundProcessor;
0 29 1 container Lorg/apache/catalina/Container;
1 29 2 originalClassLoader Ljava/lang/ClassLoader;
3 8 3 loader Lorg/apache/catalina/Loader;
10 16 3 children [Lorg/apache/catalina/Container;
12 14 4 child Lorg/apache/catalina/Container;
18 20 3 t Ljava/lang/Throwable;
Exception table:
from to target type
1 4 17 Class java.lang.Throwable
7 16 17 Class java.lang.Throwable
1 4 22 any
7 20 22 any
MethodParameters:
Name Flags
container
}
SourceFile: "ContainerBase.java"
NestHost: org.apache.catalina.core.ContainerBase
InnerClasses:
protected ContainerBackgroundProcessor = org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor of org.apache.catalina.core.ContainerBase