Class SubQ
java.lang.Object
org.apache.openjpa.jdbc.kernel.exps.SubQ
- All Implemented Interfaces:
Serializable,Val,Subquery,Value
A subquery.
- Author:
- Abe White
- See Also:
-
Field Summary
FieldsFields 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 -
Method Summary
Modifier and TypeMethodDescriptionvoidacceptVisit(ExpressionVisitor visitor) Accept a visit from a tree visitor.voidappendIndex(Select sel, ExpContext ctx, ExpState state, SQLBuffer sql) Append the SQL checking the index of this value.voidappendIsEmpty(Select sel, ExpContext ctx, ExpState state, SQLBuffer sql) Append the SQL testing whether this value is empty to the given buffer.voidappendIsNotEmpty(Select sel, ExpContext ctx, ExpState state, SQLBuffer sql) Append the SQL testing whether this value is not empty to the given buffer.voidappendIsNotNull(Select sel, ExpContext ctx, ExpState state, SQLBuffer sql) Append the SQL testing whether this value is not null to the given buffer.voidappendIsNull(Select sel, ExpContext ctx, ExpState state, SQLBuffer sql) Append the SQL testing whether this value is null to the given buffer.voidappendSize(Select sel, ExpContext ctx, ExpState state, SQLBuffer sql) Append the SQL checking the size of this value.voidappendTo(Select sel, ExpContext ctx, ExpState state, SQLBuffer sql, int index) Append theindexth SQL element to the given buffer.voidappendType(Select sel, ExpContext ctx, ExpState state, SQLBuffer sql) Append the SQL checking the type of this value.voidcalculateValue(Select sel, ExpContext ctx, ExpState state, Val other, ExpState otherState) Calculate and cache the SQL for this value.getAlias()Return select item aliasReturn the subquery candidate type.Return the candidate alias for this subquery.intgetId()Return any associated persistent type.getName()getPath()Return 'this' concrete class if alias is set, otherwise nullbooleangetSubs()getType()Return the expected type for this value, orObjectif the type is unknown.voidgroupBy(Select sel, ExpContext ctx, ExpState state) Group by this value.initialize(Select sel, ExpContext ctx, int flags) Initialize the value.booleanReturn true if this value is an aggregate.booleanReturn true if this value is a variable.booleanisXPath()Return true if this value is an XML Path.intlength(Select sel, ExpContext ctx, ExpState state) Return the number of SQL elements in this value.load(ExpContext ctx, ExpState state, Result res) Load the data for this value.voidorderBy(Select sel, ExpContext ctx, ExpState state, boolean asc) Order by this value.voidselect(Select sel, ExpContext ctx, ExpState state, boolean pks) Select the data for this value.voidselectColumns(Select sel, ExpContext ctx, ExpState state, boolean pks) Select just the columns for this value.voidSet select item aliasvoidsetImplicitType(Class type) Set the implicit type of the value, based on how it is used in the filter.voidsetMetaData(ClassMetaData meta) Associate a persistent type with this value.voidSet the parsed subquery.voidsetSubqAlias(String subqAlias) 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, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.apache.openjpa.kernel.exps.Value
getAlias, getName, getPath, isAggregate, isVariable, isXPath, setAlias
-
Field Details
-
TRUE
- See Also:
-
FALSE
- See Also:
-
-
Constructor Details
-
SubQ
Constructor. Supply candidate, whether subclasses are included in the query, and the query alias.
-
-
Method Details
-
getSelect
-
getCandidate
Return the subquery candidate type. -
getSubs
public boolean getSubs() -
setSubqAlias
- Specified by:
setSubqAliasin interfaceSubquery
-
getSubqAlias
- Specified by:
getSubqAliasin interfaceSubquery
-
getType
Description copied from interface:ValueReturn the expected type for this value, orObjectif the type is unknown. -
setImplicitType
Description copied from interface:ValueSet the implicit type of the value, based on how it is used in the filter. This method is only called on values who returnObjectfromValue.getType().- Specified by:
setImplicitTypein interfaceValue
-
getMetaData
Description copied from interface:ValueReturn any associated persistent type.- Specified by:
getMetaDatain interfaceValue
-
setMetaData
Description copied from interface:ValueAssociate a persistent type with this value.- Specified by:
setMetaDatain interfaceValue
-
getCandidateAlias
Description copied from interface:SubqueryReturn the candidate alias for this subquery.- Specified by:
getCandidateAliasin interfaceSubquery
-
setQueryExpressions
Description copied from interface:SubquerySet the parsed subquery.- Specified by:
setQueryExpressionsin interfaceSubquery
-
initialize
Description copied from interface:ValInitialize the value. This method should recursively initialize any sub-values.- Specified by:
initializein interfaceVal
-
toDataStoreValue
Description copied from interface:ValReturn the datastore value of the given object in the context of this value.- Specified by:
toDataStoreValuein interfaceVal
-
select
Description copied from interface:ValSelect the data for this value. -
selectColumns
Description copied from interface:ValSelect just the columns for this value.- Specified by:
selectColumnsin interfaceVal
-
groupBy
Description copied from interface:ValGroup by this value. -
orderBy
Description copied from interface:ValOrder by this value. -
load
Description copied from interface:ValLoad the data for this value.- Specified by:
loadin interfaceVal- Throws:
SQLException
-
calculateValue
public void calculateValue(Select sel, ExpContext ctx, ExpState state, Val other, ExpState otherState) Description copied from interface:ValCalculate and cache the SQL for this value. This method is called beforelengthor anyappendmethods.- Specified by:
calculateValuein interfaceValother- the value being compared to, or null if not a comparison
-
length
Description copied from interface:ValReturn the number of SQL elements in this value. -
appendTo
Description copied from interface:ValAppend theindexth SQL element to the given buffer. -
appendIsEmpty
Description copied from interface:ValAppend the SQL testing whether this value is empty to the given buffer.- Specified by:
appendIsEmptyin interfaceVal
-
appendIsNotEmpty
Description copied from interface:ValAppend the SQL testing whether this value is not empty to the given buffer.- Specified by:
appendIsNotEmptyin interfaceVal
-
appendSize
Description copied from interface:ValAppend the SQL checking the size of this value.- Specified by:
appendSizein interfaceVal
-
acceptVisit
Description copied from interface:ValueAccept a visit from a tree visitor.- Specified by:
acceptVisitin interfaceValue
-
isVariable
public boolean isVariable()Description copied from interface:ValueReturn true if this value is a variable.- Specified by:
isVariablein interfaceValue
-
isAggregate
public boolean isAggregate()Description copied from interface:ValueReturn true if this value is an aggregate.- Specified by:
isAggregatein interfaceValue
-
isXPath
public boolean isXPath()Description copied from interface:ValueReturn true if this value is an XML Path. -
appendIsNull
Description copied from interface:ValAppend the SQL testing whether this value is null to the given buffer.- Specified by:
appendIsNullin interfaceVal
-
appendIsNotNull
Description copied from interface:ValAppend the SQL testing whether this value is not null to the given buffer.- Specified by:
appendIsNotNullin interfaceVal
-
appendIndex
Description copied from interface:ValAppend the SQL checking the index of this value.- Specified by:
appendIndexin interfaceVal
-
appendType
Description copied from interface:ValAppend the SQL checking the type of this value.- Specified by:
appendTypein interfaceVal
-
getId
public int getId() -
getAlias
Description copied from interface:ValueReturn select item alias -
setAlias
Description copied from interface:ValueSet select item alias -
getSelectAs
Description copied from interface:ValueReturn 'this' concrete class if alias is set, otherwise null- Specified by:
getSelectAsin interfaceVal- Specified by:
getSelectAsin interfaceValue
-
getPath
-
getName
-