public abstract class org.springframework.context.support.AbstractRefreshableApplicationContext extends org.springframework.context.support.AbstractApplicationContext
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: org.springframework.context.support.AbstractRefreshableApplicationContext
  super_class: org.springframework.context.support.AbstractApplicationContext
{
  private java.lang.Boolean allowBeanDefinitionOverriding;
    descriptor: Ljava/lang/Boolean;
    flags: (0x0002) ACC_PRIVATE
    RuntimeVisibleAnnotations: 
      org.springframework.lang.Nullable()

  private java.lang.Boolean allowCircularReferences;
    descriptor: Ljava/lang/Boolean;
    flags: (0x0002) ACC_PRIVATE
    RuntimeVisibleAnnotations: 
      org.springframework.lang.Nullable()

  private org.springframework.beans.factory.support.DefaultListableBeanFactory beanFactory;
    descriptor: Lorg/springframework/beans/factory/support/DefaultListableBeanFactory;
    flags: (0x0002) ACC_PRIVATE
    RuntimeVisibleAnnotations: 
      org.springframework.lang.Nullable()

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

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.springframework.context.support.AbstractRefreshableApplicationContext this
         0: .line 84
            aload 0 /* this */
            invokespecial org.springframework.context.support.AbstractApplicationContext.<init>:()V
         1: .line 78
            aload 0 /* this */
            new java.lang.Object
            dup
            invokespecial java.lang.Object.<init>:()V
            putfield org.springframework.context.support.AbstractRefreshableApplicationContext.beanFactoryMonitor:Ljava/lang/Object;
         2: .line 85
            return
        end local 0 // org.springframework.context.support.AbstractRefreshableApplicationContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/springframework/context/support/AbstractRefreshableApplicationContext;

  public void <init>(org.springframework.context.ApplicationContext);
    descriptor: (Lorg/springframework/context/ApplicationContext;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.springframework.context.support.AbstractRefreshableApplicationContext this
        start local 1 // org.springframework.context.ApplicationContext parent
         0: .line 92
            aload 0 /* this */
            aload 1 /* parent */
            invokespecial org.springframework.context.support.AbstractApplicationContext.<init>:(Lorg/springframework/context/ApplicationContext;)V
         1: .line 78
            aload 0 /* this */
            new java.lang.Object
            dup
            invokespecial java.lang.Object.<init>:()V
            putfield org.springframework.context.support.AbstractRefreshableApplicationContext.beanFactoryMonitor:Ljava/lang/Object;
         2: .line 93
            return
        end local 1 // org.springframework.context.ApplicationContext parent
        end local 0 // org.springframework.context.support.AbstractRefreshableApplicationContext this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lorg/springframework/context/support/AbstractRefreshableApplicationContext;
            0    3     1  parent  Lorg/springframework/context/ApplicationContext;
    RuntimeVisibleParameterAnnotations: 
      0:
        org.springframework.lang.Nullable()
    MethodParameters:
        Name  Flags
      parent  

  public void setAllowBeanDefinitionOverriding(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.springframework.context.support.AbstractRefreshableApplicationContext this
        start local 1 // boolean allowBeanDefinitionOverriding
         0: .line 103
            aload 0 /* this */
            iload 1 /* allowBeanDefinitionOverriding */
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            putfield org.springframework.context.support.AbstractRefreshableApplicationContext.allowBeanDefinitionOverriding:Ljava/lang/Boolean;
         1: .line 104
            return
        end local 1 // boolean allowBeanDefinitionOverriding
        end local 0 // org.springframework.context.support.AbstractRefreshableApplicationContext this
      LocalVariableTable:
        Start  End  Slot                           Name  Signature
            0    2     0                           this  Lorg/springframework/context/support/AbstractRefreshableApplicationContext;
            0    2     1  allowBeanDefinitionOverriding  Z
    MethodParameters:
                               Name  Flags
      allowBeanDefinitionOverriding  

  public void setAllowCircularReferences(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.springframework.context.support.AbstractRefreshableApplicationContext this
        start local 1 // boolean allowCircularReferences
         0: .line 114
            aload 0 /* this */
            iload 1 /* allowCircularReferences */
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            putfield org.springframework.context.support.AbstractRefreshableApplicationContext.allowCircularReferences:Ljava/lang/Boolean;
         1: .line 115
            return
        end local 1 // boolean allowCircularReferences
        end local 0 // org.springframework.context.support.AbstractRefreshableApplicationContext this
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0    2     0                     this  Lorg/springframework/context/support/AbstractRefreshableApplicationContext;
            0    2     1  allowCircularReferences  Z
    MethodParameters:
                         Name  Flags
      allowCircularReferences  

  protected final void refreshBeanFactory();
    descriptor: ()V
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=5, locals=3, args_size=1
        start local 0 // org.springframework.context.support.AbstractRefreshableApplicationContext this
         0: .line 125
            aload 0 /* this */
            invokevirtual org.springframework.context.support.AbstractRefreshableApplicationContext.hasBeanFactory:()Z
            ifeq 3
         1: .line 126
            aload 0 /* this */
            invokevirtual org.springframework.context.support.AbstractRefreshableApplicationContext.destroyBeans:()V
         2: .line 127
            aload 0 /* this */
            invokevirtual org.springframework.context.support.AbstractRefreshableApplicationContext.closeBeanFactory:()V
         3: .line 130
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.springframework.context.support.AbstractRefreshableApplicationContext.createBeanFactory:()Lorg/springframework/beans/factory/support/DefaultListableBeanFactory;
            astore 1 /* beanFactory */
        start local 1 // org.springframework.beans.factory.support.DefaultListableBeanFactory beanFactory
         4: .line 131
            aload 1 /* beanFactory */
            aload 0 /* this */
            invokevirtual org.springframework.context.support.AbstractRefreshableApplicationContext.getId:()Ljava/lang/String;
            invokevirtual org.springframework.beans.factory.support.DefaultListableBeanFactory.setSerializationId:(Ljava/lang/String;)V
         5: .line 132
            aload 0 /* this */
            aload 1 /* beanFactory */
            invokevirtual org.springframework.context.support.AbstractRefreshableApplicationContext.customizeBeanFactory:(Lorg/springframework/beans/factory/support/DefaultListableBeanFactory;)V
         6: .line 133
            aload 0 /* this */
            aload 1 /* beanFactory */
            invokevirtual org.springframework.context.support.AbstractRefreshableApplicationContext.loadBeanDefinitions:(Lorg/springframework/beans/factory/support/DefaultListableBeanFactory;)V
         7: .line 134
            aload 0 /* this */
            getfield org.springframework.context.support.AbstractRefreshableApplicationContext.beanFactoryMonitor:Ljava/lang/Object;
            dup
            astore 2
            monitorenter
         8: .line 135
            aload 0 /* this */
            aload 1 /* beanFactory */
            putfield org.springframework.context.support.AbstractRefreshableApplicationContext.beanFactory:Lorg/springframework/beans/factory/support/DefaultListableBeanFactory;
         9: .line 134
            aload 2
            monitorexit
        10: goto 15
      StackMap locals: org.springframework.context.support.AbstractRefreshableApplicationContext org.springframework.beans.factory.support.DefaultListableBeanFactory java.lang.Object
      StackMap stack: java.lang.Throwable
        11: aload 2
            monitorexit
        12: athrow
        end local 1 // org.springframework.beans.factory.support.DefaultListableBeanFactory beanFactory
        13: .line 138
      StackMap locals: org.springframework.context.support.AbstractRefreshableApplicationContext
      StackMap stack: java.io.IOException
            astore 1 /* ex */
        start local 1 // java.io.IOException ex
        14: .line 139
            new org.springframework.context.ApplicationContextException
            dup
            new java.lang.StringBuilder
            dup
            ldc "I/O error parsing bean definition source for "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual org.springframework.context.support.AbstractRefreshableApplicationContext.getDisplayName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 1 /* ex */
            invokespecial org.springframework.context.ApplicationContextException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 1 // java.io.IOException ex
        15: .line 141
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.springframework.context.support.AbstractRefreshableApplicationContext this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   16     0         this  Lorg/springframework/context/support/AbstractRefreshableApplicationContext;
            4   13     1  beanFactory  Lorg/springframework/beans/factory/support/DefaultListableBeanFactory;
           14   15     1           ex  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           8    10      11  any
          11    12      11  any
           3    13      13  Class java.io.IOException
    Exceptions:
      throws org.springframework.beans.BeansException

  protected void cancelRefresh(org.springframework.beans.BeansException);
    descriptor: (Lorg/springframework/beans/BeansException;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.springframework.context.support.AbstractRefreshableApplicationContext this
        start local 1 // org.springframework.beans.BeansException ex
         0: .line 145
            aload 0 /* this */
            getfield org.springframework.context.support.AbstractRefreshableApplicationContext.beanFactoryMonitor:Ljava/lang/Object;
            dup
            astore 2
            monitorenter
         1: .line 146
            aload 0 /* this */
            getfield org.springframework.context.support.AbstractRefreshableApplicationContext.beanFactory:Lorg/springframework/beans/factory/support/DefaultListableBeanFactory;
            ifnull 3
         2: .line 147
            aload 0 /* this */
            getfield org.springframework.context.support.AbstractRefreshableApplicationContext.beanFactory:Lorg/springframework/beans/factory/support/DefaultListableBeanFactory;
            aconst_null
            invokevirtual org.springframework.beans.factory.support.DefaultListableBeanFactory.setSerializationId:(Ljava/lang/String;)V
         3: .line 145
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 2
            monitorexit
         4: goto 7
      StackMap locals:
      StackMap stack: java.lang.Throwable
         5: aload 2
            monitorexit
         6: athrow
         7: .line 150
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* ex */
            invokespecial org.springframework.context.support.AbstractApplicationContext.cancelRefresh:(Lorg/springframework/beans/BeansException;)V
         8: .line 151
            return
        end local 1 // org.springframework.beans.BeansException ex
        end local 0 // org.springframework.context.support.AbstractRefreshableApplicationContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Lorg/springframework/context/support/AbstractRefreshableApplicationContext;
            0    9     1    ex  Lorg/springframework/beans/BeansException;
      Exception table:
        from    to  target  type
           1     4       5  any
           5     6       5  any
    MethodParameters:
      Name  Flags
      ex    

  protected final void closeBeanFactory();
    descriptor: ()V
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.springframework.context.support.AbstractRefreshableApplicationContext this
         0: .line 155
            aload 0 /* this */
            getfield org.springframework.context.support.AbstractRefreshableApplicationContext.beanFactoryMonitor:Ljava/lang/Object;
            dup
            astore 1
            monitorenter
         1: .line 156
            aload 0 /* this */
            getfield org.springframework.context.support.AbstractRefreshableApplicationContext.beanFactory:Lorg/springframework/beans/factory/support/DefaultListableBeanFactory;
            ifnull 4
         2: .line 157
            aload 0 /* this */
            getfield org.springframework.context.support.AbstractRefreshableApplicationContext.beanFactory:Lorg/springframework/beans/factory/support/DefaultListableBeanFactory;
            aconst_null
            invokevirtual org.springframework.beans.factory.support.DefaultListableBeanFactory.setSerializationId:(Ljava/lang/String;)V
         3: .line 158
            aload 0 /* this */
            aconst_null
            putfield org.springframework.context.support.AbstractRefreshableApplicationContext.beanFactory:Lorg/springframework/beans/factory/support/DefaultListableBeanFactory;
         4: .line 155
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 1
            monitorexit
         5: goto 8
      StackMap locals:
      StackMap stack: java.lang.Throwable
         6: aload 1
            monitorexit
         7: athrow
         8: .line 161
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.springframework.context.support.AbstractRefreshableApplicationContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Lorg/springframework/context/support/AbstractRefreshableApplicationContext;
      Exception table:
        from    to  target  type
           1     5       6  any
           6     7       6  any

  protected final boolean hasBeanFactory();
    descriptor: ()Z
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.springframework.context.support.AbstractRefreshableApplicationContext this
         0: .line 168
            aload 0 /* this */
            getfield org.springframework.context.support.AbstractRefreshableApplicationContext.beanFactoryMonitor:Ljava/lang/Object;
            dup
            astore 1
            monitorenter
         1: .line 169
            aload 0 /* this */
            getfield org.springframework.context.support.AbstractRefreshableApplicationContext.beanFactory:Lorg/springframework/beans/factory/support/DefaultListableBeanFactory;
            ifnull 2
            iconst_1
            goto 3
      StackMap locals: java.lang.Object
      StackMap stack:
         2: iconst_0
      StackMap locals:
      StackMap stack: int
         3: aload 1
            monitorexit
         4: ireturn
         5: .line 168
      StackMap locals:
      StackMap stack: java.lang.Throwable
            aload 1
            monitorexit
         6: athrow
        end local 0 // org.springframework.context.support.AbstractRefreshableApplicationContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lorg/springframework/context/support/AbstractRefreshableApplicationContext;
      Exception table:
        from    to  target  type
           1     4       5  any
           5     6       5  any

  public final org.springframework.beans.factory.config.ConfigurableListableBeanFactory getBeanFactory();
    descriptor: ()Lorg/springframework/beans/factory/config/ConfigurableListableBeanFactory;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // org.springframework.context.support.AbstractRefreshableApplicationContext this
         0: .line 175
            aload 0 /* this */
            getfield org.springframework.context.support.AbstractRefreshableApplicationContext.beanFactoryMonitor:Ljava/lang/Object;
            dup
            astore 1
            monitorenter
         1: .line 176
            aload 0 /* this */
            getfield org.springframework.context.support.AbstractRefreshableApplicationContext.beanFactory:Lorg/springframework/beans/factory/support/DefaultListableBeanFactory;
            ifnonnull 3
         2: .line 177
            new java.lang.IllegalStateException
            dup
            ldc "BeanFactory not initialized or already closed - call 'refresh' before accessing beans via the ApplicationContext"
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 180
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 0 /* this */
            getfield org.springframework.context.support.AbstractRefreshableApplicationContext.beanFactory:Lorg/springframework/beans/factory/support/DefaultListableBeanFactory;
            aload 1
            monitorexit
         4: areturn
         5: .line 175
      StackMap locals:
      StackMap stack: java.lang.Throwable
            aload 1
            monitorexit
         6: athrow
        end local 0 // org.springframework.context.support.AbstractRefreshableApplicationContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lorg/springframework/context/support/AbstractRefreshableApplicationContext;
      Exception table:
        from    to  target  type
           1     4       5  any
           5     6       5  any

  protected void assertBeanFactoryActive();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=0, locals=1, args_size=1
        start local 0 // org.springframework.context.support.AbstractRefreshableApplicationContext this
         0: .line 190
            return
        end local 0 // org.springframework.context.support.AbstractRefreshableApplicationContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/springframework/context/support/AbstractRefreshableApplicationContext;

  protected org.springframework.beans.factory.support.DefaultListableBeanFactory createBeanFactory();
    descriptor: ()Lorg/springframework/beans/factory/support/DefaultListableBeanFactory;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.springframework.context.support.AbstractRefreshableApplicationContext this
         0: .line 207
            new org.springframework.beans.factory.support.DefaultListableBeanFactory
            dup
            aload 0 /* this */
            invokevirtual org.springframework.context.support.AbstractRefreshableApplicationContext.getInternalParentBeanFactory:()Lorg/springframework/beans/factory/BeanFactory;
            invokespecial org.springframework.beans.factory.support.DefaultListableBeanFactory.<init>:(Lorg/springframework/beans/factory/BeanFactory;)V
            areturn
        end local 0 // org.springframework.context.support.AbstractRefreshableApplicationContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/springframework/context/support/AbstractRefreshableApplicationContext;

  protected void customizeBeanFactory(org.springframework.beans.factory.support.DefaultListableBeanFactory);
    descriptor: (Lorg/springframework/beans/factory/support/DefaultListableBeanFactory;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.springframework.context.support.AbstractRefreshableApplicationContext this
        start local 1 // org.springframework.beans.factory.support.DefaultListableBeanFactory beanFactory
         0: .line 225
            aload 0 /* this */
            getfield org.springframework.context.support.AbstractRefreshableApplicationContext.allowBeanDefinitionOverriding:Ljava/lang/Boolean;
            ifnull 2
         1: .line 226
            aload 1 /* beanFactory */
            aload 0 /* this */
            getfield org.springframework.context.support.AbstractRefreshableApplicationContext.allowBeanDefinitionOverriding:Ljava/lang/Boolean;
            invokevirtual java.lang.Boolean.booleanValue:()Z
            invokevirtual org.springframework.beans.factory.support.DefaultListableBeanFactory.setAllowBeanDefinitionOverriding:(Z)V
         2: .line 228
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.springframework.context.support.AbstractRefreshableApplicationContext.allowCircularReferences:Ljava/lang/Boolean;
            ifnull 4
         3: .line 229
            aload 1 /* beanFactory */
            aload 0 /* this */
            getfield org.springframework.context.support.AbstractRefreshableApplicationContext.allowCircularReferences:Ljava/lang/Boolean;
            invokevirtual java.lang.Boolean.booleanValue:()Z
            invokevirtual org.springframework.beans.factory.support.DefaultListableBeanFactory.setAllowCircularReferences:(Z)V
         4: .line 231
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.springframework.beans.factory.support.DefaultListableBeanFactory beanFactory
        end local 0 // org.springframework.context.support.AbstractRefreshableApplicationContext this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    5     0         this  Lorg/springframework/context/support/AbstractRefreshableApplicationContext;
            0    5     1  beanFactory  Lorg/springframework/beans/factory/support/DefaultListableBeanFactory;
    MethodParameters:
             Name  Flags
      beanFactory  

  protected abstract void loadBeanDefinitions(org.springframework.beans.factory.support.DefaultListableBeanFactory);
    descriptor: (Lorg/springframework/beans/factory/support/DefaultListableBeanFactory;)V
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
    Exceptions:
      throws org.springframework.beans.BeansException, java.io.IOException
    MethodParameters:
             Name  Flags
      beanFactory  
}
SourceFile: "AbstractRefreshableApplicationContext.java"