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

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

Introduction

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

Prototype

public SimpleFacetQuery(Criteria criteria) 

Source Link

Usage

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

@Test
public void testConstructSolrQueryWithSingleFacetOnField() {
    Query query = new SimpleFacetQuery(new Criteria("field_1").is("value_1"))
            .setFacetOptions(new FacetOptions("facet_1"));
    SolrQuery solrQuery = queryParser.constructSolrQuery(query);
    Assert.assertNotNull(solrQuery);//from   www  . j a  va  2  s.  c o  m
    assertQueryStringPresent(solrQuery);
    assertPaginationNotPresent(solrQuery);
    assertProjectionNotPresent(solrQuery);
    assertGroupingNotPresent(solrQuery);
    assertFactingPresent(solrQuery, "facet_1");
}

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

@Test
public void testConstructSolrQueryWithSinglePivot() {
    Query query = new SimpleFacetQuery(new Criteria("field_1").is("value_1"))
            .setFacetOptions(new FacetOptions().addFacetOnPivot("field_1", "field_2"));
    SolrQuery solrQuery = queryParser.constructSolrQuery(query);
    Assert.assertNotNull(solrQuery);//ww w.j a v a 2s .  c o m
    assertQueryStringPresent(solrQuery);
    assertPaginationNotPresent(solrQuery);
    assertProjectionNotPresent(solrQuery);
    assertGroupingNotPresent(solrQuery);
    assertPivotFactingPresent(solrQuery, "field_1,field_2");
}

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

@Test
public void testConstructSolrQueryWithMultipleFacetOnFields() {
    FacetQuery query = new SimpleFacetQuery(new Criteria("field_1").is("value_1"))
            .setFacetOptions(new FacetOptions("facet_1", "facet_2"));
    SolrQuery solrQuery = queryParser.constructSolrQuery(query);
    Assert.assertNotNull(solrQuery);//from  w  w w.  j a  v a  2  s . c  o m
    assertQueryStringPresent(solrQuery);
    assertPaginationNotPresent(solrQuery);
    assertProjectionNotPresent(solrQuery);
    assertGroupingNotPresent(solrQuery);
    assertFactingPresent(solrQuery, "facet_1", "facet_2");
}

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

@Test
public void testConstructSolrQueryWithMultiplePivot() {
    FacetQuery query = new SimpleFacetQuery(new Criteria("field_1").is("value_1")).setFacetOptions(
            new FacetOptions().addFacetOnPivot("field_1", "field_2").addFacetOnPivot("field_2", "field_3"));
    SolrQuery solrQuery = queryParser.constructSolrQuery(query);
    Assert.assertNotNull(solrQuery);//from w w w  .  j  ava2 s.  com
    assertQueryStringPresent(solrQuery);
    assertPaginationNotPresent(solrQuery);
    assertProjectionNotPresent(solrQuery);
    assertGroupingNotPresent(solrQuery);
    assertPivotFactingPresent(solrQuery, "field_1,field_2", "field_2,field_3");
}

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

@Test
public void testConstructSolrQueryWithFacetPrefix() {
    FacetQuery query = new SimpleFacetQuery(new Criteria("field_1").is("value_1"));
    FacetOptions facetOptions = new FacetOptions(new SimpleField("facet_1"), new SimpleField("facet_2"));
    facetOptions.setFacetPrefix("prefix");
    query.setFacetOptions(facetOptions);

    SolrQuery solrQuery = queryParser.constructSolrQuery(query);
    Assert.assertNotNull(solrQuery);/*from  w ww. j a  va  2 s.c o m*/
    assertQueryStringPresent(solrQuery);
    assertPaginationNotPresent(solrQuery);
    assertProjectionNotPresent(solrQuery);
    assertGroupingNotPresent(solrQuery);
    assertFactingPresent(solrQuery, "facet_1", "facet_2");
    Assert.assertEquals(facetOptions.getFacetPrefix(), solrQuery.getParams("facet.prefix")[0]);
}

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

@Test
public void testConstructSolrQueryWithFieldFacetParameters() {
    FacetQuery query = new SimpleFacetQuery(new Criteria("field_1").is("value_1"));
    FieldWithFacetParameters fieldWithFacetParameters = new FieldWithFacetParameters("facet_2")
            .setPrefix("prefix").setSort(FacetSort.INDEX).setLimit(3).setOffset(2).setMethod("method")
            .setMissing(true);//w w  w  .  j  a  v a 2s. c  o  m
    FacetOptions facetOptions = new FacetOptions(new SimpleField("facet_1"), fieldWithFacetParameters);
    query.setFacetOptions(facetOptions);

    SolrQuery solrQuery = queryParser.constructSolrQuery(query);
    Assert.assertNotNull(solrQuery);
    assertQueryStringPresent(solrQuery);
    assertPaginationNotPresent(solrQuery);
    assertProjectionNotPresent(solrQuery);
    assertGroupingNotPresent(solrQuery);
    assertFactingPresent(solrQuery, "facet_1", "facet_2");
    Assert.assertEquals(fieldWithFacetParameters.getPrefix(),
            solrQuery.getParams("f." + fieldWithFacetParameters.getName() + ".facet.prefix")[0]);
    Assert.assertEquals(FacetParams.FACET_SORT_INDEX,
            solrQuery.getParams("f." + fieldWithFacetParameters.getName() + ".facet.sort")[0]);
    Assert.assertEquals(Integer.toString(fieldWithFacetParameters.getOffset()),
            solrQuery.getParams("f." + fieldWithFacetParameters.getName() + ".facet.offset")[0]);
    Assert.assertEquals(Integer.toString(fieldWithFacetParameters.getLimit()),
            solrQuery.getParams("f." + fieldWithFacetParameters.getName() + ".facet.limit")[0]);
    Assert.assertEquals(fieldWithFacetParameters.getMethod(),
            solrQuery.getParams("f." + fieldWithFacetParameters.getName() + ".facet.method")[0]);
    Assert.assertEquals(fieldWithFacetParameters.getMissing().toString(),
            solrQuery.getParams("f." + fieldWithFacetParameters.getName() + ".facet.missing")[0]);
}

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

@Test
public void testConstructSolrQueryWithCustomFieldFacetParameters() {
    FacetQuery query = new SimpleFacetQuery(new Criteria("field_1").is("value_1"));
    FieldWithFacetParameters fieldWithFacetParameters = new FieldWithFacetParameters("facet_2")
            .addFacetParameter(new FacetParameter(FacetParams.FACET_ZEROS, "on"));
    FacetOptions facetOptions = new FacetOptions(new SimpleField("facet_1"), fieldWithFacetParameters);
    query.setFacetOptions(facetOptions);

    SolrQuery solrQuery = queryParser.constructSolrQuery(query);
    Assert.assertEquals("on",
            solrQuery.getParams("f." + fieldWithFacetParameters.getName() + ".facet.zeros")[0]);
}

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

@Test
public void testConstructSolrQueryWithFacetSort() {
    FacetQuery query = new SimpleFacetQuery(new Criteria("field_1").is("value_1"))
            .setFacetOptions(new FacetOptions("facet_1").setFacetSort(FacetOptions.FacetSort.INDEX));
    SolrQuery solrQuery = queryParser.constructSolrQuery(query);
    Assert.assertEquals("index", solrQuery.getFacetSortString());

    query.getFacetOptions().setFacetSort(FacetOptions.FacetSort.COUNT);
    solrQuery = queryParser.constructSolrQuery(query);
    Assert.assertEquals("count", solrQuery.getFacetSortString());
}

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

@Test
public void testConstructSolrQueryWithSingleFacetFilterQuery() {
    FacetQuery query = new SimpleFacetQuery(new Criteria("field_1").is("value_1")).setFacetOptions(
            new FacetOptions().addFacetQuery(new SimpleQuery(new SimpleStringCriteria("field_2:[* TO 5]"))));

    SolrQuery solrQuery = queryParser.constructSolrQuery(query);
    Assert.assertNotNull(solrQuery);//from   w w w.  j  a  v a 2s . c o m
    assertQueryStringPresent(solrQuery);
    assertPaginationNotPresent(solrQuery);
    assertProjectionNotPresent(solrQuery);
    assertGroupingNotPresent(solrQuery);
    Assert.assertArrayEquals(new String[] { "field_2:[* TO 5]" }, solrQuery.getFacetQuery());
}

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

@Test
public void testConstructSolrQueryWithMultipleFacetFilterQuerues() {
    FacetQuery query = new SimpleFacetQuery(new Criteria("field_1").is("value_1")).setFacetOptions(
            new FacetOptions().addFacetQuery(new SimpleQuery(new SimpleStringCriteria("field_2:[* TO 5]")))
                    .addFacetQuery(new SimpleQuery(new Criteria("field_3").startsWith("prefix"))));

    SolrQuery solrQuery = queryParser.constructSolrQuery(query);
    Assert.assertNotNull(solrQuery);//w w w .j  av a 2s  . c om
    assertQueryStringPresent(solrQuery);
    assertPaginationNotPresent(solrQuery);
    assertProjectionNotPresent(solrQuery);
    assertGroupingNotPresent(solrQuery);
    Assert.assertArrayEquals(new String[] { "field_2:[* TO 5]", "field_3:prefix*" }, solrQuery.getFacetQuery());
}