public class InstantiationAwarePropertyAccessor<T> extends Object implements PersistentPropertyAccessor<T>
PersistentPropertyAccessor that will use an entity's PersistenceConstructor to create a new
instance of it to apply a new value for a given PersistentProperty. Will only be used if the
PersistentProperty is to be applied on a completely immutable entity type exposing a persistence constructor.| Constructor and Description |
|---|
InstantiationAwarePropertyAccessor(PersistentPropertyAccessor<T> delegate,
EntityInstantiators instantiators)
Deprecated.
since 2.4. Using this constructor allows only setting a single property as
PersistentPropertyAccessor holds a reference to the initial bean state. |
InstantiationAwarePropertyAccessor(T bean,
Function<T,PersistentPropertyAccessor<T>> accessorFunction,
EntityInstantiators instantiators)
Creates an
InstantiationAwarePropertyAccessor using the given delegate accessorFunction and
EntityInstantiators. |
| Modifier and Type | Method and Description |
|---|---|
T |
getBean()
Returns the underlying bean.
|
Object |
getProperty(PersistentProperty<?> property)
Returns the value of the given
PersistentProperty of the underlying bean instance. |
void |
setProperty(PersistentProperty<?> property,
Object value)
Sets the given
PersistentProperty to the given value. |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetProperty, getProperty, setProperty@Deprecated public InstantiationAwarePropertyAccessor(PersistentPropertyAccessor<T> delegate, EntityInstantiators instantiators)
PersistentPropertyAccessor holds a reference to the initial bean state.InstantiationAwarePropertyAccessor using the given delegate PersistentPropertyAccessor
and EntityInstantiators.delegate - must not be null.instantiators - must not be null.public InstantiationAwarePropertyAccessor(T bean, Function<T,PersistentPropertyAccessor<T>> accessorFunction, EntityInstantiators instantiators)
InstantiationAwarePropertyAccessor using the given delegate accessorFunction and
EntityInstantiators. accessorFunction is used to obtain a new PersistentPropertyAccessor
for each property to set.bean - must not be null.accessorFunction - must not be null.instantiators - must not be null.public void setProperty(PersistentProperty<?> property, @Nullable Object value)
PersistentPropertyAccessorPersistentProperty to the given value. Will do type conversion if a
ConversionService is configured.setProperty in interface PersistentPropertyAccessor<T>property - must not be null.value - can be null.@Nullable public Object getProperty(PersistentProperty<?> property)
PersistentPropertyAccessorPersistentProperty of the underlying bean instance.getProperty in interface PersistentPropertyAccessor<T>property - must not be null.public T getBean()
PersistentPropertyAccessorPersistentPropertyAccessor.setProperty(PersistentProperty, Object) calls.getBean in interface PersistentPropertyAccessor<T>Copyright © 2011–2021 Pivotal Software, Inc.. All rights reserved.