Class QueryEngine<TypeMetadata>


  • public class QueryEngine<TypeMetadata>
    extends org.infinispan.query.core.impl.QueryEngine<TypeMetadata>
    Adds indexing capability to the light (index-less) QueryEngine from query-core module.
    Since:
    7.2
    Author:
    anistor@redhat.com
    • Field Detail

      • isIndexed

        protected final boolean isIndexed
        Is the cache indexed?
    • Constructor Detail

      • QueryEngine

        public QueryEngine​(org.infinispan.AdvancedCache<?,​?> cache,
                           boolean isIndexed)
      • QueryEngine

        protected QueryEngine​(org.infinispan.AdvancedCache<?,​?> cache,
                              boolean isIndexed,
                              Class<? extends org.infinispan.objectfilter.Matcher> matcherImplClass)
    • Method Detail

      • getMatcherClass

        public Class<? extends org.infinispan.objectfilter.Matcher> getMatcherClass()
      • buildQueryWithAggregations

        protected org.infinispan.query.dsl.impl.BaseQuery<?> buildQueryWithAggregations​(org.infinispan.query.dsl.QueryFactory queryFactory,
                                                                                        String queryString,
                                                                                        Map<String,​Object> namedParameters,
                                                                                        long startOffset,
                                                                                        int maxResults,
                                                                                        org.infinispan.objectfilter.impl.syntax.parser.IckleParsingResult<TypeMetadata> parsingResult,
                                                                                        boolean local)
        Overrides:
        buildQueryWithAggregations in class org.infinispan.query.core.impl.QueryEngine<TypeMetadata>
      • buildQueryNoAggregations

        protected org.infinispan.query.dsl.impl.BaseQuery<?> buildQueryNoAggregations​(org.infinispan.query.dsl.QueryFactory queryFactory,
                                                                                      String queryString,
                                                                                      Map<String,​Object> namedParameters,
                                                                                      long startOffset,
                                                                                      int maxResults,
                                                                                      org.infinispan.objectfilter.impl.syntax.parser.IckleParsingResult<TypeMetadata> parsingResult,
                                                                                      boolean local)
        Overrides:
        buildQueryNoAggregations in class org.infinispan.query.core.impl.QueryEngine<TypeMetadata>
      • makeProjectionProcessor

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

        public <E> IndexedQuery<E> buildLuceneQuery​(org.infinispan.objectfilter.impl.syntax.parser.IckleParsingResult<TypeMetadata> parsingResult,
                                                    Map<String,​Object> namedParameters,
                                                    long startOffset,
                                                    int maxResults,
                                                    boolean local)
      • parse

        public org.infinispan.objectfilter.impl.syntax.parser.IckleParsingResult<TypeMetadata> parse​(String queryString)
        Overrides:
        parse in class org.infinispan.query.core.impl.QueryEngine<TypeMetadata>
      • getTargetedClass

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

        protected String getTargetedNamedType​(org.infinispan.objectfilter.impl.syntax.parser.IckleParsingResult<?> parsingResult)
      • getQueryEngineProvider

        protected org.infinispan.util.function.SerializableFunction<org.infinispan.AdvancedCache<?,​?>,​QueryEngine<?>> getQueryEngineProvider()