diff --git a/source/java/org/alfresco/rest/api/search/SearchApiWebscript.java b/source/java/org/alfresco/rest/api/search/SearchApiWebscript.java index f7ecdccf88..893aa4467f 100644 --- a/source/java/org/alfresco/rest/api/search/SearchApiWebscript.java +++ b/source/java/org/alfresco/rest/api/search/SearchApiWebscript.java @@ -87,12 +87,11 @@ public class SearchApiWebscript extends AbstractWebScript implements RecognizedP //Turn JSON into a Java object respresentation SearchQuery searchQuery = extractJsonContent(webScriptRequest, assistant.getJsonHelper(), SearchQuery.class); - //Parse the parameter - Params.RecognizedParams recognizedParams = new Params.RecognizedParams(null, null, null, null, null, null, null, null, false); - Params params = Params.valueOf(null, recognizedParams, searchQuery, webScriptRequest); + //Parse the parameters + Params params = getParams(webScriptRequest, searchQuery); //Turn the params into the Java SearchParameters object - SearchParameters searchParams = searchMapper.toSearchParameters(params); + SearchParameters searchParams = searchMapper.toSearchParameters(searchQuery); //Call searchService ResultSet results = searchService.query(searchParams); @@ -111,6 +110,18 @@ public class SearchApiWebscript extends AbstractWebScript implements RecognizedP } } + /** + * Gets the Params object, parameters come from the SearchQuery json not the requerst + * @param webScriptRequest + * @param searchQuery + * @return Params + */ + protected Params getParams(WebScriptRequest webScriptRequest, SearchQuery searchQuery) + { + Params.RecognizedParams recognizedParams = new Params.RecognizedParams(null, null, null, null, null, null, null, null, false); + return Params.valueOf(null, recognizedParams, searchQuery, webScriptRequest); + } + public void setNodes(Nodes nodes) { this.nodes = nodes; } diff --git a/source/java/org/alfresco/rest/api/search/impl/SearchMapper.java b/source/java/org/alfresco/rest/api/search/impl/SearchMapper.java index 489e23f288..e53dc292c2 100644 --- a/source/java/org/alfresco/rest/api/search/impl/SearchMapper.java +++ b/source/java/org/alfresco/rest/api/search/impl/SearchMapper.java @@ -57,11 +57,8 @@ public class SearchMapper * @param params * @return */ - public SearchParameters toSearchParameters(Params params) + public SearchParameters toSearchParameters(SearchQuery searchQuery) { - BasicContentInfo info = params.getContentInfo(); - SearchQuery searchQuery = (SearchQuery) params.getPassedIn(); - ParameterCheck.mandatory("query", searchQuery.getQuery()); SearchParameters sp = new SearchParameters(); diff --git a/source/test-java/org/alfresco/rest/api/search/SearchMapperTests.java b/source/test-java/org/alfresco/rest/api/search/SearchMapperTests.java index f036c4e9ce..2fd6fd65e5 100644 --- a/source/test-java/org/alfresco/rest/api/search/SearchMapperTests.java +++ b/source/test-java/org/alfresco/rest/api/search/SearchMapperTests.java @@ -55,16 +55,13 @@ public class SearchMapperTests @Test(expected = IllegalArgumentException.class) public void testMandatory() throws Exception { - Params params = Params.valueOf(null, null, new SearchQuery(), null); - SearchParameters searchParameters = searchMapper.toSearchParameters(params); + SearchParameters searchParameters = searchMapper.toSearchParameters(new SearchQuery()); } @Test public void toSearchParameters() throws Exception { - - Params params = Params.valueOf(null, null, minimalQuery(), null); - SearchParameters searchParameters = searchMapper.toSearchParameters(params); + SearchParameters searchParameters = searchMapper.toSearchParameters(minimalQuery()); assertNotNull(searchParameters); //Test defaults