org.apache.openjpa.jdbc.kernel.exps
Class InExpression

java.lang.Object
  extended by org.apache.openjpa.jdbc.kernel.exps.InExpression
All Implemented Interfaces:
Serializable, Exp, Expression
Direct Known Subclasses:
InKeyExpression, InValueExpression

 class InExpression
extends Object
implements Exp

Tests whether a value is IN a collection.

Author:
Abe White

Constructor Summary
InExpression(Val val, Const constant)
          Constructor.
 
Method Summary
 void acceptVisit(ExpressionVisitor visitor)
          Accept a visit from a tree visitor.
 void appendTo(Select sel, ExpContext ctx, ExpState state, SQLBuffer buf)
          Append the SQL for this expression to the given buffer.
protected  Collection getCollection(ExpContext ctx, ExpState state)
          Return the collection to test for containment with.
 Const getConstant()
          Constant collection.
 Val getValue()
          Contained value.
 ExpState initialize(Select sel, ExpContext ctx, Map contains)
          Initialize the expression.
 void selectColumns(Select sel, ExpContext ctx, ExpState state, boolean pks)
          Select just the columns for this expression.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

InExpression

public InExpression(Val val,
                    Const constant)
Constructor. Supply the value to test and the constant to obtain the parameters from.

Method Detail

getConstant

public Const getConstant()
Constant collection.


getValue

public Val getValue()
Contained value.


initialize

public ExpState initialize(Select sel,
                           ExpContext ctx,
                           Map contains)
Description copied from interface: Exp
Initialize the expression. This method should recursively initialize any sub-expressions or values.

Specified by:
initialize in interface Exp
contains - map of relation paths to the number of times the paths appear in a contains() expression; used to ensure paths used for contains() within the same AND expression used different aliases

appendTo

public void appendTo(Select sel,
                     ExpContext ctx,
                     ExpState state,
                     SQLBuffer buf)
Description copied from interface: Exp
Append the SQL for this expression to the given buffer. The SQL should optionally include any joins this expression needs.

Specified by:
appendTo in interface Exp

selectColumns

public void selectColumns(Select sel,
                          ExpContext ctx,
                          ExpState state,
                          boolean pks)
Description copied from interface: Exp
Select just the columns for this expression.

Specified by:
selectColumns in interface Exp

getCollection

protected Collection getCollection(ExpContext ctx,
                                   ExpState state)
Return the collection to test for containment with.


acceptVisit

public void acceptVisit(ExpressionVisitor visitor)
Description copied from interface: Expression
Accept a visit from a tree visitor.

Specified by:
acceptVisit in interface Expression


Copyright © 2006-2010 Apache Software Foundation. All Rights Reserved.