import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
import eu.etaxonomy.taxeditor.ui.element.ICdmFormElement;
-import eu.etaxonomy.taxeditor.ui.mvc.interfaces.ICdmComposite;
import eu.etaxonomy.taxeditor.ui.mvc.interfaces.CdmCompositeController;
+import eu.etaxonomy.taxeditor.ui.mvc.interfaces.ICdmComposite;
/**
+ * Basic implementation of {@link ICdmComposite}.
* @author pplitzner
* @date 11.02.2014
*
+ * @param <T> The {@link CdmCompositeController} for this composite.
*/
-public abstract class AbstractCdmComposite extends Composite implements ICdmComposite {
+public abstract class AbstractCdmComposite<T extends CdmCompositeController> extends Composite implements ICdmComposite {
- protected CdmCompositeController controller;
+ protected T controller;
/**
* @param parent
protected abstract void initInternalController(CdmFormFactory formFactory, ICdmFormElement parentElement);
@Override
- public CdmCompositeController getController(){
+ public T getController(){
return controller;
}