a little bit documentation
[cdmlib.git] / cdmlib-remote / src / main / java / eu / etaxonomy / cdm / remote / controller / NameListController.java
index 155f108b3289208d901f33b658448277d411b4ab..a89f7a9f71bfa527fe05aa981e62aac24bf56813 100644 (file)
@@ -2,7 +2,7 @@
 /**\r
  * Copyright (C) 2009 EDIT European Distributed Institute of Taxonomy\r
  * http://www.e-taxonomy.eu\r
- * \r
+ *\r
  * The contents of this file are subject to the Mozilla Public License Version\r
  * 1.1 See LICENSE.TXT at the top of this package for the full license terms.\r
  */\r
@@ -30,7 +30,7 @@ import eu.etaxonomy.cdm.remote.controller.util.PagerParameters;
 \r
 /**\r
  * TODO write controller documentation\r
- * \r
+ *\r
  * @author a.kohlbecker\r
  * @date 24.03.2009\r
  */\r
@@ -38,15 +38,15 @@ import eu.etaxonomy.cdm.remote.controller.util.PagerParameters;
 @RequestMapping(value = {"/name"})\r
 public class NameListController extends IdentifiableListController<TaxonNameBase, INameService> {\r
 \r
-       /* (non-Javadoc)\r
-        * @see eu.etaxonomy.cdm.remote.controller.BaseListController#setService(eu.etaxonomy.cdm.api.service.IService)\r
-        */\r
-       @Override\r
-       @Autowired\r
-       public void setService(INameService service) {\r
-               this.service = service; \r
-       }\r
-       \r
+    /* (non-Javadoc)\r
+     * @see eu.etaxonomy.cdm.remote.controller.BaseListController#setService(eu.etaxonomy.cdm.api.service.IService)\r
+     */\r
+    @Override\r
+    @Autowired\r
+    public void setService(INameService service) {\r
+        this.service = service;\r
+    }\r
+\r
    @RequestMapping(method = RequestMethod.GET, value={"findTitleCache"})\r
     public Pager<TaxonNameBase> doFindTitleCache(\r
             @RequestParam(value = "query", required = true) String query,\r
@@ -64,25 +64,21 @@ public class NameListController extends IdentifiableListController<TaxonNameBase
         pagerParams.normalizeAndValidate(response);\r
 \r
         return (Pager<TaxonNameBase>) service.findTitleCache(null, query, pagerParams.getPageSize(), pagerParams.getPageIndex(), null, matchMode);\r
-        \r
+\r
+    }\r
+\r
+    @RequestMapping(value = "findByName", method = RequestMethod.GET)\r
+    public Pager<TaxonNameBase> doFindByName(\r
+            @RequestParam(value = "query", required = true) String query,\r
+            @RequestParam(value = "pageNumber", required = false) Integer pageNumber,\r
+            @RequestParam(value = "pageSize", required = false) Integer pageSize,\r
+            @RequestParam(value = "matchMode", required = false) MatchMode matchMode, HttpServletRequest request, HttpServletResponse response)\r
+            throws IOException {\r
+\r
+        PagerParameters pagerParameters = new PagerParameters(pageSize, pageNumber);\r
+        pagerParameters.normalizeAndValidate(response);\r
+\r
+        return (Pager<TaxonNameBase>) service.findByTitle(TaxonNameBase.class, query, matchMode, null, pageSize, pageNumber, null, DEFAULT_INIT_STRATEGY);\r
     }\r
-   \r
-   @RequestMapping(value = "findByName/{taxonName}", method = RequestMethod.GET)\r
-   public TaxonNameBase doFindByName(\r
-               @PathVariable("taxonName") String taxonName,\r
-               HttpServletRequest request, \r
-               HttpServletResponse response)throws IOException {\r
-               \r
-       List<TaxonNameBase> listTNB = service.getNamesByName(taxonName);\r
-       \r
-       TaxonNameBase tnb =  null;\r
-       service.getNamesByName(taxonName);\r
-       if (listTNB.size()>0) {\r
-               tnb = listTNB.get(0);\r
-       }\r
-       \r
-       return tnb;\r
-       \r
-   }\r
 \r
 }
\ No newline at end of file