1 package compbio.controllers;
3 import java.util.Calendar;
6 import org.springframework.beans.factory.annotation.Autowired;
7 import org.springframework.stereotype.Controller;
8 import org.springframework.validation.BindingResult;
9 import org.springframework.web.bind.WebDataBinder;
10 import org.springframework.web.bind.annotation.InitBinder;
11 import org.springframework.web.bind.annotation.ModelAttribute;
12 import org.springframework.web.bind.annotation.PathVariable;
13 import org.springframework.web.bind.annotation.RequestMapping;
14 import org.springframework.web.bind.annotation.RequestMethod;
15 import org.springframework.web.bind.annotation.RequestParam;
18 import compbio.cassandra.DataBase;
19 import compbio.statistic.CassandraRequester;
20 import compbio.statistic.StatisticsProt;
23 * @author Alexander Sherstnev
24 * @author Natasha Sherstneva
27 public class JobExecutionTimeController {
29 @RequestMapping(value = "/exectime", method = RequestMethod.GET)
30 public String initFindForm(Map<String, Object> model) {
31 return "QueryTimeExecution";
34 @RequestMapping(value = "/exectime/query", method = RequestMethod.GET)
35 public String findSequence(@RequestParam("data1") String date1, @RequestParam("data2") String date2,
36 @RequestParam(value="option", required=false) String option, Map<String, Object> model) {
37 final long startTime = System.currentTimeMillis();
39 CassandraRequester sp = new CassandraRequester();
40 if (option.equals("AllDates")) {
41 Calendar cal = Calendar.getInstance();
42 date1 = StatisticsProt.DateFormatYYMMDD(sp.earliestDate());
43 date2 = cal.get(Calendar.YEAR) + "/" + (cal.get(Calendar.MONTH) + 1) + "/" + cal.get(Calendar.DAY_OF_MONTH);
45 model.put("data1", date1);
46 model.put("data2", date2);
47 model.put("result", sp.extractExecutionTime(date1, date2));
48 model.put("flag", option);
49 final long endTime = System.currentTimeMillis();
50 model.put("timeExecution", (endTime - startTime));
51 return "/ReportTimeExecution";