class org.springframework.boot.diagnostics.analyzer.NoUniqueBeanDefinitionFailureAnalyzer extends org.springframework.boot.diagnostics.analyzer.AbstractInjectionFailureAnalyzer<org.springframework.beans.factory.NoUniqueBeanDefinitionException> implements org.springframework.beans.factory.BeanFactoryAware
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: org.springframework.boot.diagnostics.analyzer.NoUniqueBeanDefinitionFailureAnalyzer
  super_class: org.springframework.boot.diagnostics.analyzer.AbstractInjectionFailureAnalyzer
{
  private org.springframework.beans.factory.config.ConfigurableBeanFactory beanFactory;
    descriptor: Lorg/springframework/beans/factory/config/ConfigurableBeanFactory;
    flags: (0x0002) ACC_PRIVATE

  void <init>();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.springframework.boot.diagnostics.analyzer.NoUniqueBeanDefinitionFailureAnalyzer this
         0: .line 36
            aload 0 /* this */
            invokespecial org.springframework.boot.diagnostics.analyzer.AbstractInjectionFailureAnalyzer.<init>:()V
            return
        end local 0 // org.springframework.boot.diagnostics.analyzer.NoUniqueBeanDefinitionFailureAnalyzer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/springframework/boot/diagnostics/analyzer/NoUniqueBeanDefinitionFailureAnalyzer;

  public void setBeanFactory(org.springframework.beans.factory.BeanFactory);
    descriptor: (Lorg/springframework/beans/factory/BeanFactory;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.springframework.boot.diagnostics.analyzer.NoUniqueBeanDefinitionFailureAnalyzer this
        start local 1 // org.springframework.beans.factory.BeanFactory beanFactory
         0: .line 43
            ldc Lorg/springframework/beans/factory/config/ConfigurableBeanFactory;
            aload 1 /* beanFactory */
            invokestatic org.springframework.util.Assert.isInstanceOf:(Ljava/lang/Class;Ljava/lang/Object;)V
         1: .line 44
            aload 0 /* this */
            aload 1 /* beanFactory */
            checkcast org.springframework.beans.factory.config.ConfigurableBeanFactory
            putfield org.springframework.boot.diagnostics.analyzer.NoUniqueBeanDefinitionFailureAnalyzer.beanFactory:Lorg/springframework/beans/factory/config/ConfigurableBeanFactory;
         2: .line 45
            return
        end local 1 // org.springframework.beans.factory.BeanFactory beanFactory
        end local 0 // org.springframework.boot.diagnostics.analyzer.NoUniqueBeanDefinitionFailureAnalyzer this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    3     0         this  Lorg/springframework/boot/diagnostics/analyzer/NoUniqueBeanDefinitionFailureAnalyzer;
            0    3     1  beanFactory  Lorg/springframework/beans/factory/BeanFactory;
    Exceptions:
      throws org.springframework.beans.BeansException
    MethodParameters:
             Name  Flags
      beanFactory  

  protected org.springframework.boot.diagnostics.FailureAnalysis analyze(java.lang.Throwable, org.springframework.beans.factory.NoUniqueBeanDefinitionException, java.lang.String);
    descriptor: (Ljava/lang/Throwable;Lorg/springframework/beans/factory/NoUniqueBeanDefinitionException;Ljava/lang/String;)Lorg/springframework/boot/diagnostics/FailureAnalysis;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=10, args_size=4
        start local 0 // org.springframework.boot.diagnostics.analyzer.NoUniqueBeanDefinitionFailureAnalyzer this
        start local 1 // java.lang.Throwable rootFailure
        start local 2 // org.springframework.beans.factory.NoUniqueBeanDefinitionException cause
        start local 3 // java.lang.String description
         0: .line 50
            aload 3 /* description */
            ifnonnull 2
         1: .line 51
            aconst_null
            areturn
         2: .line 53
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* cause */
            invokevirtual org.springframework.boot.diagnostics.analyzer.NoUniqueBeanDefinitionFailureAnalyzer.extractBeanNames:(Lorg/springframework/beans/factory/NoUniqueBeanDefinitionException;)[Ljava/lang/String;
            astore 4 /* beanNames */
        start local 4 // java.lang.String[] beanNames
         3: .line 54
            aload 4 /* beanNames */
            ifnonnull 5
         4: .line 55
            aconst_null
            areturn
         5: .line 57
      StackMap locals: java.lang.String[]
      StackMap stack:
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 5 /* message */
        start local 5 // java.lang.StringBuilder message
         6: .line 58
            aload 5 /* message */
            ldc "%s required a single bean, but %d were found:%n"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 3 /* description */
            aastore
            dup
            iconst_1
            aload 4 /* beanNames */
            arraylength
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         7: .line 59
            aload 4 /* beanNames */
            dup
            astore 9
            arraylength
            istore 8
            iconst_0
            istore 7
            goto 11
      StackMap locals: org.springframework.boot.diagnostics.analyzer.NoUniqueBeanDefinitionFailureAnalyzer java.lang.Throwable org.springframework.beans.factory.NoUniqueBeanDefinitionException java.lang.String java.lang.String[] java.lang.StringBuilder top int int java.lang.String[]
      StackMap stack:
         8: aload 9
            iload 7
            aaload
            astore 6 /* beanName */
        start local 6 // java.lang.String beanName
         9: .line 60
            aload 0 /* this */
            aload 5 /* message */
            aload 6 /* beanName */
            invokevirtual org.springframework.boot.diagnostics.analyzer.NoUniqueBeanDefinitionFailureAnalyzer.buildMessage:(Ljava/lang/StringBuilder;Ljava/lang/String;)V
        end local 6 // java.lang.String beanName
        10: .line 59
            iinc 7 1
      StackMap locals:
      StackMap stack:
        11: iload 7
            iload 8
            if_icmplt 8
        12: .line 62
            new org.springframework.boot.diagnostics.FailureAnalysis
            dup
            aload 5 /* message */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        13: .line 63
            ldc "Consider marking one of the beans as @Primary, updating the consumer to accept multiple beans, or using @Qualifier to identify the bean that should be consumed"
        14: .line 66
            aload 2 /* cause */
        15: .line 62
            invokespecial org.springframework.boot.diagnostics.FailureAnalysis.<init>:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V
            areturn
        end local 5 // java.lang.StringBuilder message
        end local 4 // java.lang.String[] beanNames
        end local 3 // java.lang.String description
        end local 2 // org.springframework.beans.factory.NoUniqueBeanDefinitionException cause
        end local 1 // java.lang.Throwable rootFailure
        end local 0 // org.springframework.boot.diagnostics.analyzer.NoUniqueBeanDefinitionFailureAnalyzer this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   16     0         this  Lorg/springframework/boot/diagnostics/analyzer/NoUniqueBeanDefinitionFailureAnalyzer;
            0   16     1  rootFailure  Ljava/lang/Throwable;
            0   16     2        cause  Lorg/springframework/beans/factory/NoUniqueBeanDefinitionException;
            0   16     3  description  Ljava/lang/String;
            3   16     4    beanNames  [Ljava/lang/String;
            6   16     5      message  Ljava/lang/StringBuilder;
            9   10     6     beanName  Ljava/lang/String;
    MethodParameters:
             Name  Flags
      rootFailure  
      cause        
      description  

  private void buildMessage(java.lang.StringBuilder, java.lang.String);
    descriptor: (Ljava/lang/StringBuilder;Ljava/lang/String;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=4, args_size=3
        start local 0 // org.springframework.boot.diagnostics.analyzer.NoUniqueBeanDefinitionFailureAnalyzer this
        start local 1 // java.lang.StringBuilder message
        start local 2 // java.lang.String beanName
         0: .line 71
            aload 0 /* this */
            getfield org.springframework.boot.diagnostics.analyzer.NoUniqueBeanDefinitionFailureAnalyzer.beanFactory:Lorg/springframework/beans/factory/config/ConfigurableBeanFactory;
            aload 2 /* beanName */
            invokeinterface org.springframework.beans.factory.config.ConfigurableBeanFactory.getMergedBeanDefinition:(Ljava/lang/String;)Lorg/springframework/beans/factory/config/BeanDefinition;
            astore 3 /* definition */
        start local 3 // org.springframework.beans.factory.config.BeanDefinition definition
         1: .line 72
            aload 1 /* message */
            aload 0 /* this */
            aload 2 /* beanName */
            aload 3 /* definition */
            invokevirtual org.springframework.boot.diagnostics.analyzer.NoUniqueBeanDefinitionFailureAnalyzer.getDefinitionDescription:(Ljava/lang/String;Lorg/springframework/beans/factory/config/BeanDefinition;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        end local 3 // org.springframework.beans.factory.config.BeanDefinition definition
         2: .line 73
            goto 5
         3: .line 74
      StackMap locals:
      StackMap stack: org.springframework.beans.factory.NoSuchBeanDefinitionException
            pop
         4: .line 75
            aload 1 /* message */
            ldc "\t- %s: a programmatically registered singleton"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 2 /* beanName */
            aastore
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         5: .line 77
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.lang.String beanName
        end local 1 // java.lang.StringBuilder message
        end local 0 // org.springframework.boot.diagnostics.analyzer.NoUniqueBeanDefinitionFailureAnalyzer this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    6     0        this  Lorg/springframework/boot/diagnostics/analyzer/NoUniqueBeanDefinitionFailureAnalyzer;
            0    6     1     message  Ljava/lang/StringBuilder;
            0    6     2    beanName  Ljava/lang/String;
            1    2     3  definition  Lorg/springframework/beans/factory/config/BeanDefinition;
      Exception table:
        from    to  target  type
           0     2       3  Class org.springframework.beans.factory.NoSuchBeanDefinitionException
    MethodParameters:
          Name  Flags
      message   
      beanName  

  private java.lang.String getDefinitionDescription(java.lang.String, org.springframework.beans.factory.config.BeanDefinition);
    descriptor: (Ljava/lang/String;Lorg/springframework/beans/factory/config/BeanDefinition;)Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.springframework.boot.diagnostics.analyzer.NoUniqueBeanDefinitionFailureAnalyzer this
        start local 1 // java.lang.String beanName
        start local 2 // org.springframework.beans.factory.config.BeanDefinition definition
         0: .line 80
            aload 2 /* definition */
            invokeinterface org.springframework.beans.factory.config.BeanDefinition.getFactoryMethodName:()Ljava/lang/String;
            invokestatic org.springframework.util.StringUtils.hasText:(Ljava/lang/String;)Z
            ifeq 4
         1: .line 81
            ldc "\t- %s: defined by method '%s' in %s%n"
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* beanName */
            aastore
            dup
            iconst_1
            aload 2 /* definition */
            invokeinterface org.springframework.beans.factory.config.BeanDefinition.getFactoryMethodName:()Ljava/lang/String;
            aastore
            dup
            iconst_2
         2: .line 82
            aload 2 /* definition */
            invokeinterface org.springframework.beans.factory.config.BeanDefinition.getResourceDescription:()Ljava/lang/String;
            aastore
         3: .line 81
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            areturn
         4: .line 84
      StackMap locals:
      StackMap stack:
            ldc "\t- %s: defined in %s%n"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* beanName */
            aastore
            dup
            iconst_1
            aload 2 /* definition */
            invokeinterface org.springframework.beans.factory.config.BeanDefinition.getResourceDescription:()Ljava/lang/String;
            aastore
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            areturn
        end local 2 // org.springframework.beans.factory.config.BeanDefinition definition
        end local 1 // java.lang.String beanName
        end local 0 // org.springframework.boot.diagnostics.analyzer.NoUniqueBeanDefinitionFailureAnalyzer this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    5     0        this  Lorg/springframework/boot/diagnostics/analyzer/NoUniqueBeanDefinitionFailureAnalyzer;
            0    5     1    beanName  Ljava/lang/String;
            0    5     2  definition  Lorg/springframework/beans/factory/config/BeanDefinition;
    MethodParameters:
            Name  Flags
      beanName    
      definition  

  private java.lang.String[] extractBeanNames(org.springframework.beans.factory.NoUniqueBeanDefinitionException);
    descriptor: (Lorg/springframework/beans/factory/NoUniqueBeanDefinitionException;)[Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.springframework.boot.diagnostics.analyzer.NoUniqueBeanDefinitionFailureAnalyzer this
        start local 1 // org.springframework.beans.factory.NoUniqueBeanDefinitionException cause
         0: .line 88
            aload 1 /* cause */
            invokevirtual org.springframework.beans.factory.NoUniqueBeanDefinitionException.getMessage:()Ljava/lang/String;
            ldc "but found"
            invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
            ifeq 3
         1: .line 90
            aload 1 /* cause */
            invokevirtual org.springframework.beans.factory.NoUniqueBeanDefinitionException.getMessage:()Ljava/lang/String;
            aload 1 /* cause */
            invokevirtual org.springframework.beans.factory.NoUniqueBeanDefinitionException.getMessage:()Ljava/lang/String;
            bipush 58
            invokevirtual java.lang.String.lastIndexOf:(I)I
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
         2: .line 89
            invokestatic org.springframework.util.StringUtils.commaDelimitedListToStringArray:(Ljava/lang/String;)[Ljava/lang/String;
            areturn
         3: .line 92
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 1 // org.springframework.beans.factory.NoUniqueBeanDefinitionException cause
        end local 0 // org.springframework.boot.diagnostics.analyzer.NoUniqueBeanDefinitionFailureAnalyzer this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Lorg/springframework/boot/diagnostics/analyzer/NoUniqueBeanDefinitionFailureAnalyzer;
            0    4     1  cause  Lorg/springframework/beans/factory/NoUniqueBeanDefinitionException;
    MethodParameters:
       Name  Flags
      cause  

  protected org.springframework.boot.diagnostics.FailureAnalysis analyze(java.lang.Throwable, java.lang.Throwable, java.lang.String);
    descriptor: (Ljava/lang/Throwable;Ljava/lang/Throwable;Ljava/lang/String;)Lorg/springframework/boot/diagnostics/FailureAnalysis;
    flags: (0x1044) ACC_PROTECTED, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=4, locals=4, args_size=4
         0: .line 1
            aload 0
            aload 1
            aload 2
            checkcast org.springframework.beans.factory.NoUniqueBeanDefinitionException
            aload 3
            invokevirtual org.springframework.boot.diagnostics.analyzer.NoUniqueBeanDefinitionFailureAnalyzer.analyze:(Ljava/lang/Throwable;Lorg/springframework/beans/factory/NoUniqueBeanDefinitionException;Ljava/lang/String;)Lorg/springframework/boot/diagnostics/FailureAnalysis;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
Signature: Lorg/springframework/boot/diagnostics/analyzer/AbstractInjectionFailureAnalyzer<Lorg/springframework/beans/factory/NoUniqueBeanDefinitionException;>;Lorg/springframework/beans/factory/BeanFactoryAware;
SourceFile: "NoUniqueBeanDefinitionFailureAnalyzer.java"