Example usage for org.springframework.data.solr.core.query SimplePivotField SimplePivotField

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

Introduction

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

Prototype

public SimplePivotField(List<Field> fields) 

Source Link

Usage

From source file:org.springframework.data.solr.core.query.FacetOptions.java

/**
 * Add pivot facet on given {@link Field}s.
 * /*from   w w w . j a  v a 2  s  .  c o  m*/
 * @param fields
 * @return
 */
public final FacetOptions addFacetOnPivot(Field... fields) {
    Assert.notNull(fields, "Pivot Facets must not be null.");

    for (Field field : fields) {
        Assert.notNull(field, "Cannot facet on null field.");
        Assert.hasText(field.getName(), "Cannot facet on field with null/empty fieldname.");
    }

    List<Field> list = Arrays.asList(fields);
    this.facetOnPivotFields.add(new SimplePivotField(list));
    return this;
}

From source file:org.springframework.data.solr.core.query.FacetOptions.java

/**
 * @param fieldName/*from w  ww  .  j a  v a 2 s. com*/
 * @return
 */
public final FacetOptions addFacetOnPivot(String... fieldnames) {
    Assert.state(fieldnames.length > 1, "2 or more fields required for pivot facets");
    for (String fieldname : fieldnames) {
        Assert.hasText(fieldname, "Fieldnames must not contain null/empty values");
    }

    this.facetOnPivotFields.add(new SimplePivotField(fieldnames));
    return this;
}

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

static Map<org.springframework.data.solr.core.query.PivotField, List<FacetPivotFieldEntry>> convertFacetQueryResponseToFacetPivotMap(
        FacetQuery query, QueryResponse response) {

    if (VersionUtil.isSolr3XAvailable()) {
        // pivot facets are a solr 4+ Feature
        return Collections.emptyMap();
    }// w w  w.  j  a  v  a  2s  .  c  o  m

    Map<org.springframework.data.solr.core.query.PivotField, List<FacetPivotFieldEntry>> facetResult = new HashMap<org.springframework.data.solr.core.query.PivotField, List<FacetPivotFieldEntry>>();
    NamedList<List<PivotField>> facetPivot = response.getFacetPivot();
    if (facetPivot != null && facetPivot.size() > 0) {
        for (int i = 0; i < facetPivot.size(); i++) {
            String name = facetPivot.getName(i);
            List<PivotField> pivotResult = facetPivot.get(name);
            facetResult.put(new SimplePivotField(name), convertPivotResult(pivotResult));
        }
    }

    return facetResult;
}