Interface PaginatedFlexibleSearchService
-
- All Known Implementing Classes:
DefaultPaginatedFlexibleSearchService
public interface PaginatedFlexibleSearchService
The PaginatedFlexibleSearchService interface supports executing flexible search queries returning paginated results. The current page, page size, and sorts are specified using theSearchPageData
parameter. The results are returned in a parameterizedSearchPageData
result which includes the search results for the requested page, the pagination data, and the available sort options.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description <T> SearchPageData<T>
search(PaginatedFlexibleSearchParameter parameter)
Searches according toPaginatedFlexibleSearchParameter
.
-
-
-
Method Detail
-
search
<T> SearchPageData<T> search(PaginatedFlexibleSearchParameter parameter)
Searches according toPaginatedFlexibleSearchParameter
.- Type Parameters:
T
- The type of item returned from the search- Parameters:
parameter
- A parameter object containing all attributes needed for paginated flexible search. The sort info should be only populated inPaginatedFlexibleSearchParameter.searchPageData
PaginatedFlexibleSearchParameter.flexibleSearchQuery
- The flexible search query containing String query and flexible search query parameters as Map<String, Object>PaginatedFlexibleSearchParameter.searchPageData
- The search page data containing requested pagination and sort dataPaginatedFlexibleSearchParameter.sortCodeToQueryAlias
- The map between sort code and query alias which will be used to dynamically generate "ORDER BY" clause by appending to the given flexible search query based on requested sorts.
- Returns:
- an instance of
SearchPageData
containing the search results with applied sorts and pagination data
-
-