2.17.2: 2011-06-17

net.sf.basedb.core.query
Class HqlExpression

java.lang.Object
  extended by 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
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
HqlExpression(String expression, String prefix)
           
 
Method Summary
 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.
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

expression

private final String expression
The restriction or expression as a string.


prefix

private final String prefix
Prefix used to indentify where to put the root alias.

Constructor Detail

HqlExpression

HqlExpression(String expression,
              String prefix)
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 the AddExpression has two children, the expression beeing added.

Specified by:
getChildren in interface QueryElement
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 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 executed
dc - The DbControl object used to execute the query
Throws:
BaseException - If there is any other error

toString

public String toString()
Returns the expression field.

Overrides:
toString in class Object

equals

public boolean equals(Object other)
This expression is equal to another HqlExpression if their child expressions are equal.

Overrides:
equals in class Object

hashCode

public int hashCode()
Overrides:
hashCode in class Object

2.17.2: 2011-06-17