@Override public Query getQuery() { return child == null ? builder.all().createQuery() : child.getQuery(); } }
public void testAllExceptWithoutAnalyzer() { loadNumericTypes(); Query subQuery = Search.getSearchManager(cache).buildQueryBuilderForClass(NumericType.class).get().keyword() .wildcard().onField("name").matching("*string*").createQuery(); Query query = Search.getSearchManager(cache).buildQueryBuilderForClass(NumericType.class).get().all().except().createQuery(); CacheQuery<Person> cacheQuery = Search.getSearchManager(cache).getQuery(query); List<Person> found = cacheQuery.list(); assertEquals(3, found.size()); assert found.contains(type1); assert found.contains(type2); assert found.contains(type3); query = Search.getSearchManager(cache).buildQueryBuilderForClass(NumericType.class).get().all().except(subQuery).createQuery(); cacheQuery = Search.getSearchManager(cache).getQuery(query); found = cacheQuery.list(); assertEquals(0, found.size()); }
private Query makeQuery(BooleanExpr expr) { return expr == null ? queryBuilder.all().createQuery() : expr.acceptVisitor(this); }
public void testAllExcept() { loadTestingData(); Query subQuery = Search.getSearchManager(cache).buildQueryBuilderForClass(Person.class).get().keyword() .onField("name").matching("Goat").createQuery(); Query query = Search.getSearchManager(cache).buildQueryBuilderForClass(Person.class).get().all().except().createQuery(); CacheQuery<Person> cacheQuery = Search.getSearchManager(cache).getQuery(query); List<Person> found = cacheQuery.list(); assertEquals(3, found.size()); assert found.contains(person2); assert found.contains(person1); assert found.contains(person3); query = Search.getSearchManager(cache).buildQueryBuilderForClass(Person.class).get().all().except(query).createQuery(); cacheQuery = Search.getSearchManager(cache).getQuery(query); found = cacheQuery.list(); assertEquals(0, found.size()); query = Search.getSearchManager(cache).buildQueryBuilderForClass(Person.class).get().all().except(subQuery).createQuery(); cacheQuery = Search.getSearchManager(cache).getQuery(query); found = cacheQuery.list(); assertEquals(1, found.size()); assert found.contains(person1); }
private Query makeQuery(BooleanExpr expr) { return expr == null ? queryBuilder.all().createQuery() : expr.acceptVisitor(this); }
.should( monthQb.all().createQuery() ) .must( monthQb.keyword().onField( "mythology" ).matching( "colder" ).createQuery() ) .not() .except( monthQb.keyword().onField( "mythology" ).matching( "colder" ).createQuery() ) .createQuery();
@Override public Query visit(ConstantBooleanExpr constantBooleanExpr) { Query all = queryBuilder.all().createQuery(); return constantBooleanExpr.getValue() ? all : queryBuilder.bool().must(all).not().createQuery(); }
@Override public Query visit(ConstantBooleanExpr constantBooleanExpr) { Query all = queryBuilder.all().createQuery(); return constantBooleanExpr.getValue() ? all : queryBuilder.bool().must(all).not().createQuery(); }
public FullTextQuery createMatchAllQuery(Class<?> clazz) { QueryBuilder builder = queryBuilder( clazz ); Query luceneQuery = builder.all().createQuery(); return fullTextSession.createFullTextQuery( luceneQuery, clazz ); }
@Benchmark @Threads(20) public void queryBooksByBestRating(QueryEngineHolder eh, Blackhole bh) { SearchIntegrator searchIntegrator = eh.si; Query luceneQuery = searchIntegrator.buildQueryBuilder() .forEntity( BookEntity.class ) .get() .all() .createQuery(); long expectedIndexSize = eh.getExpectedIndexSize(); int maxResults = eh.getMaxResults(); HSQuery hsQuery = searchIntegrator.createHSQuery( luceneQuery, BookEntity.class ); hsQuery.sort( new Sort( new SortField( "rating", SortField.Type.FLOAT, true ) ) ); hsQuery.maxResults( maxResults ); int queryResultSize = hsQuery.queryResultSize(); List<EntityInfo> queryEntityInfos = hsQuery.queryEntityInfos(); if ( eh.isQuerySync() && queryResultSize != expectedIndexSize ) { throw new RuntimeException( "Unexpected index size" ); } if ( maxResults != queryEntityInfos.size() ) { throw new RuntimeException( "Unexpected resultset size" ); } bh.consume( queryEntityInfos ); }
public void testPutMapAsync() throws Exception { prepareTestData(); SearchManager searchManager = Search.getSearchManager(cache2); QueryBuilder queryBuilder = searchManager .buildQueryBuilderForClass(Person.class) .get(); Query allQuery = queryBuilder.all().createQuery(); assert searchManager.getQuery(allQuery, Person.class).list().size() == 3; person4 = new Person(); person4.setName("New Goat"); person4.setBlurb("Also eats grass"); Map<String, Person> allWrites = new HashMap<>(); allWrites.put(key1, person1); allWrites.put(key2, person2); allWrites.put(key3, person3); allWrites.put("newGoat", person4); Future futureTask = cache2.putAllAsync(allWrites); futureTask.get(); assert futureTask.isDone(); List<Person> found = searchManager.<Person>getQuery(allQuery, Person.class).list(); assertEquals(4, found.size()); assert found.contains(person4); futureTask = cache1.putAllAsync(allWrites); futureTask.get(); assert futureTask.isDone(); found = searchManager.<Person>getQuery(allQuery, Person.class).list(); assertEquals(4, found.size()); assert found.contains(person4); StaticTestingErrorHandler.assertAllGood(cache1, cache2); }
private <T> List<T> queryAll(SearchManager sm, Class<T> entityType) { return sm.<T>getQuery(sm.buildQueryBuilderForClass(entityType).get().all().createQuery(), entityType).list(); }
private <T> List<T> queryAll(SearchManager sm, Class<T> entityType) { return sm.<T>getQuery(sm.buildQueryBuilderForClass(entityType).get().all().createQuery(), entityType).list(); }
public static <T> int nbDocumentsInIndex(EntityManagerFactory emf, Class<T> clazz) { FullTextEntityManager em = org.hibernate.search.jpa.Search.getFullTextEntityManager( emf.createEntityManager() ); QueryBuilder queryBuilder = em.getSearchFactory().buildQueryBuilder().forEntity( clazz ).get(); Query allQuery = queryBuilder.all().createQuery(); FullTextQuery fullTextQuery = em.createFullTextQuery( allQuery, clazz ); return fullTextQuery.getResultSize(); }
@Test public void searchBeforeMaxResultWindow() throws Exception { generateData( 0, DEFAULT_MAX_RESULT_WINDOW + 10 ); Query query = builder().all().createQuery(); List<EntityInfo> results = getQuery( query ) .firstResult( DEFAULT_MAX_RESULT_WINDOW - 5 ).maxResults( 5 ) .queryEntityInfos(); assertEquals( 5, results.size() ); assertEquals( DEFAULT_MAX_RESULT_WINDOW - 5, results.get( 0 ).getId() ); }
public void testPutMap() throws Exception { prepareTestData(); SearchManager searchManager = Search.getSearchManager(cache2); QueryBuilder queryBuilder = searchManager .buildQueryBuilderForClass(Person.class) .get(); Query allQuery = queryBuilder.all().createQuery(); assertEquals(3, searchManager.getQuery(allQuery, Person.class).list().size()); Map<String, Person> allWrites = new HashMap<>(); allWrites.put(key1, person1); allWrites.put(key2, person2); allWrites.put(key3, person3); cache2.putAll(allWrites); List<Person> found = searchManager.<Person>getQuery(allQuery, Person.class).list(); assertEquals(3, found.size()); cache2.putAll(allWrites); found = searchManager.<Person>getQuery(allQuery, Person.class).list(); assertEquals(3, found.size()); StaticTestingErrorHandler.assertAllGood(cache1, cache2); }
private int countBretzelsViaIndex(FullTextEntityManager em) { QueryBuilder queryBuilder = em.getSearchFactory().buildQueryBuilder().forEntity( Bretzel.class ).get(); Query allQuery = queryBuilder.all().createQuery(); FullTextQuery fullTextQuery = em.createFullTextQuery( allQuery, Bretzel.class ); return fullTextQuery.getResultSize(); } }
@Test @TestForIssue( jiraKey = "HSEARCH-703" ) public void testPolymorphicQueryForUnindexedSuperTypeReturnsIndexedSubType() { final QueryBuilder builder = helper.queryBuilder( Object.class ); Query query = builder.all().createQuery(); helper.assertThat( query ).from( Object.class ) .as( "expected all instances of all indexed types" ) .hasResultSize( 8 ); }
@Test public void forEntity_configured_indexed() { QueryBuilder builder = sfHolder.getSearchFactory().buildQueryBuilder().forEntity( ConfiguredIndexed.class ).get(); Assert.assertEquals( new MatchAllDocsQuery(), builder.all().createQuery() ); }
@Benchmark @GroupThreads(5) @Group("concurrentReadWriteTest") public void readWriteTestReader(QueryEngineHolder eh, Blackhole bh) { SearchIntegrator searchIntegrator = eh.si; Query luceneQuery = searchIntegrator.buildQueryBuilder() .forEntity( BookEntity.class ) .get() .all() .createQuery(); int maxResults = eh.getMaxResults(); HSQuery hsQuery = searchIntegrator.createHSQuery( luceneQuery, BookEntity.class ); hsQuery.maxResults( maxResults ); int queryResultSize = hsQuery.queryResultSize(); List<EntityInfo> queryEntityInfos = hsQuery.queryEntityInfos(); bh.consume( queryEntityInfos ); bh.consume( queryResultSize ); }