List of usage examples for org.springframework.data.solr.core.query SimpleQuery setGroupOptions
@SuppressWarnings("unchecked") @Override public <T extends Query> T setGroupOptions(GroupOptions groupOptions)
From source file:org.springframework.data.solr.core.DefaultQueryParserTests.java
/** * @see DATASOLR-121/*w w w. j a v a2s. c om*/ */ @Test public void testConstructGroupQueryWithAllPossibleParameters() { GroupOptions groupOptions = new GroupOptions(); SimpleQuery query = new SimpleQuery(); query.addCriteria(new SimpleStringCriteria("*:*")); query.setGroupOptions(groupOptions); groupOptions.setOffset(1); groupOptions.setLimit(2); groupOptions.addGroupByField("field_1"); groupOptions.addGroupByFunction(MaxFunction.max("field_1", "field_2")); groupOptions.addGroupByQuery(new SimpleQuery("*:*")); groupOptions.addSort(new Sort(Sort.Direction.DESC, "field_3")); groupOptions.setTotalCount(true); SolrQuery solrQuery = queryParser.constructSolrQuery(query); assertGroupFormatPresent(solrQuery, true); Assert.assertEquals("field_1", solrQuery.get(GroupParams.GROUP_FIELD)); Assert.assertEquals("{!func}max(field_1,field_2)", solrQuery.get(GroupParams.GROUP_FUNC)); Assert.assertEquals("*:*", solrQuery.get(GroupParams.GROUP_QUERY)); Assert.assertEquals("field_3 desc", solrQuery.get(GroupParams.GROUP_SORT)); Assert.assertEquals("1", solrQuery.get(GroupParams.GROUP_OFFSET)); Assert.assertEquals("2", solrQuery.get(GroupParams.GROUP_LIMIT)); }
From source file:org.springframework.data.solr.core.DefaultQueryParserTests.java
/** * @see DATASOLR-121//from w w w.j a v a 2 s.c o m */ @Test public void testConstructGroupQueryWithoutPagingParameters() { SimpleQuery query = new SimpleQuery(); query.addCriteria(new SimpleStringCriteria("*:*")); query.setGroupOptions(new GroupOptions().addGroupByField("fieldName")); SolrQuery solrQuery = queryParser.constructSolrQuery(query); assertGroupFormatPresent(solrQuery, false); Assert.assertNull(solrQuery.get(GroupParams.GROUP_SORT)); Assert.assertNull(solrQuery.get(GroupParams.GROUP_OFFSET)); Assert.assertNull(solrQuery.get(GroupParams.GROUP_LIMIT)); }
From source file:org.springframework.data.solr.core.DefaultQueryParserTests.java
/** * @see DATASOLR-121/* www. ja v a 2 s . co m*/ */ @Test public void testConstructGroupQueryWithMultipleFunctions() { SimpleQuery query = new SimpleQuery(); query.addCriteria(new SimpleStringCriteria("*:*")); query.setGroupOptions(new GroupOptions()); query.getGroupOptions().addGroupByFunction(MaxFunction.max("field_1", "field_2")); query.getGroupOptions().addGroupByFunction(MaxFunction.max("field_3", "field_4")); SolrQuery solrQuery = queryParser.constructSolrQuery(query); assertGroupFormatPresent(solrQuery, false); Assert.assertArrayEquals(new String[] { "{!func}max(field_1,field_2)", "{!func}max(field_3,field_4)" }, solrQuery.getParams(GroupParams.GROUP_FUNC)); Assert.assertNull(solrQuery.getParams(GroupParams.GROUP_QUERY)); Assert.assertNull(solrQuery.getParams(GroupParams.GROUP_FIELD)); }
From source file:org.springframework.data.solr.core.DefaultQueryParserTests.java
/** * @see DATASOLR-121//from w ww.ja v a2 s . c o m */ @Test public void testConstructGroupQueryWithMultipleQueries() { SimpleQuery query = new SimpleQuery(); query.addCriteria(new SimpleStringCriteria("*:*")); query.setGroupOptions(new GroupOptions()); query.getGroupOptions().addGroupByQuery(new SimpleQuery("query1")); query.getGroupOptions().addGroupByQuery(new SimpleQuery("query2")); SolrQuery solrQuery = queryParser.constructSolrQuery(query); assertGroupFormatPresent(solrQuery, false); Assert.assertArrayEquals(new String[] { "query1", "query2" }, solrQuery.getParams(GroupParams.GROUP_QUERY)); Assert.assertNull(solrQuery.getParams(GroupParams.GROUP_FUNC)); Assert.assertNull(solrQuery.getParams(GroupParams.GROUP_FIELD)); }