Class Param
- java.lang.Object
-
- org.apache.openjpa.jdbc.kernel.exps.Param
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
Param.ParamExpState
Expression state.
-
Field Summary
Fields Modifier and Type Field Description protected static java.lang.String
FALSE
protected static java.lang.String
TRUE
-
Fields inherited from interface org.apache.openjpa.jdbc.kernel.exps.Val
ABS_VAL, ARGS_VAL, CMP_EQUAL, COALESCE_VAL, CONCAT_VAL, FORCE_OUTER, GENERALCASE_VAL, INDEXOF_VAL, JOIN_REL, LENGTH_VAL, LOCATE_VAL, LOWER_VAL, MATH_VAL, NULL_CMP, NULLIF_VAL, SIMPLECASE_VAL, SQRT_VAL, SUBSTRING_VAL, TRIM_VAL, UPPER_VAL, VAL, WHENCONDITION_VAL, WHENSCALAR_VAL
-
-
Constructor Summary
Constructors Constructor Description Param(java.lang.Object key, java.lang.Class type)
Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
acceptVisit(ExpressionVisitor visitor)
Accept a visit from a tree visitor.void
appendIndex(Select sel, ExpContext ctx, ExpState state, SQLBuffer sql)
Append the SQL checking the index of this value.void
appendIsEmpty(Select sel, ExpContext ctx, ExpState state, SQLBuffer sql)
Append the SQL testing whether this value is empty to the given buffer.void
appendIsNotEmpty(Select sel, ExpContext ctx, ExpState state, SQLBuffer sql)
Append the SQL testing whether this value is not empty to the given buffer.void
appendIsNotNull(Select sel, ExpContext ctx, ExpState state, SQLBuffer sql)
Append the SQL testing whether this value is not null to the given buffer.void
appendIsNull(Select sel, ExpContext ctx, ExpState state, SQLBuffer sql)
Append the SQL testing whether this value is null to the given buffer.void
appendSize(Select sel, ExpContext ctx, ExpState state, SQLBuffer sql)
Append the SQL checking the size of this value.void
appendTo(Select sel, ExpContext ctx, ExpState state, SQLBuffer sql, int index)
Append theindex
th SQL element to the given buffer.void
appendType(Select sel, ExpContext ctx, ExpState state, SQLBuffer sql)
Append the SQL checking the type of this value.void
calculateValue(Select sel, ExpContext ctx, ExpState state, Val other, ExpState otherState)
Calculate and cache the SQL for this value.java.lang.String
getAlias()
Return select item aliasint
getId()
int
getIndex()
ClassMetaData
getMetaData()
Return any associated persistent type.java.lang.String
getName()
java.lang.Object
getParameterKey()
Returns the key of the parameter.Path
getPath()
Value
getSelectAs()
Return 'this' concrete class if alias is set, otherwise nulljava.lang.Object
getSQLValue(Select sel, ExpContext ctx, ExpState state)
Return the SQL value of this constant.java.lang.Class
getType()
Return the expected type for this value, orObject
if the type is unknown.java.lang.Object
getValue(java.lang.Object[] params)
Return the value for this constant given the specified parameters.java.lang.Object
getValue(ExpContext ctx, ExpState state)
Return the value of this constant.ClassMapping
getValueMetaData(ExpContext ctx)
void
groupBy(Select sel, ExpContext ctx, ExpState state)
Group by this value.ExpState
initialize(Select sel, ExpContext ctx, int flags)
Initialize the value.boolean
isAggregate()
Return true if this value is an aggregate.boolean
isSQLValueNull(Select sel, ExpContext ctx, ExpState state)
Return true if this constant's SQL value is equivalent to NULL.boolean
isVariable()
Return true if this value is a variable.boolean
isXPath()
Return true if this value is an XML Path.int
length(Select sel, ExpContext ctx, ExpState state)
Return the number of SQL elements in this value.java.lang.Object
load(ExpContext ctx, ExpState state, Result res)
Load the data for this value.void
orderBy(Select sel, ExpContext ctx, ExpState state, boolean asc)
Order by this value.void
select(Select sel, ExpContext ctx, ExpState state, boolean pks)
Select the data for this value.void
selectColumns(Select sel, ExpContext ctx, ExpState state, boolean pks)
Select just the columns for this value.void
setAlias(java.lang.String alias)
Set select item aliasvoid
setImplicitType(java.lang.Class type)
Set the implicit type of the value, based on how it is used in the filter.void
setIndex(int idx)
Set the index of this parameter.void
setMetaData(ClassMetaData meta)
Associate a persistent type with this value.java.lang.Object
toDataStoreValue(Select sel, ExpContext ctx, ExpState state, java.lang.Object val)
Return the datastore value of the given object in the context of this value.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.openjpa.kernel.exps.Value
acceptVisit, getAlias, getMetaData, getName, getPath, isAggregate, isVariable, isXPath, setAlias, setMetaData
-
-
-
-
Field Detail
-
TRUE
protected static final java.lang.String TRUE
- See Also:
- Constant Field Values
-
FALSE
protected static final java.lang.String FALSE
- See Also:
- Constant Field Values
-
-
Method Detail
-
getParameterKey
public java.lang.Object getParameterKey()
Description copied from interface:Parameter
Returns the key of the parameter.- Specified by:
getParameterKey
in interfaceParameter
-
getType
public java.lang.Class getType()
Description copied from interface:Value
Return the expected type for this value, orObject
if the type is unknown.
-
setImplicitType
public void setImplicitType(java.lang.Class type)
Description copied from interface:Value
Set the implicit type of the value, based on how it is used in the filter. This method is only called on values who returnObject
fromValue.getType()
.- Specified by:
setImplicitType
in interfaceValue
-
getIndex
public int getIndex()
-
setIndex
public void setIndex(int idx)
Description copied from interface:Parameter
Set the index of this parameter.
-
getValueMetaData
public ClassMapping getValueMetaData(ExpContext ctx)
-
getValue
public java.lang.Object getValue(java.lang.Object[] params)
Description copied from interface:Constant
Return the value for this constant given the specified parameters.
-
getValue
public java.lang.Object getValue(ExpContext ctx, ExpState state)
Return the value of this constant. May be more robust than the parameters-only form.
-
getSQLValue
public java.lang.Object getSQLValue(Select sel, ExpContext ctx, ExpState state)
Return the SQL value of this constant.
-
initialize
public ExpState initialize(Select sel, ExpContext ctx, int flags)
Description copied from interface:Val
Initialize the value. This method should recursively initialize any sub-values.- Specified by:
initialize
in interfaceVal
-
calculateValue
public void calculateValue(Select sel, ExpContext ctx, ExpState state, Val other, ExpState otherState)
Description copied from interface:Val
Calculate and cache the SQL for this value. This method is called beforelength
or anyappend
methods.- Specified by:
calculateValue
in interfaceVal
other
- the value being compared to, or null if not a comparison
-
appendTo
public void appendTo(Select sel, ExpContext ctx, ExpState state, SQLBuffer sql, int index)
Description copied from interface:Val
Append theindex
th SQL element to the given buffer.
-
length
public int length(Select sel, ExpContext ctx, ExpState state)
Description copied from interface:Val
Return the number of SQL elements in this value.
-
getMetaData
public ClassMetaData getMetaData()
Description copied from interface:Value
Return any associated persistent type.- Specified by:
getMetaData
in interfaceValue
-
setMetaData
public void setMetaData(ClassMetaData meta)
Description copied from interface:Value
Associate a persistent type with this value.- Specified by:
setMetaData
in interfaceValue
-
isSQLValueNull
public boolean isSQLValueNull(Select sel, ExpContext ctx, ExpState state)
Return true if this constant's SQL value is equivalent to NULL.
-
select
public void select(Select sel, ExpContext ctx, ExpState state, boolean pks)
Description copied from interface:Val
Select the data for this value.
-
selectColumns
public void selectColumns(Select sel, ExpContext ctx, ExpState state, boolean pks)
Description copied from interface:Val
Select just the columns for this value.- Specified by:
selectColumns
in interfaceVal
-
groupBy
public void groupBy(Select sel, ExpContext ctx, ExpState state)
Description copied from interface:Val
Group by this value.
-
orderBy
public void orderBy(Select sel, ExpContext ctx, ExpState state, boolean asc)
Description copied from interface:Val
Order by this value.
-
load
public java.lang.Object load(ExpContext ctx, ExpState state, Result res) throws java.sql.SQLException
Description copied from interface:Val
Load the data for this value.
-
appendIsEmpty
public void appendIsEmpty(Select sel, ExpContext ctx, ExpState state, SQLBuffer sql)
Description copied from interface:Val
Append the SQL testing whether this value is empty to the given buffer.- Specified by:
appendIsEmpty
in interfaceVal
-
appendIsNotEmpty
public void appendIsNotEmpty(Select sel, ExpContext ctx, ExpState state, SQLBuffer sql)
Description copied from interface:Val
Append the SQL testing whether this value is not empty to the given buffer.- Specified by:
appendIsNotEmpty
in interfaceVal
-
appendSize
public void appendSize(Select sel, ExpContext ctx, ExpState state, SQLBuffer sql)
Description copied from interface:Val
Append the SQL checking the size of this value.- Specified by:
appendSize
in interfaceVal
-
appendIsNull
public void appendIsNull(Select sel, ExpContext ctx, ExpState state, SQLBuffer sql)
Description copied from interface:Val
Append the SQL testing whether this value is null to the given buffer.- Specified by:
appendIsNull
in interfaceVal
-
appendIsNotNull
public void appendIsNotNull(Select sel, ExpContext ctx, ExpState state, SQLBuffer sql)
Description copied from interface:Val
Append the SQL testing whether this value is not null to the given buffer.- Specified by:
appendIsNotNull
in interfaceVal
-
isVariable
public boolean isVariable()
Description copied from interface:Value
Return true if this value is a variable.- Specified by:
isVariable
in interfaceValue
-
isAggregate
public boolean isAggregate()
Description copied from interface:Value
Return true if this value is an aggregate.- Specified by:
isAggregate
in interfaceValue
-
isXPath
public boolean isXPath()
Description copied from interface:Value
Return true if this value is an XML Path.
-
toDataStoreValue
public java.lang.Object toDataStoreValue(Select sel, ExpContext ctx, ExpState state, java.lang.Object val)
Description copied from interface:Val
Return the datastore value of the given object in the context of this value.- Specified by:
toDataStoreValue
in interfaceVal
-
appendIndex
public void appendIndex(Select sel, ExpContext ctx, ExpState state, SQLBuffer sql)
Description copied from interface:Val
Append the SQL checking the index of this value.- Specified by:
appendIndex
in interfaceVal
-
appendType
public void appendType(Select sel, ExpContext ctx, ExpState state, SQLBuffer sql)
Description copied from interface:Val
Append the SQL checking the type of this value.- Specified by:
appendType
in interfaceVal
-
acceptVisit
public void acceptVisit(ExpressionVisitor visitor)
Description copied from interface:Value
Accept a visit from a tree visitor.- Specified by:
acceptVisit
in interfaceValue
-
getAlias
public java.lang.String getAlias()
Description copied from interface:Value
Return select item alias
-
setAlias
public void setAlias(java.lang.String alias)
Description copied from interface:Value
Set select item alias
-
getSelectAs
public Value getSelectAs()
Description copied from interface:Value
Return 'this' concrete class if alias is set, otherwise null- Specified by:
getSelectAs
in interfaceVal
- Specified by:
getSelectAs
in interfaceValue
-
-