org.qi4j.api.dataset

## Interface Query<T>

- All Known Implementing Classes:
    IterableQuery

      public interface Query<T>

  TODO

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Interface and Description
    --- | ---
    `static class` | `Query.Order`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `long` | `count()`
    `<ThrowableType extends Throwable> boolean` | `execute(Visitor<T,ThrowableType> resultVisitor)`
    `Query` | `filter(Specification<T> filter)`
    `T` | `first()`
    `Object` | `getVariable(String name)`
    `Query` | `limit(int maxNrOfResults)`
    `Query` | `orderBy(Property<?> property, Query.Order order)`
    `Query<T>` | `setVariable(String name, Object value)`
    `T` | `single()`
    `Query` | `skip(int skipNrOfResults)`
    `Iterable<T>` | `toIterable()`

- - ### Method Detail

    - #### filter

          Query filter(Specification<T> filter)

    - #### orderBy

          Query orderBy(Property<?> property,
                      Query.Order order)

    - #### skip

          Query skip(int skipNrOfResults)

    - #### limit

          Query limit(int maxNrOfResults)

    - #### setVariable

          Query<T> setVariable(String name,
                             Object value)

    - #### getVariable

          Object getVariable(String name)

    - #### count

          long count()
                     throws QueryExecutionException

      Throws:
        `QueryExecutionException`

    - #### first

          T first()
                  throws QueryExecutionException

      Throws:
        `QueryExecutionException`

    - #### single

          T single()
                   throws QueryException

      Throws:
        `QueryException`

    - #### execute

          <ThrowableType extends Throwable> boolean execute(Visitor<T,ThrowableType> resultVisitor)
                          throws ThrowableType extends Throwable,
                                 QueryExecutionException

      Throws:
        `ThrowableType extends Throwable`
        `QueryExecutionException`

    - #### toIterable

          Iterable<T> toIterable()
                                 throws QueryExecutionException

      Throws:
        `QueryExecutionException`