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 Details

    • search

      Searches according to PaginatedFlexibleSearchParameter.
      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 in PaginatedFlexibleSearchParameter.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 data
      • PaginatedFlexibleSearchParameter.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