|
2.17.2: 2011-06-17 | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object net.sf.basedb.core.ExtraValueJoin
class ExtraValueJoin
Represents a join to an extra value in a dynamic query:
leftTable JOIN extraValueTable ON ...
This class is used by, for example, DynamicSpotQuery.joinExtraValue(ExtraValue, JoinType)
to create the
Join
query element that is needed. After the extra value
has been join it can be used in expressions in the query.
ExtraValueExpression
,
Dynamic.extraValue(ExtraValue)
Field Summary | |
---|---|
private VirtualColumn[] |
columns
|
private ExtraValue |
extraValue
|
private JoinType |
joinType
|
private VirtualTable |
left
|
private VirtualTable |
right
|
private VirtualDb |
vdb
|
Constructor Summary | |
---|---|
ExtraValueJoin(ExtraValue extraValue,
JoinType joinType)
Create a new join using the root entity table as the left table. |
Method Summary | |
---|---|
boolean |
equals(Object other)
This join is equal to another ExtraValueJoin if they join to the same extra value with the same join type. |
Collection<? extends QueryElement> |
getChildren()
Get the children of this query element or null if it has no children. |
String |
getThetaJoin(Query query,
DbControl dc)
|
String |
getThetaJoinCondition(Query query,
DbControl dc)
|
int |
hashCode()
|
String |
toQl(Query query,
DbControl dc)
Create a query language string of the query element. |
String |
toString()
|
Methods inherited from class java.lang.Object |
---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
private final ExtraValue extraValue
private final VirtualDb vdb
private final JoinType joinType
private final VirtualTable left
private final VirtualTable right
private final VirtualColumn[] columns
Constructor Detail |
---|
ExtraValueJoin(ExtraValue extraValue, JoinType joinType)
SELECT ... FROM rootTable JOIN extraValueTable
.
The extra value table and which columns should be used in the join is found by examining the extra value properties, ie. value type and coordinate type.
extraValue
- The extra value to joinjoinType
- The type of joinMethod Detail |
---|
public String toQl(Query query, DbControl dc) throws BaseException
QueryElement
Query.getQueryType()
method to find out which query language is wanted
in case the element requires different syntax for different languages.
toQl
in interface QueryElement
query
- The query that is about to be executeddc
- The DbControl
object used to execute the query
BaseException
- If there is any other errorpublic Collection<? extends QueryElement> getChildren()
QueryElement
AddExpression
has two children, the expression
beeing added.
getChildren
in interface QueryElement
public String getThetaJoin(Query query, DbControl dc) throws BaseException
getThetaJoin
in interface Join
BaseException
public String getThetaJoinCondition(Query query, DbControl dc) throws BaseException
getThetaJoinCondition
in interface Join
BaseException
public String toString()
toString
in class Object
public boolean equals(Object other)
equals
in class Object
public int hashCode()
hashCode
in class Object
|
2.17.2: 2011-06-17 | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |