Interface QueryProvider

  • All Known Implementing Classes:
    QueryProviderImpl


    public interface QueryProvider
    Defines methods to create and execute queries that are described by a Queryable object.

    Analogous to LINQ's System.Linq.QueryProvider.

    • Method Detail

      • createQuery

        <T> Queryable<T> createQuery​(Expression expression,
                                     Class<T> rowType)
        Constructs a Queryable object that can evaluate the query represented by a specified expression tree.

        NOTE: The RawQueryable.getExpression() property of the returned Queryable object is equal to expression.

        Type Parameters:
        T - Row type
        Parameters:
        expression - Expression
        rowType - Row type
        Returns:
        Queryable
      • createQuery

        <T> Queryable<T> createQuery​(Expression expression,
                                     Type rowType)
        Constructs a Queryable object that can evaluate the query represented by a specified expression tree. The row type may contain generic information.
        Type Parameters:
        T - Row type
        Parameters:
        expression - Expression
        rowType - Row type
        Returns:
        Queryable
      • execute

        <T> T execute​(Expression expression,
                      Class<T> type)
        Executes the query represented by a specified expression tree.

        This method executes queries that return a single value (instead of an enumerable sequence of values). Expression trees that represent queries that return enumerable results are executed when the Queryable object that contains the expression tree is enumerated.

        The Queryable standard query operator methods that return singleton results call execute. They pass it a MethodCallExpression that represents a linq4j query.

      • execute

        <T> T execute​(Expression expression,
                      Type type)
        Executes the query represented by a specified expression tree. The row type may contain type parameters.
      • executeQuery

        <T> Enumerator<T> executeQuery​(Queryable<T> queryable)
        Executes a queryable, and returns an enumerator over the rows that it yields.
        Parameters:
        queryable - Queryable
        Returns:
        Enumerator over rows