public class org.apache.catalina.startup.HostConfig implements org.apache.catalina.LifecycleListener
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.apache.catalina.startup.HostConfig
  super_class: java.lang.Object
{
  private static final org.apache.juli.logging.Log log;
    descriptor: Lorg/apache/juli/logging/Log;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  protected static final org.apache.tomcat.util.res.StringManager sm;
    descriptor: Lorg/apache/tomcat/util/res/StringManager;
    flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL

  protected static final long FILE_MODIFICATION_RESOLUTION_MS;
    descriptor: J
    flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
    ConstantValue: 1000

  protected java.lang.String contextClass;
    descriptor: Ljava/lang/String;
    flags: (0x0004) ACC_PROTECTED

  protected org.apache.catalina.Host host;
    descriptor: Lorg/apache/catalina/Host;
    flags: (0x0004) ACC_PROTECTED

  protected javax.management.ObjectName oname;
    descriptor: Ljavax/management/ObjectName;
    flags: (0x0004) ACC_PROTECTED

  protected boolean deployXML;
    descriptor: Z
    flags: (0x0004) ACC_PROTECTED

  protected boolean copyXML;
    descriptor: Z
    flags: (0x0004) ACC_PROTECTED

  protected boolean unpackWARs;
    descriptor: Z
    flags: (0x0004) ACC_PROTECTED

  protected final java.util.Map<java.lang.String, org.apache.catalina.startup.HostConfig$DeployedApplication> deployed;
    descriptor: Ljava/util/Map;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Signature: Ljava/util/Map<Ljava/lang/String;Lorg/apache/catalina/startup/HostConfig$DeployedApplication;>;

  protected final java.util.ArrayList<java.lang.String> serviced;
    descriptor: Ljava/util/ArrayList;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Signature: Ljava/util/ArrayList<Ljava/lang/String;>;

  protected org.apache.tomcat.util.digester.Digester digester;
    descriptor: Lorg/apache/tomcat/util/digester/Digester;
    flags: (0x0004) ACC_PROTECTED

  private final java.lang.Object digesterLock;
    descriptor: Ljava/lang/Object;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  protected final java.util.Set<java.lang.String> invalidWars;
    descriptor: Ljava/util/Set;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Signature: Ljava/util/Set<Ljava/lang/String;>;

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 85
            ldc Lorg/apache/catalina/startup/HostConfig;
            invokestatic org.apache.juli.logging.LogFactory.getLog:(Ljava/lang/Class;)Lorg/apache/juli/logging/Log;
            putstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
         1: .line 90
            ldc Lorg/apache/catalina/startup/HostConfig;
            invokestatic org.apache.tomcat.util.res.StringManager.getManager:(Ljava/lang/Class;)Lorg/apache/tomcat/util/res/StringManager;
            putstatic org.apache.catalina.startup.HostConfig.sm:Lorg/apache/tomcat/util/res/StringManager;
         2: .line 95
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.apache.catalina.startup.HostConfig this
         0: .line 83
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 103
            aload 0 /* this */
            ldc "org.apache.catalina.core.StandardContext"
            putfield org.apache.catalina.startup.HostConfig.contextClass:Ljava/lang/String;
         2: .line 109
            aload 0 /* this */
            aconst_null
            putfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
         3: .line 115
            aload 0 /* this */
            aconst_null
            putfield org.apache.catalina.startup.HostConfig.oname:Ljavax/management/ObjectName;
         4: .line 122
            aload 0 /* this */
            iconst_0
            putfield org.apache.catalina.startup.HostConfig.deployXML:Z
         5: .line 130
            aload 0 /* this */
            iconst_0
            putfield org.apache.catalina.startup.HostConfig.copyXML:Z
         6: .line 137
            aload 0 /* this */
            iconst_0
            putfield org.apache.catalina.startup.HostConfig.unpackWARs:Z
         7: .line 143
            aload 0 /* this */
         8: .line 144
            new java.util.concurrent.ConcurrentHashMap
            dup
            invokespecial java.util.concurrent.ConcurrentHashMap.<init>:()V
            putfield org.apache.catalina.startup.HostConfig.deployed:Ljava/util/Map;
         9: .line 151
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield org.apache.catalina.startup.HostConfig.serviced:Ljava/util/ArrayList;
        10: .line 157
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.contextClass:Ljava/lang/String;
            invokestatic org.apache.catalina.startup.HostConfig.createDigester:(Ljava/lang/String;)Lorg/apache/tomcat/util/digester/Digester;
            putfield org.apache.catalina.startup.HostConfig.digester:Lorg/apache/tomcat/util/digester/Digester;
        11: .line 158
            aload 0 /* this */
            new java.lang.Object
            dup
            invokespecial java.lang.Object.<init>:()V
            putfield org.apache.catalina.startup.HostConfig.digesterLock:Ljava/lang/Object;
        12: .line 164
            aload 0 /* this */
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            putfield org.apache.catalina.startup.HostConfig.invalidWars:Ljava/util/Set;
        13: .line 83
            return
        end local 0 // org.apache.catalina.startup.HostConfig this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   14     0  this  Lorg/apache/catalina/startup/HostConfig;

  public java.lang.String getContextClass();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.catalina.startup.HostConfig this
         0: .line 173
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.contextClass:Ljava/lang/String;
            areturn
        end local 0 // org.apache.catalina.startup.HostConfig this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/catalina/startup/HostConfig;

  public void setContextClass(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // org.apache.catalina.startup.HostConfig this
        start local 1 // java.lang.String contextClass
         0: .line 184
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.contextClass:Ljava/lang/String;
            astore 2 /* oldContextClass */
        start local 2 // java.lang.String oldContextClass
         1: .line 185
            aload 0 /* this */
            aload 1 /* contextClass */
            putfield org.apache.catalina.startup.HostConfig.contextClass:Ljava/lang/String;
         2: .line 187
            aload 2 /* oldContextClass */
            aload 1 /* contextClass */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 9
         3: .line 188
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.digesterLock:Ljava/lang/Object;
            dup
            astore 3
            monitorenter
         4: .line 189
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.apache.catalina.startup.HostConfig.getContextClass:()Ljava/lang/String;
            invokestatic org.apache.catalina.startup.HostConfig.createDigester:(Ljava/lang/String;)Lorg/apache/tomcat/util/digester/Digester;
            putfield org.apache.catalina.startup.HostConfig.digester:Lorg/apache/tomcat/util/digester/Digester;
         5: .line 188
            aload 3
            monitorexit
         6: goto 9
      StackMap locals: org.apache.catalina.startup.HostConfig java.lang.String java.lang.String java.lang.Object
      StackMap stack: java.lang.Throwable
         7: aload 3
            monitorexit
         8: athrow
         9: .line 192
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.lang.String oldContextClass
        end local 1 // java.lang.String contextClass
        end local 0 // org.apache.catalina.startup.HostConfig this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   10     0             this  Lorg/apache/catalina/startup/HostConfig;
            0   10     1     contextClass  Ljava/lang/String;
            1   10     2  oldContextClass  Ljava/lang/String;
      Exception table:
        from    to  target  type
           4     6       7  any
           7     8       7  any
    MethodParameters:
              Name  Flags
      contextClass  

  public boolean isDeployXML();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.catalina.startup.HostConfig this
         0: .line 199
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.deployXML:Z
            ireturn
        end local 0 // org.apache.catalina.startup.HostConfig this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/catalina/startup/HostConfig;

  public void setDeployXML(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.catalina.startup.HostConfig this
        start local 1 // boolean deployXML
         0: .line 209
            aload 0 /* this */
            iload 1 /* deployXML */
            putfield org.apache.catalina.startup.HostConfig.deployXML:Z
         1: .line 210
            return
        end local 1 // boolean deployXML
        end local 0 // org.apache.catalina.startup.HostConfig this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lorg/apache/catalina/startup/HostConfig;
            0    2     1  deployXML  Z
    MethodParameters:
           Name  Flags
      deployXML  

  private boolean isDeployThisXML(java.io.File, org.apache.catalina.util.ContextName);
    descriptor: (Ljava/io/File;Lorg/apache/catalina/util/ContextName;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=9, args_size=3
        start local 0 // org.apache.catalina.startup.HostConfig this
        start local 1 // java.io.File docBase
        start local 2 // org.apache.catalina.util.ContextName cn
         0: .line 214
            aload 0 /* this */
            invokevirtual org.apache.catalina.startup.HostConfig.isDeployXML:()Z
            istore 3 /* deployThisXML */
        start local 3 // boolean deployThisXML
         1: .line 215
            getstatic org.apache.catalina.Globals.IS_SECURITY_ENABLED:Z
            ifeq 13
            iload 3 /* deployThisXML */
            ifne 13
         2: .line 218
            invokestatic java.security.Policy.getPolicy:()Ljava/security/Policy;
            astore 4 /* currentPolicy */
        start local 4 // java.security.Policy currentPolicy
         3: .line 219
            aload 4 /* currentPolicy */
            ifnull 13
         4: .line 222
            aload 1 /* docBase */
            invokevirtual java.io.File.toURI:()Ljava/net/URI;
            invokevirtual java.net.URI.toURL:()Ljava/net/URL;
            astore 5 /* contextRootUrl */
        start local 5 // java.net.URL contextRootUrl
         5: .line 223
            new java.security.CodeSource
            dup
            aload 5 /* contextRootUrl */
            aconst_null
            invokespecial java.security.CodeSource.<init>:(Ljava/net/URL;[Ljava/security/cert/Certificate;)V
            astore 6 /* cs */
        start local 6 // java.security.CodeSource cs
         6: .line 224
            aload 4 /* currentPolicy */
            aload 6 /* cs */
            invokevirtual java.security.Policy.getPermissions:(Ljava/security/CodeSource;)Ljava/security/PermissionCollection;
            astore 7 /* pc */
        start local 7 // java.security.PermissionCollection pc
         7: .line 225
            new org.apache.catalina.security.DeployXmlPermission
            dup
            aload 2 /* cn */
            invokevirtual org.apache.catalina.util.ContextName.getBaseName:()Ljava/lang/String;
            invokespecial org.apache.catalina.security.DeployXmlPermission.<init>:(Ljava/lang/String;)V
            astore 8 /* p */
        start local 8 // java.security.Permission p
         8: .line 226
            aload 7 /* pc */
            aload 8 /* p */
            invokevirtual java.security.PermissionCollection.implies:(Ljava/security/Permission;)Z
            ifeq 13
         9: .line 227
            iconst_1
            istore 3 /* deployThisXML */
        end local 8 // java.security.Permission p
        end local 7 // java.security.PermissionCollection pc
        end local 6 // java.security.CodeSource cs
        10: .line 229
            goto 13
        end local 5 // java.net.URL contextRootUrl
      StackMap locals: org.apache.catalina.startup.HostConfig java.io.File org.apache.catalina.util.ContextName int java.security.Policy
      StackMap stack: java.net.MalformedURLException
        11: astore 6 /* e */
        start local 6 // java.net.MalformedURLException e
        12: .line 231
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            getstatic org.apache.catalina.startup.HostConfig.sm:Lorg/apache/tomcat/util/res/StringManager;
            ldc "hostConfig.docBaseUrlInvalid"
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;)Ljava/lang/String;
            aload 6 /* e */
            invokeinterface org.apache.juli.logging.Log.warn:(Ljava/lang/Object;Ljava/lang/Throwable;)V
        end local 6 // java.net.MalformedURLException e
        end local 4 // java.security.Policy currentPolicy
        13: .line 236
      StackMap locals:
      StackMap stack:
            iload 3 /* deployThisXML */
            ireturn
        end local 3 // boolean deployThisXML
        end local 2 // org.apache.catalina.util.ContextName cn
        end local 1 // java.io.File docBase
        end local 0 // org.apache.catalina.startup.HostConfig this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   14     0            this  Lorg/apache/catalina/startup/HostConfig;
            0   14     1         docBase  Ljava/io/File;
            0   14     2              cn  Lorg/apache/catalina/util/ContextName;
            1   14     3   deployThisXML  Z
            3   13     4   currentPolicy  Ljava/security/Policy;
            5   11     5  contextRootUrl  Ljava/net/URL;
            6   10     6              cs  Ljava/security/CodeSource;
            7   10     7              pc  Ljava/security/PermissionCollection;
            8   10     8               p  Ljava/security/Permission;
           12   13     6               e  Ljava/net/MalformedURLException;
      Exception table:
        from    to  target  type
           4    10      11  Class java.net.MalformedURLException
    MethodParameters:
         Name  Flags
      docBase  
      cn       

  public boolean isCopyXML();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.catalina.startup.HostConfig this
         0: .line 244
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.copyXML:Z
            ireturn
        end local 0 // org.apache.catalina.startup.HostConfig this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/catalina/startup/HostConfig;

  public void setCopyXML(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.catalina.startup.HostConfig this
        start local 1 // boolean copyXML
         0: .line 255
            aload 0 /* this */
            iload 1 /* copyXML */
            putfield org.apache.catalina.startup.HostConfig.copyXML:Z
         1: .line 257
            return
        end local 1 // boolean copyXML
        end local 0 // org.apache.catalina.startup.HostConfig this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/apache/catalina/startup/HostConfig;
            0    2     1  copyXML  Z
    MethodParameters:
         Name  Flags
      copyXML  

  public boolean isUnpackWARs();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.catalina.startup.HostConfig this
         0: .line 264
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.unpackWARs:Z
            ireturn
        end local 0 // org.apache.catalina.startup.HostConfig this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/catalina/startup/HostConfig;

  public void setUnpackWARs(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.catalina.startup.HostConfig this
        start local 1 // boolean unpackWARs
         0: .line 274
            aload 0 /* this */
            iload 1 /* unpackWARs */
            putfield org.apache.catalina.startup.HostConfig.unpackWARs:Z
         1: .line 275
            return
        end local 1 // boolean unpackWARs
        end local 0 // org.apache.catalina.startup.HostConfig this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lorg/apache/catalina/startup/HostConfig;
            0    2     1  unpackWARs  Z
    MethodParameters:
            Name  Flags
      unpackWARs  

  public void lifecycleEvent(org.apache.catalina.LifecycleEvent);
    descriptor: (Lorg/apache/catalina/LifecycleEvent;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=3, args_size=2
        start local 0 // org.apache.catalina.startup.HostConfig this
        start local 1 // org.apache.catalina.LifecycleEvent event
         0: .line 291
            aload 0 /* this */
            aload 1 /* event */
            invokevirtual org.apache.catalina.LifecycleEvent.getLifecycle:()Lorg/apache/catalina/Lifecycle;
            checkcast org.apache.catalina.Host
            putfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
         1: .line 292
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            instanceof org.apache.catalina.core.StandardHost
            ifeq 10
         2: .line 293
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            checkcast org.apache.catalina.core.StandardHost
            invokevirtual org.apache.catalina.core.StandardHost.isCopyXML:()Z
            invokevirtual org.apache.catalina.startup.HostConfig.setCopyXML:(Z)V
         3: .line 294
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            checkcast org.apache.catalina.core.StandardHost
            invokevirtual org.apache.catalina.core.StandardHost.isDeployXML:()Z
            invokevirtual org.apache.catalina.startup.HostConfig.setDeployXML:(Z)V
         4: .line 295
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            checkcast org.apache.catalina.core.StandardHost
            invokevirtual org.apache.catalina.core.StandardHost.isUnpackWARs:()Z
            invokevirtual org.apache.catalina.startup.HostConfig.setUnpackWARs:(Z)V
         5: .line 296
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            checkcast org.apache.catalina.core.StandardHost
            invokevirtual org.apache.catalina.core.StandardHost.getContextClass:()Ljava/lang/String;
            invokevirtual org.apache.catalina.startup.HostConfig.setContextClass:(Ljava/lang/String;)V
         6: .line 298
            goto 10
      StackMap locals:
      StackMap stack: java.lang.ClassCastException
         7: astore 2 /* e */
        start local 2 // java.lang.ClassCastException e
         8: .line 299
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            getstatic org.apache.catalina.startup.HostConfig.sm:Lorg/apache/tomcat/util/res/StringManager;
            ldc "hostConfig.cce"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* event */
            invokevirtual org.apache.catalina.LifecycleEvent.getLifecycle:()Lorg/apache/catalina/Lifecycle;
            aastore
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            aload 2 /* e */
            invokeinterface org.apache.juli.logging.Log.error:(Ljava/lang/Object;Ljava/lang/Throwable;)V
         9: .line 300
            return
        end local 2 // java.lang.ClassCastException e
        10: .line 304
      StackMap locals:
      StackMap stack:
            aload 1 /* event */
            invokevirtual org.apache.catalina.LifecycleEvent.getType:()Ljava/lang/String;
            ldc "periodic"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 13
        11: .line 305
            aload 0 /* this */
            invokevirtual org.apache.catalina.startup.HostConfig.check:()V
        12: .line 306
            goto 21
      StackMap locals:
      StackMap stack:
        13: aload 1 /* event */
            invokevirtual org.apache.catalina.LifecycleEvent.getType:()Ljava/lang/String;
            ldc "before_start"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 16
        14: .line 307
            aload 0 /* this */
            invokevirtual org.apache.catalina.startup.HostConfig.beforeStart:()V
        15: .line 308
            goto 21
      StackMap locals:
      StackMap stack:
        16: aload 1 /* event */
            invokevirtual org.apache.catalina.LifecycleEvent.getType:()Ljava/lang/String;
            ldc "start"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 19
        17: .line 309
            aload 0 /* this */
            invokevirtual org.apache.catalina.startup.HostConfig.start:()V
        18: .line 310
            goto 21
      StackMap locals:
      StackMap stack:
        19: aload 1 /* event */
            invokevirtual org.apache.catalina.LifecycleEvent.getType:()Ljava/lang/String;
            ldc "stop"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 21
        20: .line 311
            aload 0 /* this */
            invokevirtual org.apache.catalina.startup.HostConfig.stop:()V
        21: .line 313
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.apache.catalina.LifecycleEvent event
        end local 0 // org.apache.catalina.startup.HostConfig this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   22     0   this  Lorg/apache/catalina/startup/HostConfig;
            0   22     1  event  Lorg/apache/catalina/LifecycleEvent;
            8   10     2      e  Ljava/lang/ClassCastException;
      Exception table:
        from    to  target  type
           0     6       7  Class java.lang.ClassCastException
    MethodParameters:
       Name  Flags
      event  

  public synchronized void addServiced(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.catalina.startup.HostConfig this
        start local 1 // java.lang.String name
         0: .line 321
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.serviced:Ljava/util/ArrayList;
            aload 1 /* name */
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
         1: .line 322
            return
        end local 1 // java.lang.String name
        end local 0 // org.apache.catalina.startup.HostConfig this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/catalina/startup/HostConfig;
            0    2     1  name  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      name  

  public synchronized boolean isServiced(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.catalina.startup.HostConfig this
        start local 1 // java.lang.String name
         0: .line 331
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.serviced:Ljava/util/ArrayList;
            aload 1 /* name */
            invokevirtual java.util.ArrayList.contains:(Ljava/lang/Object;)Z
            ireturn
        end local 1 // java.lang.String name
        end local 0 // org.apache.catalina.startup.HostConfig this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/catalina/startup/HostConfig;
            0    1     1  name  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      name  

  public synchronized void removeServiced(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.catalina.startup.HostConfig this
        start local 1 // java.lang.String name
         0: .line 340
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.serviced:Ljava/util/ArrayList;
            aload 1 /* name */
            invokevirtual java.util.ArrayList.remove:(Ljava/lang/Object;)Z
            pop
         1: .line 341
            return
        end local 1 // java.lang.String name
        end local 0 // org.apache.catalina.startup.HostConfig this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/catalina/startup/HostConfig;
            0    2     1  name  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      name  

  public long getDeploymentTime(java.lang.String);
    descriptor: (Ljava/lang/String;)J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.apache.catalina.startup.HostConfig this
        start local 1 // java.lang.String name
         0: .line 351
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.deployed:Ljava/util/Map;
            aload 1 /* name */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.apache.catalina.startup.HostConfig$DeployedApplication
            astore 2 /* app */
        start local 2 // org.apache.catalina.startup.HostConfig$DeployedApplication app
         1: .line 352
            aload 2 /* app */
            ifnonnull 3
         2: .line 353
            lconst_0
            lreturn
         3: .line 356
      StackMap locals: org.apache.catalina.startup.HostConfig$DeployedApplication
      StackMap stack:
            aload 2 /* app */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.timestamp:J
            lreturn
        end local 2 // org.apache.catalina.startup.HostConfig$DeployedApplication app
        end local 1 // java.lang.String name
        end local 0 // org.apache.catalina.startup.HostConfig this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/apache/catalina/startup/HostConfig;
            0    4     1  name  Ljava/lang/String;
            1    4     2   app  Lorg/apache/catalina/startup/HostConfig$DeployedApplication;
    MethodParameters:
      Name  Flags
      name  

  public boolean isDeployed(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.catalina.startup.HostConfig this
        start local 1 // java.lang.String name
         0: .line 369
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.deployed:Ljava/util/Map;
            aload 1 /* name */
            invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
            ireturn
        end local 1 // java.lang.String name
        end local 0 // org.apache.catalina.startup.HostConfig this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/catalina/startup/HostConfig;
            0    1     1  name  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      name  

  protected static org.apache.tomcat.util.digester.Digester createDigester(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/apache/tomcat/util/digester/Digester;
    flags: (0x000c) ACC_PROTECTED, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // java.lang.String contextClassName
         0: .line 383
            new org.apache.tomcat.util.digester.Digester
            dup
            invokespecial org.apache.tomcat.util.digester.Digester.<init>:()V
            astore 1 /* digester */
        start local 1 // org.apache.tomcat.util.digester.Digester digester
         1: .line 384
            aload 1 /* digester */
            iconst_0
            invokevirtual org.apache.tomcat.util.digester.Digester.setValidating:(Z)V
         2: .line 386
            aload 1 /* digester */
            ldc "Context"
            aload 0 /* contextClassName */
            ldc "className"
            invokevirtual org.apache.tomcat.util.digester.Digester.addObjectCreate:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
         3: .line 389
            aload 1 /* digester */
            ldc "Context"
            invokevirtual org.apache.tomcat.util.digester.Digester.addSetProperties:(Ljava/lang/String;)V
         4: .line 390
            aload 1 /* digester */
            areturn
        end local 1 // org.apache.tomcat.util.digester.Digester digester
        end local 0 // java.lang.String contextClassName
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    5     0  contextClassName  Ljava/lang/String;
            1    5     1          digester  Lorg/apache/tomcat/util/digester/Digester;
    MethodParameters:
                  Name  Flags
      contextClassName  

  protected java.io.File returnCanonicalPath(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/io/File;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // org.apache.catalina.startup.HostConfig this
        start local 1 // java.lang.String path
         0: .line 394
            new java.io.File
            dup
            aload 1 /* path */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            astore 2 /* file */
        start local 2 // java.io.File file
         1: .line 395
            aload 2 /* file */
            invokevirtual java.io.File.isAbsolute:()Z
            ifne 3
         2: .line 396
            new java.io.File
            dup
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            invokeinterface org.apache.catalina.Host.getCatalinaBase:()Ljava/io/File;
            aload 1 /* path */
            invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
            astore 2 /* file */
         3: .line 398
      StackMap locals: java.io.File
      StackMap stack:
            aload 2 /* file */
            invokevirtual java.io.File.getCanonicalFile:()Ljava/io/File;
         4: areturn
         5: .line 399
      StackMap locals:
      StackMap stack: java.io.IOException
            pop
         6: .line 400
            aload 2 /* file */
            areturn
        end local 2 // java.io.File file
        end local 1 // java.lang.String path
        end local 0 // org.apache.catalina.startup.HostConfig this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lorg/apache/catalina/startup/HostConfig;
            0    7     1  path  Ljava/lang/String;
            1    7     2  file  Ljava/io/File;
      Exception table:
        from    to  target  type
           3     4       5  Class java.io.IOException
    MethodParameters:
      Name  Flags
      path  

  public java.lang.String getConfigBaseName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.catalina.startup.HostConfig this
         0: .line 411
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            invokeinterface org.apache.catalina.Host.getConfigBaseFile:()Ljava/io/File;
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
            areturn
        end local 0 // org.apache.catalina.startup.HostConfig this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/catalina/startup/HostConfig;

  protected void deployApps();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=4, args_size=1
        start local 0 // org.apache.catalina.startup.HostConfig this
         0: .line 421
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            invokeinterface org.apache.catalina.Host.getAppBaseFile:()Ljava/io/File;
            astore 1 /* appBase */
        start local 1 // java.io.File appBase
         1: .line 422
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            invokeinterface org.apache.catalina.Host.getConfigBaseFile:()Ljava/io/File;
            astore 2 /* configBase */
        start local 2 // java.io.File configBase
         2: .line 423
            aload 0 /* this */
            aload 1 /* appBase */
            invokevirtual java.io.File.list:()[Ljava/lang/String;
            invokevirtual org.apache.catalina.startup.HostConfig.filterAppPaths:([Ljava/lang/String;)[Ljava/lang/String;
            astore 3 /* filteredAppPaths */
        start local 3 // java.lang.String[] filteredAppPaths
         3: .line 425
            aload 0 /* this */
            aload 2 /* configBase */
            aload 2 /* configBase */
            invokevirtual java.io.File.list:()[Ljava/lang/String;
            invokevirtual org.apache.catalina.startup.HostConfig.deployDescriptors:(Ljava/io/File;[Ljava/lang/String;)V
         4: .line 427
            aload 0 /* this */
            aload 1 /* appBase */
            aload 3 /* filteredAppPaths */
            invokevirtual org.apache.catalina.startup.HostConfig.deployWARs:(Ljava/io/File;[Ljava/lang/String;)V
         5: .line 429
            aload 0 /* this */
            aload 1 /* appBase */
            aload 3 /* filteredAppPaths */
            invokevirtual org.apache.catalina.startup.HostConfig.deployDirectories:(Ljava/io/File;[Ljava/lang/String;)V
         6: .line 431
            return
        end local 3 // java.lang.String[] filteredAppPaths
        end local 2 // java.io.File configBase
        end local 1 // java.io.File appBase
        end local 0 // org.apache.catalina.startup.HostConfig this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    7     0              this  Lorg/apache/catalina/startup/HostConfig;
            1    7     1           appBase  Ljava/io/File;
            2    7     2        configBase  Ljava/io/File;
            3    7     3  filteredAppPaths  [Ljava/lang/String;

  protected java.lang.String[] filterAppPaths(java.lang.String[]);
    descriptor: ([Ljava/lang/String;)[Ljava/lang/String;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=7, locals=9, args_size=2
        start local 0 // org.apache.catalina.startup.HostConfig this
        start local 1 // java.lang.String[] unfilteredAppPaths
         0: .line 443
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            invokeinterface org.apache.catalina.Host.getDeployIgnorePattern:()Ljava/util/regex/Pattern;
            astore 2 /* filter */
        start local 2 // java.util.regex.Pattern filter
         1: .line 444
            aload 2 /* filter */
            ifnull 2
            aload 1 /* unfilteredAppPaths */
            ifnonnull 3
         2: .line 445
      StackMap locals: java.util.regex.Pattern
      StackMap stack:
            aload 1 /* unfilteredAppPaths */
            areturn
         3: .line 448
      StackMap locals:
      StackMap stack:
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 3 /* filteredList */
        start local 3 // java.util.List filteredList
         4: .line 449
            aconst_null
            astore 4 /* matcher */
        start local 4 // java.util.regex.Matcher matcher
         5: .line 450
            aload 1 /* unfilteredAppPaths */
            dup
            astore 8
            arraylength
            istore 7
            iconst_0
            istore 6
            goto 17
      StackMap locals: org.apache.catalina.startup.HostConfig java.lang.String[] java.util.regex.Pattern java.util.List java.util.regex.Matcher top int int java.lang.String[]
      StackMap stack:
         6: aload 8
            iload 6
            aaload
            astore 5 /* appPath */
        start local 5 // java.lang.String appPath
         7: .line 451
            aload 4 /* matcher */
            ifnonnull 10
         8: .line 452
            aload 2 /* filter */
            aload 5 /* appPath */
            invokevirtual java.util.regex.Pattern.matcher:(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
            astore 4 /* matcher */
         9: .line 453
            goto 11
        10: .line 454
      StackMap locals: org.apache.catalina.startup.HostConfig java.lang.String[] java.util.regex.Pattern java.util.List java.util.regex.Matcher java.lang.String int int java.lang.String[]
      StackMap stack:
            aload 4 /* matcher */
            aload 5 /* appPath */
            invokevirtual java.util.regex.Matcher.reset:(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
            pop
        11: .line 456
      StackMap locals:
      StackMap stack:
            aload 4 /* matcher */
            invokevirtual java.util.regex.Matcher.matches:()Z
            ifeq 15
        12: .line 457
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            invokeinterface org.apache.juli.logging.Log.isDebugEnabled:()Z
            ifeq 16
        13: .line 458
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            getstatic org.apache.catalina.startup.HostConfig.sm:Lorg/apache/tomcat/util/res/StringManager;
            ldc "hostConfig.ignorePath"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 5 /* appPath */
            aastore
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokeinterface org.apache.juli.logging.Log.debug:(Ljava/lang/Object;)V
        14: .line 460
            goto 16
        15: .line 461
      StackMap locals:
      StackMap stack:
            aload 3 /* filteredList */
            aload 5 /* appPath */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 5 // java.lang.String appPath
        16: .line 450
      StackMap locals: org.apache.catalina.startup.HostConfig java.lang.String[] java.util.regex.Pattern java.util.List java.util.regex.Matcher top int int java.lang.String[]
      StackMap stack:
            iinc 6 1
      StackMap locals:
      StackMap stack:
        17: iload 6
            iload 7
            if_icmplt 6
        18: .line 464
            aload 3 /* filteredList */
            iconst_0
            anewarray java.lang.String
            invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast java.lang.String[]
            areturn
        end local 4 // java.util.regex.Matcher matcher
        end local 3 // java.util.List filteredList
        end local 2 // java.util.regex.Pattern filter
        end local 1 // java.lang.String[] unfilteredAppPaths
        end local 0 // org.apache.catalina.startup.HostConfig this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   19     0                this  Lorg/apache/catalina/startup/HostConfig;
            0   19     1  unfilteredAppPaths  [Ljava/lang/String;
            1   19     2              filter  Ljava/util/regex/Pattern;
            4   19     3        filteredList  Ljava/util/List<Ljava/lang/String;>;
            5   19     4             matcher  Ljava/util/regex/Matcher;
            7   16     5             appPath  Ljava/lang/String;
    MethodParameters:
                    Name  Flags
      unfilteredAppPaths  

  protected void deployApps(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=9, args_size=2
        start local 0 // org.apache.catalina.startup.HostConfig this
        start local 1 // java.lang.String name
         0: .line 475
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            invokeinterface org.apache.catalina.Host.getAppBaseFile:()Ljava/io/File;
            astore 2 /* appBase */
        start local 2 // java.io.File appBase
         1: .line 476
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            invokeinterface org.apache.catalina.Host.getConfigBaseFile:()Ljava/io/File;
            astore 3 /* configBase */
        start local 3 // java.io.File configBase
         2: .line 477
            new org.apache.catalina.util.ContextName
            dup
            aload 1 /* name */
            iconst_0
            invokespecial org.apache.catalina.util.ContextName.<init>:(Ljava/lang/String;Z)V
            astore 4 /* cn */
        start local 4 // org.apache.catalina.util.ContextName cn
         3: .line 478
            aload 4 /* cn */
            invokevirtual org.apache.catalina.util.ContextName.getBaseName:()Ljava/lang/String;
            astore 5 /* baseName */
        start local 5 // java.lang.String baseName
         4: .line 480
            aload 0 /* this */
            aload 4 /* cn */
            invokevirtual org.apache.catalina.util.ContextName.getName:()Ljava/lang/String;
            invokevirtual org.apache.catalina.startup.HostConfig.deploymentExists:(Ljava/lang/String;)Z
            ifeq 6
         5: .line 481
            return
         6: .line 485
      StackMap locals: org.apache.catalina.startup.HostConfig java.lang.String java.io.File java.io.File org.apache.catalina.util.ContextName java.lang.String
      StackMap stack:
            new java.io.File
            dup
            aload 3 /* configBase */
            new java.lang.StringBuilder
            dup
            aload 5 /* baseName */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ".xml"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
            astore 6 /* xml */
        start local 6 // java.io.File xml
         7: .line 486
            aload 6 /* xml */
            invokevirtual java.io.File.exists:()Z
            ifeq 10
         8: .line 487
            aload 0 /* this */
            aload 4 /* cn */
            aload 6 /* xml */
            invokevirtual org.apache.catalina.startup.HostConfig.deployDescriptor:(Lorg/apache/catalina/util/ContextName;Ljava/io/File;)V
         9: .line 488
            return
        10: .line 491
      StackMap locals: java.io.File
      StackMap stack:
            new java.io.File
            dup
            aload 2 /* appBase */
            new java.lang.StringBuilder
            dup
            aload 5 /* baseName */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ".war"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
            astore 7 /* war */
        start local 7 // java.io.File war
        11: .line 492
            aload 7 /* war */
            invokevirtual java.io.File.exists:()Z
            ifeq 14
        12: .line 493
            aload 0 /* this */
            aload 4 /* cn */
            aload 7 /* war */
            invokevirtual org.apache.catalina.startup.HostConfig.deployWAR:(Lorg/apache/catalina/util/ContextName;Ljava/io/File;)V
        13: .line 494
            return
        14: .line 497
      StackMap locals: java.io.File
      StackMap stack:
            new java.io.File
            dup
            aload 2 /* appBase */
            aload 5 /* baseName */
            invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
            astore 8 /* dir */
        start local 8 // java.io.File dir
        15: .line 498
            aload 8 /* dir */
            invokevirtual java.io.File.exists:()Z
            ifeq 17
        16: .line 499
            aload 0 /* this */
            aload 4 /* cn */
            aload 8 /* dir */
            invokevirtual org.apache.catalina.startup.HostConfig.deployDirectory:(Lorg/apache/catalina/util/ContextName;Ljava/io/File;)V
        17: .line 500
      StackMap locals: java.io.File
      StackMap stack:
            return
        end local 8 // java.io.File dir
        end local 7 // java.io.File war
        end local 6 // java.io.File xml
        end local 5 // java.lang.String baseName
        end local 4 // org.apache.catalina.util.ContextName cn
        end local 3 // java.io.File configBase
        end local 2 // java.io.File appBase
        end local 1 // java.lang.String name
        end local 0 // org.apache.catalina.startup.HostConfig this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   18     0        this  Lorg/apache/catalina/startup/HostConfig;
            0   18     1        name  Ljava/lang/String;
            1   18     2     appBase  Ljava/io/File;
            2   18     3  configBase  Ljava/io/File;
            3   18     4          cn  Lorg/apache/catalina/util/ContextName;
            4   18     5    baseName  Ljava/lang/String;
            7   18     6         xml  Ljava/io/File;
           11   18     7         war  Ljava/io/File;
           15   18     8         dir  Ljava/io/File;
    MethodParameters:
      Name  Flags
      name  

  protected void deployDescriptors(java.io.File, java.lang.String[]);
    descriptor: (Ljava/io/File;[Ljava/lang/String;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=7, locals=11, args_size=3
        start local 0 // org.apache.catalina.startup.HostConfig this
        start local 1 // java.io.File configBase
        start local 2 // java.lang.String[] files
         0: .line 510
            aload 2 /* files */
            ifnonnull 2
         1: .line 511
            return
         2: .line 513
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            invokeinterface org.apache.catalina.Host.getStartStopExecutor:()Ljava/util/concurrent/ExecutorService;
            astore 3 /* es */
        start local 3 // java.util.concurrent.ExecutorService es
         3: .line 514
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 4 /* results */
        start local 4 // java.util.List results
         4: .line 516
            aload 2 /* files */
            dup
            astore 8
            arraylength
            istore 7
            iconst_0
            istore 6
            goto 15
      StackMap locals: org.apache.catalina.startup.HostConfig java.io.File java.lang.String[] java.util.concurrent.ExecutorService java.util.List top int int java.lang.String[]
      StackMap stack:
         5: aload 8
            iload 6
            aaload
            astore 5 /* file */
        start local 5 // java.lang.String file
         6: .line 517
            new java.io.File
            dup
            aload 1 /* configBase */
            aload 5 /* file */
            invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
            astore 9 /* contextXml */
        start local 9 // java.io.File contextXml
         7: .line 519
            aload 5 /* file */
            getstatic java.util.Locale.ENGLISH:Ljava/util/Locale;
            invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
            ldc ".xml"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifeq 14
         8: .line 520
            new org.apache.catalina.util.ContextName
            dup
            aload 5 /* file */
            iconst_1
            invokespecial org.apache.catalina.util.ContextName.<init>:(Ljava/lang/String;Z)V
            astore 10 /* cn */
        start local 10 // org.apache.catalina.util.ContextName cn
         9: .line 522
            aload 0 /* this */
            aload 10 /* cn */
            invokevirtual org.apache.catalina.util.ContextName.getName:()Ljava/lang/String;
            invokevirtual org.apache.catalina.startup.HostConfig.isServiced:(Ljava/lang/String;)Z
            ifne 14
            aload 0 /* this */
            aload 10 /* cn */
            invokevirtual org.apache.catalina.util.ContextName.getName:()Ljava/lang/String;
            invokevirtual org.apache.catalina.startup.HostConfig.deploymentExists:(Ljava/lang/String;)Z
            ifeq 11
        10: .line 523
            goto 14
        11: .line 525
      StackMap locals: org.apache.catalina.startup.HostConfig java.io.File java.lang.String[] java.util.concurrent.ExecutorService java.util.List java.lang.String int int java.lang.String[] java.io.File org.apache.catalina.util.ContextName
      StackMap stack:
            aload 4 /* results */
        12: .line 526
            aload 3 /* es */
            new org.apache.catalina.startup.HostConfig$DeployDescriptor
            dup
            aload 0 /* this */
            aload 10 /* cn */
            aload 9 /* contextXml */
            invokespecial org.apache.catalina.startup.HostConfig$DeployDescriptor.<init>:(Lorg/apache/catalina/startup/HostConfig;Lorg/apache/catalina/util/ContextName;Ljava/io/File;)V
            invokeinterface java.util.concurrent.ExecutorService.submit:(Ljava/lang/Runnable;)Ljava/util/concurrent/Future;
        13: .line 525
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 10 // org.apache.catalina.util.ContextName cn
        end local 9 // java.io.File contextXml
        end local 5 // java.lang.String file
        14: .line 516
      StackMap locals: org.apache.catalina.startup.HostConfig java.io.File java.lang.String[] java.util.concurrent.ExecutorService java.util.List top int int java.lang.String[]
      StackMap stack:
            iinc 6 1
      StackMap locals:
      StackMap stack:
        15: iload 6
            iload 7
            if_icmplt 5
        16: .line 530
            aload 4 /* results */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 6
            goto 26
      StackMap locals: org.apache.catalina.startup.HostConfig java.io.File java.lang.String[] java.util.concurrent.ExecutorService java.util.List top java.util.Iterator
      StackMap stack:
        17: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.util.concurrent.Future
            astore 5 /* result */
        start local 5 // java.util.concurrent.Future result
        18: .line 532
            aload 5 /* result */
            invokeinterface java.util.concurrent.Future.get:()Ljava/lang/Object;
            pop
        19: .line 533
            goto 26
      StackMap locals: org.apache.catalina.startup.HostConfig java.io.File java.lang.String[] java.util.concurrent.ExecutorService java.util.List java.util.concurrent.Future java.util.Iterator
      StackMap stack: java.lang.Exception
        20: astore 7 /* e */
        start local 7 // java.lang.Exception e
        21: .line 534
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            getstatic org.apache.catalina.startup.HostConfig.sm:Lorg/apache/tomcat/util/res/StringManager;
        22: .line 535
            ldc "hostConfig.deployDescriptor.threaded.error"
        23: .line 534
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;)Ljava/lang/String;
        24: .line 535
            aload 7 /* e */
        25: .line 534
            invokeinterface org.apache.juli.logging.Log.error:(Ljava/lang/Object;Ljava/lang/Throwable;)V
        end local 7 // java.lang.Exception e
        end local 5 // java.util.concurrent.Future result
        26: .line 530
      StackMap locals: org.apache.catalina.startup.HostConfig java.io.File java.lang.String[] java.util.concurrent.ExecutorService java.util.List top java.util.Iterator
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 17
        27: .line 538
            return
        end local 4 // java.util.List results
        end local 3 // java.util.concurrent.ExecutorService es
        end local 2 // java.lang.String[] files
        end local 1 // java.io.File configBase
        end local 0 // org.apache.catalina.startup.HostConfig this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   28     0        this  Lorg/apache/catalina/startup/HostConfig;
            0   28     1  configBase  Ljava/io/File;
            0   28     2       files  [Ljava/lang/String;
            3   28     3          es  Ljava/util/concurrent/ExecutorService;
            4   28     4     results  Ljava/util/List<Ljava/util/concurrent/Future<*>;>;
            6   14     5        file  Ljava/lang/String;
            7   14     9  contextXml  Ljava/io/File;
            9   14    10          cn  Lorg/apache/catalina/util/ContextName;
           18   26     5      result  Ljava/util/concurrent/Future<*>;
           21   26     7           e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
          18    19      20  Class java.lang.Exception
    MethodParameters:
            Name  Flags
      configBase  
      files       

  protected void deployDescriptor(org.apache.catalina.util.ContextName, java.io.File);
    descriptor: (Lorg/apache/catalina/util/ContextName;Ljava/io/File;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=10, locals=21, args_size=3
        start local 0 // org.apache.catalina.startup.HostConfig this
        start local 1 // org.apache.catalina.util.ContextName cn
        start local 2 // java.io.File contextXml
         0: .line 550
            new org.apache.catalina.startup.HostConfig$DeployedApplication
            dup
            aload 1 /* cn */
            invokevirtual org.apache.catalina.util.ContextName.getName:()Ljava/lang/String;
            iconst_1
            invokespecial org.apache.catalina.startup.HostConfig$DeployedApplication.<init>:(Ljava/lang/String;Z)V
         1: .line 549
            astore 3 /* deployedApp */
        start local 3 // org.apache.catalina.startup.HostConfig$DeployedApplication deployedApp
         2: .line 552
            lconst_0
            lstore 4 /* startTime */
        start local 4 // long startTime
         3: .line 554
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            invokeinterface org.apache.juli.logging.Log.isInfoEnabled:()Z
            ifeq 8
         4: .line 555
            invokestatic java.lang.System.currentTimeMillis:()J
            lstore 4 /* startTime */
         5: .line 556
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            getstatic org.apache.catalina.startup.HostConfig.sm:Lorg/apache/tomcat/util/res/StringManager;
            ldc "hostConfig.deployDescriptor"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
         6: .line 557
            aload 2 /* contextXml */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
            aastore
         7: .line 556
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokeinterface org.apache.juli.logging.Log.info:(Ljava/lang/Object;)V
         8: .line 560
      StackMap locals: org.apache.catalina.startup.HostConfig$DeployedApplication long
      StackMap stack:
            aconst_null
            astore 6 /* context */
        start local 6 // org.apache.catalina.Context context
         9: .line 561
            iconst_0
            istore 7 /* isExternalWar */
        start local 7 // boolean isExternalWar
        10: .line 562
            iconst_0
            istore 8 /* isExternal */
        start local 8 // boolean isExternal
        11: .line 563
            aconst_null
            astore 9 /* expandedDocBase */
        start local 9 // java.io.File expandedDocBase
        12: .line 565
            aconst_null
            astore 10
            aconst_null
            astore 11
        13: new java.io.FileInputStream
            dup
            aload 2 /* contextXml */
            invokespecial java.io.FileInputStream.<init>:(Ljava/io/File;)V
            astore 12 /* fis */
        start local 12 // java.io.FileInputStream fis
        14: .line 566
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.digesterLock:Ljava/lang/Object;
            dup
            astore 13
            monitorenter
        15: .line 568
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.digester:Lorg/apache/tomcat/util/digester/Digester;
            aload 12 /* fis */
            invokevirtual org.apache.tomcat.util.digester.Digester.parse:(Ljava/io/InputStream;)Ljava/lang/Object;
            checkcast org.apache.catalina.Context
            astore 6 /* context */
        16: .line 569
            goto 32
      StackMap locals: org.apache.catalina.startup.HostConfig org.apache.catalina.util.ContextName java.io.File org.apache.catalina.startup.HostConfig$DeployedApplication long org.apache.catalina.Context int int java.io.File java.lang.Throwable java.lang.Throwable java.io.FileInputStream java.lang.Object
      StackMap stack: java.lang.Exception
        17: astore 14 /* e */
        start local 14 // java.lang.Exception e
        18: .line 570
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            getstatic org.apache.catalina.startup.HostConfig.sm:Lorg/apache/tomcat/util/res/StringManager;
        19: .line 571
            ldc "hostConfig.deployDescriptor.error"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
        20: .line 572
            aload 2 /* contextXml */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
            aastore
        21: .line 570
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
        22: .line 572
            aload 14 /* e */
        23: .line 570
            invokeinterface org.apache.juli.logging.Log.error:(Ljava/lang/Object;Ljava/lang/Throwable;)V
        end local 14 // java.lang.Exception e
        24: .line 574
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.digester:Lorg/apache/tomcat/util/digester/Digester;
            invokevirtual org.apache.tomcat.util.digester.Digester.reset:()V
        25: .line 575
            aload 6 /* context */
            ifnonnull 35
        26: .line 576
            new org.apache.catalina.startup.FailedContext
            dup
            invokespecial org.apache.catalina.startup.FailedContext.<init>:()V
            astore 6 /* context */
            goto 35
        27: .line 573
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 15
        28: .line 574
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.digester:Lorg/apache/tomcat/util/digester/Digester;
            invokevirtual org.apache.tomcat.util.digester.Digester.reset:()V
        29: .line 575
            aload 6 /* context */
            ifnonnull 31
        30: .line 576
            new org.apache.catalina.startup.FailedContext
            dup
            invokespecial org.apache.catalina.startup.FailedContext.<init>:()V
            astore 6 /* context */
        31: .line 578
      StackMap locals: org.apache.catalina.startup.HostConfig org.apache.catalina.util.ContextName java.io.File org.apache.catalina.startup.HostConfig$DeployedApplication long org.apache.catalina.Context int int java.io.File java.lang.Throwable java.lang.Throwable java.io.FileInputStream java.lang.Object top java.lang.Throwable
      StackMap stack:
            aload 15
            athrow
        32: .line 574
      StackMap locals: org.apache.catalina.startup.HostConfig org.apache.catalina.util.ContextName java.io.File org.apache.catalina.startup.HostConfig$DeployedApplication long org.apache.catalina.Context int int java.io.File java.lang.Throwable java.lang.Throwable java.io.FileInputStream java.lang.Object
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.digester:Lorg/apache/tomcat/util/digester/Digester;
            invokevirtual org.apache.tomcat.util.digester.Digester.reset:()V
        33: .line 575
            aload 6 /* context */
            ifnonnull 35
        34: .line 576
            new org.apache.catalina.startup.FailedContext
            dup
            invokespecial org.apache.catalina.startup.FailedContext.<init>:()V
            astore 6 /* context */
        35: .line 566
      StackMap locals:
      StackMap stack:
            aload 13
            monitorexit
        36: goto 39
      StackMap locals:
      StackMap stack: java.lang.Throwable
        37: aload 13
            monitorexit
        38: athrow
        39: .line 581
      StackMap locals:
      StackMap stack:
            aload 6 /* context */
            invokeinterface org.apache.catalina.Context.getPath:()Ljava/lang/String;
            ifnull 43
        40: .line 582
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            getstatic org.apache.catalina.startup.HostConfig.sm:Lorg/apache/tomcat/util/res/StringManager;
            ldc "hostConfig.deployDescriptor.path"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 6 /* context */
            invokeinterface org.apache.catalina.Context.getPath:()Ljava/lang/String;
            aastore
            dup
            iconst_1
        41: .line 583
            aload 2 /* contextXml */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
            aastore
        42: .line 582
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokeinterface org.apache.juli.logging.Log.warn:(Ljava/lang/Object;)V
        43: .line 586
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            invokeinterface org.apache.catalina.Host.getConfigClass:()Ljava/lang/String;
            invokestatic java.lang.Class.forName:(Ljava/lang/String;)Ljava/lang/Class;
            astore 13 /* clazz */
        start local 13 // java.lang.Class clazz
        44: .line 587
            aload 13 /* clazz */
            iconst_0
            anewarray java.lang.Class
            invokevirtual java.lang.Class.getConstructor:([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
            iconst_0
            anewarray java.lang.Object
            invokevirtual java.lang.reflect.Constructor.newInstance:([Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.apache.catalina.LifecycleListener
            astore 14 /* listener */
        start local 14 // org.apache.catalina.LifecycleListener listener
        45: .line 588
            aload 6 /* context */
            aload 14 /* listener */
            invokeinterface org.apache.catalina.Context.addLifecycleListener:(Lorg/apache/catalina/LifecycleListener;)V
        46: .line 590
            aload 6 /* context */
            aload 2 /* contextXml */
            invokevirtual java.io.File.toURI:()Ljava/net/URI;
            invokevirtual java.net.URI.toURL:()Ljava/net/URL;
            invokeinterface org.apache.catalina.Context.setConfigFile:(Ljava/net/URL;)V
        47: .line 591
            aload 6 /* context */
            aload 1 /* cn */
            invokevirtual org.apache.catalina.util.ContextName.getName:()Ljava/lang/String;
            invokeinterface org.apache.catalina.Context.setName:(Ljava/lang/String;)V
        48: .line 592
            aload 6 /* context */
            aload 1 /* cn */
            invokevirtual org.apache.catalina.util.ContextName.getPath:()Ljava/lang/String;
            invokeinterface org.apache.catalina.Context.setPath:(Ljava/lang/String;)V
        49: .line 593
            aload 6 /* context */
            aload 1 /* cn */
            invokevirtual org.apache.catalina.util.ContextName.getVersion:()Ljava/lang/String;
            invokeinterface org.apache.catalina.Context.setWebappVersion:(Ljava/lang/String;)V
        50: .line 595
            aload 6 /* context */
            invokeinterface org.apache.catalina.Context.getDocBase:()Ljava/lang/String;
            ifnull 83
        51: .line 596
            new java.io.File
            dup
            aload 6 /* context */
            invokeinterface org.apache.catalina.Context.getDocBase:()Ljava/lang/String;
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            astore 15 /* docBase */
        start local 15 // java.io.File docBase
        52: .line 597
            aload 15 /* docBase */
            invokevirtual java.io.File.isAbsolute:()Z
            ifne 54
        53: .line 598
            new java.io.File
            dup
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            invokeinterface org.apache.catalina.Host.getAppBaseFile:()Ljava/io/File;
            aload 6 /* context */
            invokeinterface org.apache.catalina.Context.getDocBase:()Ljava/lang/String;
            invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
            astore 15 /* docBase */
        54: .line 601
      StackMap locals: java.lang.Class org.apache.catalina.LifecycleListener java.io.File
      StackMap stack:
            aload 15 /* docBase */
            invokevirtual java.io.File.getCanonicalPath:()Ljava/lang/String;
        55: .line 602
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            invokeinterface org.apache.catalina.Host.getAppBaseFile:()Ljava/io/File;
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            getstatic java.io.File.separator:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        56: .line 601
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
        57: .line 602
            ifne 79
        58: .line 603
            iconst_1
            istore 8 /* isExternal */
        59: .line 604
            aload 3 /* deployedApp */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.redeployResources:Ljava/util/LinkedHashMap;
        60: .line 605
            aload 2 /* contextXml */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
        61: .line 606
            aload 2 /* contextXml */
            invokevirtual java.io.File.lastModified:()J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
        62: .line 604
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        63: .line 607
            aload 3 /* deployedApp */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.redeployResources:Ljava/util/LinkedHashMap;
            aload 15 /* docBase */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
        64: .line 608
            aload 15 /* docBase */
            invokevirtual java.io.File.lastModified:()J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
        65: .line 607
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        66: .line 609
            aload 15 /* docBase */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
            getstatic java.util.Locale.ENGLISH:Ljava/util/Locale;
            invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
            ldc ".war"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifeq 68
        67: .line 610
            iconst_1
            istore 7 /* isExternalWar */
        68: .line 613
      StackMap locals:
      StackMap stack:
            new java.io.File
            dup
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            invokeinterface org.apache.catalina.Host.getAppBaseFile:()Ljava/io/File;
            new java.lang.StringBuilder
            dup
            aload 1 /* cn */
            invokevirtual org.apache.catalina.util.ContextName.getBaseName:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ".war"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
            astore 16 /* war */
        start local 16 // java.io.File war
        69: .line 614
            aload 16 /* war */
            invokevirtual java.io.File.exists:()Z
            ifeq 73
        70: .line 615
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            getstatic org.apache.catalina.startup.HostConfig.sm:Lorg/apache/tomcat/util/res/StringManager;
            ldc "hostConfig.deployDescriptor.hiddenWar"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
        71: .line 616
            aload 2 /* contextXml */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
            aastore
            dup
            iconst_1
            aload 16 /* war */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
            aastore
        72: .line 615
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokeinterface org.apache.juli.logging.Log.warn:(Ljava/lang/Object;)V
        73: .line 618
      StackMap locals: java.io.File
      StackMap stack:
            new java.io.File
            dup
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            invokeinterface org.apache.catalina.Host.getAppBaseFile:()Ljava/io/File;
            aload 1 /* cn */
            invokevirtual org.apache.catalina.util.ContextName.getBaseName:()Ljava/lang/String;
            invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
            astore 17 /* dir */
        start local 17 // java.io.File dir
        74: .line 619
            aload 17 /* dir */
            invokevirtual java.io.File.exists:()Z
            ifeq 83
        75: .line 620
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            getstatic org.apache.catalina.startup.HostConfig.sm:Lorg/apache/tomcat/util/res/StringManager;
            ldc "hostConfig.deployDescriptor.hiddenDir"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
        76: .line 621
            aload 2 /* contextXml */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
            aastore
            dup
            iconst_1
            aload 17 /* dir */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
            aastore
        77: .line 620
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokeinterface org.apache.juli.logging.Log.warn:(Ljava/lang/Object;)V
        end local 17 // java.io.File dir
        end local 16 // java.io.File war
        78: .line 623
            goto 83
        79: .line 624
      StackMap locals:
      StackMap stack:
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            getstatic org.apache.catalina.startup.HostConfig.sm:Lorg/apache/tomcat/util/res/StringManager;
            ldc "hostConfig.deployDescriptor.localDocBaseSpecified"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
        80: .line 625
            aload 15 /* docBase */
            aastore
        81: .line 624
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokeinterface org.apache.juli.logging.Log.warn:(Ljava/lang/Object;)V
        82: .line 627
            aload 6 /* context */
            aconst_null
            invokeinterface org.apache.catalina.Context.setDocBase:(Ljava/lang/String;)V
        end local 15 // java.io.File docBase
        83: .line 631
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            aload 6 /* context */
            invokeinterface org.apache.catalina.Host.addChild:(Lorg/apache/catalina/Container;)V
        end local 14 // org.apache.catalina.LifecycleListener listener
        end local 13 // java.lang.Class clazz
        84: .line 632
            aload 12 /* fis */
            ifnull 188
            aload 12 /* fis */
            invokevirtual java.io.FileInputStream.close:()V
            goto 188
      StackMap locals: org.apache.catalina.startup.HostConfig org.apache.catalina.util.ContextName java.io.File org.apache.catalina.startup.HostConfig$DeployedApplication long org.apache.catalina.Context int int java.io.File java.lang.Throwable java.lang.Throwable java.io.FileInputStream
      StackMap stack: java.lang.Throwable
        85: astore 10
            aload 12 /* fis */
            ifnull 86
            aload 12 /* fis */
            invokevirtual java.io.FileInputStream.close:()V
        end local 12 // java.io.FileInputStream fis
      StackMap locals:
      StackMap stack:
        86: aload 10
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        87: astore 11
            aload 10
            ifnonnull 88
            aload 11
            astore 10
            goto 89
      StackMap locals:
      StackMap stack:
        88: aload 10
            aload 11
            if_acmpeq 89
            aload 10
            aload 11
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        89: aload 10
            athrow
      StackMap locals: org.apache.catalina.startup.HostConfig org.apache.catalina.util.ContextName java.io.File org.apache.catalina.startup.HostConfig$DeployedApplication long org.apache.catalina.Context int int java.io.File
      StackMap stack: java.lang.Throwable
        90: astore 10 /* t */
        start local 10 // java.lang.Throwable t
        91: .line 633
            aload 10 /* t */
            invokestatic org.apache.tomcat.util.ExceptionUtils.handleThrowable:(Ljava/lang/Throwable;)V
        92: .line 634
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            getstatic org.apache.catalina.startup.HostConfig.sm:Lorg/apache/tomcat/util/res/StringManager;
            ldc "hostConfig.deployDescriptor.error"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
        93: .line 635
            aload 2 /* contextXml */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
            aastore
        94: .line 634
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
        95: .line 635
            aload 10 /* t */
        96: .line 634
            invokeinterface org.apache.juli.logging.Log.error:(Ljava/lang/Object;Ljava/lang/Throwable;)V
        end local 10 // java.lang.Throwable t
        97: .line 640
            new java.io.File
            dup
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            invokeinterface org.apache.catalina.Host.getAppBaseFile:()Ljava/io/File;
            aload 1 /* cn */
            invokevirtual org.apache.catalina.util.ContextName.getBaseName:()Ljava/lang/String;
            invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
            astore 9 /* expandedDocBase */
        98: .line 641
            aload 6 /* context */
            invokeinterface org.apache.catalina.Context.getDocBase:()Ljava/lang/String;
            ifnull 103
        99: .line 642
            aload 6 /* context */
            invokeinterface org.apache.catalina.Context.getDocBase:()Ljava/lang/String;
            getstatic java.util.Locale.ENGLISH:Ljava/util/Locale;
            invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
            ldc ".war"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifne 103
       100: .line 644
            new java.io.File
            dup
            aload 6 /* context */
            invokeinterface org.apache.catalina.Context.getDocBase:()Ljava/lang/String;
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            astore 9 /* expandedDocBase */
       101: .line 645
            aload 9 /* expandedDocBase */
            invokevirtual java.io.File.isAbsolute:()Z
            ifne 103
       102: .line 647
            new java.io.File
            dup
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            invokeinterface org.apache.catalina.Host.getAppBaseFile:()Ljava/io/File;
            aload 6 /* context */
            invokeinterface org.apache.catalina.Context.getDocBase:()Ljava/lang/String;
            invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
            astore 9 /* expandedDocBase */
       103: .line 651
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.unpackWARs:Z
            istore 19 /* unpackWAR */
        start local 19 // boolean unpackWAR
       104: .line 652
            iload 19 /* unpackWAR */
            ifeq 106
            aload 6 /* context */
            instanceof org.apache.catalina.core.StandardContext
            ifeq 106
       105: .line 653
            aload 6 /* context */
            checkcast org.apache.catalina.core.StandardContext
            invokevirtual org.apache.catalina.core.StandardContext.getUnpackWAR:()Z
            istore 19 /* unpackWAR */
       106: .line 658
      StackMap locals: org.apache.catalina.startup.HostConfig org.apache.catalina.util.ContextName java.io.File org.apache.catalina.startup.HostConfig$DeployedApplication long org.apache.catalina.Context int int java.io.File top top top top top top top top top int
      StackMap stack:
            iload 7 /* isExternalWar */
            ifeq 115
       107: .line 659
            iload 19 /* unpackWAR */
            ifeq 113
       108: .line 660
            aload 3 /* deployedApp */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.redeployResources:Ljava/util/LinkedHashMap;
            aload 9 /* expandedDocBase */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
       109: .line 661
            aload 9 /* expandedDocBase */
            invokevirtual java.io.File.lastModified:()J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
       110: .line 660
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       111: .line 662
            aload 0 /* this */
            aload 3 /* deployedApp */
            aload 9 /* expandedDocBase */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
            aload 6 /* context */
            invokevirtual org.apache.catalina.startup.HostConfig.addWatchedResources:(Lorg/apache/catalina/startup/HostConfig$DeployedApplication;Ljava/lang/String;Lorg/apache/catalina/Context;)V
       112: .line 663
            goto 140
       113: .line 664
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 3 /* deployedApp */
            aconst_null
            aload 6 /* context */
            invokevirtual org.apache.catalina.startup.HostConfig.addWatchedResources:(Lorg/apache/catalina/startup/HostConfig$DeployedApplication;Ljava/lang/String;Lorg/apache/catalina/Context;)V
       114: .line 666
            goto 140
       115: .line 668
      StackMap locals:
      StackMap stack:
            iload 8 /* isExternal */
            ifne 126
       116: .line 669
            new java.io.File
            dup
            new java.lang.StringBuilder
            dup
            aload 9 /* expandedDocBase */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ".war"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            astore 20 /* warDocBase */
        start local 20 // java.io.File warDocBase
       117: .line 670
            aload 20 /* warDocBase */
            invokevirtual java.io.File.exists:()Z
            ifeq 122
       118: .line 671
            aload 3 /* deployedApp */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.redeployResources:Ljava/util/LinkedHashMap;
            aload 20 /* warDocBase */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
       119: .line 672
            aload 20 /* warDocBase */
            invokevirtual java.io.File.lastModified:()J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
       120: .line 671
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       121: .line 673
            goto 126
       122: .line 675
      StackMap locals: java.io.File
      StackMap stack:
            aload 3 /* deployedApp */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.redeployResources:Ljava/util/LinkedHashMap;
       123: .line 676
            aload 20 /* warDocBase */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
       124: .line 677
            lconst_0
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
       125: .line 675
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 20 // java.io.File warDocBase
       126: .line 680
      StackMap locals:
      StackMap stack:
            iload 19 /* unpackWAR */
            ifeq 134
       127: .line 681
            aload 3 /* deployedApp */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.redeployResources:Ljava/util/LinkedHashMap;
            aload 9 /* expandedDocBase */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
       128: .line 682
            aload 9 /* expandedDocBase */
            invokevirtual java.io.File.lastModified:()J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
       129: .line 681
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       130: .line 683
            aload 0 /* this */
            aload 3 /* deployedApp */
       131: .line 684
            aload 9 /* expandedDocBase */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
            aload 6 /* context */
       132: .line 683
            invokevirtual org.apache.catalina.startup.HostConfig.addWatchedResources:(Lorg/apache/catalina/startup/HostConfig$DeployedApplication;Ljava/lang/String;Lorg/apache/catalina/Context;)V
       133: .line 685
            goto 135
       134: .line 686
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 3 /* deployedApp */
            aconst_null
            aload 6 /* context */
            invokevirtual org.apache.catalina.startup.HostConfig.addWatchedResources:(Lorg/apache/catalina/startup/HostConfig$DeployedApplication;Ljava/lang/String;Lorg/apache/catalina/Context;)V
       135: .line 688
      StackMap locals:
      StackMap stack:
            iload 8 /* isExternal */
            ifne 140
       136: .line 691
            aload 3 /* deployedApp */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.redeployResources:Ljava/util/LinkedHashMap;
       137: .line 692
            aload 2 /* contextXml */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
       138: .line 693
            aload 2 /* contextXml */
            invokevirtual java.io.File.lastModified:()J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
       139: .line 691
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       140: .line 698
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 3 /* deployedApp */
            invokevirtual org.apache.catalina.startup.HostConfig.addGlobalRedeployResources:(Lorg/apache/catalina/startup/HostConfig$DeployedApplication;)V
        end local 19 // boolean unpackWAR
       141: goto 232
       142: .line 636
      StackMap locals: org.apache.catalina.startup.HostConfig org.apache.catalina.util.ContextName java.io.File org.apache.catalina.startup.HostConfig$DeployedApplication long org.apache.catalina.Context int int java.io.File
      StackMap stack: java.lang.Throwable
            astore 18
       143: .line 640
            new java.io.File
            dup
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            invokeinterface org.apache.catalina.Host.getAppBaseFile:()Ljava/io/File;
            aload 1 /* cn */
            invokevirtual org.apache.catalina.util.ContextName.getBaseName:()Ljava/lang/String;
            invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
            astore 9 /* expandedDocBase */
       144: .line 641
            aload 6 /* context */
            invokeinterface org.apache.catalina.Context.getDocBase:()Ljava/lang/String;
            ifnull 149
       145: .line 642
            aload 6 /* context */
            invokeinterface org.apache.catalina.Context.getDocBase:()Ljava/lang/String;
            getstatic java.util.Locale.ENGLISH:Ljava/util/Locale;
            invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
            ldc ".war"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifne 149
       146: .line 644
            new java.io.File
            dup
            aload 6 /* context */
            invokeinterface org.apache.catalina.Context.getDocBase:()Ljava/lang/String;
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            astore 9 /* expandedDocBase */
       147: .line 645
            aload 9 /* expandedDocBase */
            invokevirtual java.io.File.isAbsolute:()Z
            ifne 149
       148: .line 647
            new java.io.File
            dup
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            invokeinterface org.apache.catalina.Host.getAppBaseFile:()Ljava/io/File;
            aload 6 /* context */
            invokeinterface org.apache.catalina.Context.getDocBase:()Ljava/lang/String;
            invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
            astore 9 /* expandedDocBase */
       149: .line 651
      StackMap locals: org.apache.catalina.startup.HostConfig org.apache.catalina.util.ContextName java.io.File org.apache.catalina.startup.HostConfig$DeployedApplication long org.apache.catalina.Context int int java.io.File top top top top top top top top java.lang.Throwable
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.unpackWARs:Z
            istore 19 /* unpackWAR */
        start local 19 // boolean unpackWAR
       150: .line 652
            iload 19 /* unpackWAR */
            ifeq 152
            aload 6 /* context */
            instanceof org.apache.catalina.core.StandardContext
            ifeq 152
       151: .line 653
            aload 6 /* context */
            checkcast org.apache.catalina.core.StandardContext
            invokevirtual org.apache.catalina.core.StandardContext.getUnpackWAR:()Z
            istore 19 /* unpackWAR */
       152: .line 658
      StackMap locals: int
      StackMap stack:
            iload 7 /* isExternalWar */
            ifeq 161
       153: .line 659
            iload 19 /* unpackWAR */
            ifeq 159
       154: .line 660
            aload 3 /* deployedApp */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.redeployResources:Ljava/util/LinkedHashMap;
            aload 9 /* expandedDocBase */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
       155: .line 661
            aload 9 /* expandedDocBase */
            invokevirtual java.io.File.lastModified:()J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
       156: .line 660
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       157: .line 662
            aload 0 /* this */
            aload 3 /* deployedApp */
            aload 9 /* expandedDocBase */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
            aload 6 /* context */
            invokevirtual org.apache.catalina.startup.HostConfig.addWatchedResources:(Lorg/apache/catalina/startup/HostConfig$DeployedApplication;Ljava/lang/String;Lorg/apache/catalina/Context;)V
       158: .line 663
            goto 186
       159: .line 664
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 3 /* deployedApp */
            aconst_null
            aload 6 /* context */
            invokevirtual org.apache.catalina.startup.HostConfig.addWatchedResources:(Lorg/apache/catalina/startup/HostConfig$DeployedApplication;Ljava/lang/String;Lorg/apache/catalina/Context;)V
       160: .line 666
            goto 186
       161: .line 668
      StackMap locals:
      StackMap stack:
            iload 8 /* isExternal */
            ifne 172
       162: .line 669
            new java.io.File
            dup
            new java.lang.StringBuilder
            dup
            aload 9 /* expandedDocBase */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ".war"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            astore 20 /* warDocBase */
        start local 20 // java.io.File warDocBase
       163: .line 670
            aload 20 /* warDocBase */
            invokevirtual java.io.File.exists:()Z
            ifeq 168
       164: .line 671
            aload 3 /* deployedApp */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.redeployResources:Ljava/util/LinkedHashMap;
            aload 20 /* warDocBase */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
       165: .line 672
            aload 20 /* warDocBase */
            invokevirtual java.io.File.lastModified:()J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
       166: .line 671
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       167: .line 673
            goto 172
       168: .line 675
      StackMap locals: java.io.File
      StackMap stack:
            aload 3 /* deployedApp */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.redeployResources:Ljava/util/LinkedHashMap;
       169: .line 676
            aload 20 /* warDocBase */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
       170: .line 677
            lconst_0
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
       171: .line 675
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 20 // java.io.File warDocBase
       172: .line 680
      StackMap locals:
      StackMap stack:
            iload 19 /* unpackWAR */
            ifeq 180
       173: .line 681
            aload 3 /* deployedApp */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.redeployResources:Ljava/util/LinkedHashMap;
            aload 9 /* expandedDocBase */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
       174: .line 682
            aload 9 /* expandedDocBase */
            invokevirtual java.io.File.lastModified:()J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
       175: .line 681
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       176: .line 683
            aload 0 /* this */
            aload 3 /* deployedApp */
       177: .line 684
            aload 9 /* expandedDocBase */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
            aload 6 /* context */
       178: .line 683
            invokevirtual org.apache.catalina.startup.HostConfig.addWatchedResources:(Lorg/apache/catalina/startup/HostConfig$DeployedApplication;Ljava/lang/String;Lorg/apache/catalina/Context;)V
       179: .line 685
            goto 181
       180: .line 686
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 3 /* deployedApp */
            aconst_null
            aload 6 /* context */
            invokevirtual org.apache.catalina.startup.HostConfig.addWatchedResources:(Lorg/apache/catalina/startup/HostConfig$DeployedApplication;Ljava/lang/String;Lorg/apache/catalina/Context;)V
       181: .line 688
      StackMap locals:
      StackMap stack:
            iload 8 /* isExternal */
            ifne 186
       182: .line 691
            aload 3 /* deployedApp */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.redeployResources:Ljava/util/LinkedHashMap;
       183: .line 692
            aload 2 /* contextXml */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
       184: .line 693
            aload 2 /* contextXml */
            invokevirtual java.io.File.lastModified:()J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
       185: .line 691
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       186: .line 698
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 3 /* deployedApp */
            invokevirtual org.apache.catalina.startup.HostConfig.addGlobalRedeployResources:(Lorg/apache/catalina/startup/HostConfig$DeployedApplication;)V
        end local 19 // boolean unpackWAR
       187: .line 699
            aload 18
            athrow
       188: .line 640
      StackMap locals: org.apache.catalina.startup.HostConfig org.apache.catalina.util.ContextName java.io.File org.apache.catalina.startup.HostConfig$DeployedApplication long org.apache.catalina.Context int int java.io.File
      StackMap stack:
            new java.io.File
            dup
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            invokeinterface org.apache.catalina.Host.getAppBaseFile:()Ljava/io/File;
            aload 1 /* cn */
            invokevirtual org.apache.catalina.util.ContextName.getBaseName:()Ljava/lang/String;
            invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
            astore 9 /* expandedDocBase */
       189: .line 641
            aload 6 /* context */
            invokeinterface org.apache.catalina.Context.getDocBase:()Ljava/lang/String;
            ifnull 194
       190: .line 642
            aload 6 /* context */
            invokeinterface org.apache.catalina.Context.getDocBase:()Ljava/lang/String;
            getstatic java.util.Locale.ENGLISH:Ljava/util/Locale;
            invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
            ldc ".war"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifne 194
       191: .line 644
            new java.io.File
            dup
            aload 6 /* context */
            invokeinterface org.apache.catalina.Context.getDocBase:()Ljava/lang/String;
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            astore 9 /* expandedDocBase */
       192: .line 645
            aload 9 /* expandedDocBase */
            invokevirtual java.io.File.isAbsolute:()Z
            ifne 194
       193: .line 647
            new java.io.File
            dup
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            invokeinterface org.apache.catalina.Host.getAppBaseFile:()Ljava/io/File;
            aload 6 /* context */
            invokeinterface org.apache.catalina.Context.getDocBase:()Ljava/lang/String;
            invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
            astore 9 /* expandedDocBase */
       194: .line 651
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.unpackWARs:Z
            istore 19 /* unpackWAR */
        start local 19 // boolean unpackWAR
       195: .line 652
            iload 19 /* unpackWAR */
            ifeq 197
            aload 6 /* context */
            instanceof org.apache.catalina.core.StandardContext
            ifeq 197
       196: .line 653
            aload 6 /* context */
            checkcast org.apache.catalina.core.StandardContext
            invokevirtual org.apache.catalina.core.StandardContext.getUnpackWAR:()Z
            istore 19 /* unpackWAR */
       197: .line 658
      StackMap locals: org.apache.catalina.startup.HostConfig org.apache.catalina.util.ContextName java.io.File org.apache.catalina.startup.HostConfig$DeployedApplication long org.apache.catalina.Context int int java.io.File top top top top top top top top top int
      StackMap stack:
            iload 7 /* isExternalWar */
            ifeq 206
       198: .line 659
            iload 19 /* unpackWAR */
            ifeq 204
       199: .line 660
            aload 3 /* deployedApp */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.redeployResources:Ljava/util/LinkedHashMap;
            aload 9 /* expandedDocBase */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
       200: .line 661
            aload 9 /* expandedDocBase */
            invokevirtual java.io.File.lastModified:()J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
       201: .line 660
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       202: .line 662
            aload 0 /* this */
            aload 3 /* deployedApp */
            aload 9 /* expandedDocBase */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
            aload 6 /* context */
            invokevirtual org.apache.catalina.startup.HostConfig.addWatchedResources:(Lorg/apache/catalina/startup/HostConfig$DeployedApplication;Ljava/lang/String;Lorg/apache/catalina/Context;)V
       203: .line 663
            goto 231
       204: .line 664
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 3 /* deployedApp */
            aconst_null
            aload 6 /* context */
            invokevirtual org.apache.catalina.startup.HostConfig.addWatchedResources:(Lorg/apache/catalina/startup/HostConfig$DeployedApplication;Ljava/lang/String;Lorg/apache/catalina/Context;)V
       205: .line 666
            goto 231
       206: .line 668
      StackMap locals:
      StackMap stack:
            iload 8 /* isExternal */
            ifne 217
       207: .line 669
            new java.io.File
            dup
            new java.lang.StringBuilder
            dup
            aload 9 /* expandedDocBase */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ".war"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            astore 20 /* warDocBase */
        start local 20 // java.io.File warDocBase
       208: .line 670
            aload 20 /* warDocBase */
            invokevirtual java.io.File.exists:()Z
            ifeq 213
       209: .line 671
            aload 3 /* deployedApp */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.redeployResources:Ljava/util/LinkedHashMap;
            aload 20 /* warDocBase */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
       210: .line 672
            aload 20 /* warDocBase */
            invokevirtual java.io.File.lastModified:()J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
       211: .line 671
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       212: .line 673
            goto 217
       213: .line 675
      StackMap locals: java.io.File
      StackMap stack:
            aload 3 /* deployedApp */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.redeployResources:Ljava/util/LinkedHashMap;
       214: .line 676
            aload 20 /* warDocBase */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
       215: .line 677
            lconst_0
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
       216: .line 675
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 20 // java.io.File warDocBase
       217: .line 680
      StackMap locals:
      StackMap stack:
            iload 19 /* unpackWAR */
            ifeq 225
       218: .line 681
            aload 3 /* deployedApp */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.redeployResources:Ljava/util/LinkedHashMap;
            aload 9 /* expandedDocBase */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
       219: .line 682
            aload 9 /* expandedDocBase */
            invokevirtual java.io.File.lastModified:()J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
       220: .line 681
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       221: .line 683
            aload 0 /* this */
            aload 3 /* deployedApp */
       222: .line 684
            aload 9 /* expandedDocBase */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
            aload 6 /* context */
       223: .line 683
            invokevirtual org.apache.catalina.startup.HostConfig.addWatchedResources:(Lorg/apache/catalina/startup/HostConfig$DeployedApplication;Ljava/lang/String;Lorg/apache/catalina/Context;)V
       224: .line 685
            goto 226
       225: .line 686
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 3 /* deployedApp */
            aconst_null
            aload 6 /* context */
            invokevirtual org.apache.catalina.startup.HostConfig.addWatchedResources:(Lorg/apache/catalina/startup/HostConfig$DeployedApplication;Ljava/lang/String;Lorg/apache/catalina/Context;)V
       226: .line 688
      StackMap locals:
      StackMap stack:
            iload 8 /* isExternal */
            ifne 231
       227: .line 691
            aload 3 /* deployedApp */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.redeployResources:Ljava/util/LinkedHashMap;
       228: .line 692
            aload 2 /* contextXml */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
       229: .line 693
            aload 2 /* contextXml */
            invokevirtual java.io.File.lastModified:()J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
       230: .line 691
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       231: .line 698
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 3 /* deployedApp */
            invokevirtual org.apache.catalina.startup.HostConfig.addGlobalRedeployResources:(Lorg/apache/catalina/startup/HostConfig$DeployedApplication;)V
        end local 19 // boolean unpackWAR
       232: .line 701
      StackMap locals: org.apache.catalina.startup.HostConfig org.apache.catalina.util.ContextName java.io.File org.apache.catalina.startup.HostConfig$DeployedApplication long org.apache.catalina.Context int int java.io.File
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            aload 6 /* context */
            invokeinterface org.apache.catalina.Context.getName:()Ljava/lang/String;
            invokeinterface org.apache.catalina.Host.findChild:(Ljava/lang/String;)Lorg/apache/catalina/Container;
            ifnull 234
       233: .line 702
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.deployed:Ljava/util/Map;
            aload 6 /* context */
            invokeinterface org.apache.catalina.Context.getName:()Ljava/lang/String;
            aload 3 /* deployedApp */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       234: .line 705
      StackMap locals:
      StackMap stack:
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            invokeinterface org.apache.juli.logging.Log.isInfoEnabled:()Z
            ifeq 238
       235: .line 706
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            getstatic org.apache.catalina.startup.HostConfig.sm:Lorg/apache/tomcat/util/res/StringManager;
            ldc "hostConfig.deployDescriptor.finished"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
       236: .line 707
            aload 2 /* contextXml */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
            aastore
            dup
            iconst_1
            invokestatic java.lang.System.currentTimeMillis:()J
            lload 4 /* startTime */
            lsub
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
            aastore
       237: .line 706
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokeinterface org.apache.juli.logging.Log.info:(Ljava/lang/Object;)V
       238: .line 709
      StackMap locals:
      StackMap stack:
            return
        end local 9 // java.io.File expandedDocBase
        end local 8 // boolean isExternal
        end local 7 // boolean isExternalWar
        end local 6 // org.apache.catalina.Context context
        end local 4 // long startTime
        end local 3 // org.apache.catalina.startup.HostConfig$DeployedApplication deployedApp
        end local 2 // java.io.File contextXml
        end local 1 // org.apache.catalina.util.ContextName cn
        end local 0 // org.apache.catalina.startup.HostConfig this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0  239     0             this  Lorg/apache/catalina/startup/HostConfig;
            0  239     1               cn  Lorg/apache/catalina/util/ContextName;
            0  239     2       contextXml  Ljava/io/File;
            2  239     3      deployedApp  Lorg/apache/catalina/startup/HostConfig$DeployedApplication;
            3  239     4        startTime  J
            9  239     6          context  Lorg/apache/catalina/Context;
           10  239     7    isExternalWar  Z
           11  239     8       isExternal  Z
           12  239     9  expandedDocBase  Ljava/io/File;
           14   86    12              fis  Ljava/io/FileInputStream;
           18   24    14                e  Ljava/lang/Exception;
           44   84    13            clazz  Ljava/lang/Class<*>;
           45   84    14         listener  Lorg/apache/catalina/LifecycleListener;
           52   83    15          docBase  Ljava/io/File;
           69   78    16              war  Ljava/io/File;
           74   78    17              dir  Ljava/io/File;
           91   97    10                t  Ljava/lang/Throwable;
          104  141    19        unpackWAR  Z
          150  187    19        unpackWAR  Z
          195  232    19        unpackWAR  Z
          117  126    20       warDocBase  Ljava/io/File;
          163  172    20       warDocBase  Ljava/io/File;
          208  217    20       warDocBase  Ljava/io/File;
      Exception table:
        from    to  target  type
          15    16      17  Class java.lang.Exception
          15    24      27  any
          15    36      37  any
          37    38      37  any
          14    84      85  any
          13    87      87  any
          12    90      90  Class java.lang.Throwable
          12    97     142  any
    MethodParameters:
            Name  Flags
      cn          
      contextXml  

  protected void deployWARs(java.io.File, java.lang.String[]);
    descriptor: (Ljava/io/File;[Ljava/lang/String;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=7, locals=14, args_size=3
        start local 0 // org.apache.catalina.startup.HostConfig this
        start local 1 // java.io.File appBase
        start local 2 // java.lang.String[] files
         0: .line 719
            aload 2 /* files */
            ifnonnull 2
         1: .line 720
            return
         2: .line 722
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            invokeinterface org.apache.catalina.Host.getStartStopExecutor:()Ljava/util/concurrent/ExecutorService;
            astore 3 /* es */
        start local 3 // java.util.concurrent.ExecutorService es
         3: .line 723
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 4 /* results */
        start local 4 // java.util.List results
         4: .line 725
            aload 2 /* files */
            dup
            astore 8
            arraylength
            istore 7
            iconst_0
            istore 6
            goto 42
      StackMap locals: org.apache.catalina.startup.HostConfig java.io.File java.lang.String[] java.util.concurrent.ExecutorService java.util.List top int int java.lang.String[]
      StackMap stack:
         5: aload 8
            iload 6
            aaload
            astore 5 /* file */
        start local 5 // java.lang.String file
         6: .line 727
            aload 5 /* file */
            ldc "META-INF"
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 8
         7: .line 728
            goto 41
         8: .line 729
      StackMap locals: org.apache.catalina.startup.HostConfig java.io.File java.lang.String[] java.util.concurrent.ExecutorService java.util.List java.lang.String int int java.lang.String[]
      StackMap stack:
            aload 5 /* file */
            ldc "WEB-INF"
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 10
         9: .line 730
            goto 41
        10: .line 731
      StackMap locals:
      StackMap stack:
            new java.io.File
            dup
            aload 1 /* appBase */
            aload 5 /* file */
            invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
            astore 9 /* war */
        start local 9 // java.io.File war
        11: .line 732
            aload 5 /* file */
            getstatic java.util.Locale.ENGLISH:Ljava/util/Locale;
            invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
            ldc ".war"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifeq 41
        12: .line 733
            aload 9 /* war */
            invokevirtual java.io.File.isFile:()Z
            ifeq 41
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.invalidWars:Ljava/util/Set;
            aload 5 /* file */
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 41
        13: .line 735
            new org.apache.catalina.util.ContextName
            dup
            aload 5 /* file */
            iconst_1
            invokespecial org.apache.catalina.util.ContextName.<init>:(Ljava/lang/String;Z)V
            astore 10 /* cn */
        start local 10 // org.apache.catalina.util.ContextName cn
        14: .line 737
            aload 0 /* this */
            aload 10 /* cn */
            invokevirtual org.apache.catalina.util.ContextName.getName:()Ljava/lang/String;
            invokevirtual org.apache.catalina.startup.HostConfig.isServiced:(Ljava/lang/String;)Z
            ifeq 16
        15: .line 738
            goto 41
        16: .line 740
      StackMap locals: java.io.File org.apache.catalina.util.ContextName
      StackMap stack:
            aload 0 /* this */
            aload 10 /* cn */
            invokevirtual org.apache.catalina.util.ContextName.getName:()Ljava/lang/String;
            invokevirtual org.apache.catalina.startup.HostConfig.deploymentExists:(Ljava/lang/String;)Z
            ifeq 34
        17: .line 741
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.deployed:Ljava/util/Map;
            aload 10 /* cn */
            invokevirtual org.apache.catalina.util.ContextName.getName:()Ljava/lang/String;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.apache.catalina.startup.HostConfig$DeployedApplication
            astore 11 /* app */
        start local 11 // org.apache.catalina.startup.HostConfig$DeployedApplication app
        18: .line 742
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.unpackWARs:Z
            istore 12 /* unpackWAR */
        start local 12 // boolean unpackWAR
        19: .line 743
            iload 12 /* unpackWAR */
            ifeq 21
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            aload 10 /* cn */
            invokevirtual org.apache.catalina.util.ContextName.getName:()Ljava/lang/String;
            invokeinterface org.apache.catalina.Host.findChild:(Ljava/lang/String;)Lorg/apache/catalina/Container;
            instanceof org.apache.catalina.core.StandardContext
            ifeq 21
        20: .line 744
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            aload 10 /* cn */
            invokevirtual org.apache.catalina.util.ContextName.getName:()Ljava/lang/String;
            invokeinterface org.apache.catalina.Host.findChild:(Ljava/lang/String;)Lorg/apache/catalina/Container;
            checkcast org.apache.catalina.core.StandardContext
            invokevirtual org.apache.catalina.core.StandardContext.getUnpackWAR:()Z
            istore 12 /* unpackWAR */
        21: .line 746
      StackMap locals: org.apache.catalina.startup.HostConfig$DeployedApplication int
      StackMap stack:
            iload 12 /* unpackWAR */
            ifne 41
            aload 11 /* app */
            ifnull 41
        22: .line 749
            new java.io.File
            dup
            aload 1 /* appBase */
            aload 10 /* cn */
            invokevirtual org.apache.catalina.util.ContextName.getBaseName:()Ljava/lang/String;
            invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
            astore 13 /* dir */
        start local 13 // java.io.File dir
        23: .line 750
            aload 13 /* dir */
            invokevirtual java.io.File.exists:()Z
            ifeq 32
        24: .line 751
            aload 11 /* app */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.loggedDirWarning:Z
            ifne 41
        25: .line 752
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            getstatic org.apache.catalina.startup.HostConfig.sm:Lorg/apache/tomcat/util/res/StringManager;
        26: .line 753
            ldc "hostConfig.deployWar.hiddenDir"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
        27: .line 754
            aload 13 /* dir */
            invokevirtual java.io.File.getAbsoluteFile:()Ljava/io/File;
            aastore
            dup
            iconst_1
        28: .line 755
            aload 9 /* war */
            invokevirtual java.io.File.getAbsoluteFile:()Ljava/io/File;
            aastore
        29: .line 752
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokeinterface org.apache.juli.logging.Log.warn:(Ljava/lang/Object;)V
        30: .line 756
            aload 11 /* app */
            iconst_1
            putfield org.apache.catalina.startup.HostConfig$DeployedApplication.loggedDirWarning:Z
        31: .line 758
            goto 41
        32: .line 759
      StackMap locals: java.io.File
      StackMap stack:
            aload 11 /* app */
            iconst_0
            putfield org.apache.catalina.startup.HostConfig$DeployedApplication.loggedDirWarning:Z
        end local 13 // java.io.File dir
        33: .line 762
            goto 41
        end local 12 // boolean unpackWAR
        end local 11 // org.apache.catalina.startup.HostConfig$DeployedApplication app
        34: .line 766
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* appBase */
            aload 10 /* cn */
            invokevirtual org.apache.catalina.util.ContextName.getBaseName:()Ljava/lang/String;
            invokevirtual org.apache.catalina.startup.HostConfig.validateContextPath:(Ljava/io/File;Ljava/lang/String;)Z
            ifne 40
        35: .line 767
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            getstatic org.apache.catalina.startup.HostConfig.sm:Lorg/apache/tomcat/util/res/StringManager;
        36: .line 768
            ldc "hostConfig.illegalWarName"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 5 /* file */
            aastore
        37: .line 767
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokeinterface org.apache.juli.logging.Log.error:(Ljava/lang/Object;)V
        38: .line 769
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.invalidWars:Ljava/util/Set;
            aload 5 /* file */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        39: .line 770
            goto 41
        40: .line 773
      StackMap locals:
      StackMap stack:
            aload 4 /* results */
            aload 3 /* es */
            new org.apache.catalina.startup.HostConfig$DeployWar
            dup
            aload 0 /* this */
            aload 10 /* cn */
            aload 9 /* war */
            invokespecial org.apache.catalina.startup.HostConfig$DeployWar.<init>:(Lorg/apache/catalina/startup/HostConfig;Lorg/apache/catalina/util/ContextName;Ljava/io/File;)V
            invokeinterface java.util.concurrent.ExecutorService.submit:(Ljava/lang/Runnable;)Ljava/util/concurrent/Future;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 10 // org.apache.catalina.util.ContextName cn
        end local 9 // java.io.File war
        end local 5 // java.lang.String file
        41: .line 725
      StackMap locals: org.apache.catalina.startup.HostConfig java.io.File java.lang.String[] java.util.concurrent.ExecutorService java.util.List top int int java.lang.String[]
      StackMap stack:
            iinc 6 1
      StackMap locals:
      StackMap stack:
        42: iload 6
            iload 7
            if_icmplt 5
        43: .line 777
            aload 4 /* results */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 6
            goto 53
      StackMap locals: org.apache.catalina.startup.HostConfig java.io.File java.lang.String[] java.util.concurrent.ExecutorService java.util.List top java.util.Iterator
      StackMap stack:
        44: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.util.concurrent.Future
            astore 5 /* result */
        start local 5 // java.util.concurrent.Future result
        45: .line 779
            aload 5 /* result */
            invokeinterface java.util.concurrent.Future.get:()Ljava/lang/Object;
            pop
        46: .line 780
            goto 53
      StackMap locals: org.apache.catalina.startup.HostConfig java.io.File java.lang.String[] java.util.concurrent.ExecutorService java.util.List java.util.concurrent.Future java.util.Iterator
      StackMap stack: java.lang.Exception
        47: astore 7 /* e */
        start local 7 // java.lang.Exception e
        48: .line 781
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            getstatic org.apache.catalina.startup.HostConfig.sm:Lorg/apache/tomcat/util/res/StringManager;
        49: .line 782
            ldc "hostConfig.deployWar.threaded.error"
        50: .line 781
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;)Ljava/lang/String;
        51: .line 782
            aload 7 /* e */
        52: .line 781
            invokeinterface org.apache.juli.logging.Log.error:(Ljava/lang/Object;Ljava/lang/Throwable;)V
        end local 7 // java.lang.Exception e
        end local 5 // java.util.concurrent.Future result
        53: .line 777
      StackMap locals: org.apache.catalina.startup.HostConfig java.io.File java.lang.String[] java.util.concurrent.ExecutorService java.util.List top java.util.Iterator
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 44
        54: .line 785
            return
        end local 4 // java.util.List results
        end local 3 // java.util.concurrent.ExecutorService es
        end local 2 // java.lang.String[] files
        end local 1 // java.io.File appBase
        end local 0 // org.apache.catalina.startup.HostConfig this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   55     0       this  Lorg/apache/catalina/startup/HostConfig;
            0   55     1    appBase  Ljava/io/File;
            0   55     2      files  [Ljava/lang/String;
            3   55     3         es  Ljava/util/concurrent/ExecutorService;
            4   55     4    results  Ljava/util/List<Ljava/util/concurrent/Future<*>;>;
            6   41     5       file  Ljava/lang/String;
           11   41     9        war  Ljava/io/File;
           14   41    10         cn  Lorg/apache/catalina/util/ContextName;
           18   34    11        app  Lorg/apache/catalina/startup/HostConfig$DeployedApplication;
           19   34    12  unpackWAR  Z
           23   33    13        dir  Ljava/io/File;
           45   53     5     result  Ljava/util/concurrent/Future<*>;
           48   53     7          e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
          45    46      47  Class java.lang.Exception
    MethodParameters:
         Name  Flags
      appBase  
      files    

  private boolean validateContextPath(java.io.File, java.lang.String);
    descriptor: (Ljava/io/File;Ljava/lang/String;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=6, args_size=3
        start local 0 // org.apache.catalina.startup.HostConfig this
        start local 1 // java.io.File appBase
        start local 2 // java.lang.String contextPath
         0: .line 793
            aconst_null
            astore 4 /* canonicalDocBase */
        start local 4 // java.lang.String canonicalDocBase
         1: .line 796
            aload 1 /* appBase */
            invokevirtual java.io.File.getCanonicalPath:()Ljava/lang/String;
            astore 5 /* canonicalAppBase */
        start local 5 // java.lang.String canonicalAppBase
         2: .line 797
            new java.lang.StringBuilder
            dup
            aload 5 /* canonicalAppBase */
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            astore 3 /* docBase */
        start local 3 // java.lang.StringBuilder docBase
         3: .line 798
            aload 5 /* canonicalAppBase */
            getstatic java.io.File.separator:Ljava/lang/String;
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifeq 8
         4: .line 799
            aload 3 /* docBase */
            aload 2 /* contextPath */
            iconst_1
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
         5: .line 800
            bipush 47
            getstatic java.io.File.separatorChar:C
         6: .line 799
            invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         7: .line 801
            goto 9
         8: .line 802
      StackMap locals: java.lang.StringBuilder java.lang.String java.lang.String
      StackMap stack:
            aload 3 /* docBase */
            aload 2 /* contextPath */
            bipush 47
            getstatic java.io.File.separatorChar:C
            invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         9: .line 808
      StackMap locals:
      StackMap stack:
            new java.io.File
            dup
            aload 3 /* docBase */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            invokevirtual java.io.File.getCanonicalPath:()Ljava/lang/String;
        10: .line 807
            astore 4 /* canonicalDocBase */
        11: .line 812
            aload 4 /* canonicalDocBase */
            getstatic java.io.File.separator:Ljava/lang/String;
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifeq 16
        12: .line 813
            aload 3 /* docBase */
            getstatic java.io.File.separator:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        end local 5 // java.lang.String canonicalAppBase
        13: .line 815
            goto 16
        end local 3 // java.lang.StringBuilder docBase
      StackMap locals: org.apache.catalina.startup.HostConfig java.io.File java.lang.String top java.lang.String
      StackMap stack: java.io.IOException
        14: pop
        15: .line 816
            iconst_0
            ireturn
        start local 3 // java.lang.StringBuilder docBase
        16: .line 821
      StackMap locals: org.apache.catalina.startup.HostConfig java.io.File java.lang.String java.lang.StringBuilder java.lang.String
      StackMap stack:
            aload 4 /* canonicalDocBase */
            aload 3 /* docBase */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ireturn
        end local 4 // java.lang.String canonicalDocBase
        end local 3 // java.lang.StringBuilder docBase
        end local 2 // java.lang.String contextPath
        end local 1 // java.io.File appBase
        end local 0 // org.apache.catalina.startup.HostConfig this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   17     0              this  Lorg/apache/catalina/startup/HostConfig;
            0   17     1           appBase  Ljava/io/File;
            0   17     2       contextPath  Ljava/lang/String;
            3   14     3           docBase  Ljava/lang/StringBuilder;
           16   17     3           docBase  Ljava/lang/StringBuilder;
            1   17     4  canonicalDocBase  Ljava/lang/String;
            2   13     5  canonicalAppBase  Ljava/lang/String;
      Exception table:
        from    to  target  type
           1    13      14  Class java.io.IOException
    MethodParameters:
             Name  Flags
      appBase      
      contextPath  

  protected void deployWAR(org.apache.catalina.util.ContextName, java.io.File);
    descriptor: (Lorg/apache/catalina/util/ContextName;Ljava/io/File;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=12, locals=19, args_size=3
        start local 0 // org.apache.catalina.startup.HostConfig this
        start local 1 // org.apache.catalina.util.ContextName cn
        start local 2 // java.io.File war
         0: .line 831
            new java.io.File
            dup
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            invokeinterface org.apache.catalina.Host.getAppBaseFile:()Ljava/io/File;
         1: .line 832
            new java.lang.StringBuilder
            dup
            aload 1 /* cn */
            invokevirtual org.apache.catalina.util.ContextName.getBaseName:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "/"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "META-INF/context.xml"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         2: .line 831
            invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
            astore 3 /* xml */
        start local 3 // java.io.File xml
         3: .line 834
            new java.io.File
            dup
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            invokeinterface org.apache.catalina.Host.getAppBaseFile:()Ljava/io/File;
            new java.lang.StringBuilder
            dup
            aload 1 /* cn */
            invokevirtual org.apache.catalina.util.ContextName.getBaseName:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "/META-INF/war-tracker"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
            astore 4 /* warTracker */
        start local 4 // java.io.File warTracker
         4: .line 836
            iconst_0
            istore 5 /* xmlInWar */
        start local 5 // boolean xmlInWar
         5: .line 837
            aconst_null
            astore 6
            aconst_null
            astore 7
         6: new java.util.jar.JarFile
            dup
            aload 2 /* war */
            invokespecial java.util.jar.JarFile.<init>:(Ljava/io/File;)V
            astore 8 /* jar */
        start local 8 // java.util.jar.JarFile jar
         7: .line 838
            aload 8 /* jar */
            ldc "META-INF/context.xml"
            invokevirtual java.util.jar.JarFile.getJarEntry:(Ljava/lang/String;)Ljava/util/jar/JarEntry;
            astore 9 /* entry */
        start local 9 // java.util.jar.JarEntry entry
         8: .line 839
            aload 9 /* entry */
            ifnull 10
         9: .line 840
            iconst_1
            istore 5 /* xmlInWar */
        end local 9 // java.util.jar.JarEntry entry
        10: .line 842
      StackMap locals: org.apache.catalina.startup.HostConfig org.apache.catalina.util.ContextName java.io.File java.io.File java.io.File int java.lang.Throwable java.lang.Throwable java.util.jar.JarFile
      StackMap stack:
            aload 8 /* jar */
            ifnull 17
            aload 8 /* jar */
            invokevirtual java.util.jar.JarFile.close:()V
            goto 17
      StackMap locals:
      StackMap stack: java.lang.Throwable
        11: astore 6
            aload 8 /* jar */
            ifnull 12
            aload 8 /* jar */
            invokevirtual java.util.jar.JarFile.close:()V
        end local 8 // java.util.jar.JarFile jar
      StackMap locals:
      StackMap stack:
        12: aload 6
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        13: astore 7
            aload 6
            ifnonnull 14
            aload 7
            astore 6
            goto 15
      StackMap locals:
      StackMap stack:
        14: aload 6
            aload 7
            if_acmpeq 15
            aload 6
            aload 7
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        15: aload 6
            athrow
      StackMap locals: org.apache.catalina.startup.HostConfig org.apache.catalina.util.ContextName java.io.File java.io.File java.io.File int
      StackMap stack: java.io.IOException
        16: pop
        17: .line 849
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 6 /* useXml */
        start local 6 // boolean useXml
        18: .line 852
            aload 3 /* xml */
            invokevirtual java.io.File.exists:()Z
            ifeq 21
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.unpackWARs:Z
            ifeq 21
        19: .line 853
            aload 4 /* warTracker */
            invokevirtual java.io.File.exists:()Z
            ifeq 20
            aload 4 /* warTracker */
            invokevirtual java.io.File.lastModified:()J
            aload 2 /* war */
            invokevirtual java.io.File.lastModified:()J
            lcmp
            ifne 21
        20: .line 854
      StackMap locals: int
      StackMap stack:
            iconst_1
            istore 6 /* useXml */
        21: .line 857
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 7 /* context */
        start local 7 // org.apache.catalina.Context context
        22: .line 858
            aload 0 /* this */
            aload 2 /* war */
            aload 1 /* cn */
            invokevirtual org.apache.catalina.startup.HostConfig.isDeployThisXML:(Ljava/io/File;Lorg/apache/catalina/util/ContextName;)Z
            istore 8 /* deployThisXML */
        start local 8 // boolean deployThisXML
        23: .line 861
            iload 8 /* deployThisXML */
            ifeq 51
            iload 6 /* useXml */
            ifeq 51
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.copyXML:Z
            ifne 51
        24: .line 862
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.digesterLock:Ljava/lang/Object;
            dup
            astore 9
            monitorenter
        25: .line 864
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.digester:Lorg/apache/tomcat/util/digester/Digester;
            aload 3 /* xml */
            invokevirtual org.apache.tomcat.util.digester.Digester.parse:(Ljava/io/File;)Ljava/lang/Object;
            checkcast org.apache.catalina.Context
            astore 7 /* context */
        26: .line 865
            goto 42
      StackMap locals: org.apache.catalina.startup.HostConfig org.apache.catalina.util.ContextName java.io.File java.io.File java.io.File int int org.apache.catalina.Context int java.lang.Object
      StackMap stack: java.lang.Exception
        27: astore 10 /* e */
        start local 10 // java.lang.Exception e
        28: .line 866
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            getstatic org.apache.catalina.startup.HostConfig.sm:Lorg/apache/tomcat/util/res/StringManager;
        29: .line 867
            ldc "hostConfig.deployDescriptor.error"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
        30: .line 868
            aload 2 /* war */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
            aastore
        31: .line 866
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
        32: .line 868
            aload 10 /* e */
        33: .line 866
            invokeinterface org.apache.juli.logging.Log.error:(Ljava/lang/Object;Ljava/lang/Throwable;)V
        end local 10 // java.lang.Exception e
        34: .line 870
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.digester:Lorg/apache/tomcat/util/digester/Digester;
            invokevirtual org.apache.tomcat.util.digester.Digester.reset:()V
        35: .line 871
            aload 7 /* context */
            ifnonnull 45
        36: .line 872
            new org.apache.catalina.startup.FailedContext
            dup
            invokespecial org.apache.catalina.startup.FailedContext.<init>:()V
            astore 7 /* context */
            goto 45
        37: .line 869
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 11
        38: .line 870
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.digester:Lorg/apache/tomcat/util/digester/Digester;
            invokevirtual org.apache.tomcat.util.digester.Digester.reset:()V
        39: .line 871
            aload 7 /* context */
            ifnonnull 41
        40: .line 872
            new org.apache.catalina.startup.FailedContext
            dup
            invokespecial org.apache.catalina.startup.FailedContext.<init>:()V
            astore 7 /* context */
        41: .line 874
      StackMap locals: org.apache.catalina.startup.HostConfig org.apache.catalina.util.ContextName java.io.File java.io.File java.io.File int int org.apache.catalina.Context int java.lang.Object top java.lang.Throwable
      StackMap stack:
            aload 11
            athrow
        42: .line 870
      StackMap locals: org.apache.catalina.startup.HostConfig org.apache.catalina.util.ContextName java.io.File java.io.File java.io.File int int org.apache.catalina.Context int java.lang.Object
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.digester:Lorg/apache/tomcat/util/digester/Digester;
            invokevirtual org.apache.tomcat.util.digester.Digester.reset:()V
        43: .line 871
            aload 7 /* context */
            ifnonnull 45
        44: .line 872
            new org.apache.catalina.startup.FailedContext
            dup
            invokespecial org.apache.catalina.startup.FailedContext.<init>:()V
            astore 7 /* context */
        45: .line 862
      StackMap locals:
      StackMap stack:
            aload 9
            monitorexit
        46: goto 49
      StackMap locals:
      StackMap stack: java.lang.Throwable
        47: aload 9
            monitorexit
        48: athrow
        49: .line 876
      StackMap locals:
      StackMap stack:
            aload 7 /* context */
            aload 3 /* xml */
            invokevirtual java.io.File.toURI:()Ljava/net/URI;
            invokevirtual java.net.URI.toURL:()Ljava/net/URL;
            invokeinterface org.apache.catalina.Context.setConfigFile:(Ljava/net/URL;)V
        50: .line 877
            goto 123
      StackMap locals:
      StackMap stack:
        51: iload 8 /* deployThisXML */
            ifeq 102
            iload 5 /* xmlInWar */
            ifeq 102
        52: .line 878
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.digesterLock:Ljava/lang/Object;
            dup
            astore 9
            monitorenter
        53: .line 879
            aconst_null
            astore 10
            aconst_null
            astore 11
        54: new java.util.jar.JarFile
            dup
            aload 2 /* war */
            invokespecial java.util.jar.JarFile.<init>:(Ljava/io/File;)V
            astore 12 /* jar */
        start local 12 // java.util.jar.JarFile jar
        55: .line 880
            aload 12 /* jar */
            ldc "META-INF/context.xml"
            invokevirtual java.util.jar.JarFile.getJarEntry:(Ljava/lang/String;)Ljava/util/jar/JarEntry;
            astore 13 /* entry */
        start local 13 // java.util.jar.JarEntry entry
        56: .line 881
            aconst_null
            astore 14
            aconst_null
            astore 15
        57: aload 12 /* jar */
            aload 13 /* entry */
            invokevirtual java.util.jar.JarFile.getInputStream:(Ljava/util/zip/ZipEntry;)Ljava/io/InputStream;
            astore 16 /* istream */
        start local 16 // java.io.InputStream istream
        58: .line 882
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.digester:Lorg/apache/tomcat/util/digester/Digester;
            aload 16 /* istream */
            invokevirtual org.apache.tomcat.util.digester.Digester.parse:(Ljava/io/InputStream;)Ljava/lang/Object;
            checkcast org.apache.catalina.Context
            astore 7 /* context */
        59: .line 883
            aload 16 /* istream */
            ifnull 65
            aload 16 /* istream */
            invokevirtual java.io.InputStream.close:()V
            goto 65
      StackMap locals: org.apache.catalina.startup.HostConfig org.apache.catalina.util.ContextName java.io.File java.io.File java.io.File int int org.apache.catalina.Context int java.lang.Object java.lang.Throwable java.lang.Throwable java.util.jar.JarFile java.util.jar.JarEntry java.lang.Throwable java.lang.Throwable java.io.InputStream
      StackMap stack: java.lang.Throwable
        60: astore 14
            aload 16 /* istream */
            ifnull 61
            aload 16 /* istream */
            invokevirtual java.io.InputStream.close:()V
        end local 16 // java.io.InputStream istream
      StackMap locals:
      StackMap stack:
        61: aload 14
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        62: astore 15
            aload 14
            ifnonnull 63
            aload 15
            astore 14
            goto 64
      StackMap locals:
      StackMap stack:
        63: aload 14
            aload 15
            if_acmpeq 64
            aload 14
            aload 15
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        64: aload 14
            athrow
        end local 13 // java.util.jar.JarEntry entry
        65: .line 884
      StackMap locals:
      StackMap stack:
            aload 12 /* jar */
            ifnull 92
            aload 12 /* jar */
            invokevirtual java.util.jar.JarFile.close:()V
            goto 92
      StackMap locals:
      StackMap stack: java.lang.Throwable
        66: astore 10
            aload 12 /* jar */
            ifnull 67
            aload 12 /* jar */
            invokevirtual java.util.jar.JarFile.close:()V
        end local 12 // java.util.jar.JarFile jar
      StackMap locals:
      StackMap stack:
        67: aload 10
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        68: astore 11
            aload 10
            ifnonnull 69
            aload 11
            astore 10
            goto 70
      StackMap locals:
      StackMap stack:
        69: aload 10
            aload 11
            if_acmpeq 70
            aload 10
            aload 11
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        70: aload 10
            athrow
      StackMap locals: org.apache.catalina.startup.HostConfig org.apache.catalina.util.ContextName java.io.File java.io.File java.io.File int int org.apache.catalina.Context int java.lang.Object
      StackMap stack: java.lang.Exception
        71: astore 10 /* e */
        start local 10 // java.lang.Exception e
        72: .line 885
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            getstatic org.apache.catalina.startup.HostConfig.sm:Lorg/apache/tomcat/util/res/StringManager;
        73: .line 886
            ldc "hostConfig.deployDescriptor.error"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
        74: .line 887
            aload 2 /* war */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
            aastore
        75: .line 885
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
        76: .line 887
            aload 10 /* e */
        77: .line 885
            invokeinterface org.apache.juli.logging.Log.error:(Ljava/lang/Object;Ljava/lang/Throwable;)V
        end local 10 // java.lang.Exception e
        78: .line 889
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.digester:Lorg/apache/tomcat/util/digester/Digester;
            invokevirtual org.apache.tomcat.util.digester.Digester.reset:()V
        79: .line 890
            aload 7 /* context */
            ifnonnull 81
        80: .line 891
            new org.apache.catalina.startup.FailedContext
            dup
            invokespecial org.apache.catalina.startup.FailedContext.<init>:()V
            astore 7 /* context */
        81: .line 893
      StackMap locals:
      StackMap stack:
            aload 7 /* context */
        82: .line 894
            aload 2 /* war */
            ldc "META-INF/context.xml"
            invokestatic org.apache.tomcat.util.buf.UriUtil.buildJarUrl:(Ljava/io/File;Ljava/lang/String;)Ljava/net/URL;
        83: .line 893
            invokeinterface org.apache.catalina.Context.setConfigFile:(Ljava/net/URL;)V
            goto 98
        84: .line 888
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 17
        85: .line 889
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.digester:Lorg/apache/tomcat/util/digester/Digester;
            invokevirtual org.apache.tomcat.util.digester.Digester.reset:()V
        86: .line 890
            aload 7 /* context */
            ifnonnull 88
        87: .line 891
            new org.apache.catalina.startup.FailedContext
            dup
            invokespecial org.apache.catalina.startup.FailedContext.<init>:()V
            astore 7 /* context */
        88: .line 893
      StackMap locals: org.apache.catalina.startup.HostConfig org.apache.catalina.util.ContextName java.io.File java.io.File java.io.File int int org.apache.catalina.Context int java.lang.Object top top top top top top top java.lang.Throwable
      StackMap stack:
            aload 7 /* context */
        89: .line 894
            aload 2 /* war */
            ldc "META-INF/context.xml"
            invokestatic org.apache.tomcat.util.buf.UriUtil.buildJarUrl:(Ljava/io/File;Ljava/lang/String;)Ljava/net/URL;
        90: .line 893
            invokeinterface org.apache.catalina.Context.setConfigFile:(Ljava/net/URL;)V
        91: .line 895
            aload 17
            athrow
        92: .line 889
      StackMap locals: org.apache.catalina.startup.HostConfig org.apache.catalina.util.ContextName java.io.File java.io.File java.io.File int int org.apache.catalina.Context int java.lang.Object
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.digester:Lorg/apache/tomcat/util/digester/Digester;
            invokevirtual org.apache.tomcat.util.digester.Digester.reset:()V
        93: .line 890
            aload 7 /* context */
            ifnonnull 95
        94: .line 891
            new org.apache.catalina.startup.FailedContext
            dup
            invokespecial org.apache.catalina.startup.FailedContext.<init>:()V
            astore 7 /* context */
        95: .line 893
      StackMap locals:
      StackMap stack:
            aload 7 /* context */
        96: .line 894
            aload 2 /* war */
            ldc "META-INF/context.xml"
            invokestatic org.apache.tomcat.util.buf.UriUtil.buildJarUrl:(Ljava/io/File;Ljava/lang/String;)Ljava/net/URL;
        97: .line 893
            invokeinterface org.apache.catalina.Context.setConfigFile:(Ljava/net/URL;)V
        98: .line 878
      StackMap locals:
      StackMap stack:
            aload 9
            monitorexit
        99: goto 123
      StackMap locals:
      StackMap stack: java.lang.Throwable
       100: aload 9
            monitorexit
       101: athrow
       102: .line 897
      StackMap locals:
      StackMap stack:
            iload 8 /* deployThisXML */
            ifne 108
            iload 5 /* xmlInWar */
            ifeq 108
       103: .line 900
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            getstatic org.apache.catalina.startup.HostConfig.sm:Lorg/apache/tomcat/util/res/StringManager;
            ldc "hostConfig.deployDescriptor.blocked"
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
       104: .line 901
            aload 1 /* cn */
            invokevirtual org.apache.catalina.util.ContextName.getPath:()Ljava/lang/String;
            aastore
            dup
            iconst_1
            ldc "META-INF/context.xml"
            aastore
            dup
            iconst_2
       105: .line 902
            new java.io.File
            dup
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            invokeinterface org.apache.catalina.Host.getConfigBaseFile:()Ljava/io/File;
            new java.lang.StringBuilder
            dup
            aload 1 /* cn */
            invokevirtual org.apache.catalina.util.ContextName.getBaseName:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ".xml"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
            aastore
       106: .line 900
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokeinterface org.apache.juli.logging.Log.error:(Ljava/lang/Object;)V
       107: .line 903
            goto 123
       108: .line 904
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.contextClass:Ljava/lang/String;
            invokestatic java.lang.Class.forName:(Ljava/lang/String;)Ljava/lang/Class;
            iconst_0
            anewarray java.lang.Class
            invokevirtual java.lang.Class.getConstructor:([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
            iconst_0
            anewarray java.lang.Object
            invokevirtual java.lang.reflect.Constructor.newInstance:([Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.apache.catalina.Context
            astore 7 /* context */
       109: .line 906
            goto 123
      StackMap locals:
      StackMap stack: java.lang.Throwable
       110: astore 9 /* t */
        start local 9 // java.lang.Throwable t
       111: .line 907
            aload 9 /* t */
            invokestatic org.apache.tomcat.util.ExceptionUtils.handleThrowable:(Ljava/lang/Throwable;)V
       112: .line 908
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            getstatic org.apache.catalina.startup.HostConfig.sm:Lorg/apache/tomcat/util/res/StringManager;
            ldc "hostConfig.deployWar.error"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
       113: .line 909
            aload 2 /* war */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
            aastore
       114: .line 908
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
       115: .line 909
            aload 9 /* t */
       116: .line 908
            invokeinterface org.apache.juli.logging.Log.error:(Ljava/lang/Object;Ljava/lang/Throwable;)V
        end local 9 // java.lang.Throwable t
       117: .line 911
            aload 7 /* context */
            ifnonnull 125
       118: .line 912
            new org.apache.catalina.startup.FailedContext
            dup
            invokespecial org.apache.catalina.startup.FailedContext.<init>:()V
            astore 7 /* context */
            goto 125
       119: .line 910
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 18
       120: .line 911
            aload 7 /* context */
            ifnonnull 122
       121: .line 912
            new org.apache.catalina.startup.FailedContext
            dup
            invokespecial org.apache.catalina.startup.FailedContext.<init>:()V
            astore 7 /* context */
       122: .line 914
      StackMap locals: org.apache.catalina.startup.HostConfig org.apache.catalina.util.ContextName java.io.File java.io.File java.io.File int int org.apache.catalina.Context int top top top top top top top top top java.lang.Throwable
      StackMap stack:
            aload 18
            athrow
       123: .line 911
      StackMap locals: org.apache.catalina.startup.HostConfig org.apache.catalina.util.ContextName java.io.File java.io.File java.io.File int int org.apache.catalina.Context int
      StackMap stack:
            aload 7 /* context */
            ifnonnull 125
       124: .line 912
            new org.apache.catalina.startup.FailedContext
            dup
            invokespecial org.apache.catalina.startup.FailedContext.<init>:()V
            astore 7 /* context */
       125: .line 916
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 9 /* copyThisXml */
        start local 9 // boolean copyThisXml
       126: .line 917
            iload 8 /* deployThisXML */
            ifeq 160
       127: .line 918
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            instanceof org.apache.catalina.core.StandardHost
            ifeq 129
       128: .line 919
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            checkcast org.apache.catalina.core.StandardHost
            invokevirtual org.apache.catalina.core.StandardHost.isCopyXML:()Z
            istore 9 /* copyThisXml */
       129: .line 923
      StackMap locals: int
      StackMap stack:
            iload 9 /* copyThisXml */
            ifne 131
            aload 7 /* context */
            instanceof org.apache.catalina.core.StandardContext
            ifeq 131
       130: .line 924
            aload 7 /* context */
            checkcast org.apache.catalina.core.StandardContext
            invokevirtual org.apache.catalina.core.StandardContext.getCopyXML:()Z
            istore 9 /* copyThisXml */
       131: .line 927
      StackMap locals:
      StackMap stack:
            iload 5 /* xmlInWar */
            ifeq 160
            iload 9 /* copyThisXml */
            ifeq 160
       132: .line 929
            new java.io.File
            dup
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            invokeinterface org.apache.catalina.Host.getConfigBaseFile:()Ljava/io/File;
       133: .line 930
            new java.lang.StringBuilder
            dup
            aload 1 /* cn */
            invokevirtual org.apache.catalina.util.ContextName.getBaseName:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ".xml"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
       134: .line 929
            invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
            astore 3 /* xml */
       135: .line 931
            aconst_null
            astore 10
            aconst_null
            astore 11
       136: new java.util.jar.JarFile
            dup
            aload 2 /* war */
            invokespecial java.util.jar.JarFile.<init>:(Ljava/io/File;)V
            astore 12 /* jar */
        start local 12 // java.util.jar.JarFile jar
       137: .line 932
            aload 12 /* jar */
            ldc "META-INF/context.xml"
            invokevirtual java.util.jar.JarFile.getJarEntry:(Ljava/lang/String;)Ljava/util/jar/JarEntry;
            astore 13 /* entry */
        start local 13 // java.util.jar.JarEntry entry
       138: .line 933
            aconst_null
            astore 14
            aconst_null
            astore 15
       139: aload 12 /* jar */
            aload 13 /* entry */
            invokevirtual java.util.jar.JarFile.getInputStream:(Ljava/util/zip/ZipEntry;)Ljava/io/InputStream;
            astore 16 /* istream */
        start local 16 // java.io.InputStream istream
       140: .line 934
            new java.io.FileOutputStream
            dup
            aload 3 /* xml */
            invokespecial java.io.FileOutputStream.<init>:(Ljava/io/File;)V
            astore 17 /* ostream */
        start local 17 // java.io.OutputStream ostream
       141: .line 935
            aload 16 /* istream */
            aload 17 /* ostream */
            invokestatic org.apache.catalina.util.IOTools.flow:(Ljava/io/InputStream;Ljava/io/OutputStream;)V
       142: .line 936
            aload 17 /* ostream */
            ifnull 145
            aload 17 /* ostream */
            invokevirtual java.io.OutputStream.close:()V
            goto 145
      StackMap locals: org.apache.catalina.startup.HostConfig org.apache.catalina.util.ContextName java.io.File java.io.File java.io.File int int org.apache.catalina.Context int int java.lang.Throwable java.lang.Throwable java.util.jar.JarFile java.util.jar.JarEntry java.lang.Throwable java.lang.Throwable java.io.InputStream java.io.OutputStream
      StackMap stack: java.lang.Throwable
       143: astore 14
            aload 17 /* ostream */
            ifnull 144
            aload 17 /* ostream */
            invokevirtual java.io.OutputStream.close:()V
        end local 17 // java.io.OutputStream ostream
      StackMap locals:
      StackMap stack:
       144: aload 14
            athrow
      StackMap locals:
      StackMap stack:
       145: aload 16 /* istream */
            ifnull 153
            aload 16 /* istream */
            invokevirtual java.io.InputStream.close:()V
            goto 153
      StackMap locals:
      StackMap stack: java.lang.Throwable
       146: astore 15
            aload 14
            ifnonnull 147
            aload 15
            astore 14
            goto 148
      StackMap locals:
      StackMap stack:
       147: aload 14
            aload 15
            if_acmpeq 148
            aload 14
            aload 15
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
       148: aload 16 /* istream */
            ifnull 149
            aload 16 /* istream */
            invokevirtual java.io.InputStream.close:()V
        end local 16 // java.io.InputStream istream
      StackMap locals:
      StackMap stack:
       149: aload 14
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
       150: astore 15
            aload 14
            ifnonnull 151
            aload 15
            astore 14
            goto 152
      StackMap locals:
      StackMap stack:
       151: aload 14
            aload 15
            if_acmpeq 152
            aload 14
            aload 15
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
       152: aload 14
            athrow
        end local 13 // java.util.jar.JarEntry entry
       153: .line 937
      StackMap locals:
      StackMap stack:
            aload 12 /* jar */
            ifnull 160
            aload 12 /* jar */
            invokevirtual java.util.jar.JarFile.close:()V
            goto 160
      StackMap locals:
      StackMap stack: java.lang.Throwable
       154: astore 10
            aload 12 /* jar */
            ifnull 155
            aload 12 /* jar */
            invokevirtual java.util.jar.JarFile.close:()V
        end local 12 // java.util.jar.JarFile jar
      StackMap locals:
      StackMap stack:
       155: aload 10
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
       156: astore 11
            aload 10
            ifnonnull 157
            aload 11
            astore 10
            goto 158
      StackMap locals:
      StackMap stack:
       157: aload 10
            aload 11
            if_acmpeq 158
            aload 10
            aload 11
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
       158: aload 10
            athrow
      StackMap locals: org.apache.catalina.startup.HostConfig org.apache.catalina.util.ContextName java.io.File java.io.File java.io.File int int org.apache.catalina.Context int int
      StackMap stack: java.io.IOException
       159: pop
       160: .line 943
      StackMap locals:
      StackMap stack:
            new org.apache.catalina.startup.HostConfig$DeployedApplication
            dup
            aload 1 /* cn */
            invokevirtual org.apache.catalina.util.ContextName.getName:()Ljava/lang/String;
       161: .line 944
            aload 3 /* xml */
            invokevirtual java.io.File.exists:()Z
            ifeq 163
            iload 8 /* deployThisXML */
            ifeq 163
            iload 9 /* copyThisXml */
            ifeq 163
       162: .line 943
            iconst_1
            goto 164
      StackMap locals: org.apache.catalina.startup.HostConfig org.apache.catalina.util.ContextName java.io.File java.io.File java.io.File int int org.apache.catalina.Context int int
      StackMap stack: new 160 new 160 java.lang.String
       163: iconst_0
      StackMap locals: org.apache.catalina.startup.HostConfig org.apache.catalina.util.ContextName java.io.File java.io.File java.io.File int int org.apache.catalina.Context int int
      StackMap stack: new 160 new 160 java.lang.String int
       164: invokespecial org.apache.catalina.startup.HostConfig$DeployedApplication.<init>:(Ljava/lang/String;Z)V
            astore 10 /* deployedApp */
        start local 10 // org.apache.catalina.startup.HostConfig$DeployedApplication deployedApp
       165: .line 946
            lconst_0
            lstore 11 /* startTime */
        start local 11 // long startTime
       166: .line 948
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            invokeinterface org.apache.juli.logging.Log.isInfoEnabled:()Z
            ifeq 171
       167: .line 949
            invokestatic java.lang.System.currentTimeMillis:()J
            lstore 11 /* startTime */
       168: .line 950
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            getstatic org.apache.catalina.startup.HostConfig.sm:Lorg/apache/tomcat/util/res/StringManager;
            ldc "hostConfig.deployWar"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
       169: .line 951
            aload 2 /* war */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
            aastore
       170: .line 950
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokeinterface org.apache.juli.logging.Log.info:(Ljava/lang/Object;)V
       171: .line 956
      StackMap locals: org.apache.catalina.startup.HostConfig$DeployedApplication long
      StackMap stack:
            aload 10 /* deployedApp */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.redeployResources:Ljava/util/LinkedHashMap;
       172: .line 957
            aload 2 /* war */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
            aload 2 /* war */
            invokevirtual java.io.File.lastModified:()J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
       173: .line 956
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       174: .line 959
            iload 8 /* deployThisXML */
            ifeq 179
            aload 3 /* xml */
            invokevirtual java.io.File.exists:()Z
            ifeq 179
            iload 9 /* copyThisXml */
            ifeq 179
       175: .line 960
            aload 10 /* deployedApp */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.redeployResources:Ljava/util/LinkedHashMap;
            aload 3 /* xml */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
       176: .line 961
            aload 3 /* xml */
            invokevirtual java.io.File.lastModified:()J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
       177: .line 960
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       178: .line 962
            goto 186
       179: .line 964
      StackMap locals:
      StackMap stack:
            aload 10 /* deployedApp */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.redeployResources:Ljava/util/LinkedHashMap;
       180: .line 965
            new java.io.File
            dup
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            invokeinterface org.apache.catalina.Host.getConfigBaseFile:()Ljava/io/File;
       181: .line 966
            new java.lang.StringBuilder
            dup
            aload 1 /* cn */
            invokevirtual org.apache.catalina.util.ContextName.getBaseName:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ".xml"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
       182: .line 965
            invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
       183: .line 966
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
       184: .line 967
            lconst_0
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
       185: .line 964
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       186: .line 970
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            invokeinterface org.apache.catalina.Host.getConfigClass:()Ljava/lang/String;
            invokestatic java.lang.Class.forName:(Ljava/lang/String;)Ljava/lang/Class;
            astore 13 /* clazz */
        start local 13 // java.lang.Class clazz
       187: .line 971
            aload 13 /* clazz */
            iconst_0
            anewarray java.lang.Class
            invokevirtual java.lang.Class.getConstructor:([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
            iconst_0
            anewarray java.lang.Object
            invokevirtual java.lang.reflect.Constructor.newInstance:([Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.apache.catalina.LifecycleListener
            astore 14 /* listener */
        start local 14 // org.apache.catalina.LifecycleListener listener
       188: .line 972
            aload 7 /* context */
            aload 14 /* listener */
            invokeinterface org.apache.catalina.Context.addLifecycleListener:(Lorg/apache/catalina/LifecycleListener;)V
       189: .line 974
            aload 7 /* context */
            aload 1 /* cn */
            invokevirtual org.apache.catalina.util.ContextName.getName:()Ljava/lang/String;
            invokeinterface org.apache.catalina.Context.setName:(Ljava/lang/String;)V
       190: .line 975
            aload 7 /* context */
            aload 1 /* cn */
            invokevirtual org.apache.catalina.util.ContextName.getPath:()Ljava/lang/String;
            invokeinterface org.apache.catalina.Context.setPath:(Ljava/lang/String;)V
       191: .line 976
            aload 7 /* context */
            aload 1 /* cn */
            invokevirtual org.apache.catalina.util.ContextName.getVersion:()Ljava/lang/String;
            invokeinterface org.apache.catalina.Context.setWebappVersion:(Ljava/lang/String;)V
       192: .line 977
            aload 7 /* context */
            new java.lang.StringBuilder
            dup
            aload 1 /* cn */
            invokevirtual org.apache.catalina.util.ContextName.getBaseName:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ".war"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface org.apache.catalina.Context.setDocBase:(Ljava/lang/String;)V
       193: .line 978
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            aload 7 /* context */
            invokeinterface org.apache.catalina.Host.addChild:(Lorg/apache/catalina/Container;)V
        end local 14 // org.apache.catalina.LifecycleListener listener
        end local 13 // java.lang.Class clazz
       194: .line 979
            goto 241
      StackMap locals:
      StackMap stack: java.lang.Throwable
       195: astore 13 /* t */
        start local 13 // java.lang.Throwable t
       196: .line 980
            aload 13 /* t */
            invokestatic org.apache.tomcat.util.ExceptionUtils.handleThrowable:(Ljava/lang/Throwable;)V
       197: .line 981
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            getstatic org.apache.catalina.startup.HostConfig.sm:Lorg/apache/tomcat/util/res/StringManager;
            ldc "hostConfig.deployWar.error"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
       198: .line 982
            aload 2 /* war */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
            aastore
       199: .line 981
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
       200: .line 982
            aload 13 /* t */
       201: .line 981
            invokeinterface org.apache.juli.logging.Log.error:(Ljava/lang/Object;Ljava/lang/Throwable;)V
        end local 13 // java.lang.Throwable t
       202: .line 986
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.unpackWARs:Z
            istore 16 /* unpackWAR */
        start local 16 // boolean unpackWAR
       203: .line 987
            iload 16 /* unpackWAR */
            ifeq 205
            aload 7 /* context */
            instanceof org.apache.catalina.core.StandardContext
            ifeq 205
       204: .line 988
            aload 7 /* context */
            checkcast org.apache.catalina.core.StandardContext
            invokevirtual org.apache.catalina.core.StandardContext.getUnpackWAR:()Z
            istore 16 /* unpackWAR */
       205: .line 990
      StackMap locals: org.apache.catalina.startup.HostConfig org.apache.catalina.util.ContextName java.io.File java.io.File java.io.File int int org.apache.catalina.Context int int org.apache.catalina.startup.HostConfig$DeployedApplication long top top top int
      StackMap stack:
            iload 16 /* unpackWAR */
            ifeq 218
            aload 7 /* context */
            invokeinterface org.apache.catalina.Context.getDocBase:()Ljava/lang/String;
            ifnull 218
       206: .line 991
            new java.io.File
            dup
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            invokeinterface org.apache.catalina.Host.getAppBaseFile:()Ljava/io/File;
            aload 1 /* cn */
            invokevirtual org.apache.catalina.util.ContextName.getBaseName:()Ljava/lang/String;
            invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
            astore 17 /* docBase */
        start local 17 // java.io.File docBase
       207: .line 992
            aload 10 /* deployedApp */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.redeployResources:Ljava/util/LinkedHashMap;
            aload 17 /* docBase */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
       208: .line 993
            aload 17 /* docBase */
            invokevirtual java.io.File.lastModified:()J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
       209: .line 992
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       210: .line 994
            aload 0 /* this */
            aload 10 /* deployedApp */
            aload 17 /* docBase */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
       211: .line 995
            aload 7 /* context */
       212: .line 994
            invokevirtual org.apache.catalina.startup.HostConfig.addWatchedResources:(Lorg/apache/catalina/startup/HostConfig$DeployedApplication;Ljava/lang/String;Lorg/apache/catalina/Context;)V
       213: .line 996
            iload 8 /* deployThisXML */
            ifeq 219
            iload 9 /* copyThisXml */
            ifne 219
            iload 5 /* xmlInWar */
            ifne 214
            aload 3 /* xml */
            invokevirtual java.io.File.exists:()Z
            ifeq 219
       214: .line 997
      StackMap locals: java.io.File
      StackMap stack:
            aload 10 /* deployedApp */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.redeployResources:Ljava/util/LinkedHashMap;
            aload 3 /* xml */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
       215: .line 998
            aload 3 /* xml */
            invokevirtual java.io.File.lastModified:()J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
       216: .line 997
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 17 // java.io.File docBase
       217: .line 1000
            goto 219
       218: .line 1003
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 10 /* deployedApp */
            aconst_null
            aload 7 /* context */
            invokevirtual org.apache.catalina.startup.HostConfig.addWatchedResources:(Lorg/apache/catalina/startup/HostConfig$DeployedApplication;Ljava/lang/String;Lorg/apache/catalina/Context;)V
       219: .line 1007
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 10 /* deployedApp */
            invokevirtual org.apache.catalina.startup.HostConfig.addGlobalRedeployResources:(Lorg/apache/catalina/startup/HostConfig$DeployedApplication;)V
        end local 16 // boolean unpackWAR
       220: goto 259
       221: .line 983
      StackMap locals: org.apache.catalina.startup.HostConfig org.apache.catalina.util.ContextName java.io.File java.io.File java.io.File int int org.apache.catalina.Context int int org.apache.catalina.startup.HostConfig$DeployedApplication long
      StackMap stack: java.lang.Throwable
            astore 15
       222: .line 986
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.unpackWARs:Z
            istore 16 /* unpackWAR */
        start local 16 // boolean unpackWAR
       223: .line 987
            iload 16 /* unpackWAR */
            ifeq 225
            aload 7 /* context */
            instanceof org.apache.catalina.core.StandardContext
            ifeq 225
       224: .line 988
            aload 7 /* context */
            checkcast org.apache.catalina.core.StandardContext
            invokevirtual org.apache.catalina.core.StandardContext.getUnpackWAR:()Z
            istore 16 /* unpackWAR */
       225: .line 990
      StackMap locals: org.apache.catalina.startup.HostConfig org.apache.catalina.util.ContextName java.io.File java.io.File java.io.File int int org.apache.catalina.Context int int org.apache.catalina.startup.HostConfig$DeployedApplication long top top java.lang.Throwable int
      StackMap stack:
            iload 16 /* unpackWAR */
            ifeq 238
            aload 7 /* context */
            invokeinterface org.apache.catalina.Context.getDocBase:()Ljava/lang/String;
            ifnull 238
       226: .line 991
            new java.io.File
            dup
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            invokeinterface org.apache.catalina.Host.getAppBaseFile:()Ljava/io/File;
            aload 1 /* cn */
            invokevirtual org.apache.catalina.util.ContextName.getBaseName:()Ljava/lang/String;
            invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
            astore 17 /* docBase */
        start local 17 // java.io.File docBase
       227: .line 992
            aload 10 /* deployedApp */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.redeployResources:Ljava/util/LinkedHashMap;
            aload 17 /* docBase */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
       228: .line 993
            aload 17 /* docBase */
            invokevirtual java.io.File.lastModified:()J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
       229: .line 992
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       230: .line 994
            aload 0 /* this */
            aload 10 /* deployedApp */
            aload 17 /* docBase */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
       231: .line 995
            aload 7 /* context */
       232: .line 994
            invokevirtual org.apache.catalina.startup.HostConfig.addWatchedResources:(Lorg/apache/catalina/startup/HostConfig$DeployedApplication;Ljava/lang/String;Lorg/apache/catalina/Context;)V
       233: .line 996
            iload 8 /* deployThisXML */
            ifeq 239
            iload 9 /* copyThisXml */
            ifne 239
            iload 5 /* xmlInWar */
            ifne 234
            aload 3 /* xml */
            invokevirtual java.io.File.exists:()Z
            ifeq 239
       234: .line 997
      StackMap locals: java.io.File
      StackMap stack:
            aload 10 /* deployedApp */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.redeployResources:Ljava/util/LinkedHashMap;
            aload 3 /* xml */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
       235: .line 998
            aload 3 /* xml */
            invokevirtual java.io.File.lastModified:()J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
       236: .line 997
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 17 // java.io.File docBase
       237: .line 1000
            goto 239
       238: .line 1003
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 10 /* deployedApp */
            aconst_null
            aload 7 /* context */
            invokevirtual org.apache.catalina.startup.HostConfig.addWatchedResources:(Lorg/apache/catalina/startup/HostConfig$DeployedApplication;Ljava/lang/String;Lorg/apache/catalina/Context;)V
       239: .line 1007
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 10 /* deployedApp */
            invokevirtual org.apache.catalina.startup.HostConfig.addGlobalRedeployResources:(Lorg/apache/catalina/startup/HostConfig$DeployedApplication;)V
        end local 16 // boolean unpackWAR
       240: .line 1008
            aload 15
            athrow
       241: .line 986
      StackMap locals: org.apache.catalina.startup.HostConfig org.apache.catalina.util.ContextName java.io.File java.io.File java.io.File int int org.apache.catalina.Context int int org.apache.catalina.startup.HostConfig$DeployedApplication long
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.unpackWARs:Z
            istore 16 /* unpackWAR */
        start local 16 // boolean unpackWAR
       242: .line 987
            iload 16 /* unpackWAR */
            ifeq 244
            aload 7 /* context */
            instanceof org.apache.catalina.core.StandardContext
            ifeq 244
       243: .line 988
            aload 7 /* context */
            checkcast org.apache.catalina.core.StandardContext
            invokevirtual org.apache.catalina.core.StandardContext.getUnpackWAR:()Z
            istore 16 /* unpackWAR */
       244: .line 990
      StackMap locals: org.apache.catalina.startup.HostConfig org.apache.catalina.util.ContextName java.io.File java.io.File java.io.File int int org.apache.catalina.Context int int org.apache.catalina.startup.HostConfig$DeployedApplication long top top top int
      StackMap stack:
            iload 16 /* unpackWAR */
            ifeq 257
            aload 7 /* context */
            invokeinterface org.apache.catalina.Context.getDocBase:()Ljava/lang/String;
            ifnull 257
       245: .line 991
            new java.io.File
            dup
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            invokeinterface org.apache.catalina.Host.getAppBaseFile:()Ljava/io/File;
            aload 1 /* cn */
            invokevirtual org.apache.catalina.util.ContextName.getBaseName:()Ljava/lang/String;
            invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
            astore 17 /* docBase */
        start local 17 // java.io.File docBase
       246: .line 992
            aload 10 /* deployedApp */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.redeployResources:Ljava/util/LinkedHashMap;
            aload 17 /* docBase */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
       247: .line 993
            aload 17 /* docBase */
            invokevirtual java.io.File.lastModified:()J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
       248: .line 992
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       249: .line 994
            aload 0 /* this */
            aload 10 /* deployedApp */
            aload 17 /* docBase */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
       250: .line 995
            aload 7 /* context */
       251: .line 994
            invokevirtual org.apache.catalina.startup.HostConfig.addWatchedResources:(Lorg/apache/catalina/startup/HostConfig$DeployedApplication;Ljava/lang/String;Lorg/apache/catalina/Context;)V
       252: .line 996
            iload 8 /* deployThisXML */
            ifeq 258
            iload 9 /* copyThisXml */
            ifne 258
            iload 5 /* xmlInWar */
            ifne 253
            aload 3 /* xml */
            invokevirtual java.io.File.exists:()Z
            ifeq 258
       253: .line 997
      StackMap locals: java.io.File
      StackMap stack:
            aload 10 /* deployedApp */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.redeployResources:Ljava/util/LinkedHashMap;
            aload 3 /* xml */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
       254: .line 998
            aload 3 /* xml */
            invokevirtual java.io.File.lastModified:()J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
       255: .line 997
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 17 // java.io.File docBase
       256: .line 1000
            goto 258
       257: .line 1003
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 10 /* deployedApp */
            aconst_null
            aload 7 /* context */
            invokevirtual org.apache.catalina.startup.HostConfig.addWatchedResources:(Lorg/apache/catalina/startup/HostConfig$DeployedApplication;Ljava/lang/String;Lorg/apache/catalina/Context;)V
       258: .line 1007
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 10 /* deployedApp */
            invokevirtual org.apache.catalina.startup.HostConfig.addGlobalRedeployResources:(Lorg/apache/catalina/startup/HostConfig$DeployedApplication;)V
        end local 16 // boolean unpackWAR
       259: .line 1010
      StackMap locals: org.apache.catalina.startup.HostConfig org.apache.catalina.util.ContextName java.io.File java.io.File java.io.File int int org.apache.catalina.Context int int org.apache.catalina.startup.HostConfig$DeployedApplication long
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.deployed:Ljava/util/Map;
            aload 1 /* cn */
            invokevirtual org.apache.catalina.util.ContextName.getName:()Ljava/lang/String;
            aload 10 /* deployedApp */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       260: .line 1012
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            invokeinterface org.apache.juli.logging.Log.isInfoEnabled:()Z
            ifeq 264
       261: .line 1013
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            getstatic org.apache.catalina.startup.HostConfig.sm:Lorg/apache/tomcat/util/res/StringManager;
            ldc "hostConfig.deployWar.finished"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
       262: .line 1014
            aload 2 /* war */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
            aastore
            dup
            iconst_1
            invokestatic java.lang.System.currentTimeMillis:()J
            lload 11 /* startTime */
            lsub
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
            aastore
       263: .line 1013
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokeinterface org.apache.juli.logging.Log.info:(Ljava/lang/Object;)V
       264: .line 1016
      StackMap locals:
      StackMap stack:
            return
        end local 11 // long startTime
        end local 10 // org.apache.catalina.startup.HostConfig$DeployedApplication deployedApp
        end local 9 // boolean copyThisXml
        end local 8 // boolean deployThisXML
        end local 7 // org.apache.catalina.Context context
        end local 6 // boolean useXml
        end local 5 // boolean xmlInWar
        end local 4 // java.io.File warTracker
        end local 3 // java.io.File xml
        end local 2 // java.io.File war
        end local 1 // org.apache.catalina.util.ContextName cn
        end local 0 // org.apache.catalina.startup.HostConfig this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0  265     0           this  Lorg/apache/catalina/startup/HostConfig;
            0  265     1             cn  Lorg/apache/catalina/util/ContextName;
            0  265     2            war  Ljava/io/File;
            3  265     3            xml  Ljava/io/File;
            4  265     4     warTracker  Ljava/io/File;
            5  265     5       xmlInWar  Z
            7   12     8            jar  Ljava/util/jar/JarFile;
            8   10     9          entry  Ljava/util/jar/JarEntry;
           18  265     6         useXml  Z
           22  265     7        context  Lorg/apache/catalina/Context;
           23  265     8  deployThisXML  Z
           28   34    10              e  Ljava/lang/Exception;
           55   67    12            jar  Ljava/util/jar/JarFile;
           56   65    13          entry  Ljava/util/jar/JarEntry;
           58   61    16        istream  Ljava/io/InputStream;
           72   78    10              e  Ljava/lang/Exception;
          111  117     9              t  Ljava/lang/Throwable;
          126  265     9    copyThisXml  Z
          137  155    12            jar  Ljava/util/jar/JarFile;
          138  153    13          entry  Ljava/util/jar/JarEntry;
          140  149    16        istream  Ljava/io/InputStream;
          141  144    17        ostream  Ljava/io/OutputStream;
          165  265    10    deployedApp  Lorg/apache/catalina/startup/HostConfig$DeployedApplication;
          166  265    11      startTime  J
          187  194    13          clazz  Ljava/lang/Class<*>;
          188  194    14       listener  Lorg/apache/catalina/LifecycleListener;
          196  202    13              t  Ljava/lang/Throwable;
          203  220    16      unpackWAR  Z
          223  240    16      unpackWAR  Z
          242  259    16      unpackWAR  Z
          207  217    17        docBase  Ljava/io/File;
          227  237    17        docBase  Ljava/io/File;
          246  256    17        docBase  Ljava/io/File;
      Exception table:
        from    to  target  type
           7    10      11  any
           6    13      13  any
           5    16      16  Class java.io.IOException
          25    26      27  Class java.lang.Exception
          25    34      37  any
          25    46      47  any
          47    48      47  any
          58    59      60  any
          57    62      62  any
          55    65      66  any
          54    68      68  any
          53    71      71  Class java.lang.Exception
          53    78      84  any
          53    99     100  any
         100   101     100  any
          23   109     110  Class java.lang.Throwable
          23   117     119  any
         141   142     143  any
         140   145     146  any
         139   150     150  any
         137   153     154  any
         136   156     156  any
         135   159     159  Class java.io.IOException
         171   194     195  Class java.lang.Throwable
         171   202     221  any
    MethodParameters:
      Name  Flags
      cn    
      war   

  protected void deployDirectories(java.io.File, java.lang.String[]);
    descriptor: (Ljava/io/File;[Ljava/lang/String;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=7, locals=11, args_size=3
        start local 0 // org.apache.catalina.startup.HostConfig this
        start local 1 // java.io.File appBase
        start local 2 // java.lang.String[] files
         0: .line 1026
            aload 2 /* files */
            ifnonnull 2
         1: .line 1027
            return
         2: .line 1029
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            invokeinterface org.apache.catalina.Host.getStartStopExecutor:()Ljava/util/concurrent/ExecutorService;
            astore 3 /* es */
        start local 3 // java.util.concurrent.ExecutorService es
         3: .line 1030
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 4 /* results */
        start local 4 // java.util.List results
         4: .line 1032
            aload 2 /* files */
            dup
            astore 8
            arraylength
            istore 7
            iconst_0
            istore 6
            goto 17
      StackMap locals: org.apache.catalina.startup.HostConfig java.io.File java.lang.String[] java.util.concurrent.ExecutorService java.util.List top int int java.lang.String[]
      StackMap stack:
         5: aload 8
            iload 6
            aaload
            astore 5 /* file */
        start local 5 // java.lang.String file
         6: .line 1034
            aload 5 /* file */
            ldc "META-INF"
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 8
         7: .line 1035
            goto 16
         8: .line 1036
      StackMap locals: org.apache.catalina.startup.HostConfig java.io.File java.lang.String[] java.util.concurrent.ExecutorService java.util.List java.lang.String int int java.lang.String[]
      StackMap stack:
            aload 5 /* file */
            ldc "WEB-INF"
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 10
         9: .line 1037
            goto 16
        10: .line 1038
      StackMap locals:
      StackMap stack:
            new java.io.File
            dup
            aload 1 /* appBase */
            aload 5 /* file */
            invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
            astore 9 /* dir */
        start local 9 // java.io.File dir
        11: .line 1039
            aload 9 /* dir */
            invokevirtual java.io.File.isDirectory:()Z
            ifeq 16
        12: .line 1040
            new org.apache.catalina.util.ContextName
            dup
            aload 5 /* file */
            iconst_0
            invokespecial org.apache.catalina.util.ContextName.<init>:(Ljava/lang/String;Z)V
            astore 10 /* cn */
        start local 10 // org.apache.catalina.util.ContextName cn
        13: .line 1042
            aload 0 /* this */
            aload 10 /* cn */
            invokevirtual org.apache.catalina.util.ContextName.getName:()Ljava/lang/String;
            invokevirtual org.apache.catalina.startup.HostConfig.isServiced:(Ljava/lang/String;)Z
            ifne 16
            aload 0 /* this */
            aload 10 /* cn */
            invokevirtual org.apache.catalina.util.ContextName.getName:()Ljava/lang/String;
            invokevirtual org.apache.catalina.startup.HostConfig.deploymentExists:(Ljava/lang/String;)Z
            ifeq 15
        14: .line 1043
            goto 16
        15: .line 1045
      StackMap locals: java.io.File org.apache.catalina.util.ContextName
      StackMap stack:
            aload 4 /* results */
            aload 3 /* es */
            new org.apache.catalina.startup.HostConfig$DeployDirectory
            dup
            aload 0 /* this */
            aload 10 /* cn */
            aload 9 /* dir */
            invokespecial org.apache.catalina.startup.HostConfig$DeployDirectory.<init>:(Lorg/apache/catalina/startup/HostConfig;Lorg/apache/catalina/util/ContextName;Ljava/io/File;)V
            invokeinterface java.util.concurrent.ExecutorService.submit:(Ljava/lang/Runnable;)Ljava/util/concurrent/Future;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 10 // org.apache.catalina.util.ContextName cn
        end local 9 // java.io.File dir
        end local 5 // java.lang.String file
        16: .line 1032
      StackMap locals: org.apache.catalina.startup.HostConfig java.io.File java.lang.String[] java.util.concurrent.ExecutorService java.util.List top int int java.lang.String[]
      StackMap stack:
            iinc 6 1
      StackMap locals:
      StackMap stack:
        17: iload 6
            iload 7
            if_icmplt 5
        18: .line 1049
            aload 4 /* results */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 6
            goto 28
      StackMap locals: org.apache.catalina.startup.HostConfig java.io.File java.lang.String[] java.util.concurrent.ExecutorService java.util.List top java.util.Iterator
      StackMap stack:
        19: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.util.concurrent.Future
            astore 5 /* result */
        start local 5 // java.util.concurrent.Future result
        20: .line 1051
            aload 5 /* result */
            invokeinterface java.util.concurrent.Future.get:()Ljava/lang/Object;
            pop
        21: .line 1052
            goto 28
      StackMap locals: org.apache.catalina.startup.HostConfig java.io.File java.lang.String[] java.util.concurrent.ExecutorService java.util.List java.util.concurrent.Future java.util.Iterator
      StackMap stack: java.lang.Exception
        22: astore 7 /* e */
        start local 7 // java.lang.Exception e
        23: .line 1053
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            getstatic org.apache.catalina.startup.HostConfig.sm:Lorg/apache/tomcat/util/res/StringManager;
        24: .line 1054
            ldc "hostConfig.deployDir.threaded.error"
        25: .line 1053
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;)Ljava/lang/String;
        26: .line 1054
            aload 7 /* e */
        27: .line 1053
            invokeinterface org.apache.juli.logging.Log.error:(Ljava/lang/Object;Ljava/lang/Throwable;)V
        end local 7 // java.lang.Exception e
        end local 5 // java.util.concurrent.Future result
        28: .line 1049
      StackMap locals: org.apache.catalina.startup.HostConfig java.io.File java.lang.String[] java.util.concurrent.ExecutorService java.util.List top java.util.Iterator
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 19
        29: .line 1057
            return
        end local 4 // java.util.List results
        end local 3 // java.util.concurrent.ExecutorService es
        end local 2 // java.lang.String[] files
        end local 1 // java.io.File appBase
        end local 0 // org.apache.catalina.startup.HostConfig this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   30     0     this  Lorg/apache/catalina/startup/HostConfig;
            0   30     1  appBase  Ljava/io/File;
            0   30     2    files  [Ljava/lang/String;
            3   30     3       es  Ljava/util/concurrent/ExecutorService;
            4   30     4  results  Ljava/util/List<Ljava/util/concurrent/Future<*>;>;
            6   16     5     file  Ljava/lang/String;
           11   16     9      dir  Ljava/io/File;
           13   16    10       cn  Lorg/apache/catalina/util/ContextName;
           20   28     5   result  Ljava/util/concurrent/Future<*>;
           23   28     7        e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
          20    21      22  Class java.lang.Exception
    MethodParameters:
         Name  Flags
      appBase  
      files    

  protected void deployDirectory(org.apache.catalina.util.ContextName, java.io.File);
    descriptor: (Lorg/apache/catalina/util/ContextName;Ljava/io/File;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=10, locals=15, args_size=3
        start local 0 // org.apache.catalina.startup.HostConfig this
        start local 1 // org.apache.catalina.util.ContextName cn
        start local 2 // java.io.File dir
         0: .line 1068
            lconst_0
            lstore 3 /* startTime */
        start local 3 // long startTime
         1: .line 1070
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            invokeinterface org.apache.juli.logging.Log.isInfoEnabled:()Z
            ifeq 6
         2: .line 1071
            invokestatic java.lang.System.currentTimeMillis:()J
            lstore 3 /* startTime */
         3: .line 1072
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            getstatic org.apache.catalina.startup.HostConfig.sm:Lorg/apache/tomcat/util/res/StringManager;
            ldc "hostConfig.deployDir"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
         4: .line 1073
            aload 2 /* dir */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
            aastore
         5: .line 1072
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokeinterface org.apache.juli.logging.Log.info:(Ljava/lang/Object;)V
         6: .line 1076
      StackMap locals: long
      StackMap stack:
            aconst_null
            astore 5 /* context */
        start local 5 // org.apache.catalina.Context context
         7: .line 1077
            new java.io.File
            dup
            aload 2 /* dir */
            ldc "META-INF/context.xml"
            invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
            astore 6 /* xml */
        start local 6 // java.io.File xml
         8: .line 1079
            new java.io.File
            dup
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            invokeinterface org.apache.catalina.Host.getConfigBaseFile:()Ljava/io/File;
            new java.lang.StringBuilder
            dup
            aload 1 /* cn */
            invokevirtual org.apache.catalina.util.ContextName.getBaseName:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ".xml"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
         9: .line 1078
            astore 7 /* xmlCopy */
        start local 7 // java.io.File xmlCopy
        10: .line 1083
            aload 0 /* this */
            invokevirtual org.apache.catalina.startup.HostConfig.isCopyXML:()Z
            istore 9 /* copyThisXml */
        start local 9 // boolean copyThisXml
        11: .line 1084
            aload 0 /* this */
            aload 2 /* dir */
            aload 1 /* cn */
            invokevirtual org.apache.catalina.startup.HostConfig.isDeployThisXML:(Ljava/io/File;Lorg/apache/catalina/util/ContextName;)Z
            istore 10 /* deployThisXML */
        start local 10 // boolean deployThisXML
        12: .line 1087
            iload 10 /* deployThisXML */
            ifeq 47
            aload 6 /* xml */
            invokevirtual java.io.File.exists:()Z
            ifeq 47
        13: .line 1088
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.digesterLock:Ljava/lang/Object;
            dup
            astore 11
            monitorenter
        14: .line 1090
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.digester:Lorg/apache/tomcat/util/digester/Digester;
            aload 6 /* xml */
            invokevirtual org.apache.tomcat.util.digester.Digester.parse:(Ljava/io/File;)Ljava/lang/Object;
            checkcast org.apache.catalina.Context
            astore 5 /* context */
        15: .line 1091
            goto 32
      StackMap locals: org.apache.catalina.startup.HostConfig org.apache.catalina.util.ContextName java.io.File long org.apache.catalina.Context java.io.File java.io.File top int int java.lang.Object
      StackMap stack: java.lang.Exception
        16: astore 12 /* e */
        start local 12 // java.lang.Exception e
        17: .line 1092
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            getstatic org.apache.catalina.startup.HostConfig.sm:Lorg/apache/tomcat/util/res/StringManager;
        18: .line 1093
            ldc "hostConfig.deployDescriptor.error"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
        19: .line 1094
            aload 6 /* xml */
            aastore
        20: .line 1092
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
        21: .line 1094
            aload 12 /* e */
        22: .line 1092
            invokeinterface org.apache.juli.logging.Log.error:(Ljava/lang/Object;Ljava/lang/Throwable;)V
        23: .line 1095
            new org.apache.catalina.startup.FailedContext
            dup
            invokespecial org.apache.catalina.startup.FailedContext.<init>:()V
            astore 5 /* context */
        end local 12 // java.lang.Exception e
        24: .line 1097
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.digester:Lorg/apache/tomcat/util/digester/Digester;
            invokevirtual org.apache.tomcat.util.digester.Digester.reset:()V
        25: .line 1098
            aload 5 /* context */
            ifnonnull 35
        26: .line 1099
            new org.apache.catalina.startup.FailedContext
            dup
            invokespecial org.apache.catalina.startup.FailedContext.<init>:()V
            astore 5 /* context */
            goto 35
        27: .line 1096
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 13
        28: .line 1097
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.digester:Lorg/apache/tomcat/util/digester/Digester;
            invokevirtual org.apache.tomcat.util.digester.Digester.reset:()V
        29: .line 1098
            aload 5 /* context */
            ifnonnull 31
        30: .line 1099
            new org.apache.catalina.startup.FailedContext
            dup
            invokespecial org.apache.catalina.startup.FailedContext.<init>:()V
            astore 5 /* context */
        31: .line 1101
      StackMap locals: org.apache.catalina.startup.HostConfig org.apache.catalina.util.ContextName java.io.File long org.apache.catalina.Context java.io.File java.io.File top int int java.lang.Object top java.lang.Throwable
      StackMap stack:
            aload 13
            athrow
        32: .line 1097
      StackMap locals: org.apache.catalina.startup.HostConfig org.apache.catalina.util.ContextName java.io.File long org.apache.catalina.Context java.io.File java.io.File top int int java.lang.Object
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.digester:Lorg/apache/tomcat/util/digester/Digester;
            invokevirtual org.apache.tomcat.util.digester.Digester.reset:()V
        33: .line 1098
            aload 5 /* context */
            ifnonnull 35
        34: .line 1099
            new org.apache.catalina.startup.FailedContext
            dup
            invokespecial org.apache.catalina.startup.FailedContext.<init>:()V
            astore 5 /* context */
        35: .line 1088
      StackMap locals:
      StackMap stack:
            aload 11
            monitorexit
        36: goto 39
      StackMap locals:
      StackMap stack: java.lang.Throwable
        37: aload 11
            monitorexit
        38: athrow
        39: .line 1104
      StackMap locals:
      StackMap stack:
            iload 9 /* copyThisXml */
            ifne 41
            aload 5 /* context */
            instanceof org.apache.catalina.core.StandardContext
            ifeq 41
        40: .line 1106
            aload 5 /* context */
            checkcast org.apache.catalina.core.StandardContext
            invokevirtual org.apache.catalina.core.StandardContext.getCopyXML:()Z
            istore 9 /* copyThisXml */
        41: .line 1109
      StackMap locals:
      StackMap stack:
            iload 9 /* copyThisXml */
            ifeq 45
        42: .line 1110
            aload 6 /* xml */
            invokevirtual java.io.File.toPath:()Ljava/nio/file/Path;
            aload 7 /* xmlCopy */
            invokevirtual java.io.File.toPath:()Ljava/nio/file/Path;
            iconst_0
            anewarray java.nio.file.CopyOption
            invokestatic java.nio.file.Files.copy:(Ljava/nio/file/Path;Ljava/nio/file/Path;[Ljava/nio/file/CopyOption;)Ljava/nio/file/Path;
            pop
        43: .line 1111
            aload 5 /* context */
            aload 7 /* xmlCopy */
            invokevirtual java.io.File.toURI:()Ljava/net/URI;
            invokevirtual java.net.URI.toURL:()Ljava/net/URL;
            invokeinterface org.apache.catalina.Context.setConfigFile:(Ljava/net/URL;)V
        44: .line 1112
            goto 54
        45: .line 1113
      StackMap locals:
      StackMap stack:
            aload 5 /* context */
            aload 6 /* xml */
            invokevirtual java.io.File.toURI:()Ljava/net/URI;
            invokevirtual java.net.URI.toURL:()Ljava/net/URL;
            invokeinterface org.apache.catalina.Context.setConfigFile:(Ljava/net/URL;)V
        46: .line 1115
            goto 54
      StackMap locals:
      StackMap stack:
        47: iload 10 /* deployThisXML */
            ifne 53
            aload 6 /* xml */
            invokevirtual java.io.File.exists:()Z
            ifeq 53
        48: .line 1118
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            getstatic org.apache.catalina.startup.HostConfig.sm:Lorg/apache/tomcat/util/res/StringManager;
            ldc "hostConfig.deployDescriptor.blocked"
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
        49: .line 1119
            aload 1 /* cn */
            invokevirtual org.apache.catalina.util.ContextName.getPath:()Ljava/lang/String;
            aastore
            dup
            iconst_1
            aload 6 /* xml */
            aastore
            dup
            iconst_2
            aload 7 /* xmlCopy */
            aastore
        50: .line 1118
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokeinterface org.apache.juli.logging.Log.error:(Ljava/lang/Object;)V
        51: .line 1120
            new org.apache.catalina.startup.FailedContext
            dup
            invokespecial org.apache.catalina.startup.FailedContext.<init>:()V
            astore 5 /* context */
        52: .line 1121
            goto 54
        53: .line 1122
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.contextClass:Ljava/lang/String;
            invokestatic java.lang.Class.forName:(Ljava/lang/String;)Ljava/lang/Class;
            iconst_0
            anewarray java.lang.Class
            invokevirtual java.lang.Class.getConstructor:([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
            iconst_0
            anewarray java.lang.Object
            invokevirtual java.lang.reflect.Constructor.newInstance:([Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.apache.catalina.Context
            astore 5 /* context */
        54: .line 1125
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            invokeinterface org.apache.catalina.Host.getConfigClass:()Ljava/lang/String;
            invokestatic java.lang.Class.forName:(Ljava/lang/String;)Ljava/lang/Class;
            astore 11 /* clazz */
        start local 11 // java.lang.Class clazz
        55: .line 1126
            aload 11 /* clazz */
            iconst_0
            anewarray java.lang.Class
            invokevirtual java.lang.Class.getConstructor:([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
            iconst_0
            anewarray java.lang.Object
            invokevirtual java.lang.reflect.Constructor.newInstance:([Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.apache.catalina.LifecycleListener
            astore 12 /* listener */
        start local 12 // org.apache.catalina.LifecycleListener listener
        56: .line 1127
            aload 5 /* context */
            aload 12 /* listener */
            invokeinterface org.apache.catalina.Context.addLifecycleListener:(Lorg/apache/catalina/LifecycleListener;)V
        57: .line 1129
            aload 5 /* context */
            aload 1 /* cn */
            invokevirtual org.apache.catalina.util.ContextName.getName:()Ljava/lang/String;
            invokeinterface org.apache.catalina.Context.setName:(Ljava/lang/String;)V
        58: .line 1130
            aload 5 /* context */
            aload 1 /* cn */
            invokevirtual org.apache.catalina.util.ContextName.getPath:()Ljava/lang/String;
            invokeinterface org.apache.catalina.Context.setPath:(Ljava/lang/String;)V
        59: .line 1131
            aload 5 /* context */
            aload 1 /* cn */
            invokevirtual org.apache.catalina.util.ContextName.getVersion:()Ljava/lang/String;
            invokeinterface org.apache.catalina.Context.setWebappVersion:(Ljava/lang/String;)V
        60: .line 1132
            aload 5 /* context */
            aload 1 /* cn */
            invokevirtual org.apache.catalina.util.ContextName.getBaseName:()Ljava/lang/String;
            invokeinterface org.apache.catalina.Context.setDocBase:(Ljava/lang/String;)V
        61: .line 1133
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            aload 5 /* context */
            invokeinterface org.apache.catalina.Host.addChild:(Lorg/apache/catalina/Container;)V
        end local 12 // org.apache.catalina.LifecycleListener listener
        end local 11 // java.lang.Class clazz
        62: .line 1134
            goto 148
      StackMap locals:
      StackMap stack: java.lang.Throwable
        63: astore 11 /* t */
        start local 11 // java.lang.Throwable t
        64: .line 1135
            aload 11 /* t */
            invokestatic org.apache.tomcat.util.ExceptionUtils.handleThrowable:(Ljava/lang/Throwable;)V
        65: .line 1136
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            getstatic org.apache.catalina.startup.HostConfig.sm:Lorg/apache/tomcat/util/res/StringManager;
            ldc "hostConfig.deployDir.error"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
        66: .line 1137
            aload 2 /* dir */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
            aastore
        67: .line 1136
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
        68: .line 1137
            aload 11 /* t */
        69: .line 1136
            invokeinterface org.apache.juli.logging.Log.error:(Ljava/lang/Object;Ljava/lang/Throwable;)V
        end local 11 // java.lang.Throwable t
        70: .line 1139
            new org.apache.catalina.startup.HostConfig$DeployedApplication
            dup
            aload 1 /* cn */
            invokevirtual org.apache.catalina.util.ContextName.getName:()Ljava/lang/String;
        71: .line 1140
            aload 6 /* xml */
            invokevirtual java.io.File.exists:()Z
            ifeq 73
            iload 10 /* deployThisXML */
            ifeq 73
            iload 9 /* copyThisXml */
            ifeq 73
        72: .line 1139
            iconst_1
            goto 74
      StackMap locals: org.apache.catalina.startup.HostConfig org.apache.catalina.util.ContextName java.io.File long org.apache.catalina.Context java.io.File java.io.File top int int
      StackMap stack: new 70 new 70 java.lang.String
        73: iconst_0
      StackMap locals: org.apache.catalina.startup.HostConfig org.apache.catalina.util.ContextName java.io.File long org.apache.catalina.Context java.io.File java.io.File top int int
      StackMap stack: new 70 new 70 java.lang.String int
        74: invokespecial org.apache.catalina.startup.HostConfig$DeployedApplication.<init>:(Ljava/lang/String;Z)V
            astore 8 /* deployedApp */
        start local 8 // org.apache.catalina.startup.HostConfig$DeployedApplication deployedApp
        75: .line 1144
            aload 8 /* deployedApp */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.redeployResources:Ljava/util/LinkedHashMap;
            new java.lang.StringBuilder
            dup
            aload 2 /* dir */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ".war"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        76: .line 1145
            lconst_0
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
        77: .line 1144
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        78: .line 1146
            aload 8 /* deployedApp */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.redeployResources:Ljava/util/LinkedHashMap;
            aload 2 /* dir */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
        79: .line 1147
            aload 2 /* dir */
            invokevirtual java.io.File.lastModified:()J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
        80: .line 1146
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        81: .line 1148
            iload 10 /* deployThisXML */
            ifeq 97
            aload 6 /* xml */
            invokevirtual java.io.File.exists:()Z
            ifeq 97
        82: .line 1149
            iload 9 /* copyThisXml */
            ifeq 88
        83: .line 1150
            aload 8 /* deployedApp */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.redeployResources:Ljava/util/LinkedHashMap;
        84: .line 1151
            aload 7 /* xmlCopy */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
        85: .line 1152
            aload 7 /* xmlCopy */
            invokevirtual java.io.File.lastModified:()J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
        86: .line 1150
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        87: .line 1153
            goto 106
        88: .line 1154
      StackMap locals: org.apache.catalina.startup.HostConfig org.apache.catalina.util.ContextName java.io.File long org.apache.catalina.Context java.io.File java.io.File org.apache.catalina.startup.HostConfig$DeployedApplication int int
      StackMap stack:
            aload 8 /* deployedApp */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.redeployResources:Ljava/util/LinkedHashMap;
        89: .line 1155
            aload 6 /* xml */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
        90: .line 1156
            aload 6 /* xml */
            invokevirtual java.io.File.lastModified:()J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
        91: .line 1154
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        92: .line 1159
            aload 8 /* deployedApp */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.redeployResources:Ljava/util/LinkedHashMap;
        93: .line 1160
            aload 7 /* xmlCopy */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
        94: .line 1161
            lconst_0
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
        95: .line 1159
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        96: .line 1163
            goto 106
        97: .line 1166
      StackMap locals:
      StackMap stack:
            aload 8 /* deployedApp */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.redeployResources:Ljava/util/LinkedHashMap;
        98: .line 1167
            aload 7 /* xmlCopy */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
        99: .line 1168
            lconst_0
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
       100: .line 1166
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       101: .line 1169
            aload 6 /* xml */
            invokevirtual java.io.File.exists:()Z
            ifne 106
       102: .line 1170
            aload 8 /* deployedApp */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.redeployResources:Ljava/util/LinkedHashMap;
       103: .line 1171
            aload 6 /* xml */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
       104: .line 1172
            lconst_0
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
       105: .line 1170
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       106: .line 1175
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 8 /* deployedApp */
            aload 2 /* dir */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
            aload 5 /* context */
            invokevirtual org.apache.catalina.startup.HostConfig.addWatchedResources:(Lorg/apache/catalina/startup/HostConfig$DeployedApplication;Ljava/lang/String;Lorg/apache/catalina/Context;)V
       107: .line 1178
            aload 0 /* this */
            aload 8 /* deployedApp */
            invokevirtual org.apache.catalina.startup.HostConfig.addGlobalRedeployResources:(Lorg/apache/catalina/startup/HostConfig$DeployedApplication;)V
            goto 186
        end local 8 // org.apache.catalina.startup.HostConfig$DeployedApplication deployedApp
       108: .line 1138
      StackMap locals: org.apache.catalina.startup.HostConfig org.apache.catalina.util.ContextName java.io.File long org.apache.catalina.Context java.io.File java.io.File top int int
      StackMap stack: java.lang.Throwable
            astore 14
       109: .line 1139
            new org.apache.catalina.startup.HostConfig$DeployedApplication
            dup
            aload 1 /* cn */
            invokevirtual org.apache.catalina.util.ContextName.getName:()Ljava/lang/String;
       110: .line 1140
            aload 6 /* xml */
            invokevirtual java.io.File.exists:()Z
            ifeq 112
            iload 10 /* deployThisXML */
            ifeq 112
            iload 9 /* copyThisXml */
            ifeq 112
       111: .line 1139
            iconst_1
            goto 113
      StackMap locals: org.apache.catalina.startup.HostConfig org.apache.catalina.util.ContextName java.io.File long org.apache.catalina.Context java.io.File java.io.File top int int top top top java.lang.Throwable
      StackMap stack: new 109 new 109 java.lang.String
       112: iconst_0
      StackMap locals: org.apache.catalina.startup.HostConfig org.apache.catalina.util.ContextName java.io.File long org.apache.catalina.Context java.io.File java.io.File top int int top top top java.lang.Throwable
      StackMap stack: new 109 new 109 java.lang.String int
       113: invokespecial org.apache.catalina.startup.HostConfig$DeployedApplication.<init>:(Ljava/lang/String;Z)V
            astore 8 /* deployedApp */
        start local 8 // org.apache.catalina.startup.HostConfig$DeployedApplication deployedApp
       114: .line 1144
            aload 8 /* deployedApp */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.redeployResources:Ljava/util/LinkedHashMap;
            new java.lang.StringBuilder
            dup
            aload 2 /* dir */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ".war"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
       115: .line 1145
            lconst_0
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
       116: .line 1144
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       117: .line 1146
            aload 8 /* deployedApp */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.redeployResources:Ljava/util/LinkedHashMap;
            aload 2 /* dir */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
       118: .line 1147
            aload 2 /* dir */
            invokevirtual java.io.File.lastModified:()J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
       119: .line 1146
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       120: .line 1148
            iload 10 /* deployThisXML */
            ifeq 136
            aload 6 /* xml */
            invokevirtual java.io.File.exists:()Z
            ifeq 136
       121: .line 1149
            iload 9 /* copyThisXml */
            ifeq 127
       122: .line 1150
            aload 8 /* deployedApp */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.redeployResources:Ljava/util/LinkedHashMap;
       123: .line 1151
            aload 7 /* xmlCopy */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
       124: .line 1152
            aload 7 /* xmlCopy */
            invokevirtual java.io.File.lastModified:()J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
       125: .line 1150
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       126: .line 1153
            goto 145
       127: .line 1154
      StackMap locals: org.apache.catalina.startup.HostConfig org.apache.catalina.util.ContextName java.io.File long org.apache.catalina.Context java.io.File java.io.File org.apache.catalina.startup.HostConfig$DeployedApplication int int top top top java.lang.Throwable
      StackMap stack:
            aload 8 /* deployedApp */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.redeployResources:Ljava/util/LinkedHashMap;
       128: .line 1155
            aload 6 /* xml */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
       129: .line 1156
            aload 6 /* xml */
            invokevirtual java.io.File.lastModified:()J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
       130: .line 1154
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       131: .line 1159
            aload 8 /* deployedApp */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.redeployResources:Ljava/util/LinkedHashMap;
       132: .line 1160
            aload 7 /* xmlCopy */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
       133: .line 1161
            lconst_0
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
       134: .line 1159
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       135: .line 1163
            goto 145
       136: .line 1166
      StackMap locals:
      StackMap stack:
            aload 8 /* deployedApp */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.redeployResources:Ljava/util/LinkedHashMap;
       137: .line 1167
            aload 7 /* xmlCopy */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
       138: .line 1168
            lconst_0
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
       139: .line 1166
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       140: .line 1169
            aload 6 /* xml */
            invokevirtual java.io.File.exists:()Z
            ifne 145
       141: .line 1170
            aload 8 /* deployedApp */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.redeployResources:Ljava/util/LinkedHashMap;
       142: .line 1171
            aload 6 /* xml */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
       143: .line 1172
            lconst_0
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
       144: .line 1170
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       145: .line 1175
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 8 /* deployedApp */
            aload 2 /* dir */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
            aload 5 /* context */
            invokevirtual org.apache.catalina.startup.HostConfig.addWatchedResources:(Lorg/apache/catalina/startup/HostConfig$DeployedApplication;Ljava/lang/String;Lorg/apache/catalina/Context;)V
       146: .line 1178
            aload 0 /* this */
            aload 8 /* deployedApp */
            invokevirtual org.apache.catalina.startup.HostConfig.addGlobalRedeployResources:(Lorg/apache/catalina/startup/HostConfig$DeployedApplication;)V
       147: .line 1179
            aload 14
            athrow
        end local 8 // org.apache.catalina.startup.HostConfig$DeployedApplication deployedApp
       148: .line 1139
      StackMap locals: org.apache.catalina.startup.HostConfig org.apache.catalina.util.ContextName java.io.File long org.apache.catalina.Context java.io.File java.io.File top int int
      StackMap stack:
            new org.apache.catalina.startup.HostConfig$DeployedApplication
            dup
            aload 1 /* cn */
            invokevirtual org.apache.catalina.util.ContextName.getName:()Ljava/lang/String;
       149: .line 1140
            aload 6 /* xml */
            invokevirtual java.io.File.exists:()Z
            ifeq 151
            iload 10 /* deployThisXML */
            ifeq 151
            iload 9 /* copyThisXml */
            ifeq 151
       150: .line 1139
            iconst_1
            goto 152
      StackMap locals: org.apache.catalina.startup.HostConfig org.apache.catalina.util.ContextName java.io.File long org.apache.catalina.Context java.io.File java.io.File top int int
      StackMap stack: new 148 new 148 java.lang.String
       151: iconst_0
      StackMap locals: org.apache.catalina.startup.HostConfig org.apache.catalina.util.ContextName java.io.File long org.apache.catalina.Context java.io.File java.io.File top int int
      StackMap stack: new 148 new 148 java.lang.String int
       152: invokespecial org.apache.catalina.startup.HostConfig$DeployedApplication.<init>:(Ljava/lang/String;Z)V
            astore 8 /* deployedApp */
        start local 8 // org.apache.catalina.startup.HostConfig$DeployedApplication deployedApp
       153: .line 1144
            aload 8 /* deployedApp */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.redeployResources:Ljava/util/LinkedHashMap;
            new java.lang.StringBuilder
            dup
            aload 2 /* dir */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ".war"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
       154: .line 1145
            lconst_0
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
       155: .line 1144
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       156: .line 1146
            aload 8 /* deployedApp */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.redeployResources:Ljava/util/LinkedHashMap;
            aload 2 /* dir */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
       157: .line 1147
            aload 2 /* dir */
            invokevirtual java.io.File.lastModified:()J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
       158: .line 1146
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       159: .line 1148
            iload 10 /* deployThisXML */
            ifeq 175
            aload 6 /* xml */
            invokevirtual java.io.File.exists:()Z
            ifeq 175
       160: .line 1149
            iload 9 /* copyThisXml */
            ifeq 166
       161: .line 1150
            aload 8 /* deployedApp */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.redeployResources:Ljava/util/LinkedHashMap;
       162: .line 1151
            aload 7 /* xmlCopy */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
       163: .line 1152
            aload 7 /* xmlCopy */
            invokevirtual java.io.File.lastModified:()J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
       164: .line 1150
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       165: .line 1153
            goto 184
       166: .line 1154
      StackMap locals: org.apache.catalina.startup.HostConfig org.apache.catalina.util.ContextName java.io.File long org.apache.catalina.Context java.io.File java.io.File org.apache.catalina.startup.HostConfig$DeployedApplication int int
      StackMap stack:
            aload 8 /* deployedApp */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.redeployResources:Ljava/util/LinkedHashMap;
       167: .line 1155
            aload 6 /* xml */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
       168: .line 1156
            aload 6 /* xml */
            invokevirtual java.io.File.lastModified:()J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
       169: .line 1154
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       170: .line 1159
            aload 8 /* deployedApp */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.redeployResources:Ljava/util/LinkedHashMap;
       171: .line 1160
            aload 7 /* xmlCopy */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
       172: .line 1161
            lconst_0
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
       173: .line 1159
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       174: .line 1163
            goto 184
       175: .line 1166
      StackMap locals:
      StackMap stack:
            aload 8 /* deployedApp */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.redeployResources:Ljava/util/LinkedHashMap;
       176: .line 1167
            aload 7 /* xmlCopy */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
       177: .line 1168
            lconst_0
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
       178: .line 1166
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       179: .line 1169
            aload 6 /* xml */
            invokevirtual java.io.File.exists:()Z
            ifne 184
       180: .line 1170
            aload 8 /* deployedApp */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.redeployResources:Ljava/util/LinkedHashMap;
       181: .line 1171
            aload 6 /* xml */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
       182: .line 1172
            lconst_0
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
       183: .line 1170
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       184: .line 1175
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 8 /* deployedApp */
            aload 2 /* dir */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
            aload 5 /* context */
            invokevirtual org.apache.catalina.startup.HostConfig.addWatchedResources:(Lorg/apache/catalina/startup/HostConfig$DeployedApplication;Ljava/lang/String;Lorg/apache/catalina/Context;)V
       185: .line 1178
            aload 0 /* this */
            aload 8 /* deployedApp */
            invokevirtual org.apache.catalina.startup.HostConfig.addGlobalRedeployResources:(Lorg/apache/catalina/startup/HostConfig$DeployedApplication;)V
       186: .line 1181
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.deployed:Ljava/util/Map;
            aload 1 /* cn */
            invokevirtual org.apache.catalina.util.ContextName.getName:()Ljava/lang/String;
            aload 8 /* deployedApp */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       187: .line 1183
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            invokeinterface org.apache.juli.logging.Log.isInfoEnabled:()Z
            ifeq 191
       188: .line 1184
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            getstatic org.apache.catalina.startup.HostConfig.sm:Lorg/apache/tomcat/util/res/StringManager;
            ldc "hostConfig.deployDir.finished"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
       189: .line 1185
            aload 2 /* dir */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
            aastore
            dup
            iconst_1
            invokestatic java.lang.System.currentTimeMillis:()J
            lload 3 /* startTime */
            lsub
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
            aastore
       190: .line 1184
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokeinterface org.apache.juli.logging.Log.info:(Ljava/lang/Object;)V
       191: .line 1187
      StackMap locals:
      StackMap stack:
            return
        end local 10 // boolean deployThisXML
        end local 9 // boolean copyThisXml
        end local 8 // org.apache.catalina.startup.HostConfig$DeployedApplication deployedApp
        end local 7 // java.io.File xmlCopy
        end local 6 // java.io.File xml
        end local 5 // org.apache.catalina.Context context
        end local 3 // long startTime
        end local 2 // java.io.File dir
        end local 1 // org.apache.catalina.util.ContextName cn
        end local 0 // org.apache.catalina.startup.HostConfig this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0  192     0           this  Lorg/apache/catalina/startup/HostConfig;
            0  192     1             cn  Lorg/apache/catalina/util/ContextName;
            0  192     2            dir  Ljava/io/File;
            1  192     3      startTime  J
            7  192     5        context  Lorg/apache/catalina/Context;
            8  192     6            xml  Ljava/io/File;
           10  192     7        xmlCopy  Ljava/io/File;
           75  108     8    deployedApp  Lorg/apache/catalina/startup/HostConfig$DeployedApplication;
          114  148     8    deployedApp  Lorg/apache/catalina/startup/HostConfig$DeployedApplication;
          153  192     8    deployedApp  Lorg/apache/catalina/startup/HostConfig$DeployedApplication;
           11  192     9    copyThisXml  Z
           12  192    10  deployThisXML  Z
           17   24    12              e  Ljava/lang/Exception;
           55   62    11          clazz  Ljava/lang/Class<*>;
           56   62    12       listener  Lorg/apache/catalina/LifecycleListener;
           64   70    11              t  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
          14    15      16  Class java.lang.Exception
          14    24      27  any
          14    36      37  any
          37    38      37  any
          12    62      63  Class java.lang.Throwable
          12    70     108  any
    MethodParameters:
      Name  Flags
      cn    
      dir   

  protected boolean deploymentExists(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.catalina.startup.HostConfig this
        start local 1 // java.lang.String contextName
         0: .line 1197
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.deployed:Ljava/util/Map;
            aload 1 /* contextName */
            invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
            ifne 3
         1: .line 1198
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            aload 1 /* contextName */
            invokeinterface org.apache.catalina.Host.findChild:(Ljava/lang/String;)Lorg/apache/catalina/Container;
            ifnonnull 3
         2: .line 1197
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         3: iconst_1
            ireturn
        end local 1 // java.lang.String contextName
        end local 0 // org.apache.catalina.startup.HostConfig this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0         this  Lorg/apache/catalina/startup/HostConfig;
            0    4     1  contextName  Ljava/lang/String;
    MethodParameters:
             Name  Flags
      contextName  

  protected void addWatchedResources(org.apache.catalina.startup.HostConfig$DeployedApplication, java.lang.String, org.apache.catalina.Context);
    descriptor: (Lorg/apache/catalina/startup/HostConfig$DeployedApplication;Ljava/lang/String;Lorg/apache/catalina/Context;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=11, args_size=4
        start local 0 // org.apache.catalina.startup.HostConfig this
        start local 1 // org.apache.catalina.startup.HostConfig$DeployedApplication app
        start local 2 // java.lang.String docBase
        start local 3 // org.apache.catalina.Context context
         0: .line 1213
            aconst_null
            astore 4 /* docBaseFile */
        start local 4 // java.io.File docBaseFile
         1: .line 1214
            aload 2 /* docBase */
            ifnull 5
         2: .line 1215
            new java.io.File
            dup
            aload 2 /* docBase */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            astore 4 /* docBaseFile */
         3: .line 1216
            aload 4 /* docBaseFile */
            invokevirtual java.io.File.isAbsolute:()Z
            ifne 5
         4: .line 1217
            new java.io.File
            dup
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            invokeinterface org.apache.catalina.Host.getAppBaseFile:()Ljava/io/File;
            aload 2 /* docBase */
            invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
            astore 4 /* docBaseFile */
         5: .line 1220
      StackMap locals: java.io.File
      StackMap stack:
            aload 3 /* context */
            invokeinterface org.apache.catalina.Context.findWatchedResources:()[Ljava/lang/String;
            astore 5 /* watchedResources */
        start local 5 // java.lang.String[] watchedResources
         6: .line 1221
            aload 5 /* watchedResources */
            dup
            astore 9
            arraylength
            istore 8
            iconst_0
            istore 7
            goto 26
      StackMap locals: org.apache.catalina.startup.HostConfig org.apache.catalina.startup.HostConfig$DeployedApplication java.lang.String org.apache.catalina.Context java.io.File java.lang.String[] top int int java.lang.String[]
      StackMap stack:
         7: aload 9
            iload 7
            aaload
            astore 6 /* watchedResource */
        start local 6 // java.lang.String watchedResource
         8: .line 1222
            new java.io.File
            dup
            aload 6 /* watchedResource */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            astore 10 /* resource */
        start local 10 // java.io.File resource
         9: .line 1223
            aload 10 /* resource */
            invokevirtual java.io.File.isAbsolute:()Z
            ifne 18
        10: .line 1224
            aload 2 /* docBase */
            ifnull 13
        11: .line 1225
            new java.io.File
            dup
            aload 4 /* docBaseFile */
            aload 6 /* watchedResource */
            invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
            astore 10 /* resource */
        12: .line 1226
            goto 18
        13: .line 1227
      StackMap locals: org.apache.catalina.startup.HostConfig org.apache.catalina.startup.HostConfig$DeployedApplication java.lang.String org.apache.catalina.Context java.io.File java.lang.String[] java.lang.String int int java.lang.String[] java.io.File
      StackMap stack:
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            invokeinterface org.apache.juli.logging.Log.isDebugEnabled:()Z
            ifeq 25
        14: .line 1228
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            new java.lang.StringBuilder
            dup
            ldc "Ignoring non-existent WatchedResource '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        15: .line 1229
            aload 10 /* resource */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "'"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        16: .line 1228
            invokeinterface org.apache.juli.logging.Log.debug:(Ljava/lang/Object;)V
        17: .line 1230
            goto 25
        18: .line 1233
      StackMap locals:
      StackMap stack:
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            invokeinterface org.apache.juli.logging.Log.isDebugEnabled:()Z
            ifeq 22
        19: .line 1234
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            new java.lang.StringBuilder
            dup
            ldc "Watching WatchedResource '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        20: .line 1235
            aload 10 /* resource */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "'"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        21: .line 1234
            invokeinterface org.apache.juli.logging.Log.debug:(Ljava/lang/Object;)V
        22: .line 1236
      StackMap locals:
      StackMap stack:
            aload 1 /* app */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.reloadResources:Ljava/util/HashMap;
            aload 10 /* resource */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
        23: .line 1237
            aload 10 /* resource */
            invokevirtual java.io.File.lastModified:()J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
        24: .line 1236
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 10 // java.io.File resource
        end local 6 // java.lang.String watchedResource
        25: .line 1221
      StackMap locals: org.apache.catalina.startup.HostConfig org.apache.catalina.startup.HostConfig$DeployedApplication java.lang.String org.apache.catalina.Context java.io.File java.lang.String[] top int int java.lang.String[]
      StackMap stack:
            iinc 7 1
      StackMap locals:
      StackMap stack:
        26: iload 7
            iload 8
            if_icmplt 7
        27: .line 1239
            return
        end local 5 // java.lang.String[] watchedResources
        end local 4 // java.io.File docBaseFile
        end local 3 // org.apache.catalina.Context context
        end local 2 // java.lang.String docBase
        end local 1 // org.apache.catalina.startup.HostConfig$DeployedApplication app
        end local 0 // org.apache.catalina.startup.HostConfig this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   28     0              this  Lorg/apache/catalina/startup/HostConfig;
            0   28     1               app  Lorg/apache/catalina/startup/HostConfig$DeployedApplication;
            0   28     2           docBase  Ljava/lang/String;
            0   28     3           context  Lorg/apache/catalina/Context;
            1   28     4       docBaseFile  Ljava/io/File;
            6   28     5  watchedResources  [Ljava/lang/String;
            8   25     6   watchedResource  Ljava/lang/String;
            9   25    10          resource  Ljava/io/File;
    MethodParameters:
         Name  Flags
      app      
      docBase  
      context  

  protected void addGlobalRedeployResources(org.apache.catalina.startup.HostConfig$DeployedApplication);
    descriptor: (Lorg/apache/catalina/startup/HostConfig$DeployedApplication;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // org.apache.catalina.startup.HostConfig this
        start local 1 // org.apache.catalina.startup.HostConfig$DeployedApplication app
         0: .line 1245
            new java.io.File
            dup
            aload 0 /* this */
            invokevirtual org.apache.catalina.startup.HostConfig.getConfigBaseName:()Ljava/lang/String;
            ldc "context.xml.default"
            invokespecial java.io.File.<init>:(Ljava/lang/String;Ljava/lang/String;)V
         1: .line 1244
            astore 2 /* hostContextXml */
        start local 2 // java.io.File hostContextXml
         2: .line 1246
            aload 2 /* hostContextXml */
            invokevirtual java.io.File.isFile:()Z
            ifeq 6
         3: .line 1247
            aload 1 /* app */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.redeployResources:Ljava/util/LinkedHashMap;
            aload 2 /* hostContextXml */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
         4: .line 1248
            aload 2 /* hostContextXml */
            invokevirtual java.io.File.lastModified:()J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
         5: .line 1247
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         6: .line 1253
      StackMap locals: java.io.File
      StackMap stack:
            aload 0 /* this */
            ldc "conf/context.xml"
            invokevirtual org.apache.catalina.startup.HostConfig.returnCanonicalPath:(Ljava/lang/String;)Ljava/io/File;
         7: .line 1252
            astore 3 /* globalContextXml */
        start local 3 // java.io.File globalContextXml
         8: .line 1254
            aload 3 /* globalContextXml */
            invokevirtual java.io.File.isFile:()Z
            ifeq 12
         9: .line 1255
            aload 1 /* app */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.redeployResources:Ljava/util/LinkedHashMap;
            aload 3 /* globalContextXml */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
        10: .line 1256
            aload 3 /* globalContextXml */
            invokevirtual java.io.File.lastModified:()J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
        11: .line 1255
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        12: .line 1258
      StackMap locals: java.io.File
      StackMap stack:
            return
        end local 3 // java.io.File globalContextXml
        end local 2 // java.io.File hostContextXml
        end local 1 // org.apache.catalina.startup.HostConfig$DeployedApplication app
        end local 0 // org.apache.catalina.startup.HostConfig this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   13     0              this  Lorg/apache/catalina/startup/HostConfig;
            0   13     1               app  Lorg/apache/catalina/startup/HostConfig$DeployedApplication;
            2   13     2    hostContextXml  Ljava/io/File;
            8   13     3  globalContextXml  Ljava/io/File;
    MethodParameters:
      Name  Flags
      app   

  protected synchronized void checkResources(org.apache.catalina.startup.HostConfig$DeployedApplication, boolean);
    descriptor: (Lorg/apache/catalina/startup/HostConfig$DeployedApplication;Z)V
    flags: (0x0024) ACC_PROTECTED, ACC_SYNCHRONIZED
    Code:
      stack=5, locals=14, args_size=3
        start local 0 // org.apache.catalina.startup.HostConfig this
        start local 1 // org.apache.catalina.startup.HostConfig$DeployedApplication app
        start local 2 // boolean skipFileModificationResolutionCheck
         0: .line 1274
            aload 1 /* app */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.redeployResources:Ljava/util/LinkedHashMap;
            invokevirtual java.util.LinkedHashMap.keySet:()Ljava/util/Set;
            iconst_0
            anewarray java.lang.String
            invokeinterface java.util.Set.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast java.lang.String[]
         1: .line 1273
            astore 3 /* resources */
        start local 3 // java.lang.String[] resources
         2: .line 1277
            invokestatic java.lang.System.currentTimeMillis:()J
            ldc 1000
            lsub
         3: .line 1276
            lstore 4 /* currentTimeWithResolutionOffset */
        start local 4 // long currentTimeWithResolutionOffset
         4: .line 1278
            iconst_0
            istore 6 /* i */
        start local 6 // int i
         5: goto 62
         6: .line 1279
      StackMap locals: java.lang.String[] long int
      StackMap stack:
            new java.io.File
            dup
            aload 3 /* resources */
            iload 6 /* i */
            aaload
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            astore 7 /* resource */
        start local 7 // java.io.File resource
         7: .line 1280
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            invokeinterface org.apache.juli.logging.Log.isDebugEnabled:()Z
            ifeq 11
         8: .line 1281
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            new java.lang.StringBuilder
            dup
            ldc "Checking context["
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* app */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.name:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         9: .line 1282
            ldc "] redeploy resource "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 7 /* resource */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        10: .line 1281
            invokeinterface org.apache.juli.logging.Log.debug:(Ljava/lang/Object;)V
        11: .line 1284
      StackMap locals: java.io.File
      StackMap stack:
            aload 1 /* app */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.redeployResources:Ljava/util/LinkedHashMap;
            aload 3 /* resources */
            iload 6 /* i */
            aaload
            invokevirtual java.util.LinkedHashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Long
            invokevirtual java.lang.Long.longValue:()J
        12: .line 1283
            lstore 8 /* lastModified */
        start local 8 // long lastModified
        13: .line 1285
            aload 7 /* resource */
            invokevirtual java.io.File.exists:()Z
            ifne 14
            lload 8 /* lastModified */
            lconst_0
            lcmp
            ifne 53
        14: .line 1290
      StackMap locals: long
      StackMap stack:
            aload 7 /* resource */
            invokevirtual java.io.File.lastModified:()J
            lload 8 /* lastModified */
            lcmp
            ifeq 61
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            invokeinterface org.apache.catalina.Host.getAutoDeploy:()Z
            ifeq 17
        15: .line 1291
            aload 7 /* resource */
            invokevirtual java.io.File.lastModified:()J
            lload 4 /* currentTimeWithResolutionOffset */
            lcmp
            iflt 17
        16: .line 1292
            iload 2 /* skipFileModificationResolutionCheck */
            ifeq 61
        17: .line 1293
      StackMap locals:
      StackMap stack:
            aload 7 /* resource */
            invokevirtual java.io.File.isDirectory:()Z
            ifeq 22
        18: .line 1295
            aload 1 /* app */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.redeployResources:Ljava/util/LinkedHashMap;
            aload 3 /* resources */
            iload 6 /* i */
            aaload
        19: .line 1296
            aload 7 /* resource */
            invokevirtual java.io.File.lastModified:()J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
        20: .line 1295
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        21: .line 1297
            goto 61
      StackMap locals:
      StackMap stack:
        22: aload 1 /* app */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.hasDescriptor:Z
            ifeq 50
        23: .line 1298
            aload 7 /* resource */
            invokevirtual java.io.File.getName:()Ljava/lang/String;
        24: .line 1299
            getstatic java.util.Locale.ENGLISH:Ljava/util/Locale;
        25: .line 1298
            invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
        26: .line 1299
            ldc ".war"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifeq 50
        27: .line 1304
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            aload 1 /* app */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.name:Ljava/lang/String;
            invokeinterface org.apache.catalina.Host.findChild:(Ljava/lang/String;)Lorg/apache/catalina/Container;
            checkcast org.apache.catalina.Context
            astore 10 /* context */
        start local 10 // org.apache.catalina.Context context
        28: .line 1305
            aload 10 /* context */
            invokeinterface org.apache.catalina.Context.getDocBase:()Ljava/lang/String;
            astore 11 /* docBase */
        start local 11 // java.lang.String docBase
        29: .line 1306
            aload 11 /* docBase */
            getstatic java.util.Locale.ENGLISH:Ljava/util/Locale;
            invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
            ldc ".war"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifne 37
        30: .line 1308
            new java.io.File
            dup
            aload 11 /* docBase */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            astore 12 /* docBaseFile */
        start local 12 // java.io.File docBaseFile
        31: .line 1309
            aload 12 /* docBaseFile */
            invokevirtual java.io.File.isAbsolute:()Z
            ifne 35
        32: .line 1310
            new java.io.File
            dup
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            invokeinterface org.apache.catalina.Host.getAppBaseFile:()Ljava/io/File;
        33: .line 1311
            aload 11 /* docBase */
        34: .line 1310
            invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
            astore 12 /* docBaseFile */
        35: .line 1313
      StackMap locals: org.apache.catalina.Context java.lang.String java.io.File
      StackMap stack:
            aload 0 /* this */
            aload 1 /* app */
            aload 12 /* docBaseFile */
            aload 7 /* resource */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
            invokevirtual org.apache.catalina.startup.HostConfig.reload:(Lorg/apache/catalina/startup/HostConfig$DeployedApplication;Ljava/io/File;Ljava/lang/String;)V
        end local 12 // java.io.File docBaseFile
        36: .line 1314
            goto 38
        37: .line 1315
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* app */
            aconst_null
            aconst_null
            invokevirtual org.apache.catalina.startup.HostConfig.reload:(Lorg/apache/catalina/startup/HostConfig$DeployedApplication;Ljava/io/File;Ljava/lang/String;)V
        38: .line 1318
      StackMap locals:
      StackMap stack:
            aload 1 /* app */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.redeployResources:Ljava/util/LinkedHashMap;
            aload 3 /* resources */
            iload 6 /* i */
            aaload
        39: .line 1319
            aload 7 /* resource */
            invokevirtual java.io.File.lastModified:()J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
        40: .line 1318
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        41: .line 1320
            aload 1 /* app */
            invokestatic java.lang.System.currentTimeMillis:()J
            putfield org.apache.catalina.startup.HostConfig$DeployedApplication.timestamp:J
        42: .line 1321
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.unpackWARs:Z
            istore 12 /* unpackWAR */
        start local 12 // boolean unpackWAR
        43: .line 1322
            iload 12 /* unpackWAR */
            ifeq 45
            aload 10 /* context */
            instanceof org.apache.catalina.core.StandardContext
            ifeq 45
        44: .line 1323
            aload 10 /* context */
            checkcast org.apache.catalina.core.StandardContext
            invokevirtual org.apache.catalina.core.StandardContext.getUnpackWAR:()Z
            istore 12 /* unpackWAR */
        45: .line 1325
      StackMap locals: int
      StackMap stack:
            iload 12 /* unpackWAR */
            ifeq 48
        46: .line 1326
            aload 0 /* this */
            aload 1 /* app */
            aload 10 /* context */
            invokeinterface org.apache.catalina.Context.getDocBase:()Ljava/lang/String;
            aload 10 /* context */
            invokevirtual org.apache.catalina.startup.HostConfig.addWatchedResources:(Lorg/apache/catalina/startup/HostConfig$DeployedApplication;Ljava/lang/String;Lorg/apache/catalina/Context;)V
        47: .line 1327
            goto 49
        48: .line 1328
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* app */
            aconst_null
            aload 10 /* context */
            invokevirtual org.apache.catalina.startup.HostConfig.addWatchedResources:(Lorg/apache/catalina/startup/HostConfig$DeployedApplication;Ljava/lang/String;Lorg/apache/catalina/Context;)V
        49: .line 1330
      StackMap locals:
      StackMap stack:
            return
        end local 12 // boolean unpackWAR
        end local 11 // java.lang.String docBase
        end local 10 // org.apache.catalina.Context context
        50: .line 1334
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* app */
            invokevirtual org.apache.catalina.startup.HostConfig.undeploy:(Lorg/apache/catalina/startup/HostConfig$DeployedApplication;)V
        51: .line 1335
            aload 0 /* this */
            aload 1 /* app */
            aload 3 /* resources */
            iload 6 /* i */
            iconst_0
            invokevirtual org.apache.catalina.startup.HostConfig.deleteRedeployResources:(Lorg/apache/catalina/startup/HostConfig$DeployedApplication;[Ljava/lang/String;IZ)V
        52: .line 1336
            return
        53: .line 1343
      StackMap locals:
      StackMap stack:
            ldc 500
            invokestatic java.lang.Thread.sleep:(J)V
        54: .line 1344
            goto 56
      StackMap locals:
      StackMap stack: java.lang.InterruptedException
        55: pop
        56: .line 1348
      StackMap locals:
      StackMap stack:
            aload 7 /* resource */
            invokevirtual java.io.File.exists:()Z
            ifeq 58
        57: .line 1349
            goto 61
        58: .line 1352
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* app */
            invokevirtual org.apache.catalina.startup.HostConfig.undeploy:(Lorg/apache/catalina/startup/HostConfig$DeployedApplication;)V
        59: .line 1353
            aload 0 /* this */
            aload 1 /* app */
            aload 3 /* resources */
            iload 6 /* i */
            iconst_1
            invokevirtual org.apache.catalina.startup.HostConfig.deleteRedeployResources:(Lorg/apache/catalina/startup/HostConfig$DeployedApplication;[Ljava/lang/String;IZ)V
        60: .line 1354
            return
        end local 8 // long lastModified
        end local 7 // java.io.File resource
        61: .line 1278
      StackMap locals:
      StackMap stack:
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        62: iload 6 /* i */
            aload 3 /* resources */
            arraylength
            if_icmplt 6
        end local 6 // int i
        63: .line 1357
            aload 1 /* app */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.reloadResources:Ljava/util/HashMap;
            invokevirtual java.util.HashMap.keySet:()Ljava/util/Set;
            iconst_0
            anewarray java.lang.String
            invokeinterface java.util.Set.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast java.lang.String[]
            astore 3 /* resources */
        64: .line 1358
            iconst_0
            istore 6 /* update */
        start local 6 // boolean update
        65: .line 1359
            aload 3 /* resources */
            dup
            astore 10
            arraylength
            istore 9
            iconst_0
            istore 8
            goto 84
      StackMap locals: org.apache.catalina.startup.HostConfig org.apache.catalina.startup.HostConfig$DeployedApplication int java.lang.String[] long int top int int java.lang.String[]
      StackMap stack:
        66: aload 10
            iload 8
            aaload
            astore 7 /* s */
        start local 7 // java.lang.String s
        67: .line 1360
            new java.io.File
            dup
            aload 7 /* s */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            astore 11 /* resource */
        start local 11 // java.io.File resource
        68: .line 1361
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            invokeinterface org.apache.juli.logging.Log.isDebugEnabled:()Z
            ifeq 70
        69: .line 1362
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            new java.lang.StringBuilder
            dup
            ldc "Checking context["
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* app */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.name:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "] reload resource "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 11 /* resource */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface org.apache.juli.logging.Log.debug:(Ljava/lang/Object;)V
        70: .line 1364
      StackMap locals: org.apache.catalina.startup.HostConfig org.apache.catalina.startup.HostConfig$DeployedApplication int java.lang.String[] long int java.lang.String int int java.lang.String[] java.io.File
      StackMap stack:
            aload 1 /* app */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.reloadResources:Ljava/util/HashMap;
            aload 7 /* s */
            invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Long
            invokevirtual java.lang.Long.longValue:()J
            lstore 12 /* lastModified */
        start local 12 // long lastModified
        71: .line 1369
            aload 11 /* resource */
            invokevirtual java.io.File.lastModified:()J
            lload 12 /* lastModified */
            lcmp
            ifeq 75
        72: .line 1370
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            invokeinterface org.apache.catalina.Host.getAutoDeploy:()Z
            ifeq 76
        73: .line 1371
            aload 11 /* resource */
            invokevirtual java.io.File.lastModified:()J
            lload 4 /* currentTimeWithResolutionOffset */
            lcmp
            iflt 76
        74: .line 1372
            iload 2 /* skipFileModificationResolutionCheck */
            ifne 76
        75: .line 1373
      StackMap locals: long
      StackMap stack:
            iload 6 /* update */
            ifeq 82
        76: .line 1374
      StackMap locals:
      StackMap stack:
            iload 6 /* update */
            ifne 79
        77: .line 1376
            aload 0 /* this */
            aload 1 /* app */
            aconst_null
            aconst_null
            invokevirtual org.apache.catalina.startup.HostConfig.reload:(Lorg/apache/catalina/startup/HostConfig$DeployedApplication;Ljava/io/File;Ljava/lang/String;)V
        78: .line 1377
            iconst_1
            istore 6 /* update */
        79: .line 1381
      StackMap locals:
      StackMap stack:
            aload 1 /* app */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.reloadResources:Ljava/util/HashMap;
            aload 7 /* s */
        80: .line 1382
            aload 11 /* resource */
            invokevirtual java.io.File.lastModified:()J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
        81: .line 1381
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        82: .line 1384
      StackMap locals:
      StackMap stack:
            aload 1 /* app */
            invokestatic java.lang.System.currentTimeMillis:()J
            putfield org.apache.catalina.startup.HostConfig$DeployedApplication.timestamp:J
        end local 12 // long lastModified
        end local 11 // java.io.File resource
        end local 7 // java.lang.String s
        83: .line 1359
            iinc 8 1
      StackMap locals: org.apache.catalina.startup.HostConfig org.apache.catalina.startup.HostConfig$DeployedApplication int java.lang.String[] long int top int int java.lang.String[]
      StackMap stack:
        84: iload 8
            iload 9
            if_icmplt 66
        85: .line 1386
            return
        end local 6 // boolean update
        end local 4 // long currentTimeWithResolutionOffset
        end local 3 // java.lang.String[] resources
        end local 2 // boolean skipFileModificationResolutionCheck
        end local 1 // org.apache.catalina.startup.HostConfig$DeployedApplication app
        end local 0 // org.apache.catalina.startup.HostConfig this
      LocalVariableTable:
        Start  End  Slot                                 Name  Signature
            0   86     0                                 this  Lorg/apache/catalina/startup/HostConfig;
            0   86     1                                  app  Lorg/apache/catalina/startup/HostConfig$DeployedApplication;
            0   86     2  skipFileModificationResolutionCheck  Z
            2   86     3                            resources  [Ljava/lang/String;
            4   86     4      currentTimeWithResolutionOffset  J
            5   63     6                                    i  I
            7   61     7                             resource  Ljava/io/File;
           13   61     8                         lastModified  J
           28   50    10                              context  Lorg/apache/catalina/Context;
           29   50    11                              docBase  Ljava/lang/String;
           31   36    12                          docBaseFile  Ljava/io/File;
           43   50    12                            unpackWAR  Z
           65   86     6                               update  Z
           67   83     7                                    s  Ljava/lang/String;
           68   83    11                             resource  Ljava/io/File;
           71   83    12                         lastModified  J
      Exception table:
        from    to  target  type
          53    54      55  Class java.lang.InterruptedException
    MethodParameters:
                                     Name  Flags
      app                                  
      skipFileModificationResolutionCheck  

  private void reload(org.apache.catalina.startup.HostConfig$DeployedApplication, java.io.File, java.lang.String);
    descriptor: (Lorg/apache/catalina/startup/HostConfig$DeployedApplication;Ljava/io/File;Ljava/lang/String;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=6, args_size=4
        start local 0 // org.apache.catalina.startup.HostConfig this
        start local 1 // org.apache.catalina.startup.HostConfig$DeployedApplication app
        start local 2 // java.io.File fileToRemove
        start local 3 // java.lang.String newDocBase
         0: .line 1394
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            invokeinterface org.apache.juli.logging.Log.isInfoEnabled:()Z
            ifeq 2
         1: .line 1395
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            getstatic org.apache.catalina.startup.HostConfig.sm:Lorg/apache/tomcat/util/res/StringManager;
            ldc "hostConfig.reload"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* app */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.name:Ljava/lang/String;
            aastore
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokeinterface org.apache.juli.logging.Log.info:(Ljava/lang/Object;)V
         2: .line 1396
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            aload 1 /* app */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.name:Ljava/lang/String;
            invokeinterface org.apache.catalina.Host.findChild:(Ljava/lang/String;)Lorg/apache/catalina/Container;
            checkcast org.apache.catalina.Context
            astore 4 /* context */
        start local 4 // org.apache.catalina.Context context
         3: .line 1397
            aload 4 /* context */
            invokeinterface org.apache.catalina.Context.getState:()Lorg/apache/catalina/LifecycleState;
            invokevirtual org.apache.catalina.LifecycleState.isAvailable:()Z
            ifeq 10
         4: .line 1398
            aload 2 /* fileToRemove */
            ifnull 8
            aload 3 /* newDocBase */
            ifnull 8
         5: .line 1399
            aload 4 /* context */
         6: .line 1400
            new org.apache.catalina.startup.HostConfig$ExpandedDirectoryRemovalListener
            dup
            aload 2 /* fileToRemove */
            aload 3 /* newDocBase */
            invokespecial org.apache.catalina.startup.HostConfig$ExpandedDirectoryRemovalListener.<init>:(Ljava/io/File;Ljava/lang/String;)V
         7: .line 1399
            invokeinterface org.apache.catalina.Context.addLifecycleListener:(Lorg/apache/catalina/LifecycleListener;)V
         8: .line 1403
      StackMap locals: org.apache.catalina.Context
      StackMap stack:
            aload 4 /* context */
            invokeinterface org.apache.catalina.Context.reload:()V
         9: .line 1404
            goto 17
        10: .line 1407
      StackMap locals:
      StackMap stack:
            aload 2 /* fileToRemove */
            ifnull 13
            aload 3 /* newDocBase */
            ifnull 13
        11: .line 1408
            aload 2 /* fileToRemove */
            invokestatic org.apache.catalina.startup.ExpandWar.delete:(Ljava/io/File;)Z
            pop
        12: .line 1409
            aload 4 /* context */
            aload 3 /* newDocBase */
            invokeinterface org.apache.catalina.Context.setDocBase:(Ljava/lang/String;)V
        13: .line 1412
      StackMap locals:
      StackMap stack:
            aload 4 /* context */
            invokeinterface org.apache.catalina.Context.start:()V
        14: .line 1413
            goto 17
      StackMap locals:
      StackMap stack: java.lang.Exception
        15: astore 5 /* e */
        start local 5 // java.lang.Exception e
        16: .line 1414
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            getstatic org.apache.catalina.startup.HostConfig.sm:Lorg/apache/tomcat/util/res/StringManager;
            ldc "hostConfig.context.restart"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* app */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.name:Ljava/lang/String;
            aastore
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            aload 5 /* e */
            invokeinterface org.apache.juli.logging.Log.error:(Ljava/lang/Object;Ljava/lang/Throwable;)V
        end local 5 // java.lang.Exception e
        17: .line 1417
      StackMap locals:
      StackMap stack:
            return
        end local 4 // org.apache.catalina.Context context
        end local 3 // java.lang.String newDocBase
        end local 2 // java.io.File fileToRemove
        end local 1 // org.apache.catalina.startup.HostConfig$DeployedApplication app
        end local 0 // org.apache.catalina.startup.HostConfig this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   18     0          this  Lorg/apache/catalina/startup/HostConfig;
            0   18     1           app  Lorg/apache/catalina/startup/HostConfig$DeployedApplication;
            0   18     2  fileToRemove  Ljava/io/File;
            0   18     3    newDocBase  Ljava/lang/String;
            3   18     4       context  Lorg/apache/catalina/Context;
           16   17     5             e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
          13    14      15  Class java.lang.Exception
    MethodParameters:
              Name  Flags
      app           
      fileToRemove  
      newDocBase    

  private void undeploy(org.apache.catalina.startup.HostConfig$DeployedApplication);
    descriptor: (Lorg/apache/catalina/startup/HostConfig$DeployedApplication;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=4, args_size=2
        start local 0 // org.apache.catalina.startup.HostConfig this
        start local 1 // org.apache.catalina.startup.HostConfig$DeployedApplication app
         0: .line 1421
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            invokeinterface org.apache.juli.logging.Log.isInfoEnabled:()Z
            ifeq 2
         1: .line 1422
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            getstatic org.apache.catalina.startup.HostConfig.sm:Lorg/apache/tomcat/util/res/StringManager;
            ldc "hostConfig.undeploy"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* app */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.name:Ljava/lang/String;
            aastore
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokeinterface org.apache.juli.logging.Log.info:(Ljava/lang/Object;)V
         2: .line 1423
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            aload 1 /* app */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.name:Ljava/lang/String;
            invokeinterface org.apache.catalina.Host.findChild:(Ljava/lang/String;)Lorg/apache/catalina/Container;
            astore 2 /* context */
        start local 2 // org.apache.catalina.Container context
         3: .line 1425
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            aload 2 /* context */
            invokeinterface org.apache.catalina.Host.removeChild:(Lorg/apache/catalina/Container;)V
         4: .line 1426
            goto 12
      StackMap locals: org.apache.catalina.startup.HostConfig org.apache.catalina.startup.HostConfig$DeployedApplication org.apache.catalina.Container
      StackMap stack: java.lang.Throwable
         5: astore 3 /* t */
        start local 3 // java.lang.Throwable t
         6: .line 1427
            aload 3 /* t */
            invokestatic org.apache.tomcat.util.ExceptionUtils.handleThrowable:(Ljava/lang/Throwable;)V
         7: .line 1428
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            getstatic org.apache.catalina.startup.HostConfig.sm:Lorg/apache/tomcat/util/res/StringManager;
         8: .line 1429
            ldc "hostConfig.context.remove"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* app */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.name:Ljava/lang/String;
            aastore
         9: .line 1428
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
        10: .line 1429
            aload 3 /* t */
        11: .line 1428
            invokeinterface org.apache.juli.logging.Log.warn:(Ljava/lang/Object;Ljava/lang/Throwable;)V
        end local 3 // java.lang.Throwable t
        12: .line 1431
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.deployed:Ljava/util/Map;
            aload 1 /* app */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.name:Ljava/lang/String;
            invokeinterface java.util.Map.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
        13: .line 1432
            return
        end local 2 // org.apache.catalina.Container context
        end local 1 // org.apache.catalina.startup.HostConfig$DeployedApplication app
        end local 0 // org.apache.catalina.startup.HostConfig this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   14     0     this  Lorg/apache/catalina/startup/HostConfig;
            0   14     1      app  Lorg/apache/catalina/startup/HostConfig$DeployedApplication;
            3   14     2  context  Lorg/apache/catalina/Container;
            6   12     3        t  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           3     4       5  Class java.lang.Throwable
    MethodParameters:
      Name  Flags
      app   

  private void deleteRedeployResources(org.apache.catalina.startup.HostConfig$DeployedApplication, java.lang.String[], int, boolean);
    descriptor: (Lorg/apache/catalina/startup/HostConfig$DeployedApplication;[Ljava/lang/String;IZ)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=11, args_size=5
        start local 0 // org.apache.catalina.startup.HostConfig this
        start local 1 // org.apache.catalina.startup.HostConfig$DeployedApplication app
        start local 2 // java.lang.String[] resources
        start local 3 // int i
        start local 4 // boolean deleteReloadResources
         0: .line 1439
            iload 3 /* i */
            iconst_1
            iadd
            istore 5 /* j */
        start local 5 // int j
         1: goto 10
         2: .line 1440
      StackMap locals: int
      StackMap stack:
            new java.io.File
            dup
            aload 2 /* resources */
            iload 5 /* j */
            aaload
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            astore 6 /* current */
        start local 6 // java.io.File current
         3: .line 1442
            ldc "context.xml.default"
            aload 6 /* current */
            invokevirtual java.io.File.getName:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 5
         4: .line 1443
            goto 9
         5: .line 1447
      StackMap locals: java.io.File
      StackMap stack:
            aload 0 /* this */
            aload 1 /* app */
            aload 6 /* current */
            invokevirtual org.apache.catalina.startup.HostConfig.isDeletableResource:(Lorg/apache/catalina/startup/HostConfig$DeployedApplication;Ljava/io/File;)Z
            ifeq 9
         6: .line 1448
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            invokeinterface org.apache.juli.logging.Log.isDebugEnabled:()Z
            ifeq 8
         7: .line 1449
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            new java.lang.StringBuilder
            dup
            ldc "Delete "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 6 /* current */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface org.apache.juli.logging.Log.debug:(Ljava/lang/Object;)V
         8: .line 1451
      StackMap locals:
      StackMap stack:
            aload 6 /* current */
            invokestatic org.apache.catalina.startup.ExpandWar.delete:(Ljava/io/File;)Z
            pop
        end local 6 // java.io.File current
         9: .line 1439
      StackMap locals:
      StackMap stack:
            iinc 5 /* j */ 1
      StackMap locals:
      StackMap stack:
        10: iload 5 /* j */
            aload 2 /* resources */
            arraylength
            if_icmplt 2
        end local 5 // int j
        11: .line 1456
            iload 4 /* deleteReloadResources */
            ifeq 24
        12: .line 1457
            aload 1 /* app */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.reloadResources:Ljava/util/HashMap;
            invokevirtual java.util.HashMap.keySet:()Ljava/util/Set;
            iconst_0
            anewarray java.lang.String
            invokeinterface java.util.Set.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast java.lang.String[]
            astore 5 /* resources2 */
        start local 5 // java.lang.String[] resources2
        13: .line 1458
            aload 5 /* resources2 */
            dup
            astore 9
            arraylength
            istore 8
            iconst_0
            istore 7
            goto 23
      StackMap locals: org.apache.catalina.startup.HostConfig org.apache.catalina.startup.HostConfig$DeployedApplication java.lang.String[] int int java.lang.String[] top int int java.lang.String[]
      StackMap stack:
        14: aload 9
            iload 7
            aaload
            astore 6 /* s */
        start local 6 // java.lang.String s
        15: .line 1459
            new java.io.File
            dup
            aload 6 /* s */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            astore 10 /* current */
        start local 10 // java.io.File current
        16: .line 1461
            ldc "context.xml.default"
            aload 10 /* current */
            invokevirtual java.io.File.getName:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 18
        17: .line 1462
            goto 22
        18: .line 1466
      StackMap locals: org.apache.catalina.startup.HostConfig org.apache.catalina.startup.HostConfig$DeployedApplication java.lang.String[] int int java.lang.String[] java.lang.String int int java.lang.String[] java.io.File
      StackMap stack:
            aload 0 /* this */
            aload 1 /* app */
            aload 10 /* current */
            invokevirtual org.apache.catalina.startup.HostConfig.isDeletableResource:(Lorg/apache/catalina/startup/HostConfig$DeployedApplication;Ljava/io/File;)Z
            ifeq 22
        19: .line 1467
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            invokeinterface org.apache.juli.logging.Log.isDebugEnabled:()Z
            ifeq 21
        20: .line 1468
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            new java.lang.StringBuilder
            dup
            ldc "Delete "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 10 /* current */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface org.apache.juli.logging.Log.debug:(Ljava/lang/Object;)V
        21: .line 1470
      StackMap locals:
      StackMap stack:
            aload 10 /* current */
            invokestatic org.apache.catalina.startup.ExpandWar.delete:(Ljava/io/File;)Z
            pop
        end local 10 // java.io.File current
        end local 6 // java.lang.String s
        22: .line 1458
      StackMap locals: org.apache.catalina.startup.HostConfig org.apache.catalina.startup.HostConfig$DeployedApplication java.lang.String[] int int java.lang.String[] top int int java.lang.String[]
      StackMap stack:
            iinc 7 1
      StackMap locals:
      StackMap stack:
        23: iload 7
            iload 8
            if_icmplt 14
        end local 5 // java.lang.String[] resources2
        24: .line 1474
      StackMap locals: org.apache.catalina.startup.HostConfig org.apache.catalina.startup.HostConfig$DeployedApplication java.lang.String[] int int
      StackMap stack:
            return
        end local 4 // boolean deleteReloadResources
        end local 3 // int i
        end local 2 // java.lang.String[] resources
        end local 1 // org.apache.catalina.startup.HostConfig$DeployedApplication app
        end local 0 // org.apache.catalina.startup.HostConfig this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0   25     0                   this  Lorg/apache/catalina/startup/HostConfig;
            0   25     1                    app  Lorg/apache/catalina/startup/HostConfig$DeployedApplication;
            0   25     2              resources  [Ljava/lang/String;
            0   25     3                      i  I
            0   25     4  deleteReloadResources  Z
            1   11     5                      j  I
            3    9     6                current  Ljava/io/File;
           13   24     5             resources2  [Ljava/lang/String;
           15   22     6                      s  Ljava/lang/String;
           16   22    10                current  Ljava/io/File;
    MethodParameters:
                       Name  Flags
      app                    
      resources              
      i                      
      deleteReloadResources  

  private boolean isDeletableResource(org.apache.catalina.startup.HostConfig$DeployedApplication, java.io.File);
    descriptor: (Lorg/apache/catalina/startup/HostConfig$DeployedApplication;Ljava/io/File;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=7, args_size=3
        start local 0 // org.apache.catalina.startup.HostConfig this
        start local 1 // org.apache.catalina.startup.HostConfig$DeployedApplication app
        start local 2 // java.io.File resource
         0: .line 1489
            aload 2 /* resource */
            invokevirtual java.io.File.isAbsolute:()Z
            ifne 3
         1: .line 1490
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            getstatic org.apache.catalina.startup.HostConfig.sm:Lorg/apache/tomcat/util/res/StringManager;
            ldc "hostConfig.resourceNotAbsolute"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* app */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.name:Ljava/lang/String;
            aastore
            dup
            iconst_1
            aload 2 /* resource */
            aastore
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokeinterface org.apache.juli.logging.Log.warn:(Ljava/lang/Object;)V
         2: .line 1491
            iconst_0
            ireturn
         3: .line 1497
      StackMap locals:
      StackMap stack:
            aload 2 /* resource */
            invokevirtual java.io.File.getParentFile:()Ljava/io/File;
            invokevirtual java.io.File.getCanonicalPath:()Ljava/lang/String;
            astore 3 /* canonicalLocation */
        start local 3 // java.lang.String canonicalLocation
         4: .line 1498
            goto 12
        end local 3 // java.lang.String canonicalLocation
      StackMap locals:
      StackMap stack: java.io.IOException
         5: astore 4 /* e */
        start local 4 // java.io.IOException e
         6: .line 1499
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            getstatic org.apache.catalina.startup.HostConfig.sm:Lorg/apache/tomcat/util/res/StringManager;
         7: .line 1500
            ldc "hostConfig.canonicalizing"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 2 /* resource */
            invokevirtual java.io.File.getParentFile:()Ljava/io/File;
            aastore
            dup
            iconst_1
            aload 1 /* app */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.name:Ljava/lang/String;
            aastore
         8: .line 1499
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
         9: .line 1500
            aload 4 /* e */
        10: .line 1499
            invokeinterface org.apache.juli.logging.Log.warn:(Ljava/lang/Object;Ljava/lang/Throwable;)V
        11: .line 1501
            iconst_0
            ireturn
        end local 4 // java.io.IOException e
        start local 3 // java.lang.String canonicalLocation
        12: .line 1506
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            invokeinterface org.apache.catalina.Host.getAppBaseFile:()Ljava/io/File;
            invokevirtual java.io.File.getCanonicalPath:()Ljava/lang/String;
            astore 4 /* canonicalAppBase */
        start local 4 // java.lang.String canonicalAppBase
        13: .line 1507
            goto 21
        end local 4 // java.lang.String canonicalAppBase
      StackMap locals:
      StackMap stack: java.io.IOException
        14: astore 5 /* e */
        start local 5 // java.io.IOException e
        15: .line 1508
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            getstatic org.apache.catalina.startup.HostConfig.sm:Lorg/apache/tomcat/util/res/StringManager;
        16: .line 1509
            ldc "hostConfig.canonicalizing"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            invokeinterface org.apache.catalina.Host.getAppBaseFile:()Ljava/io/File;
            aastore
            dup
            iconst_1
            aload 1 /* app */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.name:Ljava/lang/String;
            aastore
        17: .line 1508
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
        18: .line 1509
            aload 5 /* e */
        19: .line 1508
            invokeinterface org.apache.juli.logging.Log.warn:(Ljava/lang/Object;Ljava/lang/Throwable;)V
        20: .line 1510
            iconst_0
            ireturn
        end local 5 // java.io.IOException e
        start local 4 // java.lang.String canonicalAppBase
        21: .line 1513
      StackMap locals: java.lang.String
      StackMap stack:
            aload 3 /* canonicalLocation */
            aload 4 /* canonicalAppBase */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 23
        22: .line 1515
            iconst_1
            ireturn
        23: .line 1520
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            invokeinterface org.apache.catalina.Host.getConfigBaseFile:()Ljava/io/File;
            invokevirtual java.io.File.getCanonicalPath:()Ljava/lang/String;
            astore 5 /* canonicalConfigBase */
        start local 5 // java.lang.String canonicalConfigBase
        24: .line 1521
            goto 32
        end local 5 // java.lang.String canonicalConfigBase
      StackMap locals:
      StackMap stack: java.io.IOException
        25: astore 6 /* e */
        start local 6 // java.io.IOException e
        26: .line 1522
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            getstatic org.apache.catalina.startup.HostConfig.sm:Lorg/apache/tomcat/util/res/StringManager;
        27: .line 1523
            ldc "hostConfig.canonicalizing"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            invokeinterface org.apache.catalina.Host.getConfigBaseFile:()Ljava/io/File;
            aastore
            dup
            iconst_1
            aload 1 /* app */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.name:Ljava/lang/String;
            aastore
        28: .line 1522
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
        29: .line 1523
            aload 6 /* e */
        30: .line 1522
            invokeinterface org.apache.juli.logging.Log.warn:(Ljava/lang/Object;Ljava/lang/Throwable;)V
        31: .line 1524
            iconst_0
            ireturn
        end local 6 // java.io.IOException e
        start local 5 // java.lang.String canonicalConfigBase
        32: .line 1527
      StackMap locals: java.lang.String
      StackMap stack:
            aload 3 /* canonicalLocation */
            aload 5 /* canonicalConfigBase */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 35
        33: .line 1528
            aload 2 /* resource */
            invokevirtual java.io.File.getName:()Ljava/lang/String;
            ldc ".xml"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifeq 35
        34: .line 1530
            iconst_1
            ireturn
        35: .line 1534
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 5 // java.lang.String canonicalConfigBase
        end local 4 // java.lang.String canonicalAppBase
        end local 3 // java.lang.String canonicalLocation
        end local 2 // java.io.File resource
        end local 1 // org.apache.catalina.startup.HostConfig$DeployedApplication app
        end local 0 // org.apache.catalina.startup.HostConfig this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   36     0                 this  Lorg/apache/catalina/startup/HostConfig;
            0   36     1                  app  Lorg/apache/catalina/startup/HostConfig$DeployedApplication;
            0   36     2             resource  Ljava/io/File;
            4    5     3    canonicalLocation  Ljava/lang/String;
           12   36     3    canonicalLocation  Ljava/lang/String;
            6   12     4                    e  Ljava/io/IOException;
           13   14     4     canonicalAppBase  Ljava/lang/String;
           21   36     4     canonicalAppBase  Ljava/lang/String;
           15   21     5                    e  Ljava/io/IOException;
           24   25     5  canonicalConfigBase  Ljava/lang/String;
           32   36     5  canonicalConfigBase  Ljava/lang/String;
           26   32     6                    e  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           3     4       5  Class java.io.IOException
          12    13      14  Class java.io.IOException
          23    24      25  Class java.io.IOException
    MethodParameters:
          Name  Flags
      app       
      resource  

  public void beforeStart();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=6, args_size=1
        start local 0 // org.apache.catalina.startup.HostConfig this
         0: .line 1539
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            invokeinterface org.apache.catalina.Host.getCreateDirs:()Z
            ifeq 8
         1: .line 1540
            iconst_2
            anewarray java.io.File
            dup
            iconst_0
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            invokeinterface org.apache.catalina.Host.getAppBaseFile:()Ljava/io/File;
            aastore
            dup
            iconst_1
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            invokeinterface org.apache.catalina.Host.getConfigBaseFile:()Ljava/io/File;
            aastore
            astore 1 /* dirs */
        start local 1 // java.io.File[] dirs
         2: .line 1541
            aload 1 /* dirs */
            dup
            astore 5
            arraylength
            istore 4
            iconst_0
            istore 3
            goto 7
      StackMap locals: org.apache.catalina.startup.HostConfig java.io.File[] top int int java.io.File[]
      StackMap stack:
         3: aload 5
            iload 3
            aaload
            astore 2 /* dir */
        start local 2 // java.io.File dir
         4: .line 1542
            aload 2 /* dir */
            invokevirtual java.io.File.mkdirs:()Z
            ifne 6
            aload 2 /* dir */
            invokevirtual java.io.File.isDirectory:()Z
            ifne 6
         5: .line 1543
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            getstatic org.apache.catalina.startup.HostConfig.sm:Lorg/apache/tomcat/util/res/StringManager;
            ldc "hostConfig.createDirs"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 2 /* dir */
            aastore
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokeinterface org.apache.juli.logging.Log.error:(Ljava/lang/Object;)V
        end local 2 // java.io.File dir
         6: .line 1541
      StackMap locals:
      StackMap stack:
            iinc 3 1
      StackMap locals:
      StackMap stack:
         7: iload 3
            iload 4
            if_icmplt 3
        end local 1 // java.io.File[] dirs
         8: .line 1547
      StackMap locals: org.apache.catalina.startup.HostConfig
      StackMap stack:
            return
        end local 0 // org.apache.catalina.startup.HostConfig this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Lorg/apache/catalina/startup/HostConfig;
            2    8     1  dirs  [Ljava/io/File;
            4    6     2   dir  Ljava/io/File;

  public void start();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=2, args_size=1
        start local 0 // org.apache.catalina.startup.HostConfig this
         0: .line 1555
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            invokeinterface org.apache.juli.logging.Log.isDebugEnabled:()Z
            ifeq 2
         1: .line 1556
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            getstatic org.apache.catalina.startup.HostConfig.sm:Lorg/apache/tomcat/util/res/StringManager;
            ldc "hostConfig.start"
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;)Ljava/lang/String;
            invokeinterface org.apache.juli.logging.Log.debug:(Ljava/lang/Object;)V
         2: .line 1559
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            invokeinterface org.apache.catalina.Host.getObjectName:()Ljavax/management/ObjectName;
            astore 1 /* hostON */
        start local 1 // javax.management.ObjectName hostON
         3: .line 1560
            aload 0 /* this */
            new javax.management.ObjectName
            dup
         4: .line 1561
            new java.lang.StringBuilder
            dup
            aload 1 /* hostON */
            invokevirtual javax.management.ObjectName.getDomain:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ":type=Deployer,host="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            invokeinterface org.apache.catalina.Host.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial javax.management.ObjectName.<init>:(Ljava/lang/String;)V
         5: .line 1560
            putfield org.apache.catalina.startup.HostConfig.oname:Ljavax/management/ObjectName;
         6: .line 1562
            aconst_null
            aconst_null
            invokestatic org.apache.tomcat.util.modeler.Registry.getRegistry:(Ljava/lang/Object;Ljava/lang/Object;)Lorg/apache/tomcat/util/modeler/Registry;
         7: .line 1563
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.oname:Ljavax/management/ObjectName;
            aload 0 /* this */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
         8: .line 1562
            invokevirtual org.apache.tomcat.util.modeler.Registry.registerComponent:(Ljava/lang/Object;Ljavax/management/ObjectName;Ljava/lang/String;)V
        end local 1 // javax.management.ObjectName hostON
         9: .line 1564
            goto 12
      StackMap locals:
      StackMap stack: java.lang.Exception
        10: astore 1 /* e */
        start local 1 // java.lang.Exception e
        11: .line 1565
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            getstatic org.apache.catalina.startup.HostConfig.sm:Lorg/apache/tomcat/util/res/StringManager;
            ldc "hostConfig.jmx.register"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.oname:Ljavax/management/ObjectName;
            aastore
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            aload 1 /* e */
            invokeinterface org.apache.juli.logging.Log.warn:(Ljava/lang/Object;Ljava/lang/Throwable;)V
        end local 1 // java.lang.Exception e
        12: .line 1568
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            invokeinterface org.apache.catalina.Host.getAppBaseFile:()Ljava/io/File;
            invokevirtual java.io.File.isDirectory:()Z
            ifne 18
        13: .line 1569
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            getstatic org.apache.catalina.startup.HostConfig.sm:Lorg/apache/tomcat/util/res/StringManager;
            ldc "hostConfig.appBase"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            invokeinterface org.apache.catalina.Host.getName:()Ljava/lang/String;
            aastore
            dup
            iconst_1
        14: .line 1570
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            invokeinterface org.apache.catalina.Host.getAppBaseFile:()Ljava/io/File;
            invokevirtual java.io.File.getPath:()Ljava/lang/String;
            aastore
        15: .line 1569
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokeinterface org.apache.juli.logging.Log.error:(Ljava/lang/Object;)V
        16: .line 1571
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            iconst_0
            invokeinterface org.apache.catalina.Host.setDeployOnStartup:(Z)V
        17: .line 1572
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            iconst_0
            invokeinterface org.apache.catalina.Host.setAutoDeploy:(Z)V
        18: .line 1575
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            invokeinterface org.apache.catalina.Host.getDeployOnStartup:()Z
            ifeq 20
        19: .line 1576
            aload 0 /* this */
            invokevirtual org.apache.catalina.startup.HostConfig.deployApps:()V
        20: .line 1578
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.apache.catalina.startup.HostConfig this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   21     0    this  Lorg/apache/catalina/startup/HostConfig;
            3    9     1  hostON  Ljavax/management/ObjectName;
           11   12     1       e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           2     9      10  Class java.lang.Exception

  public void stop();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=2, args_size=1
        start local 0 // org.apache.catalina.startup.HostConfig this
         0: .line 1586
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            invokeinterface org.apache.juli.logging.Log.isDebugEnabled:()Z
            ifeq 2
         1: .line 1587
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            getstatic org.apache.catalina.startup.HostConfig.sm:Lorg/apache/tomcat/util/res/StringManager;
            ldc "hostConfig.stop"
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;)Ljava/lang/String;
            invokeinterface org.apache.juli.logging.Log.debug:(Ljava/lang/Object;)V
         2: .line 1589
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.oname:Ljavax/management/ObjectName;
            ifnull 7
         3: .line 1591
            aconst_null
            aconst_null
            invokestatic org.apache.tomcat.util.modeler.Registry.getRegistry:(Ljava/lang/Object;Ljava/lang/Object;)Lorg/apache/tomcat/util/modeler/Registry;
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.oname:Ljavax/management/ObjectName;
            invokevirtual org.apache.tomcat.util.modeler.Registry.unregisterComponent:(Ljavax/management/ObjectName;)V
         4: .line 1592
            goto 7
      StackMap locals:
      StackMap stack: java.lang.Exception
         5: astore 1 /* e */
        start local 1 // java.lang.Exception e
         6: .line 1593
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            getstatic org.apache.catalina.startup.HostConfig.sm:Lorg/apache/tomcat/util/res/StringManager;
            ldc "hostConfig.jmx.unregister"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.oname:Ljavax/management/ObjectName;
            aastore
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            aload 1 /* e */
            invokeinterface org.apache.juli.logging.Log.warn:(Ljava/lang/Object;Ljava/lang/Throwable;)V
        end local 1 // java.lang.Exception e
         7: .line 1596
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aconst_null
            putfield org.apache.catalina.startup.HostConfig.oname:Ljavax/management/ObjectName;
         8: .line 1597
            return
        end local 0 // org.apache.catalina.startup.HostConfig this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Lorg/apache/catalina/startup/HostConfig;
            6    7     1     e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           3     4       5  Class java.lang.Exception

  protected void check();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=6, args_size=1
        start local 0 // org.apache.catalina.startup.HostConfig this
         0: .line 1605
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            invokeinterface org.apache.catalina.Host.getAutoDeploy:()Z
            ifeq 12
         1: .line 1608
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.deployed:Ljava/util/Map;
            invokeinterface java.util.Map.values:()Ljava/util/Collection;
            iconst_0
            anewarray org.apache.catalina.startup.HostConfig$DeployedApplication
            invokeinterface java.util.Collection.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast org.apache.catalina.startup.HostConfig$DeployedApplication[]
         2: .line 1607
            astore 1 /* apps */
        start local 1 // org.apache.catalina.startup.HostConfig$DeployedApplication[] apps
         3: .line 1609
            aload 1 /* apps */
            dup
            astore 5
            arraylength
            istore 4
            iconst_0
            istore 3
            goto 8
      StackMap locals: org.apache.catalina.startup.HostConfig org.apache.catalina.startup.HostConfig$DeployedApplication[] top int int org.apache.catalina.startup.HostConfig$DeployedApplication[]
      StackMap stack:
         4: aload 5
            iload 3
            aaload
            astore 2 /* app */
        start local 2 // org.apache.catalina.startup.HostConfig$DeployedApplication app
         5: .line 1610
            aload 0 /* this */
            aload 2 /* app */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.name:Ljava/lang/String;
            invokevirtual org.apache.catalina.startup.HostConfig.isServiced:(Ljava/lang/String;)Z
            ifne 7
         6: .line 1611
            aload 0 /* this */
            aload 2 /* app */
            iconst_0
            invokevirtual org.apache.catalina.startup.HostConfig.checkResources:(Lorg/apache/catalina/startup/HostConfig$DeployedApplication;Z)V
        end local 2 // org.apache.catalina.startup.HostConfig$DeployedApplication app
         7: .line 1609
      StackMap locals:
      StackMap stack:
            iinc 3 1
      StackMap locals:
      StackMap stack:
         8: iload 3
            iload 4
            if_icmplt 4
         9: .line 1615
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            invokeinterface org.apache.catalina.Host.getUndeployOldVersions:()Z
            ifeq 11
        10: .line 1616
            aload 0 /* this */
            invokevirtual org.apache.catalina.startup.HostConfig.checkUndeploy:()V
        11: .line 1620
      StackMap locals: org.apache.catalina.startup.HostConfig org.apache.catalina.startup.HostConfig$DeployedApplication[]
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.catalina.startup.HostConfig.deployApps:()V
        end local 1 // org.apache.catalina.startup.HostConfig$DeployedApplication[] apps
        12: .line 1622
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.apache.catalina.startup.HostConfig this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   13     0  this  Lorg/apache/catalina/startup/HostConfig;
            3   12     1  apps  [Lorg/apache/catalina/startup/HostConfig$DeployedApplication;
            5    7     2   app  Lorg/apache/catalina/startup/HostConfig$DeployedApplication;

  public void check(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.apache.catalina.startup.HostConfig this
        start local 1 // java.lang.String name
         0: .line 1638
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.deployed:Ljava/util/Map;
            aload 1 /* name */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.apache.catalina.startup.HostConfig$DeployedApplication
            astore 2 /* app */
        start local 2 // org.apache.catalina.startup.HostConfig$DeployedApplication app
         1: .line 1639
            aload 2 /* app */
            ifnull 3
         2: .line 1640
            aload 0 /* this */
            aload 2 /* app */
            iconst_1
            invokevirtual org.apache.catalina.startup.HostConfig.checkResources:(Lorg/apache/catalina/startup/HostConfig$DeployedApplication;Z)V
         3: .line 1642
      StackMap locals: org.apache.catalina.startup.HostConfig$DeployedApplication
      StackMap stack:
            aload 0 /* this */
            aload 1 /* name */
            invokevirtual org.apache.catalina.startup.HostConfig.deployApps:(Ljava/lang/String;)V
         4: .line 1643
            return
        end local 2 // org.apache.catalina.startup.HostConfig$DeployedApplication app
        end local 1 // java.lang.String name
        end local 0 // org.apache.catalina.startup.HostConfig this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/apache/catalina/startup/HostConfig;
            0    5     1  name  Ljava/lang/String;
            1    5     2   app  Lorg/apache/catalina/startup/HostConfig$DeployedApplication;
    MethodParameters:
      Name  Flags
      name  

  public synchronized void checkUndeploy();
    descriptor: ()V
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=7, locals=11, args_size=1
        start local 0 // org.apache.catalina.startup.HostConfig this
         0: .line 1650
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.deployed:Ljava/util/Map;
            invokeinterface java.util.Map.size:()I
            iconst_2
            if_icmpge 2
         1: .line 1651
            return
         2: .line 1655
      StackMap locals:
      StackMap stack:
            new java.util.TreeSet
            dup
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.deployed:Ljava/util/Map;
            invokeinterface java.util.Map.keySet:()Ljava/util/Set;
            invokespecial java.util.TreeSet.<init>:(Ljava/util/Collection;)V
            astore 1 /* sortedAppNames */
        start local 1 // java.util.SortedSet sortedAppNames
         3: .line 1657
            aload 1 /* sortedAppNames */
            invokeinterface java.util.SortedSet.iterator:()Ljava/util/Iterator;
            astore 2 /* iter */
        start local 2 // java.util.Iterator iter
         4: .line 1659
            new org.apache.catalina.util.ContextName
            dup
            aload 2 /* iter */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            iconst_0
            invokespecial org.apache.catalina.util.ContextName.<init>:(Ljava/lang/String;Z)V
            astore 3 /* previous */
        start local 3 // org.apache.catalina.util.ContextName previous
         5: .line 1661
      StackMap locals: java.util.SortedSet java.util.Iterator org.apache.catalina.util.ContextName
      StackMap stack:
            new org.apache.catalina.util.ContextName
            dup
            aload 2 /* iter */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            iconst_0
            invokespecial org.apache.catalina.util.ContextName.<init>:(Ljava/lang/String;Z)V
            astore 4 /* current */
        start local 4 // org.apache.catalina.util.ContextName current
         6: .line 1663
            aload 4 /* current */
            invokevirtual org.apache.catalina.util.ContextName.getPath:()Ljava/lang/String;
            aload 3 /* previous */
            invokevirtual org.apache.catalina.util.ContextName.getPath:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 27
         7: .line 1666
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            aload 3 /* previous */
            invokevirtual org.apache.catalina.util.ContextName.getName:()Ljava/lang/String;
            invokeinterface org.apache.catalina.Host.findChild:(Ljava/lang/String;)Lorg/apache/catalina/Container;
            checkcast org.apache.catalina.Context
            astore 5 /* previousContext */
        start local 5 // org.apache.catalina.Context previousContext
         8: .line 1667
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            aload 4 /* current */
            invokevirtual org.apache.catalina.util.ContextName.getName:()Ljava/lang/String;
            invokeinterface org.apache.catalina.Host.findChild:(Ljava/lang/String;)Lorg/apache/catalina/Container;
            checkcast org.apache.catalina.Context
            astore 6 /* currentContext */
        start local 6 // org.apache.catalina.Context currentContext
         9: .line 1668
            aload 5 /* previousContext */
            ifnull 27
            aload 6 /* currentContext */
            ifnull 27
        10: .line 1669
            aload 6 /* currentContext */
            invokeinterface org.apache.catalina.Context.getState:()Lorg/apache/catalina/LifecycleState;
            invokevirtual org.apache.catalina.LifecycleState.isAvailable:()Z
            ifeq 27
        11: .line 1670
            aload 0 /* this */
            aload 3 /* previous */
            invokevirtual org.apache.catalina.util.ContextName.getName:()Ljava/lang/String;
            invokevirtual org.apache.catalina.startup.HostConfig.isServiced:(Ljava/lang/String;)Z
            ifne 27
        12: .line 1671
            aload 5 /* previousContext */
            invokeinterface org.apache.catalina.Context.getManager:()Lorg/apache/catalina/Manager;
            astore 7 /* manager */
        start local 7 // org.apache.catalina.Manager manager
        13: .line 1672
            aload 7 /* manager */
            ifnull 27
        14: .line 1674
            aload 7 /* manager */
            instanceof org.apache.catalina.DistributedManager
            ifeq 17
        15: .line 1675
            aload 7 /* manager */
            checkcast org.apache.catalina.DistributedManager
            invokeinterface org.apache.catalina.DistributedManager.getActiveSessionsFull:()I
            istore 8 /* sessionCount */
        start local 8 // int sessionCount
        16: .line 1676
            goto 18
        end local 8 // int sessionCount
        17: .line 1677
      StackMap locals: org.apache.catalina.startup.HostConfig java.util.SortedSet java.util.Iterator org.apache.catalina.util.ContextName org.apache.catalina.util.ContextName org.apache.catalina.Context org.apache.catalina.Context org.apache.catalina.Manager
      StackMap stack:
            aload 7 /* manager */
            invokeinterface org.apache.catalina.Manager.getActiveSessions:()I
            istore 8 /* sessionCount */
        start local 8 // int sessionCount
        18: .line 1679
      StackMap locals: int
      StackMap stack:
            iload 8 /* sessionCount */
            ifne 27
        19: .line 1680
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            invokeinterface org.apache.juli.logging.Log.isInfoEnabled:()Z
            ifeq 23
        20: .line 1681
            getstatic org.apache.catalina.startup.HostConfig.log:Lorg/apache/juli/logging/Log;
            getstatic org.apache.catalina.startup.HostConfig.sm:Lorg/apache/tomcat/util/res/StringManager;
        21: .line 1682
            ldc "hostConfig.undeployVersion"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 3 /* previous */
            invokevirtual org.apache.catalina.util.ContextName.getName:()Ljava/lang/String;
            aastore
        22: .line 1681
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokeinterface org.apache.juli.logging.Log.info:(Ljava/lang/Object;)V
        23: .line 1684
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.deployed:Ljava/util/Map;
            aload 3 /* previous */
            invokevirtual org.apache.catalina.util.ContextName.getName:()Ljava/lang/String;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.apache.catalina.startup.HostConfig$DeployedApplication
            astore 9 /* app */
        start local 9 // org.apache.catalina.startup.HostConfig$DeployedApplication app
        24: .line 1685
            aload 9 /* app */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.redeployResources:Ljava/util/LinkedHashMap;
            invokevirtual java.util.LinkedHashMap.keySet:()Ljava/util/Set;
            iconst_0
            anewarray java.lang.String
            invokeinterface java.util.Set.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast java.lang.String[]
            astore 10 /* resources */
        start local 10 // java.lang.String[] resources
        25: .line 1689
            aload 0 /* this */
            aload 9 /* app */
            invokevirtual org.apache.catalina.startup.HostConfig.undeploy:(Lorg/apache/catalina/startup/HostConfig$DeployedApplication;)V
        26: .line 1690
            aload 0 /* this */
            aload 9 /* app */
            aload 10 /* resources */
            iconst_m1
            iconst_1
            invokevirtual org.apache.catalina.startup.HostConfig.deleteRedeployResources:(Lorg/apache/catalina/startup/HostConfig$DeployedApplication;[Ljava/lang/String;IZ)V
        end local 10 // java.lang.String[] resources
        end local 9 // org.apache.catalina.startup.HostConfig$DeployedApplication app
        end local 8 // int sessionCount
        end local 7 // org.apache.catalina.Manager manager
        end local 6 // org.apache.catalina.Context currentContext
        end local 5 // org.apache.catalina.Context previousContext
        27: .line 1695
      StackMap locals: org.apache.catalina.startup.HostConfig java.util.SortedSet java.util.Iterator org.apache.catalina.util.ContextName org.apache.catalina.util.ContextName
      StackMap stack:
            aload 4 /* current */
            astore 3 /* previous */
        end local 4 // org.apache.catalina.util.ContextName current
        28: .line 1696
            aload 2 /* iter */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 5
        29: .line 1697
            return
        end local 3 // org.apache.catalina.util.ContextName previous
        end local 2 // java.util.Iterator iter
        end local 1 // java.util.SortedSet sortedAppNames
        end local 0 // org.apache.catalina.startup.HostConfig this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   30     0             this  Lorg/apache/catalina/startup/HostConfig;
            3   30     1   sortedAppNames  Ljava/util/SortedSet<Ljava/lang/String;>;
            4   30     2             iter  Ljava/util/Iterator<Ljava/lang/String;>;
            5   30     3         previous  Lorg/apache/catalina/util/ContextName;
            6   28     4          current  Lorg/apache/catalina/util/ContextName;
            8   27     5  previousContext  Lorg/apache/catalina/Context;
            9   27     6   currentContext  Lorg/apache/catalina/Context;
           13   27     7          manager  Lorg/apache/catalina/Manager;
           16   17     8     sessionCount  I
           18   27     8     sessionCount  I
           24   27     9              app  Lorg/apache/catalina/startup/HostConfig$DeployedApplication;
           25   27    10        resources  [Ljava/lang/String;

  public void manageApp(org.apache.catalina.Context);
    descriptor: (Lorg/apache/catalina/Context;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=7, args_size=2
        start local 0 // org.apache.catalina.startup.HostConfig this
        start local 1 // org.apache.catalina.Context context
         0: .line 1706
            aload 1 /* context */
            invokeinterface org.apache.catalina.Context.getName:()Ljava/lang/String;
            astore 2 /* contextName */
        start local 2 // java.lang.String contextName
         1: .line 1708
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.deployed:Ljava/util/Map;
            aload 2 /* contextName */
            invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
            ifeq 3
         2: .line 1709
            return
         3: .line 1712
      StackMap locals: java.lang.String
      StackMap stack:
            new org.apache.catalina.startup.HostConfig$DeployedApplication
            dup
            aload 2 /* contextName */
            iconst_0
            invokespecial org.apache.catalina.startup.HostConfig$DeployedApplication.<init>:(Ljava/lang/String;Z)V
         4: .line 1711
            astore 3 /* deployedApp */
        start local 3 // org.apache.catalina.startup.HostConfig$DeployedApplication deployedApp
         5: .line 1715
            iconst_0
            istore 4 /* isWar */
        start local 4 // boolean isWar
         6: .line 1716
            aload 1 /* context */
            invokeinterface org.apache.catalina.Context.getDocBase:()Ljava/lang/String;
            ifnull 15
         7: .line 1717
            new java.io.File
            dup
            aload 1 /* context */
            invokeinterface org.apache.catalina.Context.getDocBase:()Ljava/lang/String;
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            astore 5 /* docBase */
        start local 5 // java.io.File docBase
         8: .line 1718
            aload 5 /* docBase */
            invokevirtual java.io.File.isAbsolute:()Z
            ifne 10
         9: .line 1719
            new java.io.File
            dup
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            invokeinterface org.apache.catalina.Host.getAppBaseFile:()Ljava/io/File;
            aload 1 /* context */
            invokeinterface org.apache.catalina.Context.getDocBase:()Ljava/lang/String;
            invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
            astore 5 /* docBase */
        10: .line 1721
      StackMap locals: org.apache.catalina.startup.HostConfig$DeployedApplication int java.io.File
      StackMap stack:
            aload 3 /* deployedApp */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.redeployResources:Ljava/util/LinkedHashMap;
            aload 5 /* docBase */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
        11: .line 1722
            aload 5 /* docBase */
            invokevirtual java.io.File.lastModified:()J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
        12: .line 1721
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        13: .line 1723
            aload 5 /* docBase */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
            getstatic java.util.Locale.ENGLISH:Ljava/util/Locale;
            invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
            ldc ".war"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifeq 15
        14: .line 1724
            iconst_1
            istore 4 /* isWar */
        end local 5 // java.io.File docBase
        15: .line 1727
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            aload 1 /* context */
            invokeinterface org.apache.catalina.Host.addChild:(Lorg/apache/catalina/Container;)V
        16: .line 1730
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.unpackWARs:Z
            istore 5 /* unpackWAR */
        start local 5 // boolean unpackWAR
        17: .line 1731
            iload 5 /* unpackWAR */
            ifeq 19
            aload 1 /* context */
            instanceof org.apache.catalina.core.StandardContext
            ifeq 19
        18: .line 1732
            aload 1 /* context */
            checkcast org.apache.catalina.core.StandardContext
            invokevirtual org.apache.catalina.core.StandardContext.getUnpackWAR:()Z
            istore 5 /* unpackWAR */
        19: .line 1734
      StackMap locals: int
      StackMap stack:
            iload 4 /* isWar */
            ifeq 26
            iload 5 /* unpackWAR */
            ifeq 26
        20: .line 1735
            new java.io.File
            dup
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            invokeinterface org.apache.catalina.Host.getAppBaseFile:()Ljava/io/File;
            aload 1 /* context */
            invokeinterface org.apache.catalina.Context.getBaseName:()Ljava/lang/String;
            invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
            astore 6 /* docBase */
        start local 6 // java.io.File docBase
        21: .line 1736
            aload 3 /* deployedApp */
            getfield org.apache.catalina.startup.HostConfig$DeployedApplication.redeployResources:Ljava/util/LinkedHashMap;
            aload 6 /* docBase */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
        22: .line 1737
            aload 6 /* docBase */
            invokevirtual java.io.File.lastModified:()J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
        23: .line 1736
            invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        24: .line 1738
            aload 0 /* this */
            aload 3 /* deployedApp */
            aload 6 /* docBase */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
            aload 1 /* context */
            invokevirtual org.apache.catalina.startup.HostConfig.addWatchedResources:(Lorg/apache/catalina/startup/HostConfig$DeployedApplication;Ljava/lang/String;Lorg/apache/catalina/Context;)V
        end local 6 // java.io.File docBase
        25: .line 1739
            goto 27
        26: .line 1740
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 3 /* deployedApp */
            aconst_null
            aload 1 /* context */
            invokevirtual org.apache.catalina.startup.HostConfig.addWatchedResources:(Lorg/apache/catalina/startup/HostConfig$DeployedApplication;Ljava/lang/String;Lorg/apache/catalina/Context;)V
        27: .line 1742
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.deployed:Ljava/util/Map;
            aload 2 /* contextName */
            aload 3 /* deployedApp */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        28: .line 1743
            return
        end local 5 // boolean unpackWAR
        end local 4 // boolean isWar
        end local 3 // org.apache.catalina.startup.HostConfig$DeployedApplication deployedApp
        end local 2 // java.lang.String contextName
        end local 1 // org.apache.catalina.Context context
        end local 0 // org.apache.catalina.startup.HostConfig this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   29     0         this  Lorg/apache/catalina/startup/HostConfig;
            0   29     1      context  Lorg/apache/catalina/Context;
            1   29     2  contextName  Ljava/lang/String;
            5   29     3  deployedApp  Lorg/apache/catalina/startup/HostConfig$DeployedApplication;
            6   29     4        isWar  Z
            8   15     5      docBase  Ljava/io/File;
           17   29     5    unpackWAR  Z
           21   25     6      docBase  Ljava/io/File;
    MethodParameters:
         Name  Flags
      context  

  public void unmanageApp(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.apache.catalina.startup.HostConfig this
        start local 1 // java.lang.String contextName
         0: .line 1751
            aload 0 /* this */
            aload 1 /* contextName */
            invokevirtual org.apache.catalina.startup.HostConfig.isServiced:(Ljava/lang/String;)Z
            ifeq 3
         1: .line 1752
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.deployed:Ljava/util/Map;
            aload 1 /* contextName */
            invokeinterface java.util.Map.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         2: .line 1753
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            aload 0 /* this */
            getfield org.apache.catalina.startup.HostConfig.host:Lorg/apache/catalina/Host;
            aload 1 /* contextName */
            invokeinterface org.apache.catalina.Host.findChild:(Ljava/lang/String;)Lorg/apache/catalina/Container;
            invokeinterface org.apache.catalina.Host.removeChild:(Lorg/apache/catalina/Container;)V
         3: .line 1755
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.String contextName
        end local 0 // org.apache.catalina.startup.HostConfig this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0         this  Lorg/apache/catalina/startup/HostConfig;
            0    4     1  contextName  Ljava/lang/String;
    MethodParameters:
             Name  Flags
      contextName  
}
SourceFile: "HostConfig.java"
NestMembers:
  org.apache.catalina.startup.HostConfig$DeployDescriptor  org.apache.catalina.startup.HostConfig$DeployDirectory  org.apache.catalina.startup.HostConfig$DeployWar  org.apache.catalina.startup.HostConfig$DeployedApplication  org.apache.catalina.startup.HostConfig$ExpandedDirectoryRemovalListener
InnerClasses:
  private DeployDescriptor = org.apache.catalina.startup.HostConfig$DeployDescriptor of org.apache.catalina.startup.HostConfig
  private DeployDirectory = org.apache.catalina.startup.HostConfig$DeployDirectory of org.apache.catalina.startup.HostConfig
  private DeployWar = org.apache.catalina.startup.HostConfig$DeployWar of org.apache.catalina.startup.HostConfig
  protected DeployedApplication = org.apache.catalina.startup.HostConfig$DeployedApplication of org.apache.catalina.startup.HostConfig
  private ExpandedDirectoryRemovalListener = org.apache.catalina.startup.HostConfig$ExpandedDirectoryRemovalListener of org.apache.catalina.startup.HostConfig