package fr.openwide.core.wicket.more.link.descriptor.mapper; import org.apache.wicket.model.IModel; import fr.openwide.core.wicket.more.model.ReadOnlyModel; public abstract class AbstractOneParameterLinkDescriptorMapper<L, T1> implements IOneParameterLinkDescriptorMapper<L, T1> { private static final long serialVersionUID = 5478611315785648670L; @Override public void detach() { } @Override public <U1 extends T1> IOneParameterLinkDescriptorMapper<L, U1> castParameter1() { return new AbstractOneParameterLinkDescriptorMapper<L, U1>() { private static final long serialVersionUID = 1L; @Override public L map(IModel<U1> model1) { return AbstractOneParameterLinkDescriptorMapper.this.map(ReadOnlyModel.<T1>of(model1)); } @Override public void detach() { super.detach(); AbstractOneParameterLinkDescriptorMapper.this.detach(); } }; } }