public final class Join extends AbstractExpression
join ::= join_spec join_association_path_expression [AS] identification_variable
COMMA, DOT, DOUBLE_QUOTE, LEFT_CURLY_BRACKET, LEFT_PARENTHESIS, NOT_DEFINED, RIGHT_CURLY_BRACKET, RIGHT_PARENTHESIS, SINGLE_QUOTE, SPACE, UNDERSCORE
ABS, ALL, AND, ANY, AS, ASC, AVG, BETWEEN, BIT_LENGTH, BOTH, CASE, CHAR_LENGTH, CHARACTER_LENGTH, CLASS, COALESCE, CONCAT, COUNT, CURRENT_DATE, CURRENT_TIME, CURRENT_TIMESTAMP, DELETE, DELETE_FROM, DESC, DIFFERENT, DISTINCT, DIVISION, ELSE, EMPTY, END, ENTRY, EQUAL, ESCAPE, EXISTS, FALSE, FETCH, FROM, FUNC, GREATER_THAN, GREATER_THAN_OR_EQUAL, GROUP_BY, HAVING, IN, INDEX, INNER, INNER_JOIN, INNER_JOIN_FETCH, IS, IS_EMPTY, IS_NOT_EMPTY, IS_NOT_NULL, IS_NULL, JOIN, JOIN_FETCH, KEY, LEADING, LEFT, LEFT_JOIN, LEFT_JOIN_FETCH, LEFT_OUTER_JOIN, LEFT_OUTER_JOIN_FETCH, LENGTH, LIKE, LOCATE, LOWER, LOWER_THAN, LOWER_THAN_OR_EQUAL, MAX, MEMBER, MEMBER_OF, MIN, MINUS, MOD, MULTIPLICATION, NAMED_PARAMETER, NEW, NOT, NOT_BETWEEN, NOT_EXISTS, NOT_IN, NOT_LIKE, NOT_MEMBER, NOT_MEMBER_OF, NULL, NULLIF, OBJECT, OF, OR, ORDER_BY, OUTER, PLUS, POSITION, POSITIONAL_PARAMETER, QUOTE, SELECT, SET, SIZE, SOME, SQRT, SUBSTRING, SUM, THEN, TRAILING, TREAT, TRIM, TRUE, TYPE, UNKNOWN, UPDATE, UPPER, VALUE, WHEN, WHERE
Modifier and Type | Method and Description |
---|---|
void |
accept(ExpressionVisitor visitor)
Visits this
Expression by the given visitor . |
void |
acceptChildren(ExpressionVisitor visitor)
Visits the children of this
Expression . |
Expression |
getIdentificationVariable()
Returns the
Expression that represents the identification variable. |
String |
getIdentifier()
Returns the identifier this expression represents.
|
Expression |
getJoinAssociationPath()
Returns the
Expression that represents the join association path expression. |
JPQLQueryBNF |
getQueryBNF()
Returns the BNF of this
Expression . |
boolean |
hasAs()
Determines whether the identifier AS was parsed.
|
boolean |
hasIdentificationVariable()
Determines whether the identification variable was parsed.
|
boolean |
hasJoinAssociationPath()
Determines whether the join association path expression was parsed.
|
boolean |
hasSpaceAfterAs()
Determines whether a whitespace was parsed after AS.
|
boolean |
hasSpaceAfterJoin()
Determines whether a whitespace was parsed after JOIN.
|
boolean |
hasSpaceAfterJoinAssociation()
Determines whether a whitespace was parsed after the join association path expression.
|
boolean |
isLeftJoin()
Determines whether this
Join is a left join, i.e. |
children, findQueryBNF, getChildren, getParent, getRoot, identifierRole, identifiers, identifierVersion, isAncestor, isIdentifier, isVirtual, orderedChildren, queryBNF, toActualText, toParsedText, toString
public void accept(ExpressionVisitor visitor)
Expression
by the given visitor
.visitor
- The visitor
to visit this objectpublic void acceptChildren(ExpressionVisitor visitor)
Expression
. This method can be used to optimize traversing
the children since a new list is not created every time Expression.children()
or Expression.getChildren()
is called.
This does not traverse the Expression
sub-hierarchy, use an subclass of
AbstractTraverseChildrenVisitor
in order to traverse the entire sub-hierarchy.
visitor
- The visitor
to visit the children of this object.public Expression getIdentificationVariable()
Expression
that represents the identification variable.public String getIdentifier()
public Expression getJoinAssociationPath()
Expression
that represents the join association path expression.public JPQLQueryBNF getQueryBNF()
Expression
.getQueryBNF
in class AbstractExpression
JPQLQueryBNF
, which represents the grammar of this Expression
public boolean hasAs()
true
if the identifier AS was parsed; false
otherwisepublic boolean hasIdentificationVariable()
true
if the identification variable was parsed; false
otherwisepublic boolean hasJoinAssociationPath()
true
if the join association path expression was parsed; false
otherwisepublic boolean hasSpaceAfterAs()
true
if there was a whitespace after AS; false
otherwisepublic boolean hasSpaceAfterJoin()
true
if there was a whitespace after JOIN; false
otherwisepublic boolean hasSpaceAfterJoinAssociation()
true
if there was a whitespace after join association path expression;
false
otherwisepublic boolean isLeftJoin()
Join
is a left join, i.e. Expression.LEFT_JOIN
or
Expression.LEFT_OUTER_JOIN
.true
if this Join
expression is a Expression.LEFT_JOIN
or
Expression.LEFT_OUTER_JOIN
; false
otherwiseEclipseLink 2.3.2, "build v20111125-r10461" API Reference