Class JPQLInMemoryEvaluator

    • Constructor Detail

      • JPQLInMemoryEvaluator

        public JPQLInMemoryEvaluator​(Query query,
                                     Collection candidates,
                                     QueryCompilation compilation,
                                     Map parameterValues,
                                     ClassLoaderResolver clr)
        Constructor.
        Parameters:
        query - The underlying JPQL query
        candidates - List of objects as input to the evaluation process
        compilation - Compiled query
        parameterValues - Input parameter values
        clr - ClassLoader resolver
    • Method Detail

      • evaluateSubquery

        protected Collection evaluateSubquery​(Query query,
                                              QueryCompilation compilation,
                                              Collection candidates,
                                              Object outerCandidate)
        Method to evaluate a subquery of the query being evaluated.
        Specified by:
        evaluateSubquery in class JavaQueryInMemoryEvaluator
        Parameters:
        query - The subquery
        compilation - The subquery compilation
        candidates - The candidates for the subquery
        outerCandidate - Current candidate in the outer query (for use when linking back)
        Returns:
        The result
      • execute

        public Collection execute​(boolean applyFilter,
                                  boolean applyOrdering,
                                  boolean applyResult,
                                  boolean applyResultClass,
                                  boolean applyRange)
        Description copied from class: JavaQueryInMemoryEvaluator
        Method to perform the evaluation, applying the query restrictions that are required.
        Overrides:
        execute in class JavaQueryInMemoryEvaluator
        Parameters:
        applyFilter - Whether to apply any filter constraints on the results
        applyOrdering - Whether to apply any order constraints on the results
        applyResult - Whether to apply any result/grouping/having on the results
        applyResultClass - Whether to apply any resultClass constraint on the results
        applyRange - Whether to apply any range constraint on the results
        Returns:
        The results after evaluation.