Package org.chenile.query.service
Class AbstractSearchServiceImpl
java.lang.Object
org.chenile.query.service.AbstractSearchServiceImpl
- All Implemented Interfaces:
SearchService<Map<String,Object>>
public abstract class AbstractSearchServiceImpl
extends Object
implements SearchService<Map<String,Object>>
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprotected static class -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected org.chenile.core.context.ContextContainerprotected static final Stringprotected static final Stringprotected QueryStore -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected voidbuildOrderByClause(Map<String, Object> filters, List<SortCriterion> sortCriteria, QueryMetadata queryMetadata) protected voidconstructBetweenQuery(Map<String, Object> enhancedFilters, String name, Object value, ColumnMetadata columnMetadata) protected voidprotected voidconstructPagination(Map<String, Object> filters, int startRow, int numRowsInPage) protected abstract SearchResponsedoSearch(AbstractSearchServiceImpl.EnhancedSearchRequest searchInput, SearchResponse searchResponse, QueryMetadata queryMetadata) protected voidenhanceFiltersUsingMetadata(AbstractSearchServiceImpl.EnhancedSearchRequest searchInput, QueryMetadata queryMetadata) Use the column metadata to enhance the filters that have been passed.protected voidenhanceFiltersWithPropNamesPropValues(Map<String, Object> filters) executeQuery(AbstractSearchServiceImpl.EnhancedSearchRequest searchRequest) protected org.chenile.stm.StateextractStateFromObject(Object obj, String stateColumn, String flowColumn) getAllowedActionsForWorkflowEntity(String workflowName, Object obj, String stateColumn, String flowColumn) protected Collection<String> getAllowedStatesForCurrentUser(String workflowName) protected SearchResponsemakeSearchResponse(QueryMetadata queryMetadata, AbstractSearchServiceImpl.EnhancedSearchRequest searchInput) protected abstract intprocessCountQuery(Map<String, Object> filters, SearchResponse searchResponse, QueryMetadata queryMetadata) final SearchResponsesearch(SearchRequest<Map<String, Object>> searchRequest) voidsetContextContainer(org.chenile.core.context.ContextContainer contextContainer) protected voidsetPaginationInResponse(SearchResponse searchResponse, int maxRows) voidsetQueryStore(QueryStore queryStore)
-
Field Details
-
PAGINATION_PART
- See Also:
-
ORDER_BY
- See Also:
-
queryStore
-
contextContainer
@Autowired protected org.chenile.core.context.ContextContainer contextContainer
-
-
Constructor Details
-
AbstractSearchServiceImpl
-
-
Method Details
-
search
- Specified by:
searchin interfaceSearchService<Map<String,Object>>
-
enhanceFiltersUsingMetadata
protected void enhanceFiltersUsingMetadata(AbstractSearchServiceImpl.EnhancedSearchRequest searchInput, QueryMetadata queryMetadata) Use the column metadata to enhance the filters that have been passed.- Parameters:
searchInput-
-
constructBetweenQuery
-
constructContainsQuery
-
enhanceFiltersWithPropNamesPropValues
-
buildOrderByClause
protected void buildOrderByClause(Map<String, Object> filters, List<SortCriterion> sortCriteria, QueryMetadata queryMetadata) -
doSearch
protected abstract SearchResponse doSearch(AbstractSearchServiceImpl.EnhancedSearchRequest searchInput, SearchResponse searchResponse, QueryMetadata queryMetadata) -
setQueryStore
-
makeSearchResponse
protected SearchResponse makeSearchResponse(QueryMetadata queryMetadata, AbstractSearchServiceImpl.EnhancedSearchRequest searchInput) -
setContextContainer
public void setContextContainer(org.chenile.core.context.ContextContainer contextContainer) -
getAllowedActionsForWorkflowEntity
-
getAllowedStatesForCurrentUser
-
extractStateFromObject
-
processCountQuery
protected abstract int processCountQuery(Map<String, Object> filters, SearchResponse searchResponse, QueryMetadata queryMetadata) -
executeQuery
protected abstract List<Object> executeQuery(AbstractSearchServiceImpl.EnhancedSearchRequest searchRequest) -
setPaginationInResponse
-
constructPagination
-