package com.fp.armas.portal.controller.base; import javax.annotation.PostConstruct; import javax.faces.component.html.HtmlForm; import com.fp.armas.portal.datamanager.base.BaseDataManager; import com.fp.armas.portal.faces.FacesUtil; /** * Clase padre que implementan todos los controladores * @author dcruz * */ public abstract class BaseController { private HtmlForm form; @PostConstruct public void init(){ try{ if(!this.getDataManager().isInicializado()){ inicializar(); this.getDataManager().setInicializado(true); } }catch (Throwable e){ FacesUtil.getInstancia().messageError(e.getMessage()); } } /** * Método en el cual se debe retornar el DataManager gestionado * @return */ public abstract BaseDataManager getDataManager() ; /** * Método que se ejecuta al inicializar el controlador una sola vez por DataManager */ public abstract void inicializar(); public HtmlForm getForm() { return form; } public void setForm(HtmlForm form) { this.form = form; } }