Class RestDiscoverQueryBuilder


  • @Component
    public class RestDiscoverQueryBuilder
    extends Object
    This class builds the queries for the /search and /facet endpoints.
    • Constructor Detail

      • RestDiscoverQueryBuilder

        public RestDiscoverQueryBuilder()
    • Method Detail

      • buildQuery

        public DiscoverQuery buildQuery​(Context context,
                                        IndexableObject scope,
                                        DiscoveryConfiguration discoveryConfiguration,
                                        String query,
                                        List<SearchFilter> searchFilters,
                                        String dsoType,
                                        org.springframework.data.domain.Pageable page)
                                 throws DSpaceBadRequestException
        Build a discovery query
        Parameters:
        context - the DSpace context
        scope - the scope for this discovery query
        discoveryConfiguration - the discovery configuration for this discovery query
        query - the query string for this discovery query
        searchFilters - the search filters for this discovery query
        dsoType - only include search results with this type
        page - the pageable for this discovery query
        Throws:
        DSpaceBadRequestException
      • buildQuery

        public DiscoverQuery buildQuery​(Context context,
                                        IndexableObject scope,
                                        DiscoveryConfiguration discoveryConfiguration,
                                        String query,
                                        List<SearchFilter> searchFilters,
                                        List<String> dsoTypes,
                                        org.springframework.data.domain.Pageable page)
                                 throws DSpaceBadRequestException
        Build a discovery query
        Parameters:
        context - the DSpace context
        scope - the scope for this discovery query
        discoveryConfiguration - the discovery configuration for this discovery query
        query - the query string for this discovery query
        searchFilters - the search filters for this discovery query
        dsoTypes - only include search results with one of these types
        page - the pageable for this discovery query
        Throws:
        DSpaceBadRequestException
      • buildFacetQuery

        public DiscoverQuery buildFacetQuery​(Context context,
                                             IndexableObject scope,
                                             DiscoveryConfiguration discoveryConfiguration,
                                             String prefix,
                                             String query,
                                             List<SearchFilter> searchFilters,
                                             String dsoType,
                                             org.springframework.data.domain.Pageable page,
                                             String facetName)
                                      throws DSpaceBadRequestException
        Create a discovery facet query.
        Parameters:
        context - the DSpace context
        scope - the scope for this discovery query
        discoveryConfiguration - the discovery configuration for this discovery query
        prefix - limit the facets results to those starting with the given prefix.
        query - the query string for this discovery query
        searchFilters - the search filters for this discovery query
        dsoType - only include search results with this type
        page - the pageable for this discovery query
        facetName - the facet field
        Throws:
        DSpaceBadRequestException
      • buildFacetQuery

        public DiscoverQuery buildFacetQuery​(Context context,
                                             IndexableObject scope,
                                             DiscoveryConfiguration discoveryConfiguration,
                                             String prefix,
                                             String query,
                                             List<SearchFilter> searchFilters,
                                             List<String> dsoTypes,
                                             org.springframework.data.domain.Pageable page,
                                             String facetName)
                                      throws DSpaceBadRequestException
        Create a discovery facet query.
        Parameters:
        context - the DSpace context
        scope - the scope for this discovery query
        discoveryConfiguration - the discovery configuration for this discovery query
        prefix - limit the facets results to those starting with the given prefix.
        query - the query string for this discovery query
        searchFilters - the search filters for this discovery query
        dsoTypes - only include search results with one of these types
        page - the pageable for this discovery query
        facetName - the facet field
        Throws:
        DSpaceBadRequestException