Package net.sf.basedb.core.query
Class HqlExpression
- java.lang.Object
-
- net.sf.basedb.core.query.HqlExpression
-
- All Implemented Interfaces:
Expression
,QueryElement
,Restriction
public class HqlExpression extends Object implements Expression, Restriction
A class holding an expression or a restriction where a prefix can be used to represent a root alias in a HQL. I.e. $name = 'somename' could be used for all items that have a name property. '$' will be replaced with the right root alias when the restriction is used in a query, $name = 'somename' will be usr.name = 'somename' in a query for the user table.- Version:
- 2.5
- Author:
- Martin
-
-
Field Summary
Fields Modifier and Type Field Description private String
expression
The restriction or expression as a string.private String
prefix
Prefix used to indentify where to put the root alias.
-
Constructor Summary
Constructors Constructor Description HqlExpression(String expression, String prefix)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
equals(Object other)
This expression is equal to another HqlExpression if their child expressions are equal.Collection<? extends QueryElement>
getChildren()
Get the children of this query element or null if it has no children.int
hashCode()
String
toQl(Query query, DbControl dc)
Create a query language string of the query element.String
toString()
Returns the expression field.
-
-
-
Method Detail
-
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 theAddExpression
has two children, the expression beeing added.- Specified by:
getChildren
in interfaceQueryElement
- Returns:
- Always null
-
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 theQuery.getQueryType()
method to find out which query language is wanted in case the element requires different syntax for different languages.- Specified by:
toQl
in interfaceQueryElement
- Parameters:
query
- The query that is about to be executeddc
- TheDbControl
object used to execute the query- Throws:
BaseException
- If there is any other error
-
equals
public boolean equals(Object other)
This expression is equal to another HqlExpression if their child expressions are equal.
-
-