Spring Data Core

org.springframework.data.mapping.model
Class BeanWrapper<E extends PersistentEntity<T,?>,T>

java.lang.Object
  extended by org.springframework.data.mapping.model.BeanWrapper<E,T>

public class BeanWrapper<E extends PersistentEntity<T,?>,T>
extends Object

Value object to allow creation of objects using the metamodel, setting and getting properties.

Author:
Oliver Gierke

Method Summary
static
<E extends PersistentEntity<T,?>,T>
BeanWrapper<E,T>
create(T bean, ConversionService conversionService)
          Creates a new BeanWrapper for the given bean instance and ConversionService.
 T getBean()
          Returns the underlying bean instance.
 Object getProperty(PersistentProperty<?> property)
          Returns the value of the given PersistentProperty of the underlying bean instance.
<S> S
getProperty(PersistentProperty<?> property, Class<? extends S> type, boolean fieldAccessOnly)
          Returns the value of the given PersistentProperty potentially converted to the given type.
 void setProperty(PersistentProperty<?> property, Object value)
          Sets the given PersistentProperty to the given value.
 void setProperty(PersistentProperty<?> property, Object value, boolean fieldAccessOnly)
          Sets the given PersistentProperty to the given value.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

create

public static <E extends PersistentEntity<T,?>,T> BeanWrapper<E,T> create(T bean,
                                                                          ConversionService conversionService)
Creates a new BeanWrapper for the given bean instance and ConversionService. If ConversionService is null no property type conversion will take place.

Type Parameters:
E -
T -
Parameters:
bean - must not be null
conversionService -
Returns:

setProperty

public void setProperty(PersistentProperty<?> property,
                        Object value)
Sets the given PersistentProperty to the given value. Will do type conversion if a ConversionService is configured. Will use the accessor method of the given PersistentProperty if it has one or field access otherwise.

Parameters:
property - must not be null.
value -

setProperty

public void setProperty(PersistentProperty<?> property,
                        Object value,
                        boolean fieldAccessOnly)
Sets the given PersistentProperty to the given value. Will do type conversion if a ConversionService is configured.

Parameters:
property - must not be null.
value -
fieldAccessOnly - whether to only try accessing the field (true) or try using the getter first.
Throws:
IllegalAccessException
InvocationTargetException

getProperty

public Object getProperty(PersistentProperty<?> property)
Returns the value of the given PersistentProperty of the underlying bean instance.

Type Parameters:
S -
Parameters:
property -
Returns:

getProperty

public <S> S getProperty(PersistentProperty<?> property,
                         Class<? extends S> type,
                         boolean fieldAccessOnly)
Returns the value of the given PersistentProperty potentially converted to the given type.

Type Parameters:
S -
Parameters:
property - must not be null.
type -
fieldAccessOnly -
Returns:

getBean

public T getBean()
Returns the underlying bean instance.

Returns:

Spring Data Core

Copyright © 2011-2013-2013 Pivotal. All Rights Reserved.