net.sf.basedb.core.query
Class AnnotationJoin
java.lang.Object
net.sf.basedb.core.query.AnnotationJoin
- All Implemented Interfaces:
- Join, QueryElement
public class AnnotationJoin
- extends Object
- implements Join
Join annotations values to the query. The value is available as
the joined alias.
Throws an UnsupportedOperationException
if
Query.getQueryType()
isn't QueryType.HQL
.
- Since:
- 3.2
- Author:
- Nicklas
- See Also:
Annotations.innerJoin(AnnotationType, String)
,
Annotations#leftJoin(AnnotationType, String)
- Last modified
- $Date$
joinType
private final JoinType joinType
alias
private final String alias
annotationType
private final AnnotationType annotationType
joinedAlias
private final String joinedAlias
AnnotationJoin
AnnotationJoin(JoinType joinType,
String alias,
AnnotationType annotationType,
String joinedAlias)
toQl
public String toQl(Query query,
DbControl dc)
throws BaseException
- Description copied from interface:
QueryElement
- Create a query language string of the query element. Use the
Query.getQueryType()
method to find out which query language is wanted
in case the element requires different syntax for different languages.
- Specified by:
toQl
in interface QueryElement
- Parameters:
query
- The query that is about to be executeddc
- The DbControl
object used to execute the query
- Throws:
BaseException
- If there is any other error
getChildren
public Collection<? extends QueryElement> getChildren()
- Description copied from interface:
QueryElement
- Get the children of this query element or null if it has no children.
For example the
AddExpression
has two children, the expression
beeing added.
- Specified by:
getChildren
in interface QueryElement
- Returns:
- Always null
getThetaJoin
public String getThetaJoin(Query query,
DbControl dc)
throws BaseException
- Specified by:
getThetaJoin
in interface Join
- Throws:
BaseException
getThetaJoinCondition
public String getThetaJoinCondition(Query query,
DbControl dc)
throws BaseException
- Specified by:
getThetaJoinCondition
in interface Join
- Throws:
BaseException
toString
public String toString()
- Overrides:
toString
in class Object
equals
public boolean equals(Object other)
- This join is equal to another AnnotationJoin if they
join to the same annotation type with the same alias.
- Overrides:
equals
in class Object
hashCode
public int hashCode()
- Overrides:
hashCode
in class Object