Class QueryEngine<TypeMetadata>

  • Direct Known Subclasses:
    EmbeddedQueryEngine

    public class QueryEngine<TypeMetadata>
    extends Object
    Since:
    7.2
    Author:
    anistor@redhat.com
    • Method Detail

      • getSearchFactory

        protected org.hibernate.search.spi.SearchIntegrator getSearchFactory()
      • getMatcherClass

        public Class<? extends Matcher> getMatcherClass()
      • buildQuery

        protected BaseQuery buildQuery​(QueryFactory queryFactory,
                                       org.infinispan.objectfilter.impl.syntax.parser.IckleParsingResult<TypeMetadata> parsingResult,
                                       Map<String,​Object> namedParameters,
                                       long startOffset,
                                       int maxResults)
      • makeProjectionProcessor

        protected QueryEngine.RowProcessor makeProjectionProcessor​(Class<?>[] projectedTypes,
                                                                   Object[] projectedNullMarkers)
        Apply some pos-processing to the result when we have projections.
      • parse

        protected org.infinispan.objectfilter.impl.syntax.parser.IckleParsingResult<TypeMetadata> parse​(String queryString)
      • createHsQuery

        public HsQueryRequest createHsQuery​(String queryString,
                                            org.hibernate.search.spi.IndexedTypeMap<org.hibernate.search.spi.CustomTypeMetadata> metadata,
                                            Map<String,​Object> nameParameters)
      • buildCacheQuery

        public <E> CacheQuery<E> buildCacheQuery​(QueryDefinition queryDefinition,
                                                 IndexedQueryMode indexedQueryMode,
                                                 KeyTransformationHandler keyTransformationHandler,
                                                 org.hibernate.search.query.engine.spi.TimeoutExceptionFactory timeoutExceptionFactory,
                                                 ExecutorService asyncExecutor,
                                                 org.hibernate.search.spi.IndexedTypeMap<org.hibernate.search.spi.CustomTypeMetadata> indexedTypeMap)
      • buildLuceneQuery

        protected <E> CacheQuery<E> buildLuceneQuery​(org.infinispan.objectfilter.impl.syntax.parser.IckleParsingResult<TypeMetadata> ickleParsingResult,
                                                     Map<String,​Object> namedParameters,
                                                     long startOffset,
                                                     int maxResults)
      • buildLuceneQuery

        protected <E> CacheQuery<E> buildLuceneQuery​(org.infinispan.objectfilter.impl.syntax.parser.IckleParsingResult<TypeMetadata> ickleParsingResult,
                                                     Map<String,​Object> namedParameters,
                                                     long startOffset,
                                                     int maxResults,
                                                     IndexedQueryMode queryMode)
        Build a Lucene index query.
      • makeTypeQuery

        protected org.apache.lucene.search.Query makeTypeQuery​(org.apache.lucene.search.Query query,
                                                               String targetEntityName)
        Enhances the give query with an extra condition to discriminate on entity type. This is a no-op in embedded mode but other query engines could use it to discriminate if more types are stored in the same index. To be overridden by subclasses as needed.
      • getTargetedClass

        protected Class<?> getTargetedClass​(org.infinispan.objectfilter.impl.syntax.parser.IckleParsingResult<?> parsingResult)
      • makeCacheQuery

        protected CacheQuery<?> makeCacheQuery​(org.infinispan.objectfilter.impl.syntax.parser.IckleParsingResult<TypeMetadata> ickleParsingResult,
                                               org.apache.lucene.search.Query luceneQuery,
                                               IndexedQueryMode queryMode,
                                               Map<String,​Object> namedParameters)