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

      All Methods Instance Methods Abstract Methods 
      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 Detail

      • isRegisterFor

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

        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).