Refine search
.buildQueryBuilder().forEntity(User.class).get();
@Override public boolean isDisabled() { Boolean retVal = ourDisabled; if (retVal == null) { retVal = new TransactionTemplate(myTxManager).execute(t -> { try { FullTextEntityManager em = org.hibernate.search.jpa.Search.getFullTextEntityManager(myEntityManager); em.getSearchFactory().buildQueryBuilder().forEntity(ResourceTable.class).get(); return Boolean.FALSE; } catch (Exception e) { ourLog.trace("FullText test failed", e); ourLog.debug("Hibernate Search (Lucene) appears to be disabled on this server, fulltext will be disabled"); return Boolean.TRUE; } }); ourDisabled = retVal; } assert retVal != null; return retVal; }
/** * @param fields * @param text * @return full text query */ protected QueryBuilder getFullTextQueryBuilder() { FullTextSession fullTextSession = getFullTextSession(); return fullTextSession.getSearchFactory().buildQueryBuilder().forEntity(getEntityClass()).get(); }
/** * @param fields * @param text * @return full text query */ protected QueryBuilder getFullTextQueryBuilder() { FullTextSession fullTextSession = getFullTextSession(); return fullTextSession.getSearchFactory().buildQueryBuilder().forEntity(getEntityClass()).get(); }
/** * You can use it in {@link #prepareQuery()}. * * @return the query builder */ protected QueryBuilder newQueryBuilder() { return getFullTextSession().getSearchFactory().buildQueryBuilder().forEntity(getType()).get(); }
QueryBuilder qb = em.getSearchFactory().buildQueryBuilder().forEntity(ResourceTable.class).get();
TermCodeSystemVersion csv = cs.getCurrentVersion(); FullTextEntityManager em = org.hibernate.search.jpa.Search.getFullTextEntityManager(myEntityManager); QueryBuilder qb = em.getSearchFactory().buildQueryBuilder().forEntity(TermConcept.class).get(); BooleanJunction<?> bool = qb.bool();
QueryBuilder qb = em.getSearchFactory().buildQueryBuilder().forEntity(ResourceTable.class).get(); BooleanJunction<?> bool = qb.bool();
private QueryBuilder getQueryBuilder(FullTextSession fullTextSession) { return fullTextSession.getSearchFactory().buildQueryBuilder().forEntity(klass).get(); }
@Override public boolean isDisabled() { Boolean retVal = ourDisabled; if (retVal == null) { retVal = new TransactionTemplate(myTxManager).execute(t -> { try { FullTextEntityManager em = org.hibernate.search.jpa.Search.getFullTextEntityManager(myEntityManager); em.getSearchFactory().buildQueryBuilder().forEntity(ResourceTable.class).get(); return Boolean.FALSE; } catch (Exception e) { ourLog.trace("FullText test failed", e); ourLog.debug("Hibernate Search (Lucene) appears to be disabled on this server, fulltext will be disabled"); return Boolean.TRUE; } }); ourDisabled = retVal; } assert retVal != null; return retVal; }
private QueryBuilder queryBuilder(FullTextSession fullTextSession) { final QueryBuilder tweetQueryBuilder = fullTextSession.getSearchFactory() .buildQueryBuilder().forEntity( Letter.class ).get(); return tweetQueryBuilder; }
public QueryBuilder queryBuilder(Class<?> clazz) { return fullTextSession.getSearchFactory().buildQueryBuilder().forEntity( clazz ).get(); }
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(); } }
private Query searchQueryForValue(String field, String value, FullTextSession session) { QueryBuilder queryBuilder = session.getSearchFactory().buildQueryBuilder() .forEntity( WorkingPerson.class ).get(); return queryBuilder.keyword().onField( field ).matching( value ).createQuery(); }
@Override public List<Artifact> searchAutocomplete(String searchPattern, Integer limit, Integer offset) throws ServiceException { String[] searchFields = new String[] { Binding.artifact().artifactId().getPath(), Binding.artifact().group().groupId().getPath() }; QueryBuilder queryBuilder = Search.getFullTextEntityManager(getEntityManager()).getSearchFactory().buildQueryBuilder() .forEntity(Artifact.class).get(); Query luceneQuery = queryBuilder.keyword().onField(Binding.artifact().deprecationStatus().getPath()).matching(ArtifactDeprecationStatus.NORMAL).createQuery(); List<SortField> sortFields = ImmutableList.<SortField>builder() .add(new SortField(Binding.artifact().group().getPath() + '.' + ArtifactGroup.GROUP_ID_SORT_FIELD_NAME, SortField.Type.STRING)) .add(new SortField(Artifact.ARTIFACT_ID_SORT_FIELD_NAME, SortField.Type.STRING)) .build(); Sort sort = new Sort(sortFields.toArray(new SortField[sortFields.size()])); return hibernateSearchService.searchAutocomplete(getObjectClass(), searchFields, searchPattern, luceneQuery, limit, offset, sort); }
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 testDateResolution() { Session s = openSession(); FullTextSession fullTextSession = Search.getFullTextSession( s ); Transaction tx = s.beginTransaction(); Calendar dob = Calendar.getInstance( TimeZone.getTimeZone( "UTC" ), Locale.ENGLISH ); dob.set( 1958, 3, 7, 7, 7, 7 ); final QueryBuilder monthQb = fullTextSession.getSearchFactory() .buildQueryBuilder().forEntity( GolfPlayer.class ).get(); Query query = monthQb.keyword().onField( "dateOfBirth" ).matching( dob.getTime() ).createQuery(); assertEquals( 1, fullTextSession.createFullTextQuery( query, GolfPlayer.class ).getResultSize() ); tx.commit(); s.close(); }
@Test public void testProjectionOfCalendarValueRetrievesCorrectTimeZoneOffset() { Session s = openSession(); FullTextSession fullTextSession = Search.getFullTextSession( s ); Transaction tx = s.beginTransaction(); Calendar subscriptionEndDate = GregorianCalendar.getInstance( TimeZone.getTimeZone( "Europe/Paris" ), Locale.FRENCH ); // Expecting to match as resolution is DAY subscriptionEndDate.set( 2016, 5, 7, 7, 7, 7 ); final QueryBuilder monthQb = fullTextSession.getSearchFactory() .buildQueryBuilder().forEntity( GolfPlayer.class ).get(); Query query = monthQb.keyword().onField( "subscriptionEndDate" ).matching( subscriptionEndDate ).createQuery(); @SuppressWarnings("unchecked") List<Object[]> results = fullTextSession.createFullTextQuery( query, GolfPlayer.class ).setProjection( "subscriptionEndDate" ).list(); assertEquals( 1, results.size() ); long subscriptionEndDateTime = subscriptionEndDate.getTime().getTime(); assertEquals( TimeZone.getTimeZone( "Europe/Paris" ).getOffset( subscriptionEndDateTime ), ( (Calendar) results.iterator().next()[0] ).getTimeZone().getOffset( subscriptionEndDateTime ) ); tx.commit(); s.close(); }
public List<String> searchName(String name) { FullTextEntityManager fullTextEm = Search.getFullTextEntityManager( em ); Query luceneQuery = fullTextEm.getSearchFactory().buildQueryBuilder() .forEntity( RegisteredMember.class ).get() .keyword().onField( "name" ).matching( name ).createQuery(); List<?> resultList = fullTextEm.createFullTextQuery( luceneQuery ).setProjection( "name" ).getResultList(); List<String> names = new ArrayList<>( resultList.size() ); for ( Object projection : resultList ) { names.add( (String) ( ( (Object[]) projection )[0] ) ); } return names; }
@Test public void testCalendarResolution() { Session s = openSession(); FullTextSession fullTextSession = Search.getFullTextSession( s ); Transaction tx = s.beginTransaction(); Calendar subscriptionEndDate = GregorianCalendar.getInstance( TimeZone.getTimeZone( "Europe/Paris" ), Locale.FRENCH ); // Expecting to match as resolution is DAY subscriptionEndDate.set( 2016, 5, 7, 7, 7, 7 ); final QueryBuilder monthQb = fullTextSession.getSearchFactory() .buildQueryBuilder().forEntity( GolfPlayer.class ).get(); Query query = monthQb.keyword().onField( "subscriptionEndDate" ).matching( subscriptionEndDate ).createQuery(); assertEquals( 1, fullTextSession.createFullTextQuery( query, GolfPlayer.class ).getResultSize() ); tx.commit(); s.close(); }