org.apache.wicket.model
Class Model<T extends java.io.Serializable>

java.lang.Object
  extended by org.apache.wicket.model.Model<T>
Type Parameters:
T - The type of the Model Object
All Implemented Interfaces:
java.io.Serializable, IClusterable, IDetachable, IModel<T>

public class Model<T extends java.io.Serializable>
extends java.lang.Object
implements IModel<T>

Model is the basic implementation of an IModel. It just wraps a simple model object. The model object must be serializable, as it is stored in the session. If you have large objects to store, consider using LoadableDetachableModel instead of this class.

Author:
Chris Turner, Eelco Hillenius
See Also:
Serialized Form

Constructor Summary
Model()
          Construct the model without providing an object.
Model(T object)
          Construct the model, setting the given object as the wrapped object.
 
Method Summary
 void detach()
          Detaches model after use.
 boolean equals(java.lang.Object obj)
           
 T getObject()
          Gets the model object.
 int hashCode()
           
static
<T extends java.io.Serializable>
Model<T>
of()
          Factory methods for Model which uses type inference to make code shorter.
static
<C> IModel<java.util.Collection<? extends C>>
of(java.util.Collection<? extends C> set)
          Factory method for models that contain collections.
static
<T> IModel<T>
of(IModel<?> model)
          Supresses generics warning when converting model types
static
<T extends java.io.Serializable>
Model<T>
of(T object)
          Factory methods for Model which uses type inference to make code shorter.
static
<C> IModel<java.util.List<? extends C>>
ofList(java.util.List<? extends C> list)
          Factory method for models that contain lists.
static
<K,V> IModel<java.util.Map<K,V>>
ofMap(java.util.Map<K,V> map)
          Factory method for models that contain maps.
static
<C> IModel<java.util.Set<? extends C>>
ofSet(java.util.Set<? extends C> set)
          Factory method for models that contain sets.
 void setObject(T object)
          Set the model object; calls setObject(java.io.Serializable).
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

Model

public Model()
Construct the model without providing an object.


Model

public Model(T object)
Construct the model, setting the given object as the wrapped object.

Parameters:
object - The model object proper
Method Detail

ofList

public static <C> IModel<java.util.List<? extends C>> ofList(java.util.List<? extends C> list)
Factory method for models that contain lists. This factory method will automatically rebuild a nonserializable list into a serializable one.

Type Parameters:
C - model type
Parameters:
list - The List, which may or may not be Serializable
Returns:
A Model object wrapping the List

ofMap

public static <K,V> IModel<java.util.Map<K,V>> ofMap(java.util.Map<K,V> map)
Factory method for models that contain maps. This factory method will automatically rebuild a nonserializable map into a serializable one.

Type Parameters:
K - key type in map
V - value type in map
Parameters:
map - The Map, which may or may not be Serializable
Returns:
A Model object wrapping the Map

ofSet

public static <C> IModel<java.util.Set<? extends C>> ofSet(java.util.Set<? extends C> set)
Factory method for models that contain sets. This factory method will automatically rebuild a nonserializable set into a serializable one.

Type Parameters:
C - model type
Parameters:
set - The Set, which may or may not be Serializable
Returns:
A Model object wrapping the Set

of

public static <C> IModel<java.util.Collection<? extends C>> of(java.util.Collection<? extends C> set)
Factory method for models that contain collections. This factory method will automatically rebuild a nonserializable collection into a serializable ArrayList.

Type Parameters:
C - model type
Parameters:
set - The Collection, which may or may not be Serializable
Returns:
A Model object wrapping the Set

of

public static <T extends java.io.Serializable> Model<T> of(T object)
Factory methods for Model which uses type inference to make code shorter. Equivalent to new Model(object).

Type Parameters:
T -
Parameters:
object -
Returns:
Model that contains object

of

public static <T extends java.io.Serializable> Model<T> of()
Factory methods for Model which uses type inference to make code shorter. Equivalent to new Model().

Type Parameters:
T -
Returns:
Model that contains object

getObject

public T getObject()
Description copied from interface: IModel
Gets the model object.

Specified by:
getObject in interface IModel<T extends java.io.Serializable>
Returns:
The model object
See Also:
IModel.getObject()

setObject

public void setObject(T object)
Set the model object; calls setObject(java.io.Serializable). The model object must be serializable, as it is stored in the session

Specified by:
setObject in interface IModel<T extends java.io.Serializable>
Parameters:
object - the model object
See Also:
IModel.setObject(Object)

detach

public void detach()
Description copied from interface: IDetachable
Detaches model after use. This is generally used to null out transient references that can be re-attached later.

Specified by:
detach in interface IDetachable
See Also:
IDetachable.detach()

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object
See Also:
Object.toString()

hashCode

public int hashCode()
Overrides:
hashCode in class java.lang.Object

equals

public boolean equals(java.lang.Object obj)
Overrides:
equals in class java.lang.Object

of

public static <T> IModel<T> of(IModel<?> model)
Supresses generics warning when converting model types

Type Parameters:
T -
Parameters:
model -
Returns:
model


Copyright © 2006-2011 Apache Software Foundation. All Rights Reserved.