Interface BeanQueryAdapter


public interface BeanQueryAdapter
Objects extending this modify queries prior their execution.

This can be used to add expressions to a query - for example to enable partitioning based on the user executing the query.

A BeanQueryAdapter is either found automatically via class path search or can be added programmatically via DatabaseConfig.add(BeanQueryAdapter).

Note that a BeanQueryAdapter should be thread safe (stateless) and if registered automatically via class path search it needs to have a default constructor.

  • Method Summary

    Modifier and Type Method Description
    int getExecutionOrder()
    Returns an int to to control the order in which BeanQueryAdapter are executed when there is multiple of them registered for a given entity type (class).
    boolean isRegisterFor​(Class<?> cls)
    Return true if this adapter is interested in queries for the given entity type.
    void preQuery​(BeanQueryRequest<?> request)
    Modify the associated query prior to it being executed.
  • Method Details

    • isRegisterFor

      boolean isRegisterFor​(Class<?> cls)
      Return true if this adapter is interested in queries for the given entity type.
    • getExecutionOrder

      Returns an int to to control the order in which BeanQueryAdapter are executed when there is multiple of them registered for a given entity type (class).
    • preQuery

      void preQuery​(BeanQueryRequest<?> request)
      Modify the associated query prior to it being executed.