package compbio.controllers;
+import java.security.Principal;
import java.util.Calendar;
+import java.util.List;
import java.util.Map;
-import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
-import org.springframework.validation.BindingResult;
-import org.springframework.web.bind.WebDataBinder;
-import org.springframework.web.bind.annotation.InitBinder;
-import org.springframework.web.bind.annotation.ModelAttribute;
-import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
-import compbio.cassandra.DataBase;
import compbio.statistic.CassandraRequester;
+import compbio.cassandra.DataBase;
import compbio.statistic.StatisticsProt;
/**
@Controller
public class JobExecutionTimeController {
- @RequestMapping(value = "/exectime", method = RequestMethod.GET)
- public String initFindForm(Map<String, Object> model) {
- return "QueryTimeExecution";
+ @RequestMapping(value = "/stat/exectime/query", method = RequestMethod.GET)
+ public String initFindForm(Map<String, Object> model, Principal principal) {
+ model.put("username", principal.getName());
+ Calendar cal = Calendar.getInstance();
+ String date2 = cal.get(Calendar.YEAR) + "/" + (cal.get(Calendar.MONTH) + 1) + "/" + cal.get(Calendar.DATE);
+ cal.add(Calendar.DATE, -3);
+ String date1 = cal.get(Calendar.YEAR) + "/" + (cal.get(Calendar.MONTH) + 1) + "/" + cal.get(Calendar.DATE);
+
+ model.put("date1", date1);
+ model.put("date2", date2);
+ return "queryTimeExecution";
}
- @RequestMapping(value = "/exectime/query", method = RequestMethod.GET)
- public String findSequence(@RequestParam("data1") String date1, @RequestParam("data2") String date2,
- @RequestParam(value="option", required=false) String option, Map<String, Object> model) {
+ @RequestMapping(value = "/stat/exectime/results", method = RequestMethod.GET)
+ public String findSequence(@RequestParam("date1") String date1, @RequestParam("date2") String date2,
+ @RequestParam(value="option", required=false) String option, Map<String, Object> model, Principal principal) {
+ model.put("username", principal.getName());
final long startTime = System.currentTimeMillis();
CassandraRequester sp = new CassandraRequester();
- if (option.equals("AllDates")) {
+ if (option.equals("AllDates,off")) {
Calendar cal = Calendar.getInstance();
date1 = StatisticsProt.DateFormatYYMMDD(sp.earliestDate());
date2 = cal.get(Calendar.YEAR) + "/" + (cal.get(Calendar.MONTH) + 1) + "/" + cal.get(Calendar.DAY_OF_MONTH);
}
- model.put("data1", date1);
- model.put("data2", date2);
- model.put("result", sp.extractExecutionTime(date1, date2));
- model.put("flag", option);
+ model.put("date1", date1);
+ model.put("date2", date2);
+ model.put("option", option);
+ List<DataBase> res = sp.extractExecutionTime(date1, date2);
+ model.put("result", res);
+ model.put("ndays", res.size() - 1);
final long endTime = System.currentTimeMillis();
model.put("timeExecution", (endTime - startTime));
- return "/ReportTimeExecution";
+ return "/reportTimeExecution";
}
}