/* Date: February 2, 2010 * Template: PluginScreenJavaTemplateGen.java.ftl * generator: org.molgenis.generators.ui.PluginScreenJavaTemplateGen 3.3.2-testing * * THIS FILE IS A TEMPLATE. PLEASE EDIT :-) */ package plugins.matrix.admin; import matrix.general.DataMatrixHandler; import org.molgenis.data.Data; import org.molgenis.framework.db.Database; import org.molgenis.framework.ui.FormController; import org.molgenis.framework.ui.FormModel; import org.molgenis.framework.ui.PluginModel; import org.molgenis.framework.ui.ScreenController; import org.molgenis.framework.ui.ScreenMessage; import org.molgenis.util.Tuple; public class MatrixAdmin extends PluginModel { private MatrixAdminModel model = new MatrixAdminModel(); private DataMatrixHandler dmh = null; public MatrixAdminModel getMyModel() { return model; } public MatrixAdmin(String name, ScreenController<?> parent) { super(name, parent); } // moved overlib to molgenis core // @Override // public String getCustomHtmlHeaders() // { // return // "<script src=\"res/scripts/overlib.js\" language=\"javascript\"></script>"; // // } @Override public String getViewName() { return "MatrixAdmin"; } @Override public String getViewTemplate() { return "plugins/matrix/admin/MatrixAdmin.ftl"; } public void handleRequest(Database db, Tuple request) { if (request.getString("__action") != null) { try { if (request.getString("__action").equals("deleteBackend")) { dmh.deleteDataMatrixSource(this.model.getSelectedData(), db); this.model.setSelectedData(null); } } catch (Exception e) { e.printStackTrace(); this.setMessages(new ScreenMessage(e.getMessage() != null ? e.getMessage() : "null", false)); } } } @Override public void reload(Database db) { ScreenController<?> parentController = (ScreenController<?>) this.getParent().getParent(); FormModel<Data> parentForm = (FormModel<Data>) ((FormController) parentController).getModel(); Data data = parentForm.getRecords().get(0); if (dmh == null) { dmh = new DataMatrixHandler(db); } try { // ASSUMING newOrOtherData"); this.model.setSelectedData(data); this.model.setHasBackend(dmh.isDataStoredIn(data, data.getStorage(), db)); logger.info("hasBackend: " + this.model.isHasBackend()); } catch (Exception e) { e.printStackTrace(); this.setMessages(new ScreenMessage(e.getMessage() != null ? e.getMessage() : "null", false)); } } }