public class org.springframework.beans.factory.config.EmbeddedValueResolver implements org.springframework.util.StringValueResolver
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.springframework.beans.factory.config.EmbeddedValueResolver
super_class: java.lang.Object
{
private final org.springframework.beans.factory.config.BeanExpressionContext exprContext;
descriptor: Lorg/springframework/beans/factory/config/BeanExpressionContext;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final org.springframework.beans.factory.config.BeanExpressionResolver exprResolver;
descriptor: Lorg/springframework/beans/factory/config/BeanExpressionResolver;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
public void <init>(org.springframework.beans.factory.config.ConfigurableBeanFactory);
descriptor: (Lorg/springframework/beans/factory/config/ConfigurableBeanFactory;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 // org.springframework.beans.factory.config.EmbeddedValueResolver this
start local 1 // org.springframework.beans.factory.config.ConfigurableBeanFactory beanFactory
0: .line 45
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
1: .line 46
aload 0 /* this */
new org.springframework.beans.factory.config.BeanExpressionContext
dup
aload 1 /* beanFactory */
aconst_null
invokespecial org.springframework.beans.factory.config.BeanExpressionContext.<init>:(Lorg/springframework/beans/factory/config/ConfigurableBeanFactory;Lorg/springframework/beans/factory/config/Scope;)V
putfield org.springframework.beans.factory.config.EmbeddedValueResolver.exprContext:Lorg/springframework/beans/factory/config/BeanExpressionContext;
2: .line 47
aload 0 /* this */
aload 1 /* beanFactory */
invokeinterface org.springframework.beans.factory.config.ConfigurableBeanFactory.getBeanExpressionResolver:()Lorg/springframework/beans/factory/config/BeanExpressionResolver;
putfield org.springframework.beans.factory.config.EmbeddedValueResolver.exprResolver:Lorg/springframework/beans/factory/config/BeanExpressionResolver;
3: .line 48
return
end local 1 // org.springframework.beans.factory.config.ConfigurableBeanFactory beanFactory
end local 0 // org.springframework.beans.factory.config.EmbeddedValueResolver this
LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/springframework/beans/factory/config/EmbeddedValueResolver;
0 4 1 beanFactory Lorg/springframework/beans/factory/config/ConfigurableBeanFactory;
MethodParameters:
Name Flags
beanFactory
public java.lang.String resolveStringValue(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=2
start local 0 // org.springframework.beans.factory.config.EmbeddedValueResolver this
start local 1 // java.lang.String strVal
0: .line 54
aload 0 /* this */
getfield org.springframework.beans.factory.config.EmbeddedValueResolver.exprContext:Lorg/springframework/beans/factory/config/BeanExpressionContext;
invokevirtual org.springframework.beans.factory.config.BeanExpressionContext.getBeanFactory:()Lorg/springframework/beans/factory/config/ConfigurableBeanFactory;
aload 1 /* strVal */
invokeinterface org.springframework.beans.factory.config.ConfigurableBeanFactory.resolveEmbeddedValue:(Ljava/lang/String;)Ljava/lang/String;
astore 2 /* value */
start local 2 // java.lang.String value
1: .line 55
aload 0 /* this */
getfield org.springframework.beans.factory.config.EmbeddedValueResolver.exprResolver:Lorg/springframework/beans/factory/config/BeanExpressionResolver;
ifnull 6
aload 2 /* value */
ifnull 6
2: .line 56
aload 0 /* this */
getfield org.springframework.beans.factory.config.EmbeddedValueResolver.exprResolver:Lorg/springframework/beans/factory/config/BeanExpressionResolver;
aload 2 /* value */
aload 0 /* this */
getfield org.springframework.beans.factory.config.EmbeddedValueResolver.exprContext:Lorg/springframework/beans/factory/config/BeanExpressionContext;
invokeinterface org.springframework.beans.factory.config.BeanExpressionResolver.evaluate:(Ljava/lang/String;Lorg/springframework/beans/factory/config/BeanExpressionContext;)Ljava/lang/Object;
astore 3 /* evaluated */
start local 3 // java.lang.Object evaluated
3: .line 57
aload 3 /* evaluated */
ifnull 4
aload 3 /* evaluated */
invokevirtual java.lang.Object.toString:()Ljava/lang/String;
goto 5
StackMap locals: java.lang.String java.lang.Object
StackMap stack:
4: aconst_null
StackMap locals:
StackMap stack: java.lang.String
5: astore 2 /* value */
end local 3 // java.lang.Object evaluated
6: .line 59
StackMap locals:
StackMap stack:
aload 2 /* value */
areturn
end local 2 // java.lang.String value
end local 1 // java.lang.String strVal
end local 0 // org.springframework.beans.factory.config.EmbeddedValueResolver this
LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/springframework/beans/factory/config/EmbeddedValueResolver;
0 7 1 strVal Ljava/lang/String;
1 7 2 value Ljava/lang/String;
3 6 3 evaluated Ljava/lang/Object;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
strVal
}
SourceFile: "EmbeddedValueResolver.java"