class org.springframework.beans.DirectFieldAccessor$FieldPropertyHandler extends org.springframework.beans.AbstractNestablePropertyAccessor$PropertyHandler
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.springframework.beans.DirectFieldAccessor$FieldPropertyHandler
super_class: org.springframework.beans.AbstractNestablePropertyAccessor$PropertyHandler
{
private final java.lang.reflect.Field field;
descriptor: Ljava/lang/reflect/Field;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
final org.springframework.beans.DirectFieldAccessor this$0;
descriptor: Lorg/springframework/beans/DirectFieldAccessor;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
public void <init>(org.springframework.beans.DirectFieldAccessor, java.lang.reflect.Field);
descriptor: (Lorg/springframework/beans/DirectFieldAccessor;Ljava/lang/reflect/Field;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 2 0: aload 0
aload 1
putfield org.springframework.beans.DirectFieldAccessor$FieldPropertyHandler.this$0:Lorg/springframework/beans/DirectFieldAccessor;
1: aload 0
aload 2
invokevirtual java.lang.reflect.Field.getType:()Ljava/lang/Class;
iconst_1
iconst_1
invokespecial org.springframework.beans.AbstractNestablePropertyAccessor$PropertyHandler.<init>:(Ljava/lang/Class;ZZ)V
2: aload 0
aload 2
putfield org.springframework.beans.DirectFieldAccessor$FieldPropertyHandler.field:Ljava/lang/reflect/Field;
3: return
end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/springframework/beans/DirectFieldAccessor$FieldPropertyHandler;
0 4 2 field Ljava/lang/reflect/Field;
MethodParameters:
Name Flags
this$0 final
field
public org.springframework.core.convert.TypeDescriptor toTypeDescriptor();
descriptor: ()Lorg/springframework/core/convert/TypeDescriptor;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new org.springframework.core.convert.TypeDescriptor
dup
aload 0
getfield org.springframework.beans.DirectFieldAccessor$FieldPropertyHandler.field:Ljava/lang/reflect/Field;
invokespecial org.springframework.core.convert.TypeDescriptor.<init>:(Ljava/lang/reflect/Field;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/beans/DirectFieldAccessor$FieldPropertyHandler;
public org.springframework.core.ResolvableType getResolvableType();
descriptor: ()Lorg/springframework/core/ResolvableType;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.springframework.beans.DirectFieldAccessor$FieldPropertyHandler.field:Ljava/lang/reflect/Field;
invokestatic org.springframework.core.ResolvableType.forField:(Ljava/lang/reflect/Field;)Lorg/springframework/core/ResolvableType;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/beans/DirectFieldAccessor$FieldPropertyHandler;
public org.springframework.core.convert.TypeDescriptor nested(int);
descriptor: (I)Lorg/springframework/core/convert/TypeDescriptor;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.springframework.beans.DirectFieldAccessor$FieldPropertyHandler.field:Ljava/lang/reflect/Field;
iload 1
invokestatic org.springframework.core.convert.TypeDescriptor.nested:(Ljava/lang/reflect/Field;I)Lorg/springframework/core/convert/TypeDescriptor;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/beans/DirectFieldAccessor$FieldPropertyHandler;
0 1 1 level I
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
level
public java.lang.Object getValue();
descriptor: ()Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=2, args_size=1
start local 0 0: aload 0
getfield org.springframework.beans.DirectFieldAccessor$FieldPropertyHandler.field:Ljava/lang/reflect/Field;
invokestatic org.springframework.util.ReflectionUtils.makeAccessible:(Ljava/lang/reflect/Field;)V
1: aload 0
getfield org.springframework.beans.DirectFieldAccessor$FieldPropertyHandler.field:Ljava/lang/reflect/Field;
aload 0
getfield org.springframework.beans.DirectFieldAccessor$FieldPropertyHandler.this$0:Lorg/springframework/beans/DirectFieldAccessor;
invokevirtual org.springframework.beans.DirectFieldAccessor.getWrappedInstance:()Ljava/lang/Object;
invokevirtual java.lang.reflect.Field.get:(Ljava/lang/Object;)Ljava/lang/Object;
2: areturn
3: StackMap locals:
StackMap stack: java.lang.IllegalAccessException
astore 1
start local 1 4: new org.springframework.beans.InvalidPropertyException
dup
aload 0
getfield org.springframework.beans.DirectFieldAccessor$FieldPropertyHandler.this$0:Lorg/springframework/beans/DirectFieldAccessor;
invokevirtual org.springframework.beans.DirectFieldAccessor.getWrappedClass:()Ljava/lang/Class;
5: aload 0
getfield org.springframework.beans.DirectFieldAccessor$FieldPropertyHandler.field:Ljava/lang/reflect/Field;
invokevirtual java.lang.reflect.Field.getName:()Ljava/lang/String;
ldc "Field is not accessible"
aload 1
6: invokespecial org.springframework.beans.InvalidPropertyException.<init>:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/springframework/beans/DirectFieldAccessor$FieldPropertyHandler;
4 7 1 ex Ljava/lang/IllegalAccessException;
Exception table:
from to target type
0 2 3 Class java.lang.IllegalAccessException
Exceptions:
throws java.lang.Exception
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
public void setValue(java.lang.Object);
descriptor: (Ljava/lang/Object;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield org.springframework.beans.DirectFieldAccessor$FieldPropertyHandler.field:Ljava/lang/reflect/Field;
invokestatic org.springframework.util.ReflectionUtils.makeAccessible:(Ljava/lang/reflect/Field;)V
1: aload 0
getfield org.springframework.beans.DirectFieldAccessor$FieldPropertyHandler.field:Ljava/lang/reflect/Field;
aload 0
getfield org.springframework.beans.DirectFieldAccessor$FieldPropertyHandler.this$0:Lorg/springframework/beans/DirectFieldAccessor;
invokevirtual org.springframework.beans.DirectFieldAccessor.getWrappedInstance:()Ljava/lang/Object;
aload 1
invokevirtual java.lang.reflect.Field.set:(Ljava/lang/Object;Ljava/lang/Object;)V
2: goto 7
3: StackMap locals:
StackMap stack: java.lang.IllegalAccessException
astore 2
start local 2 4: new org.springframework.beans.InvalidPropertyException
dup
aload 0
getfield org.springframework.beans.DirectFieldAccessor$FieldPropertyHandler.this$0:Lorg/springframework/beans/DirectFieldAccessor;
invokevirtual org.springframework.beans.DirectFieldAccessor.getWrappedClass:()Ljava/lang/Class;
aload 0
getfield org.springframework.beans.DirectFieldAccessor$FieldPropertyHandler.field:Ljava/lang/reflect/Field;
invokevirtual java.lang.reflect.Field.getName:()Ljava/lang/String;
5: ldc "Field is not accessible"
aload 2
6: invokespecial org.springframework.beans.InvalidPropertyException.<init>:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 2 7: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/springframework/beans/DirectFieldAccessor$FieldPropertyHandler;
0 8 1 value Ljava/lang/Object;
4 7 2 ex Ljava/lang/IllegalAccessException;
Exception table:
from to target type
0 2 3 Class java.lang.IllegalAccessException
Exceptions:
throws java.lang.Exception
RuntimeVisibleParameterAnnotations:
0:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
value
}
SourceFile: "DirectFieldAccessor.java"
NestHost: org.springframework.beans.DirectFieldAccessor
InnerClasses:
protected abstract PropertyHandler = org.springframework.beans.AbstractNestablePropertyAccessor$PropertyHandler of org.springframework.beans.AbstractNestablePropertyAccessor
private FieldPropertyHandler = org.springframework.beans.DirectFieldAccessor$FieldPropertyHandler of org.springframework.beans.DirectFieldAccessor