X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;ds=sidebyside;f=server%2Fcompbio%2Fcontrollers%2FSequenceSearchController.java;h=53bfcfc67a5cf203f3845c00ba02172509e40137;hb=ea4836a9172d18c6d2917d829a808b4935400aa2;hp=a1642eed0d105bf1680c0de550f23eab69bc9de2;hpb=63d7d204defda1eb513e8aa137da92d88336aed7;p=proteocache.git diff --git a/server/compbio/controllers/SequenceSearchController.java b/server/compbio/controllers/SequenceSearchController.java index a1642ee..53bfcfc 100644 --- a/server/compbio/controllers/SequenceSearchController.java +++ b/server/compbio/controllers/SequenceSearchController.java @@ -1,17 +1,9 @@ - package compbio.controllers; - 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; @@ -27,34 +19,54 @@ import compbio.statistic.CassandraRequester; @Controller public class SequenceSearchController { - @RequestMapping(value = "/sequence", method = RequestMethod.GET) - public String initFindForm(Map model) { - return "QuerySequenceProtein"; + @RequestMapping(value = "/sequence/query1", method = RequestMethod.GET) + public String formSequenceQuery(Map model) { + return "queryProteinSequence"; } - @RequestMapping(value = "/sequence/query", method = RequestMethod.GET) - public String findSequence(@RequestParam("prot") String prot, @RequestParam("protein") String flag, - @RequestParam("Search") String search, @RequestParam("counterJob") int counter, Map model) { + @RequestMapping(value = "/sequence/query2", method = RequestMethod.GET) + public String formCounterQuery(Map model) { + return "queryProteinSequenceCounter"; + } + + @RequestMapping(value = "/sequence/querysequence", method = RequestMethod.GET) + public String findSequence(@RequestParam("sequence") String sequence, @RequestParam("protein") String flag, Map model) { final long startTime = System.currentTimeMillis(); - CassandraRequester cr = new CassandraRequester(); - if (search.equals("SearchCounter")) { - List r = cr.readProteinByCounter(counter); - model.put("results", r); - model.put("njobs", r.size()); - System.out.println("Search counter = " + counter + ": " + r.size() + " proteins found"); - } else { - List r = cr.readProteins(prot, flag); + + String trimmedsequence = sequence.replaceAll("\\s", ""); + model.put("njobs", 0); + model.put("prot", trimmedsequence); + model.put("flag", flag); + + if (0 < trimmedsequence.length()) { + CassandraRequester cr = new CassandraRequester(); + List r = cr.readProteins(trimmedsequence, flag); model.put("results", r); + if (null != r) { + System.out.println("result size = " + r.size()); + model.put("njobs", r.size()); + } + } + final long endTime = System.currentTimeMillis(); + model.put("timeExecution", (endTime - startTime)); + return "reportProteinSequences"; + } + + @RequestMapping(value = "/sequence/querycounter", method = RequestMethod.GET) + public String countSequences(@RequestParam("counterJob") int counter, Map model) { + final long startTime = System.currentTimeMillis(); + + CassandraRequester cr = new CassandraRequester(); + List r = cr.readProteinByCounter(counter); + model.put("results", r); + model.put("njobs", 0); + if (null != r) { model.put("njobs", r.size()); - //System.out.println("Search sequence: " + r.size() + " proteins found"); } final long endTime = System.currentTimeMillis(); model.put("timeExecution", (endTime - startTime)); - model.put("prot", prot); - model.put("flag", flag); - model.put("search", search); model.put("counter", counter); - return "ReportSequenceProtein"; + return "reportProteinSequencesCounter"; } }