Class ManyWhereJoins

java.lang.Object
io.ebeaninternal.api.ManyWhereJoins
All Implemented Interfaces:
Serializable

public final class ManyWhereJoins extends Object implements Serializable
Holds the joins needs to support the many where predicates. These joins are independent of any 'fetch' joins on the many.
See Also:
  • Constructor Details

    • ManyWhereJoins

      public ManyWhereJoins()
  • Method Details

    • isRequireOuterJoins

      public boolean isRequireOuterJoins()
      Return the current 'mode' indicating if outer joins are currently required or not.
    • setRequireOuterJoins

      public void setRequireOuterJoins(boolean requireOuterJoins)
      Set the 'mode' to be that joins added are required to be outer joins. This is set during the evaluation of disjunction predicates.
    • add

      public void add(ElPropertyDeploy elProp)
      Add a many where join.
    • requireSqlDistinct

      public boolean requireSqlDistinct()
      Return true if this is an aggregation query or if there are no extra many where joins.
    • propertyJoins

      public Collection<PropertyJoin> propertyJoins()
      Return the set of many where joins.
    • propertyNames

      public TreeSet<String> propertyNames()
      Return the set of property names for the many where joins.
    • addFormulaWithJoin

      public void addFormulaWithJoin(String prefix, String name)
      In findCount query found a formula property with a join clause so building a select clause specifically for the findCount query.
    • isFormulaWithJoin

      public boolean isFormulaWithJoin(String prefix)
      Return true if the query select includes a formula with join.
    • formulaJoinProperties

      public List<String> formulaJoinProperties(String prefix)
      Return the formula properties to build the select clause for a findCount query.
    • setAggregation

      public void setAggregation()
      Mark this as part of an aggregation query (so using group by clause).
    • addAggregationJoin

      public void addAggregationJoin(String property)
      Ensure we have the join required to support the aggregation properties.