Package net.sf.basedb.core
Class ReporterPropertyExpression
- java.lang.Object
-
- net.sf.basedb.core.ReporterPropertyExpression
-
- All Implemented Interfaces:
Expression
,QueryElement
public class ReporterPropertyExpression extends Object implements Expression
An expression representing the property of a reporter.Throws an
UnsupportedOperationException
ifQuery.getQueryType()
isn'tQueryType.SQL
.- Version:
- 2.0
- Author:
- Nicklas
- See Also:
Dynamic.reporter(String)
- Last modified
- $Date: 2015-04-20 11:08:18 +0200 (må, 20 apr 2015) $
-
-
Constructor Summary
Constructors Constructor Description ReporterPropertyExpression(String property)
Create a new reporter property expression.ReporterPropertyExpression(String property, Boolean useCloned)
Create a new reporter property expression.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
equals(Object other)
This expression is equal to another ReporterPropertyExpression if they represent the same reporter property.Collection<? extends QueryElement>
getChildren()
Get the children of this query element or null if it has no children.private static String
getColumn(String property)
int
hashCode()
String
toQl(Query query, DbControl dc)
Create a query language string of the query element.String
toString()
boolean
useCloned(ClonableReporterQuery query)
Check if this reporter property should use the cloned reporter for the given query or not.
-
-
-
Constructor Detail
-
ReporterPropertyExpression
public ReporterPropertyExpression(String property) throws InvalidDataException
Create a new reporter property expression. The expression automatically selects if cloned reporter information should be used or not.- Parameters:
property
- The name of the property- Throws:
InvalidDataException
-
ReporterPropertyExpression
public ReporterPropertyExpression(String property, Boolean useCloned)
Create a new reporter property expression. The expression may be forced to use either the cloned or master reporter information.- Parameters:
property
- The name of the propertyuseCloned
- TRUE to use cloned reporter information (if available), FALSE to not use cloned information, null to automatically decide- Since:
- 3.1
-
-
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 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
-
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
-
equals
public boolean equals(Object other)
This expression is equal to another ReporterPropertyExpression if they represent the same reporter property.
-
useCloned
public boolean useCloned(ClonableReporterQuery query)
Check if this reporter property should use the cloned reporter for the given query or not. If the query is using a virtual database that doesn't have cloned reporters, FALSE is returned. Othersise, if an explicit request has been made to use/not use cloned reporters, that value is returned. If no explicit request has been made, the outcome depends on theDynamicQuery.useClonedReporters()
.- Parameters:
query
- The query to check with- Returns:
- TRUE if the cloned reporter table should be used, FALSE if not
- Since:
- 3.1
-
-