Class PermissionAwareSearchService
- java.lang.Object
-
- org.craftercms.search.elasticsearch.impl.client.AbstractElasticsearchClientWrapper
-
- org.craftercms.studio.impl.v2.service.search.PermissionAwareSearchService
-
- All Implemented Interfaces:
org.craftercms.search.elasticsearch.client.ElasticsearchClientWrapper
public class PermissionAwareSearchService extends org.craftercms.search.elasticsearch.impl.client.AbstractElasticsearchClientWrapper
Implementation ofElasticsearchWrapper
specific for authoring indexes- Author:
- joseross
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.craftercms.search.elasticsearch.impl.client.AbstractElasticsearchClientWrapper
org.craftercms.search.elasticsearch.impl.client.AbstractElasticsearchClientWrapper.RequestUpdates, org.craftercms.search.elasticsearch.impl.client.AbstractElasticsearchClientWrapper.SearchRequestWrapper
-
-
Field Summary
Fields Modifier and Type Field Description protected String
indexSuffix
The suffix to append to the site nameprotected String
pathFieldName
The name of the field to filter paths
-
Constructor Summary
Constructors Constructor Description PermissionAwareSearchService(co.elastic.clients.elasticsearch.ElasticsearchClient client, String indexSuffix, String pathFieldName)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
addFilters(co.elastic.clients.elasticsearch.core.SearchRequest request, List<String> allowedPaths, org.craftercms.search.elasticsearch.impl.client.AbstractElasticsearchClientWrapper.RequestUpdates updates)
protected org.craftercms.search.elasticsearch.impl.client.AbstractElasticsearchClientWrapper.RequestUpdates
getRequestUpdates(co.elastic.clients.elasticsearch.core.SearchRequest request, Map<String,Object> parameters)
<T> co.elastic.clients.elasticsearch.core.SearchResponse<T>
search(co.elastic.clients.elasticsearch.core.SearchRequest request, Class<T> docClass, Map<String,Object> parameters)
<T> co.elastic.clients.elasticsearch.core.SearchResponse<T>
search(String siteId, List<String> allowedPaths, co.elastic.clients.elasticsearch.core.SearchRequest request, Class<T> documentClass)
Perform a search operation for the given site-
Methods inherited from class org.craftercms.search.elasticsearch.impl.client.AbstractElasticsearchClientWrapper
copyQuery, setFilterQueries, updateIndex, updateIndicesOptions, updateQuery, updateSearchType
-
-
-
-
Constructor Detail
-
PermissionAwareSearchService
@ConstructorProperties({"client","indexSuffix","pathFieldName"}) public PermissionAwareSearchService(co.elastic.clients.elasticsearch.ElasticsearchClient client, String indexSuffix, String pathFieldName)
-
-
Method Detail
-
search
public <T> co.elastic.clients.elasticsearch.core.SearchResponse<T> search(String siteId, List<String> allowedPaths, co.elastic.clients.elasticsearch.core.SearchRequest request, Class<T> documentClass) throws IOException
Perform a search operation for the given site- Parameters:
siteId
- the site idallowedPaths
- the paths that should be included in the resultsrequest
- the search request- Returns:
- the search response
- Throws:
IOException
-
getRequestUpdates
protected org.craftercms.search.elasticsearch.impl.client.AbstractElasticsearchClientWrapper.RequestUpdates getRequestUpdates(co.elastic.clients.elasticsearch.core.SearchRequest request, Map<String,Object> parameters)
- Overrides:
getRequestUpdates
in classorg.craftercms.search.elasticsearch.impl.client.AbstractElasticsearchClientWrapper
-
addFilters
protected void addFilters(co.elastic.clients.elasticsearch.core.SearchRequest request, List<String> allowedPaths, org.craftercms.search.elasticsearch.impl.client.AbstractElasticsearchClientWrapper.RequestUpdates updates)
-
search
public <T> co.elastic.clients.elasticsearch.core.SearchResponse<T> search(co.elastic.clients.elasticsearch.core.SearchRequest request, Class<T> docClass, Map<String,Object> parameters) throws IOException
- Specified by:
search
in interfaceorg.craftercms.search.elasticsearch.client.ElasticsearchClientWrapper
- Overrides:
search
in classorg.craftercms.search.elasticsearch.impl.client.AbstractElasticsearchClientWrapper
- Throws:
IOException
-
-