2.17.2: 2011-06-17

net.sf.basedb.core.query
Class ReporterListExpression

java.lang.Object
  extended by net.sf.basedb.core.query.ReporterListExpression
All Implemented Interfaces:
Expression, QueryElement

public class ReporterListExpression
extends Object
implements Expression

Represents a property of a reporter list in a dynamic query: alias.property.

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

Field Summary
private  JoinType autoJoinType
           
private  boolean hqlMode
           
private  String joinAlias
           
private  String joinProperty
           
private  String property
           
private  ReporterList reporterList
           
private  String tableAlias
           
private  String tableColumn
           
 
Constructor Summary
ReporterListExpression(ReporterList reporterList, String tableColumn, JoinType autoJoinType)
          Create a new expression for the specified reporter list.
ReporterListExpression(ReporterList reporterList, String joinAlias, String joinProperty, String property, JoinType autoJoinType)
           
 
Method Summary
 boolean equals(Object other)
          This expression is equal to another ReporterListExpression if they use the same property from the same reporter list and uses the same auto join type.
 JoinType getAutoJoinType()
          Get the join type for automatic joins.
 Collection<? extends QueryElement> getChildren()
          Get the children of this query element or null if it has no children.
 String getJoinAlias()
           
 String getJoinProperty()
           
 ReporterList getReporterList()
          Get the reporter list.
 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

hqlMode

private final boolean hqlMode

reporterList

private final ReporterList reporterList

tableAlias

private final String tableAlias

tableColumn

private String tableColumn

joinAlias

private String joinAlias

joinProperty

private String joinProperty

property

private String property

autoJoinType

private final JoinType autoJoinType
Constructor Detail

ReporterListExpression

ReporterListExpression(ReporterList reporterList,
                       String tableColumn,
                       JoinType autoJoinType)
Create a new expression for the specified reporter list.

Parameters:
reporterList - The reporter list
tableColumn - The name of the column we should select
autoJoinType - If an automatic join is done use this type, the join type depends on if we are checking if a reporter is part of or not part of a reporter list
See Also:
Dynamic.isPartOf(ReporterList), Dynamic.isNotPartOf(ReporterList), Dynamic.score(ReporterList)

ReporterListExpression

ReporterListExpression(ReporterList reporterList,
                       String joinAlias,
                       String joinProperty,
                       String property,
                       JoinType autoJoinType)
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 expression is equal to another ReporterListExpression if they use the same property from the same reporter list and uses the same auto join type.

Overrides:
equals in class Object

hashCode

public int hashCode()
Overrides:
hashCode in class Object

getReporterList

public ReporterList getReporterList()
Get the reporter list.


getJoinAlias

public String getJoinAlias()

getJoinProperty

public String getJoinProperty()

getAutoJoinType

public JoinType getAutoJoinType()
Get the join type for automatic joins.

Returns:
A join type or null if the default should be used

2.17.2: 2011-06-17