2.17.2: 2011-06-17

net.sf.basedb.core
Class DynamicRestriction

java.lang.Object
  extended by net.sf.basedb.core.DynamicRestriction
All Implemented Interfaces:
QueryElement, Restriction

 class DynamicRestriction
extends Object
implements Restriction

Creates a restriction that compares a dynamic column with a constant value: tableAlias.column = value or queryRootAlias.column = value

Version:
2.0
Author:
Nicklas
Last modified
$Date: 2010-04-21 11:48:29 +0200 (Wed, 21 Apr 2010) $

Field Summary
private  VirtualColumn column
           
private  VirtualTable table
           
private  int value
           
 
Constructor Summary
DynamicRestriction(VirtualColumn column, int value)
          Create a new restriction for column in the root entity of the query: queryRootAlias.column = value.
DynamicRestriction(VirtualTable table, VirtualColumn column, int value)
          Create a new restriction for column in a joined table: tableAlias.column = value.
 
Method Summary
 boolean equals(Object other)
          This restriction is equal to another DynamicRestriction if their table, column and values 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()
           
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

table

private final VirtualTable table

column

private final VirtualColumn column

value

private final int value
Constructor Detail

DynamicRestriction

DynamicRestriction(VirtualColumn column,
                   int value)
Create a new restriction for column in the root entity of the query: queryRootAlias.column = value.

Parameters:
column - The column to use in the restriction
value - The value to look for

DynamicRestriction

DynamicRestriction(VirtualTable table,
                   VirtualColumn column,
                   int value)
Create a new restriction for column in a joined table: tableAlias.column = value. It is assumed that the table specified has been joined in the query.

Parameters:
table - The table the column is located in
column - The column to use in the restriction
value - The value to look for
See Also:
DynamicJoin
Method Detail

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

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

toString

public String toString()
Overrides:
toString in class Object

equals

public boolean equals(Object other)
This restriction is equal to another DynamicRestriction if their table, column and values are equal.

Overrides:
equals in class Object

hashCode

public int hashCode()
Overrides:
hashCode in class Object

2.17.2: 2011-06-17