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=6, 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
            iconst_0
            istore 4 /* i */
        start local 4 // int i
        11: goto 15
        12: .line 1356
      StackMap locals: org.apache.catalina.Container[] int
      StackMap stack:
            aload 3 /* children */
            iload 4 /* i */
            aaload
            invokeinterface org.apache.catalina.Container.getBackgroundProcessorDelay:()I
            ifgt 14
        13: .line 1357
            aload 0 /* this */
            aload 3 /* children */
            iload 4 /* i */
            aaload
            invokevirtual org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren:(Lorg/apache/catalina/Container;)V
        14: .line 1355
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        15: iload 4 /* i */
            aload 3 /* children */
            arraylength
            if_icmplt 12
        end local 4 // int i
        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 5
        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 java.lang.Throwable
      StackMap stack:
            aload 5
            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;
           11   16     4                    i  I
           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