Package org.apache.wicket.model
Class AbstractPropertyModel<T>
- java.lang.Object
-
- org.apache.wicket.model.ChainingModel<T>
-
- org.apache.wicket.model.AbstractPropertyModel<T>
-
- Type Parameters:
T
- The Model object type
- All Implemented Interfaces:
java.io.Serializable
,IDetachable
,IModel<T>
,IObjectClassAwareModel<T>
,IPropertyReflectionAwareModel<T>
,org.apache.wicket.util.io.IClusterable
- Direct Known Subclasses:
PropertyModel
public abstract class AbstractPropertyModel<T> extends ChainingModel<T> implements IObjectClassAwareModel<T>, IPropertyReflectionAwareModel<T>
Serves as a base class for different kinds of property models. By default, this class usesPropertyResolver
to resolve expressions on the target model object. Note that the property resolver by default provides access to private members and methods. If guaranteeing encapsulation of the target objects is a big concern, you should consider using an alternative implementation.- Author:
- Chris Turner, Eelco Hillenius, Jonathan Locke
- See Also:
PropertyResolver
,IDetachable
, Serialized Form
-
-
Constructor Summary
Constructors Constructor Description AbstractPropertyModel(java.lang.Object modelObject)
Constructor
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description T
getObject()
Gets the model object.java.lang.Class<T>
getObjectClass()
Returns the class of model objectjava.lang.String
getPropertyExpression()
Gets the property expression for this modeljava.lang.reflect.Field
getPropertyField()
Returns the field of model property or null if the field doesn't exist.java.lang.reflect.Method
getPropertyGetter()
Returns the getter method of model property or null if the method doesn't exist.java.lang.reflect.Method
getPropertySetter()
Returns the setter method of model property or null if the method doesn't exist.protected abstract java.lang.String
propertyExpression()
void
setObject(T object)
Applies the property expression on the model object using the given object argument.-
Methods inherited from class org.apache.wicket.model.ChainingModel
detach, getInnermostModelOrObject, getTarget, setTarget, toString
-
-
-
-
Method Detail
-
getPropertyExpression
public final java.lang.String getPropertyExpression()
Gets the property expression for this model- Returns:
- The property expression
-
setObject
public void setObject(T object)
Applies the property expression on the model object using the given object argument.- Specified by:
setObject
in interfaceIModel<T>
- Overrides:
setObject
in classChainingModel<T>
- Parameters:
object
- The object that will be used when setting a value on the model object- See Also:
IModel.setObject(Object)
-
getObjectClass
public java.lang.Class<T> getObjectClass()
Description copied from interface:IObjectClassAwareModel
Returns the class of model object- Specified by:
getObjectClass
in interfaceIObjectClassAwareModel<T>
- Returns:
- model object class
-
getPropertyField
public java.lang.reflect.Field getPropertyField()
Description copied from interface:IPropertyReflectionAwareModel
Returns the field of model property or null if the field doesn't exist.- Specified by:
getPropertyField
in interfaceIPropertyReflectionAwareModel<T>
- Returns:
- Field or null
-
getPropertyGetter
public java.lang.reflect.Method getPropertyGetter()
Description copied from interface:IPropertyReflectionAwareModel
Returns the getter method of model property or null if the method doesn't exist.- Specified by:
getPropertyGetter
in interfaceIPropertyReflectionAwareModel<T>
- Returns:
- Method or null
-
getPropertySetter
public java.lang.reflect.Method getPropertySetter()
Description copied from interface:IPropertyReflectionAwareModel
Returns the setter method of model property or null if the method doesn't exist.- Specified by:
getPropertySetter
in interfaceIPropertyReflectionAwareModel<T>
- Returns:
- Method or null
-
propertyExpression
protected abstract java.lang.String propertyExpression()
- Returns:
- The property expression for the component
-
-