Class OrmQueryProperties

java.lang.Object
io.ebeaninternal.server.querydefn.OrmQueryProperties
All Implemented Interfaces:
Serializable

public final class OrmQueryProperties extends Object implements Serializable
Represents the Properties of an Object Relational query.
See Also:
  • Constructor Details

    • OrmQueryProperties

      public OrmQueryProperties()
      Construct for root so path (and parentPath) are null.
    • OrmQueryProperties

      public OrmQueryProperties(String path)
      Construct with a given path.
    • OrmQueryProperties

      public OrmQueryProperties(String path, String rawProperties)
    • OrmQueryProperties

      public OrmQueryProperties(String path, String rawProperties, FetchConfig fetchConfig)
    • OrmQueryProperties

      public OrmQueryProperties(String path, Set<String> included)
  • Method Details

    • copy

      public OrmQueryProperties copy()
      Creates a copy of the OrmQueryProperties.
    • copy

      public OrmQueryProperties copy(FetchConfig fetchConfig)
      Create a copy with the given fetch config.
    • getFetchConfig

      public FetchConfig getFetchConfig()
    • filterMany

      public <T> SpiExpressionList<T> filterMany(Query<T> rootQuery)
      Return the expressions used to filter on this path. This should be a many path to use this method.
    • filterManyInline

      public void filterManyInline()
      Adjust filterMany expressions for inclusion in main query.
    • prepareExpressions

      public void prepareExpressions(BeanQueryRequest<?> request)
      Prepare filterMany expressions for query plan key.
    • getFilterMany

      public SpiExpressionList<?> getFilterMany()
      Return the filterMany expression list (can be null).
    • setFilterMany

      public void setFilterMany(SpiExpressionList<?> filterMany)
      Set the filterMany expression list.
    • configureBeanQuery

      public void configureBeanQuery(SpiQuery<?> query)
      Define the select and joins for this query.
    • hasSelectClause

      public boolean hasSelectClause()
    • asStringDebug

      public void asStringDebug(String prefix, StringBuilder sb)
    • add

      public void add(OrmQueryProperties child)
      For secondary queries add a child element.
    • allProperties

      public boolean allProperties()
      Return true if this includes all properties on the path.
    • isIncludedBeanJoin

      public boolean isIncludedBeanJoin(String propertyName)
      Return true if this property is included as a bean join.

      If a property is included as a bean join then it should not be included as a reference/proxy to avoid duplication.

    • getSelectQueryJoin

      public Set<String> getSelectQueryJoin()
    • getIncluded

      public Set<String> getIncluded()
      Return the property set.
    • isQueryFetch

      public boolean isQueryFetch()
      Return true if this path is a 'query join'.
    • getBatchSize

      public int getBatchSize()
    • isCache

      public boolean isCache()
      Return true if this path should hit the L2 cache.
    • getPath

      public String getPath()
      Return the path relative to the root of the graph.
    • queryPlanHash

      public void queryPlanHash(StringBuilder builder)
      Calculate the query plan hash.