/* (c) 2014 - 2016 Open Source Geospatial Foundation - all rights reserved
* (c) 2001 - 2013 OpenPlans
* This code is licensed under the GPL 2.0 license, available at the root
* application directory.
*/
package org.geoserver.web.wicket;
import org.apache.wicket.Component;
import org.apache.wicket.model.IModel;
public class DelegatingModel<T> implements IModel<T> {
private static final long serialVersionUID = -5182376836143803511L;
Component myComponent;
public DelegatingModel(Component c) {
myComponent = c;
}
@SuppressWarnings("unchecked")
public T getObject() {
return (T) myComponent.getDefaultModel().getObject();
}
public void setObject(T o) {
@SuppressWarnings("unchecked")
IModel<T> mod = (IModel<T>) myComponent.getDefaultModel();
mod.setObject(o);
}
public void detach() {
myComponent.getDefaultModel().detach();
}
}