- Type Parameters:
T
- The model data type
- All Superinterfaces:
IClusterable
,IDetachable
,IModel<T>
,Serializable
- All Known Implementing Classes:
ComponentDetachableModel
,ComponentModel
,ComponentPropertyModel
,ResourceModel
,StringResourceModel
Models that wish to substitute themselves with a wrapper when they are bound to a component
(either through IModel parameter in a constructor or via a call to
Component.setDefaultModel(IModel)
) should implement this interface. One reason for a
model to want to do this is if it needs to be aware of the component it is bound to.
The algorithm wicket employs is similar to this:
void Component.setModel(IModel model) { if (model instanceof IComponentAssignedModel) { this.model = ((IComponentAssignedModel)model).wrapOnAssignment(this); } else { this.model = model; } }For an example see
ResourceModel
- Author:
- jcompagner, Igor Vaynberg (ivaynberg)
-
Method Summary
Modifier and TypeMethodDescriptionwrapOnAssignment
(Component component) This method is called when the component gets its model assigned.
-
Method Details
-
wrapOnAssignment
This method is called when the component gets its model assigned. WARNING: Because the model can be assigned in the constructor of component this method can also be called with a 'this' of a component that is not fully constructed yet.- Parameters:
component
-- Returns:
- The WrapModel that wraps this model
-