diff --git a/pom.xml b/pom.xml
index 914ad13901..80cc8a708c 100644
--- a/pom.xml
+++ b/pom.xml
@@ -35,7 +35,7 @@
${project.build.directory}/alf_data
convert
- 7.33.12
+ 7.33.13
7.5.1
8.25.1
1.1
diff --git a/src/main/java/org/alfresco/rest/api/search/SearchSQLApiWebscript.java b/src/main/java/org/alfresco/rest/api/search/SearchSQLApiWebscript.java
index fda573bb1b..e6fe4caffd 100644
--- a/src/main/java/org/alfresco/rest/api/search/SearchSQLApiWebscript.java
+++ b/src/main/java/org/alfresco/rest/api/search/SearchSQLApiWebscript.java
@@ -142,6 +142,7 @@ public class SearchSQLApiWebscript extends AbstractWebScript implements Recogniz
Locale locale = new Locale(action);
sparams.addLocale(locale);
});
+ searchQuery.getFilterQueries().forEach(sparams::addFilterQuery);
sparams.setIncludeMetadata(searchQuery.isIncludeMetadata());
return sparams;
diff --git a/src/main/java/org/alfresco/rest/api/search/model/SearchSQLQuery.java b/src/main/java/org/alfresco/rest/api/search/model/SearchSQLQuery.java
index d89b83e1c0..0eb8c5d765 100644
--- a/src/main/java/org/alfresco/rest/api/search/model/SearchSQLQuery.java
+++ b/src/main/java/org/alfresco/rest/api/search/model/SearchSQLQuery.java
@@ -43,13 +43,15 @@ public class SearchSQLQuery
private List locales;
private boolean includeMetadata;
private String timezone;
+ private List filterQueries;
public SearchSQLQuery(@JsonProperty("stmt") String stmt,
@JsonProperty("format") String format,
@JsonProperty("locales") List locales,
@JsonProperty("limit") Integer itemLimit,
@JsonProperty("includeMetadata") boolean includeMetadata,
- @JsonProperty("timezone") String timezone)
+ @JsonProperty("timezone") String timezone,
+ @JsonProperty("filterQueries") List filterQueries)
{
this.stmt = stmt;
this.format = format != null ? format : "default";
@@ -57,6 +59,7 @@ public class SearchSQLQuery
this.itemLimit = itemLimit == null || itemLimit < 1 ? new Integer(1000) : itemLimit;
this.includeMetadata = includeMetadata;
this.timezone = timezone;
+ this.filterQueries = filterQueries != null ? filterQueries : Collections.emptyList();
}
public String getStmt()
@@ -88,4 +91,9 @@ public class SearchSQLQuery
{
return timezone;
}
+
+ public List getFilterQueries()
+ {
+ return filterQueries;
+ }
}
diff --git a/src/test/java/org/alfresco/rest/api/search/ResultMapperTests.java b/src/test/java/org/alfresco/rest/api/search/ResultMapperTests.java
index 4f4e2d829b..a87d330cbe 100644
--- a/src/test/java/org/alfresco/rest/api/search/ResultMapperTests.java
+++ b/src/test/java/org/alfresco/rest/api/search/ResultMapperTests.java
@@ -853,7 +853,7 @@ public class ResultMapperTests
{
JSONObject response = new JSONObject("{\"docs\":[{\"SITE\":\"_REPOSITORY_\"},{\"SITE\":\"surf-config\"},{\"SITE\":\"swsdp\"},{\"EOF\":true,\"RESPONSE_TIME\":96}]}");
JSONArray docs = response.getJSONArray("docs");
- SearchSQLQuery query = new SearchSQLQuery("select SITE from alfresco group by SITE", null, null, 100, false, null);
+ SearchSQLQuery query = new SearchSQLQuery("select SITE from alfresco group by SITE", null, null, 100, false, null, null);
CollectionWithPagingInfo info = mapper.toCollectionWithPagingInfo(docs, query);
assertEquals(100, info.getPaging().getMaxItems());
assertEquals(0, info.getPaging().getSkipCount());
diff --git a/src/test/java/org/alfresco/rest/api/search/SearchSQLApiWebscriptTests.java b/src/test/java/org/alfresco/rest/api/search/SearchSQLApiWebscriptTests.java
index 98627d8183..83790f626d 100644
--- a/src/test/java/org/alfresco/rest/api/search/SearchSQLApiWebscriptTests.java
+++ b/src/test/java/org/alfresco/rest/api/search/SearchSQLApiWebscriptTests.java
@@ -25,6 +25,8 @@
*/
package org.alfresco.rest.api.search;
+import static java.util.Collections.emptyList;
+
import static junit.framework.TestCase.assertEquals;
import static junit.framework.TestCase.assertNotNull;
@@ -47,7 +49,7 @@ public class SearchSQLApiWebscriptTests
public void testSearchQueryParams() throws Exception
{
String query = "select SITE from alfresco";
- SearchSQLQuery searchQuery = new SearchSQLQuery(query, "solr", Collections.emptyList(), 1000, false, "");
+ SearchSQLQuery searchQuery = new SearchSQLQuery(query, "solr", emptyList(), 1000, false, "", emptyList());
SearchParameters sparams = webscript.buildSearchParameters(searchQuery);
assertNotNull(sparams);
@@ -61,7 +63,7 @@ public class SearchSQLApiWebscriptTests
public void testSearchQueryParamsTimezone() throws Exception
{
String query = "select SITE from alfresco";
- SearchSQLQuery searchQuery = new SearchSQLQuery(query, "solr", Collections.emptyList(), 1000, false, "Israel");
+ SearchSQLQuery searchQuery = new SearchSQLQuery(query, "solr", emptyList(), 1000, false, "Israel", emptyList());
SearchParameters sparams = webscript.buildSearchParameters(searchQuery);
assertNotNull(sparams);
@@ -75,7 +77,7 @@ public class SearchSQLApiWebscriptTests
public void testSearchQueryParamsFormatNull() throws Exception
{
String query = "select SITE from alfresco";
- SearchSQLQuery searchQuery = new SearchSQLQuery(query, "", Collections.emptyList(), 1000, false, "");
+ SearchSQLQuery searchQuery = new SearchSQLQuery(query, "", emptyList(), 1000, false, "", emptyList());
SearchParameters sparams = webscript.buildSearchParameters(searchQuery);
assertNotNull(sparams);
@@ -85,7 +87,7 @@ public class SearchSQLApiWebscriptTests
assertEquals(null, sparams.getExtraParameters().get("format"));
assertEquals(null, sparams.getTimezone());
- searchQuery = new SearchSQLQuery(query, null, Collections.emptyList(), 1000, true, "");
+ searchQuery = new SearchSQLQuery(query, null, emptyList(), 1000, true, "", emptyList());
sparams = webscript.buildSearchParameters(searchQuery);
assertNotNull(sparams);
@@ -98,7 +100,7 @@ public class SearchSQLApiWebscriptTests
@Test
public void testSearchQueryNullStmt() throws Exception
{
- SearchSQLQuery searchQuery = new SearchSQLQuery(null, "solr", Collections.emptyList(), null, false, null);
+ SearchSQLQuery searchQuery = new SearchSQLQuery(null, "solr", emptyList(), null, false, null, emptyList());
try
{
webscript.buildSearchParameters(searchQuery);