org.datanucleus.query.expression
Class JoinExpression

java.lang.Object
  extended by org.datanucleus.query.expression.Expression
      extended by org.datanucleus.query.expression.JoinExpression

public class JoinExpression
extends Expression

Expression representing a join between a candidate class, and the class of a field of the first class. An example is in JPQL where we have a "from" clause like

SELECT ... FROM Product p JOIN p.reviews r
so the join between "Product p" and "Review r" using "p.reviews". Can have a JoinExpression to its right.


Nested Class Summary
 
Nested classes/interfaces inherited from class org.datanucleus.query.expression.Expression
Expression.DyadicOperator, Expression.MonadicOperator, Expression.Operator
 
Field Summary
static int JOIN_INNER
           
static int JOIN_INNER_FETCH
           
static int JOIN_OUTER
           
static int JOIN_OUTER_FETCH
           
 
Fields inherited from class org.datanucleus.query.expression.Expression
left, LOCALISER, lowestOperator, op, OP_ADD, OP_AND, OP_BETWEEN, OP_COM, OP_CONCAT, OP_DISTINCT, OP_DIV, OP_EQ, OP_GT, OP_GTEQ, OP_IN, OP_IS, OP_ISNOT, OP_LIKE, OP_LT, OP_LTEQ, OP_MOD, OP_MUL, OP_NEG, OP_NOT, OP_NOTEQ, OP_OR, OP_SUB, right, symbol
 
Constructor Summary
JoinExpression(SymbolTable symtbl, PrimaryExpression expr, java.lang.String alias, int type)
           
 
Method Summary
 Symbol bind()
           
 java.lang.Object evaluate(ExpressionEvaluator eval)
           
 java.lang.String getAlias()
           
 PrimaryExpression getPrimaryExpression()
           
 int getType()
           
 void setJoinExpression(JoinExpression expr)
           
 
Methods inherited from class org.datanucleus.query.expression.Expression
getLeft, getOperator, getRight, getSymbol
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

JOIN_INNER

public static final int JOIN_INNER
See Also:
Constant Field Values

JOIN_OUTER

public static final int JOIN_OUTER
See Also:
Constant Field Values

JOIN_INNER_FETCH

public static final int JOIN_INNER_FETCH
See Also:
Constant Field Values

JOIN_OUTER_FETCH

public static final int JOIN_OUTER_FETCH
See Also:
Constant Field Values
Constructor Detail

JoinExpression

public JoinExpression(SymbolTable symtbl,
                      PrimaryExpression expr,
                      java.lang.String alias,
                      int type)
Method Detail

evaluate

public java.lang.Object evaluate(ExpressionEvaluator eval)
Specified by:
evaluate in class Expression

setJoinExpression

public void setJoinExpression(JoinExpression expr)

getPrimaryExpression

public PrimaryExpression getPrimaryExpression()

getAlias

public java.lang.String getAlias()

getType

public int getType()

bind

public Symbol bind()
Specified by:
bind in class Expression


Copyright © 2009. All Rights Reserved.