public class org.apache.commons.configuration.DefaultConfigurationBuilder$ConfigurationProvider extends org.apache.commons.configuration.beanutils.DefaultBeanFactory
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.apache.commons.configuration.DefaultConfigurationBuilder$ConfigurationProvider
  super_class: org.apache.commons.configuration.beanutils.DefaultBeanFactory
{
  private java.lang.Class<?> configurationClass;
    descriptor: Ljava/lang/Class;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/lang/Class<*>;

  private java.lang.String configurationClassName;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.commons.configuration.DefaultConfigurationBuilder$ConfigurationProvider this
         0: .line 980
            aload 0 /* this */
            aconst_null
            invokespecial org.apache.commons.configuration.DefaultConfigurationBuilder$ConfigurationProvider.<init>:(Ljava/lang/Class;)V
         1: .line 981
            return
        end local 0 // org.apache.commons.configuration.DefaultConfigurationBuilder$ConfigurationProvider this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/commons/configuration/DefaultConfigurationBuilder$ConfigurationProvider;

  public void <init>(java.lang.Class<?>);
    descriptor: (Ljava/lang/Class;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.commons.configuration.DefaultConfigurationBuilder$ConfigurationProvider this
        start local 1 // java.lang.Class configClass
         0: .line 989
            aload 0 /* this */
            invokespecial org.apache.commons.configuration.beanutils.DefaultBeanFactory.<init>:()V
         1: .line 991
            aload 0 /* this */
            aload 1 /* configClass */
            invokevirtual org.apache.commons.configuration.DefaultConfigurationBuilder$ConfigurationProvider.setConfigurationClass:(Ljava/lang/Class;)V
         2: .line 992
            return
        end local 1 // java.lang.Class configClass
        end local 0 // org.apache.commons.configuration.DefaultConfigurationBuilder$ConfigurationProvider this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    3     0         this  Lorg/apache/commons/configuration/DefaultConfigurationBuilder$ConfigurationProvider;
            0    3     1  configClass  Ljava/lang/Class<*>;
    Signature: (Ljava/lang/Class<*>;)V
    MethodParameters:
             Name  Flags
      configClass  

  public void <init>(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.DefaultConfigurationBuilder$ConfigurationProvider this
        start local 1 // java.lang.String configClassName
         0: .line 1002
            aload 0 /* this */
            invokespecial org.apache.commons.configuration.beanutils.DefaultBeanFactory.<init>:()V
         1: .line 1004
            aload 0 /* this */
            aload 1 /* configClassName */
            invokevirtual org.apache.commons.configuration.DefaultConfigurationBuilder$ConfigurationProvider.setConfigurationClassName:(Ljava/lang/String;)V
         2: .line 1005
            return
        end local 1 // java.lang.String configClassName
        end local 0 // org.apache.commons.configuration.DefaultConfigurationBuilder$ConfigurationProvider this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    3     0             this  Lorg/apache/commons/configuration/DefaultConfigurationBuilder$ConfigurationProvider;
            0    3     1  configClassName  Ljava/lang/String;
    MethodParameters:
                 Name  Flags
      configClassName  

  public java.lang.Class<?> getConfigurationClass();
    descriptor: ()Ljava/lang/Class;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.commons.configuration.DefaultConfigurationBuilder$ConfigurationProvider this
         0: .line 1014
            aload 0 /* this */
            getfield org.apache.commons.configuration.DefaultConfigurationBuilder$ConfigurationProvider.configurationClass:Ljava/lang/Class;
            areturn
        end local 0 // org.apache.commons.configuration.DefaultConfigurationBuilder$ConfigurationProvider this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/commons/configuration/DefaultConfigurationBuilder$ConfigurationProvider;
    Signature: ()Ljava/lang/Class<*>;

  public void setConfigurationClass(java.lang.Class<?>);
    descriptor: (Ljava/lang/Class;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.commons.configuration.DefaultConfigurationBuilder$ConfigurationProvider this
        start local 1 // java.lang.Class configurationClass
         0: .line 1024
            aload 0 /* this */
            aload 1 /* configurationClass */
            putfield org.apache.commons.configuration.DefaultConfigurationBuilder$ConfigurationProvider.configurationClass:Ljava/lang/Class;
         1: .line 1025
            return
        end local 1 // java.lang.Class configurationClass
        end local 0 // org.apache.commons.configuration.DefaultConfigurationBuilder$ConfigurationProvider this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    2     0                this  Lorg/apache/commons/configuration/DefaultConfigurationBuilder$ConfigurationProvider;
            0    2     1  configurationClass  Ljava/lang/Class<*>;
    Signature: (Ljava/lang/Class<*>;)V
    MethodParameters:
                    Name  Flags
      configurationClass  

  public java.lang.String getConfigurationClassName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.commons.configuration.DefaultConfigurationBuilder$ConfigurationProvider this
         0: .line 1036
            aload 0 /* this */
            getfield org.apache.commons.configuration.DefaultConfigurationBuilder$ConfigurationProvider.configurationClassName:Ljava/lang/String;
            areturn
        end local 0 // org.apache.commons.configuration.DefaultConfigurationBuilder$ConfigurationProvider this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/commons/configuration/DefaultConfigurationBuilder$ConfigurationProvider;

  public void setConfigurationClassName(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.DefaultConfigurationBuilder$ConfigurationProvider this
        start local 1 // java.lang.String configurationClassName
         0: .line 1047
            aload 0 /* this */
            aload 1 /* configurationClassName */
            putfield org.apache.commons.configuration.DefaultConfigurationBuilder$ConfigurationProvider.configurationClassName:Ljava/lang/String;
         1: .line 1048
            return
        end local 1 // java.lang.String configurationClassName
        end local 0 // org.apache.commons.configuration.DefaultConfigurationBuilder$ConfigurationProvider this
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0    2     0                    this  Lorg/apache/commons/configuration/DefaultConfigurationBuilder$ConfigurationProvider;
            0    2     1  configurationClassName  Ljava/lang/String;
    MethodParameters:
                        Name  Flags
      configurationClassName  

  public org.apache.commons.configuration.AbstractConfiguration getConfiguration(org.apache.commons.configuration.DefaultConfigurationBuilder$ConfigurationDeclaration);
    descriptor: (Lorg/apache/commons/configuration/DefaultConfigurationBuilder$ConfigurationDeclaration;)Lorg/apache/commons/configuration/AbstractConfiguration;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.apache.commons.configuration.DefaultConfigurationBuilder$ConfigurationProvider this
        start local 1 // org.apache.commons.configuration.DefaultConfigurationBuilder$ConfigurationDeclaration decl
         0: .line 1066
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration.DefaultConfigurationBuilder$ConfigurationProvider.fetchConfigurationClass:()Ljava/lang/Class;
         1: .line 1067
            aload 1 /* decl */
            aconst_null
         2: .line 1066
            invokevirtual org.apache.commons.configuration.DefaultConfigurationBuilder$ConfigurationProvider.createBean:(Ljava/lang/Class;Lorg/apache/commons/configuration/beanutils/BeanDeclaration;Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.apache.commons.configuration.AbstractConfiguration
            areturn
        end local 1 // org.apache.commons.configuration.DefaultConfigurationBuilder$ConfigurationDeclaration decl
        end local 0 // org.apache.commons.configuration.DefaultConfigurationBuilder$ConfigurationProvider this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/apache/commons/configuration/DefaultConfigurationBuilder$ConfigurationProvider;
            0    3     1  decl  Lorg/apache/commons/configuration/DefaultConfigurationBuilder$ConfigurationDeclaration;
    Exceptions:
      throws java.lang.Exception
    MethodParameters:
      Name  Flags
      decl  

  public org.apache.commons.configuration.AbstractConfiguration getEmptyConfiguration(org.apache.commons.configuration.DefaultConfigurationBuilder$ConfigurationDeclaration);
    descriptor: (Lorg/apache/commons/configuration/DefaultConfigurationBuilder$ConfigurationDeclaration;)Lorg/apache/commons/configuration/AbstractConfiguration;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.apache.commons.configuration.DefaultConfigurationBuilder$ConfigurationProvider this
        start local 1 // org.apache.commons.configuration.DefaultConfigurationBuilder$ConfigurationDeclaration decl
         0: .line 1088
            aconst_null
            areturn
        end local 1 // org.apache.commons.configuration.DefaultConfigurationBuilder$ConfigurationDeclaration decl
        end local 0 // org.apache.commons.configuration.DefaultConfigurationBuilder$ConfigurationProvider this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/commons/configuration/DefaultConfigurationBuilder$ConfigurationProvider;
            0    1     1  decl  Lorg/apache/commons/configuration/DefaultConfigurationBuilder$ConfigurationDeclaration;
    Exceptions:
      throws java.lang.Exception
    MethodParameters:
      Name  Flags
      decl  

  protected synchronized java.lang.Class<?> fetchConfigurationClass();
    descriptor: ()Ljava/lang/Class;
    flags: (0x0024) ACC_PROTECTED, ACC_SYNCHRONIZED
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.apache.commons.configuration.DefaultConfigurationBuilder$ConfigurationProvider this
         0: .line 1101
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration.DefaultConfigurationBuilder$ConfigurationProvider.getConfigurationClass:()Ljava/lang/Class;
            ifnonnull 2
         1: .line 1103
            aload 0 /* this */
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration.DefaultConfigurationBuilder$ConfigurationProvider.getConfigurationClassName:()Ljava/lang/String;
            invokevirtual org.apache.commons.configuration.DefaultConfigurationBuilder$ConfigurationProvider.loadClass:(Ljava/lang/String;)Ljava/lang/Class;
            invokevirtual org.apache.commons.configuration.DefaultConfigurationBuilder$ConfigurationProvider.setConfigurationClass:(Ljava/lang/Class;)V
         2: .line 1105
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration.DefaultConfigurationBuilder$ConfigurationProvider.getConfigurationClass:()Ljava/lang/Class;
            areturn
        end local 0 // org.apache.commons.configuration.DefaultConfigurationBuilder$ConfigurationProvider this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/apache/commons/configuration/DefaultConfigurationBuilder$ConfigurationProvider;
    Exceptions:
      throws java.lang.Exception
    Signature: ()Ljava/lang/Class<*>;

  protected java.lang.Class<?> loadClass(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/Class;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.apache.commons.configuration.DefaultConfigurationBuilder$ConfigurationProvider this
        start local 1 // java.lang.String className
         0: .line 1120
            aload 1 /* className */
            ifnull 4
            aload 1 /* className */
            iconst_1
         1: .line 1121
            aload 0 /* this */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
         2: .line 1120
            invokestatic java.lang.Class.forName:(Ljava/lang/String;ZLjava/lang/ClassLoader;)Ljava/lang/Class;
         3: .line 1121
            goto 5
      StackMap locals:
      StackMap stack:
         4: aconst_null
         5: .line 1120
      StackMap locals:
      StackMap stack: java.lang.Class
            areturn
        end local 1 // java.lang.String className
        end local 0 // org.apache.commons.configuration.DefaultConfigurationBuilder$ConfigurationProvider this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    6     0       this  Lorg/apache/commons/configuration/DefaultConfigurationBuilder$ConfigurationProvider;
            0    6     1  className  Ljava/lang/String;
    Exceptions:
      throws java.lang.ClassNotFoundException
    Signature: (Ljava/lang/String;)Ljava/lang/Class<*>;
    MethodParameters:
           Name  Flags
      className  
}
SourceFile: "DefaultConfigurationBuilder.java"
NestHost: org.apache.commons.configuration.DefaultConfigurationBuilder
InnerClasses:
  public ConfigurationDeclaration = org.apache.commons.configuration.DefaultConfigurationBuilder$ConfigurationDeclaration of org.apache.commons.configuration.DefaultConfigurationBuilder
  public ConfigurationProvider = org.apache.commons.configuration.DefaultConfigurationBuilder$ConfigurationProvider of org.apache.commons.configuration.DefaultConfigurationBuilder