Package org.apache.wicket.model.util
Class GenericBaseModel<T>
- java.lang.Object
-
- org.apache.wicket.model.util.GenericBaseModel<T>
-
- Type Parameters:
T- type of model object
- All Implemented Interfaces:
java.io.Serializable,IDetachable,IModel<T>,IObjectClassAwareModel<T>,org.apache.wicket.util.io.IClusterable
- Direct Known Subclasses:
CollectionModel,ListModel,MapModel,SetModel
public abstract class GenericBaseModel<T> extends java.lang.Object implements IObjectClassAwareModel<T>
Base class for models that contain instances that do not appear to be serializable and cannot thus useModeldirectly. Makes sure that the object set into the model can be serialized.- Author:
- Timo Rantalaiho
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description GenericBaseModel()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected abstract TcreateSerializableVersionOf(T object)Creates a serializable version of the object.voiddetach()Detaches model after use.booleanequals(java.lang.Object obj)TgetObject()Gets the model object.java.lang.Class<T>getObjectClass()Returns the class of model objectinthashCode()voidsetObject(T object)Set the model object.java.lang.StringtoString()
-
-
-
Method Detail
-
setObject
public void setObject(T object)
Set the model object. The contents must be serializable, as they are stored in the session- Specified by:
setObjectin interfaceIModel<T>- Parameters:
object- the model object- See Also:
IModel.setObject(Object)
-
createSerializableVersionOf
protected abstract T createSerializableVersionOf(T object)
Creates a serializable version of the object. The object is usually a collection.- Parameters:
object-- Returns:
- serializable version of
object
-
detach
public void detach()
Description copied from interface:IDetachableDetaches model after use. This is generally used to null out transient references that can be re-attached later.- Specified by:
detachin interfaceIDetachable- Specified by:
detachin interfaceIModel<T>
-
getObjectClass
public java.lang.Class<T> getObjectClass()
Description copied from interface:IObjectClassAwareModelReturns the class of model object- Specified by:
getObjectClassin interfaceIObjectClassAwareModel<T>- Returns:
- class of model object or null if the class couldn't be determined
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
hashCode
public int hashCode()
- Overrides:
hashCodein classjava.lang.Object
-
equals
public boolean equals(java.lang.Object obj)
- Overrides:
equalsin classjava.lang.Object
-
-