package org.tgdb.webapp.action.gene; import org.tgdb.frame.advanced.Workflow; import org.tgdb.TgDbCaller; import org.tgdb.exceptions.ApplicationException; import org.tgdb.model.modelmanager.GeneDTO; import org.tgdb.webapp.action.TgDbAction; import java.util.Collection; import javax.servlet.ServletContext; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpSession; public class GetGeneAction extends TgDbAction { public String getName() { return "GetGeneAction"; } public boolean performAction(HttpServletRequest request, ServletContext context) throws ApplicationException { try { HttpSession se = request.getSession(); TgDbCaller _caller = (TgDbCaller)se.getAttribute("caller"); Workflow wf = (Workflow)request.getAttribute("workflow"); int gaid = 0; if (request.getParameter("gaid")!=null) { gaid = new Integer(request.getParameter("gaid")).intValue(); wf.setAttribute("gaid", new Integer(gaid).toString()); } else { String request_gaid = (String) se.getAttribute("currGene");//request.getAttribute("gaid"); gaid = new Integer(request_gaid).intValue(); } GeneDTO gene = null; // if(wf.getName().compareTo("EditGene")==0){ // gene = modelManager.getGene(gaid, _caller); // }else{ // gene = modelManager.getGene(gaid, _caller, "superscript"); // } gene = modelManager.getGene(gaid, _caller); //GeneDTO gene = modelManager.getGene(gaid, caller, "superscript"); request.setAttribute("gene", gene); Collection models = modelManager.getModelsByGene(gaid, _caller); request.setAttribute("models", models); Collection chromosomes = modelManager.getChromosomesForSpecies(_caller.getSid(), _caller); request.setAttribute("chromosomes", chromosomes); se.setAttribute("currGene", new Integer(gaid).toString()); return true; } catch (ApplicationException e) { throw e; } catch (Exception e) { throw new ApplicationException("GetGeneAction Failed to perform action", e); //throw new ApplicationException("GetGeneAction Failed to perform action -> "+request_gaid, e); } } }