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 the
SearchPageData parameter. The results are
returned in a parameterized SearchPageData result which includes the search results for the requested page,
the pagination data, and the available sort options.-
Method Summary
Modifier and TypeMethodDescription<T> SearchPageData<T>search(PaginatedFlexibleSearchParameter parameter) Searches according toPaginatedFlexibleSearchParameter.
-
Method Details
-
search
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.searchPageDataPaginatedFlexibleSearchParameter.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
SearchPageDatacontaining the search results with applied sorts and pagination data
-