java.lang.Object
org.eclipse.persistence.jpa.jpql.tools.resolver.Declaration
org.eclipse.persistence.jpa.jpql.tools.resolver.AbstractRangeDeclaration
All Implemented Interfaces:
JPQLQueryDeclaration
Direct Known Subclasses:
DerivedDeclaration, RangeDeclaration

public abstract class AbstractRangeDeclaration extends Declaration
The abstract definition of a range declaration, which is used to navigate to a "root" object.
Since:
2.5
Version:
2.5
See Also:
  • Field Details

    • joins

      protected List<Join> joins
      The list of JOIN expressions that are declared in the same declaration than the range variable declaration represented by this declaration.
  • Constructor Details

    • AbstractRangeDeclaration

      public AbstractRangeDeclaration()
      Creates a new AbstractRangeDeclaration.
  • Method Details

    • addJoin

      protected void addJoin(Join join)
      Adds the given Join.
      Parameters:
      join - The Join that is declared in the range variable declaration
    • getJoins

      public List<Join> getJoins()
      Description copied from interface: JPQLQueryDeclaration
      Returns the JOIN expressions defined with this declaration, if supported. The list contains the JOIN expressions in ordered they were declared.
      Specified by:
      getJoins in interface JPQLQueryDeclaration
      Overrides:
      getJoins in class Declaration
      Returns:
      The JOIN expressions defined with this declaration or an empty list if this declaration does not support it
    • hasJoins

      public boolean hasJoins()
      Description copied from interface: JPQLQueryDeclaration
      Determines whether the declaration contains JOIN expressions. This can be true only when JPQLQueryDeclaration.Type.isRange() returns true. A collection member declaration does not have JOIN expressions.
      Specified by:
      hasJoins in interface JPQLQueryDeclaration
      Overrides:
      hasJoins in class Declaration
      Returns:
      true if at least one JOIN expression was parsed; otherwise false