public class org.apache.commons.configuration.resolver.CatalogResolver implements org.xml.sax.EntityResolver
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.apache.commons.configuration.resolver.CatalogResolver
  super_class: java.lang.Object
{
  private static final int DEBUG_ALL;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 9

  private static final int DEBUG_NORMAL;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 4

  private static final int DEBUG_NONE;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  protected org.apache.commons.configuration.resolver.CatalogResolver$CatalogManager manager;
    descriptor: Lorg/apache/commons/configuration/resolver/CatalogResolver$CatalogManager;
    flags: (0x0004) ACC_PROTECTED

  protected org.apache.commons.configuration.FileSystem fs;
    descriptor: Lorg/apache/commons/configuration/FileSystem;
    flags: (0x0004) ACC_PROTECTED

  private org.apache.xml.resolver.tools.CatalogResolver resolver;
    descriptor: Lorg/apache/xml/resolver/tools/CatalogResolver;
    flags: (0x0002) ACC_PRIVATE

  private org.apache.commons.logging.Log log;
    descriptor: Lorg/apache/commons/logging/Log;
    flags: (0x0002) ACC_PRIVATE

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.apache.commons.configuration.resolver.CatalogResolver this
         0: .line 87
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 67
            aload 0 /* this */
            new org.apache.commons.configuration.resolver.CatalogResolver$CatalogManager
            dup
            invokespecial org.apache.commons.configuration.resolver.CatalogResolver$CatalogManager.<init>:()V
            putfield org.apache.commons.configuration.resolver.CatalogResolver.manager:Lorg/apache/commons/configuration/resolver/CatalogResolver$CatalogManager;
         2: .line 72
            aload 0 /* this */
            invokestatic org.apache.commons.configuration.FileSystem.getDefaultFileSystem:()Lorg/apache/commons/configuration/FileSystem;
            putfield org.apache.commons.configuration.resolver.CatalogResolver.fs:Lorg/apache/commons/configuration/FileSystem;
         3: .line 89
            aload 0 /* this */
            getfield org.apache.commons.configuration.resolver.CatalogResolver.manager:Lorg/apache/commons/configuration/resolver/CatalogResolver$CatalogManager;
            iconst_1
            invokevirtual org.apache.commons.configuration.resolver.CatalogResolver$CatalogManager.setIgnoreMissingProperties:(Z)V
         4: .line 90
            aload 0 /* this */
            getfield org.apache.commons.configuration.resolver.CatalogResolver.manager:Lorg/apache/commons/configuration/resolver/CatalogResolver$CatalogManager;
            iconst_0
            invokevirtual org.apache.commons.configuration.resolver.CatalogResolver$CatalogManager.setUseStaticCatalog:(Z)V
         5: .line 91
            aload 0 /* this */
            getfield org.apache.commons.configuration.resolver.CatalogResolver.manager:Lorg/apache/commons/configuration/resolver/CatalogResolver$CatalogManager;
            aload 0 /* this */
            getfield org.apache.commons.configuration.resolver.CatalogResolver.fs:Lorg/apache/commons/configuration/FileSystem;
            invokevirtual org.apache.commons.configuration.resolver.CatalogResolver$CatalogManager.setFileSystem:(Lorg/apache/commons/configuration/FileSystem;)V
         6: .line 92
            aload 0 /* this */
            aconst_null
            invokevirtual org.apache.commons.configuration.resolver.CatalogResolver.setLogger:(Lorg/apache/commons/logging/Log;)V
         7: .line 93
            return
        end local 0 // org.apache.commons.configuration.resolver.CatalogResolver this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lorg/apache/commons/configuration/resolver/CatalogResolver;

  public void setCatalogFiles(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.commons.configuration.resolver.CatalogResolver this
        start local 1 // java.lang.String catalogs
         0: .line 102
            aload 0 /* this */
            getfield org.apache.commons.configuration.resolver.CatalogResolver.manager:Lorg/apache/commons/configuration/resolver/CatalogResolver$CatalogManager;
            aload 1 /* catalogs */
            invokevirtual org.apache.commons.configuration.resolver.CatalogResolver$CatalogManager.setCatalogFiles:(Ljava/lang/String;)V
         1: .line 103
            return
        end local 1 // java.lang.String catalogs
        end local 0 // org.apache.commons.configuration.resolver.CatalogResolver this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/apache/commons/configuration/resolver/CatalogResolver;
            0    2     1  catalogs  Ljava/lang/String;
    MethodParameters:
          Name  Flags
      catalogs  

  public void setFileSystem(org.apache.commons.configuration.FileSystem);
    descriptor: (Lorg/apache/commons/configuration/FileSystem;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.commons.configuration.resolver.CatalogResolver this
        start local 1 // org.apache.commons.configuration.FileSystem fileSystem
         0: .line 111
            aload 0 /* this */
            aload 1 /* fileSystem */
            putfield org.apache.commons.configuration.resolver.CatalogResolver.fs:Lorg/apache/commons/configuration/FileSystem;
         1: .line 112
            aload 0 /* this */
            getfield org.apache.commons.configuration.resolver.CatalogResolver.manager:Lorg/apache/commons/configuration/resolver/CatalogResolver$CatalogManager;
            aload 1 /* fileSystem */
            invokevirtual org.apache.commons.configuration.resolver.CatalogResolver$CatalogManager.setFileSystem:(Lorg/apache/commons/configuration/FileSystem;)V
         2: .line 113
            return
        end local 1 // org.apache.commons.configuration.FileSystem fileSystem
        end local 0 // org.apache.commons.configuration.resolver.CatalogResolver this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0        this  Lorg/apache/commons/configuration/resolver/CatalogResolver;
            0    3     1  fileSystem  Lorg/apache/commons/configuration/FileSystem;
    MethodParameters:
            Name  Flags
      fileSystem  

  public void setBaseDir(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.commons.configuration.resolver.CatalogResolver this
        start local 1 // java.lang.String baseDir
         0: .line 121
            aload 0 /* this */
            getfield org.apache.commons.configuration.resolver.CatalogResolver.manager:Lorg/apache/commons/configuration/resolver/CatalogResolver$CatalogManager;
            aload 1 /* baseDir */
            invokevirtual org.apache.commons.configuration.resolver.CatalogResolver$CatalogManager.setBaseDir:(Ljava/lang/String;)V
         1: .line 122
            return
        end local 1 // java.lang.String baseDir
        end local 0 // org.apache.commons.configuration.resolver.CatalogResolver this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/apache/commons/configuration/resolver/CatalogResolver;
            0    2     1  baseDir  Ljava/lang/String;
    MethodParameters:
         Name  Flags
      baseDir  

  public void setSubstitutor(org.apache.commons.lang.text.StrSubstitutor);
    descriptor: (Lorg/apache/commons/lang/text/StrSubstitutor;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.commons.configuration.resolver.CatalogResolver this
        start local 1 // org.apache.commons.lang.text.StrSubstitutor substitutor
         0: .line 130
            aload 0 /* this */
            getfield org.apache.commons.configuration.resolver.CatalogResolver.manager:Lorg/apache/commons/configuration/resolver/CatalogResolver$CatalogManager;
            aload 1 /* substitutor */
            invokevirtual org.apache.commons.configuration.resolver.CatalogResolver$CatalogManager.setSubstitutor:(Lorg/apache/commons/lang/text/StrSubstitutor;)V
         1: .line 131
            return
        end local 1 // org.apache.commons.lang.text.StrSubstitutor substitutor
        end local 0 // org.apache.commons.configuration.resolver.CatalogResolver this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lorg/apache/commons/configuration/resolver/CatalogResolver;
            0    2     1  substitutor  Lorg/apache/commons/lang/text/StrSubstitutor;
    MethodParameters:
             Name  Flags
      substitutor  

  public void setDebug(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.commons.configuration.resolver.CatalogResolver this
        start local 1 // boolean debug
         0: .line 139
            iload 1 /* debug */
            ifeq 3
         1: .line 141
            aload 0 /* this */
            getfield org.apache.commons.configuration.resolver.CatalogResolver.manager:Lorg/apache/commons/configuration/resolver/CatalogResolver$CatalogManager;
            bipush 9
            invokevirtual org.apache.commons.configuration.resolver.CatalogResolver$CatalogManager.setVerbosity:(I)V
         2: .line 142
            goto 4
         3: .line 145
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.commons.configuration.resolver.CatalogResolver.manager:Lorg/apache/commons/configuration/resolver/CatalogResolver$CatalogManager;
            iconst_0
            invokevirtual org.apache.commons.configuration.resolver.CatalogResolver$CatalogManager.setVerbosity:(I)V
         4: .line 147
      StackMap locals:
      StackMap stack:
            return
        end local 1 // boolean debug
        end local 0 // org.apache.commons.configuration.resolver.CatalogResolver this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0   this  Lorg/apache/commons/configuration/resolver/CatalogResolver;
            0    5     1  debug  Z
    MethodParameters:
       Name  Flags
      debug  

  public org.xml.sax.InputSource resolveEntity(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Lorg/xml/sax/InputSource;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=8, args_size=3
        start local 0 // org.apache.commons.configuration.resolver.CatalogResolver this
        start local 1 // java.lang.String publicId
        start local 2 // java.lang.String systemId
         0: .line 178
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration.resolver.CatalogResolver.getResolver:()Lorg/apache/xml/resolver/tools/CatalogResolver;
            aload 1 /* publicId */
            aload 2 /* systemId */
            invokevirtual org.apache.xml.resolver.tools.CatalogResolver.getResolvedEntity:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            astore 3 /* resolved */
        start local 3 // java.lang.String resolved
         1: .line 180
            aload 3 /* resolved */
            ifnull 17
         2: .line 182
            ldc "file://"
            astore 4 /* badFilePrefix */
        start local 4 // java.lang.String badFilePrefix
         3: .line 183
            ldc "file:///"
            astore 5 /* correctFilePrefix */
        start local 5 // java.lang.String correctFilePrefix
         4: .line 186
            aload 3 /* resolved */
            aload 4 /* badFilePrefix */
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 6
            aload 3 /* resolved */
            aload 5 /* correctFilePrefix */
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifne 6
         5: .line 188
            new java.lang.StringBuilder
            dup
            aload 5 /* correctFilePrefix */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 3 /* resolved */
            aload 4 /* badFilePrefix */
            invokevirtual java.lang.String.length:()I
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 3 /* resolved */
         6: .line 193
      StackMap locals: java.lang.String java.lang.String java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.commons.configuration.resolver.CatalogResolver.fs:Lorg/apache/commons/configuration/FileSystem;
            aconst_null
            aload 3 /* resolved */
            invokevirtual org.apache.commons.configuration.FileSystem.getInputStream:(Ljava/lang/String;Ljava/lang/String;)Ljava/io/InputStream;
            astore 6 /* is */
        start local 6 // java.io.InputStream is
         7: .line 194
            new org.xml.sax.InputSource
            dup
            aload 3 /* resolved */
            invokespecial org.xml.sax.InputSource.<init>:(Ljava/lang/String;)V
            astore 7 /* iSource */
        start local 7 // org.xml.sax.InputSource iSource
         8: .line 195
            aload 7 /* iSource */
            aload 1 /* publicId */
            invokevirtual org.xml.sax.InputSource.setPublicId:(Ljava/lang/String;)V
         9: .line 196
            aload 7 /* iSource */
            aload 6 /* is */
            invokevirtual org.xml.sax.InputSource.setByteStream:(Ljava/io/InputStream;)V
        10: .line 197
            aload 7 /* iSource */
        11: areturn
        end local 7 // org.xml.sax.InputSource iSource
        end local 6 // java.io.InputStream is
        12: .line 199
      StackMap locals:
      StackMap stack: java.lang.Exception
            astore 6 /* e */
        start local 6 // java.lang.Exception e
        13: .line 201
            aload 0 /* this */
            getfield org.apache.commons.configuration.resolver.CatalogResolver.log:Lorg/apache/commons/logging/Log;
            new java.lang.StringBuilder
            dup
            ldc "Failed to create InputSource for "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 3 /* resolved */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " ("
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        14: .line 202
            aload 6 /* e */
            invokevirtual java.lang.Exception.toString:()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;
        15: .line 201
            invokeinterface org.apache.commons.logging.Log.warn:(Ljava/lang/Object;)V
        16: .line 203
            aconst_null
            areturn
        end local 6 // java.lang.Exception e
        end local 5 // java.lang.String correctFilePrefix
        end local 4 // java.lang.String badFilePrefix
        17: .line 207
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 3 // java.lang.String resolved
        end local 2 // java.lang.String systemId
        end local 1 // java.lang.String publicId
        end local 0 // org.apache.commons.configuration.resolver.CatalogResolver this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   18     0               this  Lorg/apache/commons/configuration/resolver/CatalogResolver;
            0   18     1           publicId  Ljava/lang/String;
            0   18     2           systemId  Ljava/lang/String;
            1   18     3           resolved  Ljava/lang/String;
            3   17     4      badFilePrefix  Ljava/lang/String;
            4   17     5  correctFilePrefix  Ljava/lang/String;
            7   12     6                 is  Ljava/io/InputStream;
            8   12     7            iSource  Lorg/xml/sax/InputSource;
           13   17     6                  e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           6    11      12  Class java.lang.Exception
    Exceptions:
      throws org.xml.sax.SAXException
    MethodParameters:
          Name  Flags
      publicId  
      systemId  

  public org.apache.commons.logging.Log getLogger();
    descriptor: ()Lorg/apache/commons/logging/Log;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.commons.configuration.resolver.CatalogResolver this
         0: .line 217
            aload 0 /* this */
            getfield org.apache.commons.configuration.resolver.CatalogResolver.log:Lorg/apache/commons/logging/Log;
            areturn
        end local 0 // org.apache.commons.configuration.resolver.CatalogResolver this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/commons/configuration/resolver/CatalogResolver;

  public void setLogger(org.apache.commons.logging.Log);
    descriptor: (Lorg/apache/commons/logging/Log;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.commons.configuration.resolver.CatalogResolver this
        start local 1 // org.apache.commons.logging.Log log
         0: .line 231
            aload 0 /* this */
            aload 1 /* log */
            ifnull 1
            aload 1 /* log */
            goto 2
      StackMap locals:
      StackMap stack: org.apache.commons.configuration.resolver.CatalogResolver
         1: ldc Lorg/apache/commons/configuration/resolver/CatalogResolver;
            invokestatic org.apache.commons.logging.LogFactory.getLog:(Ljava/lang/Class;)Lorg/apache/commons/logging/Log;
      StackMap locals: org.apache.commons.configuration.resolver.CatalogResolver org.apache.commons.logging.Log
      StackMap stack: org.apache.commons.configuration.resolver.CatalogResolver org.apache.commons.logging.Log
         2: putfield org.apache.commons.configuration.resolver.CatalogResolver.log:Lorg/apache/commons/logging/Log;
         3: .line 232
            return
        end local 1 // org.apache.commons.logging.Log log
        end local 0 // org.apache.commons.configuration.resolver.CatalogResolver this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/apache/commons/configuration/resolver/CatalogResolver;
            0    4     1   log  Lorg/apache/commons/logging/Log;
    MethodParameters:
      Name  Flags
      log   

  private synchronized org.apache.xml.resolver.tools.CatalogResolver getResolver();
    descriptor: ()Lorg/apache/xml/resolver/tools/CatalogResolver;
    flags: (0x0022) ACC_PRIVATE, ACC_SYNCHRONIZED
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.apache.commons.configuration.resolver.CatalogResolver this
         0: .line 236
            aload 0 /* this */
            getfield org.apache.commons.configuration.resolver.CatalogResolver.resolver:Lorg/apache/xml/resolver/tools/CatalogResolver;
            ifnonnull 2
         1: .line 238
            aload 0 /* this */
            new org.apache.xml.resolver.tools.CatalogResolver
            dup
            aload 0 /* this */
            getfield org.apache.commons.configuration.resolver.CatalogResolver.manager:Lorg/apache/commons/configuration/resolver/CatalogResolver$CatalogManager;
            invokespecial org.apache.xml.resolver.tools.CatalogResolver.<init>:(Lorg/apache/xml/resolver/CatalogManager;)V
            putfield org.apache.commons.configuration.resolver.CatalogResolver.resolver:Lorg/apache/xml/resolver/tools/CatalogResolver;
         2: .line 240
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.commons.configuration.resolver.CatalogResolver.resolver:Lorg/apache/xml/resolver/tools/CatalogResolver;
            areturn
        end local 0 // org.apache.commons.configuration.resolver.CatalogResolver this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/apache/commons/configuration/resolver/CatalogResolver;
}
SourceFile: "CatalogResolver.java"
NestMembers:
  org.apache.commons.configuration.resolver.CatalogResolver$Catalog  org.apache.commons.configuration.resolver.CatalogResolver$CatalogManager
InnerClasses:
  public Catalog = org.apache.commons.configuration.resolver.CatalogResolver$Catalog of org.apache.commons.configuration.resolver.CatalogResolver
  public CatalogManager = org.apache.commons.configuration.resolver.CatalogResolver$CatalogManager of org.apache.commons.configuration.resolver.CatalogResolver