private class DirectFieldAccessor.FieldAccessor
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
private java.lang.String |
actualName |
private java.lang.String |
canonicalName |
private java.lang.reflect.Field |
field |
private java.util.List<DirectFieldAccessor.FieldAccessor> |
parents |
Constructor and Description |
---|
FieldAccessor(DirectFieldAccessor.FieldAccessor parent,
java.lang.String canonicalName,
java.lang.String actualName,
java.lang.reflect.Field field)
Create a new FieldAccessor instance.
|
Modifier and Type | Method and Description |
---|---|
private java.lang.Object |
autoGrowIfNecessary(DirectFieldAccessor.FieldAccessor accessor,
java.lang.Object value) |
private java.util.List<DirectFieldAccessor.FieldAccessor> |
buildParents(DirectFieldAccessor.FieldAccessor parent) |
DirectFieldAccessor.FieldAccessor |
child(java.lang.String actualName,
java.lang.reflect.Field field)
Create a child instance.
|
java.lang.reflect.Field |
getField() |
private java.lang.Object |
getLocalTarget(java.lang.Object rootTarget) |
private java.lang.Object |
getParentValue(java.lang.Object target) |
java.lang.Object |
getValue() |
private java.lang.Object |
newValue() |
void |
setValue(java.lang.Object value) |
private final java.util.List<DirectFieldAccessor.FieldAccessor> parents
private final java.lang.String canonicalName
private final java.lang.String actualName
private final java.lang.reflect.Field field
public FieldAccessor(DirectFieldAccessor.FieldAccessor parent, java.lang.String canonicalName, java.lang.String actualName, java.lang.reflect.Field field)
parent
- the parent accessor, if anycanonicalName
- the full expression for the field to accessactualName
- the name of the partial expression for this propertyfield
- the field accessing the propertypublic DirectFieldAccessor.FieldAccessor child(java.lang.String actualName, java.lang.reflect.Field field)
actualName
- the name of the child propertyfield
- the field accessing the child propertypublic java.lang.reflect.Field getField()
public java.lang.Object getValue()
public void setValue(java.lang.Object value)
private java.lang.Object getParentValue(java.lang.Object target)
private java.lang.Object getLocalTarget(java.lang.Object rootTarget)
private java.lang.Object newValue()
private java.lang.Object autoGrowIfNecessary(DirectFieldAccessor.FieldAccessor accessor, java.lang.Object value)
private java.util.List<DirectFieldAccessor.FieldAccessor> buildParents(DirectFieldAccessor.FieldAccessor parent)