From e1bd68c17cdbde4a15b576f9b32aa2a8c7890cd7 Mon Sep 17 00:00:00 2001 From: Gethin James Date: Tue, 6 Sep 2016 14:18:40 +0000 Subject: [PATCH] Merged searchapi (5.2.1) to 5.2.N (5.2.1) 129807 gjames: SEARCH-113: No longer hedging my bets: The only way to pass parameter is via the JSON body. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/DEV/5.2.N/root@130177 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../rest/api/search/SearchApiWebscript.java | 19 +++++++++++++++---- .../rest/api/search/impl/SearchMapper.java | 5 +---- .../rest/api/search/SearchMapperTests.java | 7 ++----- 3 files changed, 18 insertions(+), 13 deletions(-) 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