/**
* @Author Filipe Martins
* 26 May 2010
* OF-Manager
*/
package openfarmmanager.manager.web.controller.memory;
import java.util.ArrayList;
import java.util.Calendar;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import openfarmmanager.beans.metadata.ResultSetBean;
import openfarmmanager.manager.web.controller.SpringSubManager;
import openfarmmanager.memory.ResultSetBeanQuery;
import openfarmtools.interpreter.exceptions.OpenFarmException;
import openfarmtools.util.OpenFarmUtil;
import org.springframework.web.servlet.ModelAndView;
public class IMemoryController extends SpringSubManager
{
@Override
public ModelAndView doStuff(HttpServletRequest request, HttpServletResponse response) throws OpenFarmException
{
ModelAndView mv = new ModelAndView("imemory");
ResultSetBeanQuery rsQuery = this.getMemHandler().getRsQuery();
rsQuery.markedForTc(false);
try{
if(http.existsInRequest("get"))
{
if(http.get("get").equals("memoryDump"))
request.setAttribute("resultSet", rsQuery.getAllResultSetInMemory());
if(http.get("get").equals("ac") && http.existsInRequest("ac"))
{
String analysisType = OpenFarmUtil.trimAndLowerCase(http.get("ac"));
request.setAttribute("resultSet",rsQuery.getResultSetByAnalysisType(analysisType));
}
if(http.get("get").equals("jobId") && http.existsInRequest("jobId"))
{
String jobId = OpenFarmUtil.trimAndLowerCase(http.get("jobId"));
ResultSetBean [] rs = new ResultSetBean[1];
rs[0] = new ResultSetBean();
rs[0] = rsQuery.getResultSetByJobId(jobId);
if(rs[0] !=null)
request.setAttribute("resultSet",rs);
}
if(http.get("get").equals("jobGroupId") && http.existsInRequest("jobGroupId"))
{
String jobGroupId = OpenFarmUtil.trimAndLowerCase(http.get("jobGroupId"));
ArrayList<ResultSetBean> rs = rsQuery.getResultSetByJobGroupId(jobGroupId);
if(rs != null && rs.size() > 0)
request.setAttribute("resultSet",rs.toArray(new ResultSetBean[rs.size()]));
}
if(http.get("get").equals("tcQuery") && http.existsInRequest("tcQuery"))
{
boolean tcMarked = Boolean.parseBoolean(http.get("tcQuery"));
request.setAttribute("resultSet",rsQuery.getResultSetByPolled(tcMarked));
}
if(http.get("get").equals("byDate"))
{
if(http.existsInRequest("byDay"))
{
int byDay = Integer.parseInt(http.get("byDay"));
request.setAttribute("resultSet",rsQuery.getByDate(byDay, Calendar.DAY_OF_MONTH));
}else if(http.existsInRequest("byMonth"))
{
int byMonth = Integer.parseInt(http.get("byMonth"));
request.setAttribute("resultSet",rsQuery.getByDate(byMonth, Calendar.MONTH));
}else if(http.existsInRequest("byYear"))
{
int byYear = Integer.parseInt(http.get("byYear"));
request.setAttribute("resultSet",rsQuery.getByDate(byYear, Calendar.YEAR));
}
}
}
if(http.existsInRequest("delete"))
{
this.getMemHandler().deleteFromMemory(http.get("delete"));
}
}catch(Exception e)
{
throw new OpenFarmException(e.getMessage());
}
return mv;
}
}
|