Merged 5.2.N (5.2.1) to HEAD (5.2)

130177 gjames: 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/HEAD/root@130328 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Alan Davis
2016-09-06 22:04:14 +00:00
parent f78d1f81f7
commit 9c8da6ba7c
3 changed files with 18 additions and 13 deletions

View File

@@ -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;
}

View File

@@ -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();

View File

@@ -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