|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.apache.openjpa.jdbc.kernel.exps.PCPath
public class PCPath
A path represents a traversal into fields of a candidate object.
Nested Class Summary | |
---|---|
static class |
PCPath.PathExpState
Expression state. |
Field Summary | |
---|---|
protected static String |
FALSE
|
protected static String |
TRUE
|
Fields inherited from interface org.apache.openjpa.jdbc.kernel.exps.Val |
---|
ABS_VAL, ARGS_VAL, CONCAT_VAL, FORCE_OUTER, INDEXOF_VAL, JOIN_REL, LENGTH_VAL, LOCATE_VAL, LOWER_VAL, MATH_VAL, NULL_CMP, SQRT_VAL, SUBSTRING_VAL, TRIM_VAL, UPPER_VAL, VAL |
Constructor Summary | |
---|---|
PCPath(ClassMapping type)
Return a path starting with the 'this' ptr. |
|
PCPath(ClassMapping candidate,
org.apache.openjpa.jdbc.kernel.exps.Variable var)
Return a path starting from the given variable. |
|
PCPath(org.apache.openjpa.jdbc.kernel.exps.SubQ sub)
Return a path starting from the given subquery. |
Method Summary | |
---|---|
void |
acceptVisit(ExpressionVisitor visitor)
Accept a visit from a tree visitor. |
void |
addVariableAction(org.apache.openjpa.jdbc.kernel.exps.Variable var)
Set the path as a binding of the given variable. |
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 the index th SQL element to the given buffer. |
void |
calculateValue(Select sel,
ExpContext ctx,
ExpState state,
Val other,
ExpState otherState)
Calculate and cache the SQL for this value. |
boolean |
equals(Object other)
|
void |
get(FieldMetaData field,
boolean nullTraversal)
Traverse into the given field of the current object, and update the current object to that field value. |
void |
get(FieldMetaData fmd,
XMLMetaData meta)
Traverse into the given field that maps to xml column, and update the current object to that field value. |
void |
get(XMLMetaData meta,
String name)
Traverse into the gevin xpath name of the current object, and update the current object to that xpath field. |
ClassMapping |
getClassMapping(ExpState state)
|
Column[] |
getColumns(ExpState state)
|
FieldMapping |
getFieldMapping(ExpState state)
|
int |
getId()
|
void |
getKey()
|
ClassMetaData |
getMetaData()
Return any associated persistent type. |
String |
getPath()
|
Class |
getType()
Return the expected type for this value, or Object if
the type is unknown. |
XMLMetaData |
getXmlMapping()
Return the current XPath's xmlmapping metadata. |
String |
getXPath()
|
void |
groupBy(Select sel,
ExpContext ctx,
ExpState state)
Group by this value. |
int |
hashCode()
|
ExpState |
initialize(Select sel,
ExpContext ctx,
int flags)
Initialize the value. |
boolean |
isAggregate()
Return true if this value is an aggregate. |
boolean |
isKey()
|
boolean |
isUnaccessedVariable()
Return true if this is a bound variable that has not been accessed after binding. |
boolean |
isVariable()
Return true if this value is a variable. |
boolean |
isVariablePath()
Return whether this is a path involving a variable. |
boolean |
isXPath()
Return true if this value is an XML Path. |
FieldMetaData |
last()
Return the last field in the path, or null if the path does not not contain a final field. |
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 |
setContainsId(String id)
If this path is part of a contains clause, then alias it to the proper contains id before initialization. |
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. |
Object |
toDataStoreValue(Select sel,
ExpContext ctx,
ExpState state,
Object val)
Return the datastore value of the given object in the context of this value. |
Methods inherited from class java.lang.Object |
---|
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface org.apache.openjpa.kernel.exps.Value |
---|
acceptVisit, isAggregate |
Methods inherited from interface org.apache.openjpa.jdbc.kernel.exps.Val |
---|
getId |
Methods inherited from interface org.apache.openjpa.kernel.exps.Value |
---|
acceptVisit, isAggregate |
Field Detail |
---|
protected static final String TRUE
protected static final String FALSE
Constructor Detail |
---|
public PCPath(ClassMapping type)
public PCPath(ClassMapping candidate, org.apache.openjpa.jdbc.kernel.exps.Variable var)
public PCPath(org.apache.openjpa.jdbc.kernel.exps.SubQ sub)
Method Detail |
---|
public void addVariableAction(org.apache.openjpa.jdbc.kernel.exps.Variable var)
public boolean isUnaccessedVariable()
public boolean isVariablePath()
public void setContainsId(String id)
public ClassMetaData getMetaData()
Value
getMetaData
in interface Value
public void setMetaData(ClassMetaData meta)
Value
setMetaData
in interface Value
public boolean isKey()
public boolean isXPath()
Value
isXPath
in interface Value
public String getXPath()
public String getPath()
public ClassMapping getClassMapping(ExpState state)
public FieldMapping getFieldMapping(ExpState state)
public Column[] getColumns(ExpState state)
public boolean isVariable()
Value
isVariable
in interface Value
public void get(FieldMetaData field, boolean nullTraversal)
Path
nullTraversal
- if true, allow traversal through a null fieldpublic void get(FieldMetaData fmd, XMLMetaData meta)
Path
fmd
- field maps to xml columnmeta
- associated xml mappingpublic void get(XMLMetaData meta, String name)
Path
public XMLMetaData getXmlMapping()
Path
public void getKey()
public FieldMetaData last()
Path
public Class getType()
Value
Object
if
the type is unknown.
getType
in interface Value
public void setImplicitType(Class type)
Value
Object
from Value.getType()
.
setImplicitType
in interface Value
public ExpState initialize(Select sel, ExpContext ctx, int flags)
Val
initialize
in interface Val
public Object toDataStoreValue(Select sel, ExpContext ctx, ExpState state, Object val)
Val
toDataStoreValue
in interface Val
public void select(Select sel, ExpContext ctx, ExpState state, boolean pks)
Val
select
in interface Val
public void selectColumns(Select sel, ExpContext ctx, ExpState state, boolean pks)
Val
selectColumns
in interface Val
public void groupBy(Select sel, ExpContext ctx, ExpState state)
Val
groupBy
in interface Val
public void orderBy(Select sel, ExpContext ctx, ExpState state, boolean asc)
Val
orderBy
in interface Val
public Object load(ExpContext ctx, ExpState state, Result res) throws SQLException
Val
load
in interface Val
SQLException
public void calculateValue(Select sel, ExpContext ctx, ExpState state, Val other, ExpState otherState)
Val
length
or any append
methods.
calculateValue
in interface Val
other
- the value being compared to, or null if not a comparisonpublic int length(Select sel, ExpContext ctx, ExpState state)
Val
length
in interface Val
public void appendTo(Select sel, ExpContext ctx, ExpState state, SQLBuffer sql, int index)
Val
index
th SQL element to the given buffer.
appendTo
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 appendSize(Select sel, ExpContext ctx, ExpState state, SQLBuffer sql)
Val
appendSize
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 int hashCode()
hashCode
in class Object
public boolean equals(Object other)
equals
in class Object
public boolean isAggregate()
Value
isAggregate
in interface Value
public void acceptVisit(ExpressionVisitor visitor)
Value
acceptVisit
in interface Value
public int getId()
getId
in interface Val
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |