@SuppressWarnings("unchecked") @Override public List<T> findMixedByAttributesPaginated(Map<String, String> eqSentenceOnField, Map<String, String> eqMustSentenceOnField, int index, int paginationSize) { FullTextQuery fullTextQuery = createFullTextQueryForfindMixedByAttribute(eqSentenceOnField, eqMustSentenceOnField); fullTextQuery.setFirstResult(index); fullTextQuery.setMaxResults(paginationSize); fullTextQuery.setFetchSize(paginationSize); return fullTextQuery.list(); }
@SuppressWarnings("unchecked") @Override public List<T> findExactByAttributesPaginated(Map<String, String> eqSentenceOnField, int index, int paginationSize) { FullTextQuery fullTextQuery = createFullTextQueryForfindExactByAttribute(eqSentenceOnField); fullTextQuery.setFirstResult(index); fullTextQuery.setMaxResults(paginationSize); fullTextQuery.setFetchSize(paginationSize); return fullTextQuery.list(); }
@SuppressWarnings("unchecked") @Override public List<T> findMultiFieldSameAttributesAndExactByAttributesPaginated( Map<String, Set<String>> attributeForMultipleFieldsMap, Map<String, String> eqSentenceOnField, int index, int paginationSize) { FullTextQuery fullTextQuery = createFullTextQueryForfindMultiFieldSameAttributesAndExactByAttributes(attributeForMultipleFieldsMap, eqSentenceOnField); fullTextQuery.setFirstResult(index); fullTextQuery.setMaxResults(paginationSize); fullTextQuery.setFetchSize(paginationSize); return fullTextQuery.list(); }
@SuppressWarnings("unchecked") @Override public List<T> findMixedByAttributesWKeywordsPaginated(Map<String, String> eqSentenceOnField, Map<String, String> eqMustSentenceOnField, int index, int paginationSize) { FullTextQuery fullTextQuery = createFullTextQueryForfindMixedByAttributeWKeywords(eqSentenceOnField, eqMustSentenceOnField); fullTextQuery.setFirstResult(index); fullTextQuery.setMaxResults(paginationSize); fullTextQuery.setFetchSize(paginationSize); return fullTextQuery.list(); }
@SuppressWarnings("unchecked") @Override public List<T> findSetOfExactByAttributesPaginated(Set<Map<String, String>> setEqSentenceOnFields, int index, int paginationSize) { FullTextQuery fullTextQuery = createFullTextQueryForfindSetOfExactByAttributes(setEqSentenceOnFields); fullTextQuery.setFirstResult(index); fullTextQuery.setMaxResults(paginationSize); fullTextQuery.setFetchSize(paginationSize); return fullTextQuery.list(); }
@SuppressWarnings("unchecked") @Override public List<T> findSetOfStartingUsingWildcardAndSetOfExactByAttributesPaginated( Set<Map<String, String>> setOfStartSentenceOnFields, Set<Map<String, String>> setOfEqSentenceOnFields, int index, int paginationSize) { FullTextQuery fullTextQuery = createFullTextQueryForfindSetOfStartingUsingWildcardAndSetOfExactByAttributes(setOfStartSentenceOnFields, setOfEqSentenceOnFields); fullTextQuery.setFirstResult(index); fullTextQuery.setMaxResults(paginationSize); fullTextQuery.setFetchSize(paginationSize); return fullTextQuery.list(); }
@SuppressWarnings("unchecked") public List<T> findSetOfMultiFieldSameAttributesAndSetOfExactByAttributesPaginated(Set<Map<String, Set<String>>> setAttributeForMultipleFieldsMaps, Set<Map<String, String>> setEqSentenceOnFields, int index, int paginationSize){ FullTextQuery fullTextQuery = createFullTextQueryForfindSetOfMultiFieldSameAttributesAndSetOfExactByAttributes(setAttributeForMultipleFieldsMaps, setEqSentenceOnFields); fullTextQuery.setFirstResult(index); fullTextQuery.setMaxResults(paginationSize); fullTextQuery.setFetchSize(paginationSize); return fullTextQuery.list(); }
@SuppressWarnings("unchecked") @Override public List<T> findStartingUsingWildcardAndExactByAttributesPaginated(Map<String, String> startSentenceOnField, Map<String, String> eqSentenceOnField, int index, int paginationSize) { FullTextQuery fullTextQuery = createFullTextQueryForfindStartingUsingWildcardAndExactByAttributes(startSentenceOnField, eqSentenceOnField); fullTextQuery.setFirstResult(index); fullTextQuery.setMaxResults(paginationSize); fullTextQuery.setFetchSize(paginationSize); return fullTextQuery.list(); }
@SuppressWarnings("unchecked") @Override public List<T> findNotExactByAttributesPaginated(Map<String, String> eqSentenceOnField, int index, int paginationSize) { FullTextQuery fullTextQuery = createFullTextQueryForfindNotExactByAttribute(eqSentenceOnField); fullTextQuery.setFirstResult(index); fullTextQuery.setMaxResults(paginationSize); fullTextQuery.setFetchSize(paginationSize); return fullTextQuery.list(); }
@SuppressWarnings("unchecked") @Override public List<T> findNotExactByAttributesWKeywordsPaginated(Map<String, String> eqSentenceOnField, int index, int paginationSize) { FullTextQuery fullTextQuery = createFullTextQueryForfindNotExactByAttributeWKeywords(eqSentenceOnField); fullTextQuery.setFirstResult(index); fullTextQuery.setMaxResults(paginationSize); fullTextQuery.setFetchSize(paginationSize); return fullTextQuery.list(); }
.createFullTextQuery( tq, AlternateBook.class ) .setSort( sort ) .setFetchSize( 10 ) .scroll(); scrollableResults.beforeFirst();
@Test public void testFetchSizeNonDefaultFirstAndMaxNoHits() throws Exception { FullTextSession fullTextSession = Search.getFullTextSession( openSession() ); Transaction tx = fullTextSession.beginTransaction(); QueryParser parser = new QueryParser( "dept", TestConstants.standardAnalyzer ); Query query = parser.parse( "dept:XXX" ); org.hibernate.search.FullTextQuery hibQuery = fullTextSession.createFullTextQuery( query, Employee.class ); hibQuery.setProjection( "id", "lastname", "dept" ); hibQuery.setFetchSize( 3 ); hibQuery.setFirstResult( 1 ); hibQuery.setMaxResults( 3 ); ScrollableResults results = hibQuery.scroll(); results.beforeFirst(); Object[] result = results.get(); assertNull( "non-null entity infos returned", result ); tx.commit(); fullTextSession.close(); }
.createFullTextQuery( tq, AlternateBook.class ) .setSort( sort ) .setFetchSize( 10 ) .setFirstResult( 20 ) .setMaxResults( 111 )
@Test public void testFetchSizeLargerThanHits() throws Exception { FullTextSession fullTextSession = Search.getFullTextSession( openSession() ); Transaction tx = fullTextSession.beginTransaction(); QueryParser parser = new QueryParser( "dept", TestConstants.standardAnalyzer ); Query query = parser.parse( "dept:ITech" ); org.hibernate.search.FullTextQuery hibQuery = fullTextSession.createFullTextQuery( query, Employee.class ); hibQuery.setSort( new Sort( new SortField( "id", SortField.Type.STRING ) ) ); hibQuery.setProjection( "id", "lastname", "dept" ); hibQuery.setFetchSize( 6 ); ScrollableResults results = hibQuery.scroll(); results.beforeFirst(); results.next(); Object[] result = results.get(); assertEquals( "incorrect entityInfo returned", 1000, result[0] ); tx.commit(); fullTextSession.close(); }
.createFullTextQuery( tq, AlternateBook.class ) .setSort( sort ) .setFetchSize( 10 ) .scroll(); int position = -1;
FullTextQuery.THIS .setFetchSize( 10 ) .setSort( sort ) .scroll();
@Test public void testFetchSizeDefaultFirstAndMax() throws Exception { FullTextSession fullTextSession = Search.getFullTextSession( openSession() ); Transaction tx = fullTextSession.beginTransaction(); QueryParser parser = new QueryParser( "dept", TestConstants.standardAnalyzer ); Query query = parser.parse( "dept:ITech" ); org.hibernate.search.FullTextQuery hibQuery = fullTextSession.createFullTextQuery( query, Employee.class ); hibQuery.setSort( new Sort( new SortField( "id", SortField.Type.STRING ) ) ); hibQuery.setProjection( "id", "lastname", "dept" ); hibQuery.setFetchSize( 3 ); ScrollableResults results = hibQuery.scroll(); results.beforeFirst(); results.next(); Object[] result = results.get(); assertEquals( "incorrect entityInfo returned", 1000, result[0] ); results.scroll( 2 ); result = results.get(); assertEquals( "incorrect entityInfo returned", 1003, result[0] ); // check cache addition results.next(); result = results.get(); assertEquals( "incorrect entityInfo returned", 1004, result[0] ); results.scroll( -2 ); result = results.get(); assertEquals( "incorrect entityInfo returned", 1002, result[0] ); tx.commit(); fullTextSession.close(); }
org.hibernate.search.FullTextQuery hibQuery = fullTextSession.createFullTextQuery( query, Employee.class ); hibQuery.setProjection( "id", "lastname", "dept" ); hibQuery.setFetchSize( 3 ); hibQuery.setFirstResult( 1 ); hibQuery.setMaxResults( 3 );