]> git.argeo.org Git - gpl/argeo-slc.git/blob - runtime/org.argeo.slc.server/src/main/java/org/argeo/slc/web/mvc/result/ListResultsController.java
Add generic copy/remove to/from collection(s)
[gpl/argeo-slc.git] / runtime / org.argeo.slc.server / src / main / java / org / argeo / slc / web / mvc / result / ListResultsController.java
1 package org.argeo.slc.web.mvc.result;
2
3 import java.util.HashMap;
4 import java.util.List;
5 import java.util.Map;
6
7 import javax.servlet.http.HttpServletRequest;
8 import javax.servlet.http.HttpServletResponse;
9
10 import org.argeo.slc.core.test.tree.TreeTestResult;
11 import org.argeo.slc.core.test.tree.TreeTestResultList;
12 import org.argeo.slc.dao.test.tree.TreeTestResultCollectionDao;
13 import org.argeo.slc.web.mvc.AbstractServiceController;
14 import org.springframework.web.servlet.ModelAndView;
15
16 /** Lists results possibly filtering them. */
17 public class ListResultsController extends AbstractServiceController {
18 private final TreeTestResultCollectionDao testResultCollectionDao;
19
20 public ListResultsController(
21 TreeTestResultCollectionDao testResultCollectionDao) {
22 this.testResultCollectionDao = testResultCollectionDao;
23 }
24
25 @Override
26 protected void handleServiceRequest(HttpServletRequest request,
27 HttpServletResponse response, ModelAndView modelAndView)
28 throws Exception {
29 String collectionId = request.getParameter("collectionId");
30
31 Map<String, String[]> parameterMap = request.getParameterMap();
32
33 Map<String, String> attributes = new HashMap<String, String>();
34 for (String parameter : parameterMap.keySet()) {
35 if (parameter.startsWith("attr.")) {
36 String key = parameter.substring("attr.".length());
37 attributes.put(key, parameterMap.get(parameter)[0]);
38 }
39 }
40
41 List<TreeTestResult> resultAttributes = testResultCollectionDao
42 .listResults(collectionId, attributes);
43
44 modelAndView.addObject("resultList", new TreeTestResultList(
45 resultAttributes));
46 }
47 }