public class CoalesceExpression extends Object
Modifier and Type | Field and Description |
---|---|
protected static String |
FALSE |
protected static String |
TRUE |
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 and Description |
---|
CoalesceExpression(Val[] vals)
Constructor.
|
Modifier and Type | Method and 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 buf,
int index)
Append the
index 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.
|
String |
getAlias()
Return select item alias
|
int |
getId() |
ClassMetaData |
getMetaData()
Return any associated persistent type.
|
String |
getName() |
Value |
getOtherPath() |
ExpState |
getOtherState() |
Path |
getPath() |
Value |
getSelectAs()
Return 'this' concrete class if alias is set, otherwise null
|
Class |
getType()
Return the expected type for this value, or
Object if
the type is unknown. |
Val[] |
getVal() |
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 |
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.
|
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(String alias)
Set select item alias
|
void |
setImplicitType(Class type)
Set the implicit type of the value, based on how it is used in the
filter.
|
void |
setMetaData(ClassMetaData meta)
Associate a persistent type with this value.
|
void |
setOtherPath(Value other) |
void |
setOtherState(ExpState otherState) |
Object |
toDataStoreValue(Select sel,
ExpContext ctx,
ExpState state,
Object val)
Return the datastore value of the given object in the context of this
value.
|
protected static final String TRUE
protected static final String FALSE
public CoalesceExpression(Val[] vals)
public Val[] getVal()
public Class getType()
Value
Object
if
the type is unknown.public ExpState initialize(Select sel, ExpContext ctx, int flags)
Val
public void appendTo(Select sel, ExpContext ctx, ExpState state, SQLBuffer buf, int index)
Val
index
th SQL element to the given buffer.public void selectColumns(Select sel, ExpContext ctx, ExpState state, boolean pks)
Val
public void acceptVisit(ExpressionVisitor visitor)
Value
acceptVisit
in interface Value
public void calculateValue(Select sel, ExpContext ctx, ExpState state, Val other, ExpState otherState)
Val
length
or any append
methods.other
- the value being compared to, or null if not a comparisonpublic void groupBy(Select sel, ExpContext ctx, ExpState state)
Val
public int length(Select sel, ExpContext ctx, ExpState state)
Val
public Object load(ExpContext ctx, ExpState state, Result res) throws SQLException
Val
SQLException
public void orderBy(Select sel, ExpContext ctx, ExpState state, boolean asc)
Val
public void select(Select sel, ExpContext ctx, ExpState state, boolean pks)
Val
public ClassMetaData getMetaData()
Value
public void setImplicitType(Class type)
Value
Object
from Value.getType()
.public void setMetaData(ClassMetaData meta)
Value
public void setOtherPath(Value other)
public Value getOtherPath()
public void setOtherState(ExpState otherState)
public ExpState getOtherState()
public boolean isVariable()
Value
isVariable
in interface Value
public boolean isAggregate()
Value
isAggregate
in interface Value
public boolean isXPath()
Value
public Object toDataStoreValue(Select sel, ExpContext ctx, ExpState state, Object val)
Val
toDataStoreValue
in interface Val
public void appendIsEmpty(Select sel, ExpContext ctx, ExpState state, SQLBuffer sql)
Val
appendIsEmpty
in interface Val
public void appendIsNotEmpty(Select sel, ExpContext ctx, ExpState state, SQLBuffer sql)
Val
appendIsNotEmpty
in interface Val
public void appendIsNull(Select sel, ExpContext ctx, ExpState state, SQLBuffer sql)
Val
appendIsNull
in interface Val
public void appendIsNotNull(Select sel, ExpContext ctx, ExpState state, SQLBuffer sql)
Val
appendIsNotNull
in interface Val
public void appendIndex(Select sel, ExpContext ctx, ExpState state, SQLBuffer sql)
Val
appendIndex
in interface Val
public void appendType(Select sel, ExpContext ctx, ExpState state, SQLBuffer sql)
Val
appendType
in interface Val
public void appendSize(Select sel, ExpContext ctx, ExpState state, SQLBuffer sql)
Val
appendSize
in interface Val
public void setAlias(String alias)
Value
public Value getSelectAs()
Value
getSelectAs
in interface Val
getSelectAs
in interface Value
Copyright © 2006–2022 Apache Software Foundation. All rights reserved.