Example usage for org.springframework.data.solr.core.query FacetOptions getFacetSort

List of usage examples for org.springframework.data.solr.core.query FacetOptions getFacetSort

Introduction

In this page you can find the example usage for org.springframework.data.solr.core.query FacetOptions getFacetSort.

Prototype

public FacetSort getFacetSort() 

Source Link

Document

Get sorting of facet results.

Usage

From source file:org.springframework.data.solr.core.DefaultQueryParser.java

private boolean enableFaceting(SolrQuery solrQuery, FacetQuery query) {
    FacetOptions facetOptions = query.getFacetOptions();
    if (facetOptions == null || (!facetOptions.hasFields() && !facetOptions.hasFacetQueries()
            && !facetOptions.hasPivotFields())) {
        return false;
    }//  w w  w  . j  av a  2 s .c om
    solrQuery.setFacet(true);
    solrQuery.setFacetMinCount(facetOptions.getFacetMinCount());
    solrQuery.setFacetLimit(facetOptions.getPageable().getPageSize());
    if (facetOptions.getPageable().getPageNumber() > 0) {
        solrQuery.set(FacetParams.FACET_OFFSET, facetOptions.getPageable().getOffset());
    }
    if (FacetOptions.FacetSort.INDEX.equals(facetOptions.getFacetSort())) {
        solrQuery.setFacetSort(FacetParams.FACET_SORT_INDEX);
    }
    return true;
}

From source file:org.springframework.data.solr.core.QueryParser.java

private void appendFacetingOnFields(SolrQuery solrQuery, FacetQuery query) {
    FacetOptions facetOptions = query.getFacetOptions();
    if (facetOptions == null || !facetOptions.hasFields()) {
        return;/*from   w w w.j  av a  2 s  .  c o m*/
    }
    solrQuery.setFacet(true);
    solrQuery.addFacetField(convertFieldListToStringArray(facetOptions.getFacetOnFields()));
    solrQuery.setFacetMinCount(facetOptions.getFacetMinCount());
    solrQuery.setFacetLimit(facetOptions.getPageable().getPageSize());
    if (facetOptions.getPageable().getPageNumber() > 0) {
        solrQuery.set(FacetParams.FACET_OFFSET, facetOptions.getPageable().getOffset());
    }
    if (FacetOptions.FacetSort.INDEX.equals(facetOptions.getFacetSort())) {
        solrQuery.setFacetSort(FacetParams.FACET_SORT_INDEX);
    }
}