class org.springframework.boot.diagnostics.analyzer.BindFailureAnalyzer extends org.springframework.boot.diagnostics.AbstractFailureAnalyzer<org.springframework.boot.context.properties.bind.BindException>
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.springframework.boot.diagnostics.analyzer.BindFailureAnalyzer
super_class: org.springframework.boot.diagnostics.AbstractFailureAnalyzer
{
void <init>();
descriptor: ()V
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial org.springframework.boot.diagnostics.AbstractFailureAnalyzer.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/boot/diagnostics/analyzer/BindFailureAnalyzer;
protected org.springframework.boot.diagnostics.FailureAnalysis analyze(java.lang.Throwable, org.springframework.boot.context.properties.bind.BindException);
descriptor: (Ljava/lang/Throwable;Lorg/springframework/boot/context/properties/bind/BindException;)Lorg/springframework/boot/diagnostics/FailureAnalysis;
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokevirtual org.springframework.boot.context.properties.bind.BindException.getCause:()Ljava/lang/Throwable;
astore 3
start local 3 1: aload 3
instanceof org.springframework.boot.context.properties.bind.validation.BindValidationException
ifne 3
2: aload 3
instanceof org.springframework.boot.context.properties.bind.UnboundConfigurationPropertiesException
ifeq 4
3: StackMap locals: java.lang.Throwable
StackMap stack:
aconst_null
areturn
4: StackMap locals:
StackMap stack:
aload 0
aload 2
invokevirtual org.springframework.boot.diagnostics.analyzer.BindFailureAnalyzer.analyzeGenericBindException:(Lorg/springframework/boot/context/properties/bind/BindException;)Lorg/springframework/boot/diagnostics/FailureAnalysis;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/springframework/boot/diagnostics/analyzer/BindFailureAnalyzer;
0 5 1 rootFailure Ljava/lang/Throwable;
0 5 2 cause Lorg/springframework/boot/context/properties/bind/BindException;
1 5 3 rootCause Ljava/lang/Throwable;
MethodParameters:
Name Flags
rootFailure
cause
private org.springframework.boot.diagnostics.FailureAnalysis analyzeGenericBindException(org.springframework.boot.context.properties.bind.BindException);
descriptor: (Lorg/springframework/boot/context/properties/bind/BindException;)Lorg/springframework/boot/diagnostics/FailureAnalysis;
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=4, args_size=2
start local 0 start local 1 0: new java.lang.StringBuilder
dup
ldc "%s:%n"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 1
invokevirtual org.springframework.boot.context.properties.bind.BindException.getMessage:()Ljava/lang/String;
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
astore 2
start local 2 1: aload 1
invokevirtual org.springframework.boot.context.properties.bind.BindException.getProperty:()Lorg/springframework/boot/context/properties/source/ConfigurationProperty;
astore 3
start local 3 2: aload 0
aload 2
aload 3
invokevirtual org.springframework.boot.diagnostics.analyzer.BindFailureAnalyzer.buildDescription:(Ljava/lang/StringBuilder;Lorg/springframework/boot/context/properties/source/ConfigurationProperty;)V
3: aload 2
ldc "%n Reason: %s"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 0
aload 1
invokevirtual org.springframework.boot.diagnostics.analyzer.BindFailureAnalyzer.getMessage:(Lorg/springframework/boot/context/properties/bind/BindException;)Ljava/lang/String;
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
4: aload 0
aload 2
aload 1
invokevirtual org.springframework.boot.diagnostics.analyzer.BindFailureAnalyzer.getFailureAnalysis:(Ljava/lang/Object;Lorg/springframework/boot/context/properties/bind/BindException;)Lorg/springframework/boot/diagnostics/FailureAnalysis;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/springframework/boot/diagnostics/analyzer/BindFailureAnalyzer;
0 5 1 cause Lorg/springframework/boot/context/properties/bind/BindException;
1 5 2 description Ljava/lang/StringBuilder;
2 5 3 property Lorg/springframework/boot/context/properties/source/ConfigurationProperty;
MethodParameters:
Name Flags
cause
private void buildDescription(java.lang.StringBuilder, org.springframework.boot.context.properties.source.ConfigurationProperty);
descriptor: (Ljava/lang/StringBuilder;Lorg/springframework/boot/context/properties/source/ConfigurationProperty;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 2
ifnull 4
1: aload 1
ldc "%n Property: %s"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 2
invokevirtual org.springframework.boot.context.properties.source.ConfigurationProperty.getName:()Lorg/springframework/boot/context/properties/source/ConfigurationPropertyName;
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
2: aload 1
ldc "%n Value: %s"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 2
invokevirtual org.springframework.boot.context.properties.source.ConfigurationProperty.getValue:()Ljava/lang/Object;
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
3: aload 1
ldc "%n Origin: %s"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 2
invokevirtual org.springframework.boot.context.properties.source.ConfigurationProperty.getOrigin:()Lorg/springframework/boot/origin/Origin;
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
4: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/springframework/boot/diagnostics/analyzer/BindFailureAnalyzer;
0 5 1 description Ljava/lang/StringBuilder;
0 5 2 property Lorg/springframework/boot/context/properties/source/ConfigurationProperty;
MethodParameters:
Name Flags
description
property
private java.lang.String getMessage(org.springframework.boot.context.properties.bind.BindException);
descriptor: (Lorg/springframework/boot/context/properties/bind/BindException;)Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: aload 0
aload 1
ldc Lorg/springframework/core/convert/ConversionFailedException;
invokevirtual org.springframework.boot.diagnostics.analyzer.BindFailureAnalyzer.findCause:(Ljava/lang/Throwable;Ljava/lang/Class;)Ljava/lang/Throwable;
checkcast org.springframework.core.convert.ConversionFailedException
astore 2
start local 2 1: aload 2
ifnull 5
2: new java.lang.StringBuilder
dup
ldc "failed to convert "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual org.springframework.core.convert.ConversionFailedException.getSourceType:()Lorg/springframework/core/convert/TypeDescriptor;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " to "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
3: aload 2
invokevirtual org.springframework.core.convert.ConversionFailedException.getTargetType:()Lorg/springframework/core/convert/TypeDescriptor;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
4: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
5: StackMap locals: org.springframework.core.convert.ConversionFailedException
StackMap stack:
aload 1
astore 3
start local 3 6: goto 8
7: StackMap locals: java.lang.Throwable
StackMap stack:
aload 3
invokevirtual java.lang.Throwable.getCause:()Ljava/lang/Throwable;
astore 3
8: StackMap locals:
StackMap stack:
aload 3
invokevirtual java.lang.Throwable.getCause:()Ljava/lang/Throwable;
ifnonnull 7
9: aload 3
invokevirtual java.lang.Throwable.getMessage:()Ljava/lang/String;
invokestatic org.springframework.util.StringUtils.hasText:(Ljava/lang/String;)Z
ifeq 10
aload 3
invokevirtual java.lang.Throwable.getMessage:()Ljava/lang/String;
goto 11
StackMap locals:
StackMap stack:
10: aload 1
invokevirtual org.springframework.boot.context.properties.bind.BindException.getMessage:()Ljava/lang/String;
StackMap locals:
StackMap stack: java.lang.String
11: areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lorg/springframework/boot/diagnostics/analyzer/BindFailureAnalyzer;
0 12 1 cause Lorg/springframework/boot/context/properties/bind/BindException;
1 12 2 conversionFailure Lorg/springframework/core/convert/ConversionFailedException;
6 12 3 failure Ljava/lang/Throwable;
MethodParameters:
Name Flags
cause
private org.springframework.boot.diagnostics.FailureAnalysis getFailureAnalysis(java.lang.Object, org.springframework.boot.context.properties.bind.BindException);
descriptor: (Ljava/lang/Object;Lorg/springframework/boot/context/properties/bind/BindException;)Lorg/springframework/boot/diagnostics/FailureAnalysis;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=5, args_size=3
start local 0 start local 1 start local 2 0: new java.lang.StringBuilder
dup
ldc "Update your application's configuration"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
astore 3
start local 3 1: aload 0
aload 2
invokevirtual org.springframework.boot.diagnostics.analyzer.BindFailureAnalyzer.findValidValues:(Lorg/springframework/boot/context/properties/bind/BindException;)Ljava/util/Collection;
astore 4
start local 4 2: aload 4
invokeinterface java.util.Collection.isEmpty:()Z
ifne 5
3: aload 3
ldc ". The following values are valid:%n"
iconst_0
anewarray java.lang.Object
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
4: aload 4
aload 3
invokedynamic accept(Ljava/lang/StringBuilder;)Ljava/util/function/Consumer;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)V
org/springframework/boot/diagnostics/analyzer/BindFailureAnalyzer.lambda$0(Ljava/lang/StringBuilder;Ljava/lang/String;)V (6)
(Ljava/lang/String;)V
invokeinterface java.util.Collection.forEach:(Ljava/util/function/Consumer;)V
5: StackMap locals: java.lang.StringBuilder java.util.Collection
StackMap stack:
new org.springframework.boot.diagnostics.FailureAnalysis
dup
aload 1
invokevirtual java.lang.Object.toString:()Ljava/lang/String;
aload 3
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 2
invokespecial org.springframework.boot.diagnostics.FailureAnalysis.<init>:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/springframework/boot/diagnostics/analyzer/BindFailureAnalyzer;
0 6 1 description Ljava/lang/Object;
0 6 2 cause Lorg/springframework/boot/context/properties/bind/BindException;
1 6 3 message Ljava/lang/StringBuilder;
2 6 4 validValues Ljava/util/Collection<Ljava/lang/String;>;
MethodParameters:
Name Flags
description
cause
private java.util.Collection<java.lang.String> findValidValues(org.springframework.boot.context.properties.bind.BindException);
descriptor: (Lorg/springframework/boot/context/properties/bind/BindException;)Ljava/util/Collection;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: aload 0
aload 1
ldc Lorg/springframework/core/convert/ConversionFailedException;
invokevirtual org.springframework.boot.diagnostics.analyzer.BindFailureAnalyzer.findCause:(Ljava/lang/Throwable;Ljava/lang/Class;)Ljava/lang/Throwable;
checkcast org.springframework.core.convert.ConversionFailedException
astore 2
start local 2 1: aload 2
ifnull 5
2: aload 2
invokevirtual org.springframework.core.convert.ConversionFailedException.getTargetType:()Lorg/springframework/core/convert/TypeDescriptor;
invokevirtual org.springframework.core.convert.TypeDescriptor.getType:()Ljava/lang/Class;
invokevirtual java.lang.Class.getEnumConstants:()[Ljava/lang/Object;
astore 3
start local 3 3: aload 3
ifnull 5
4: aload 3
invokestatic java.util.stream.Stream.of:([Ljava/lang/Object;)Ljava/util/stream/Stream;
invokedynamic apply()Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
java/lang/Object.toString()Ljava/lang/String; (5)
(Ljava/lang/Object;)Ljava/lang/String;
invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
invokedynamic get()Ljava/util/function/Supplier;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
()Ljava/lang/Object;
java/util/TreeSet.<init>()V (8)
()Ljava/util/TreeSet;
invokestatic java.util.stream.Collectors.toCollection:(Ljava/util/function/Supplier;)Ljava/util/stream/Collector;
invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
checkcast java.util.Collection
areturn
end local 3 5: StackMap locals: org.springframework.core.convert.ConversionFailedException
StackMap stack:
invokestatic java.util.Collections.emptySet:()Ljava/util/Set;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/springframework/boot/diagnostics/analyzer/BindFailureAnalyzer;
0 6 1 ex Lorg/springframework/boot/context/properties/bind/BindException;
1 6 2 conversionFailure Lorg/springframework/core/convert/ConversionFailedException;
3 5 3 enumConstants [Ljava/lang/Object;
Signature: (Lorg/springframework/boot/context/properties/bind/BindException;)Ljava/util/Collection<Ljava/lang/String;>;
MethodParameters:
Name Flags
ex
protected org.springframework.boot.diagnostics.FailureAnalysis analyze(java.lang.Throwable, java.lang.Throwable);
descriptor: (Ljava/lang/Throwable;Ljava/lang/Throwable;)Lorg/springframework/boot/diagnostics/FailureAnalysis;
flags: (0x1044) ACC_PROTECTED, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
0: aload 0
aload 1
aload 2
checkcast org.springframework.boot.context.properties.bind.BindException
invokevirtual org.springframework.boot.diagnostics.analyzer.BindFailureAnalyzer.analyze:(Ljava/lang/Throwable;Lorg/springframework/boot/context/properties/bind/BindException;)Lorg/springframework/boot/diagnostics/FailureAnalysis;
areturn
LocalVariableTable:
Start End Slot Name Signature
private static void lambda$0(java.lang.StringBuilder, java.lang.String);
descriptor: (Ljava/lang/StringBuilder;Ljava/lang/String;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=6, locals=2, args_size=2
start local 1 0: aload 0
ldc "%n %s"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 1
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;
return
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 1 1 value Ljava/lang/String;
}
Signature: Lorg/springframework/boot/diagnostics/AbstractFailureAnalyzer<Lorg/springframework/boot/context/properties/bind/BindException;>;
SourceFile: "BindFailureAnalyzer.java"
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles