public class ExpressionVisitor extends Object
Modifier and Type | Field and Description |
---|---|
static int |
DETERMINISTIC
Does the expression return the same results for the same parameters?
|
static ExpressionVisitor |
DETERMINISTIC_VISITOR
The visitor singleton for the type DETERMINISTIC.
|
static int |
EVALUATABLE
Can the expression be evaluated, that means are all columns set to
'evaluatable'?
|
static ExpressionVisitor |
EVALUATABLE_VISITOR
The visitor singleton for the type EVALUATABLE.
|
static int |
GET_COLUMNS
Get all referenced columns.
|
static int |
GET_DEPENDENCIES
Request to get the set of dependencies (addDependency).
|
static int |
INDEPENDENT
Is the value independent on unset parameters or on columns of a higher
level query, or sequence values (that means can it be evaluated right
now)?
|
static ExpressionVisitor |
INDEPENDENT_VISITOR
The visitor singleton for the type INDEPENDENT.
|
static int |
NOT_FROM_RESOLVER
Does an expression have no relation to the given table filter
(getResolver)?
|
static int |
OPTIMIZABLE_MIN_MAX_COUNT_ALL
Are all aggregates MIN(column), MAX(column), or COUNT(*) for the given
table (getTable)?
|
static int |
QUERY_COMPARABLE
Can the expression be added to a condition of an outer query.
|
static ExpressionVisitor |
QUERY_COMPARABLE_VISITOR
The visitor singleton for the type QUERY_COMPARABLE.
|
static int |
READONLY
Does the expression have no side effects (change the data)?
|
static ExpressionVisitor |
READONLY_VISITOR
The visitor singleton for the type EVALUATABLE.
|
static int |
SET_MAX_DATA_MODIFICATION_ID
Request to set the latest modification id (addDataModificationId).
|
Modifier and Type | Method and Description |
---|---|
void |
addDataModificationId(long value)
Update the field maxDataModificationId if this value is higher
than the current value.
|
void |
addDependency(DbObject obj)
Add a new dependency to the set of dependencies.
|
static ExpressionVisitor |
getColumnsVisitor(HashSet<Column> columns)
Create a new visitor to get all referenced columns.
|
HashSet<DbObject> |
getDependencies()
Get the dependency set.
|
static ExpressionVisitor |
getDependenciesVisitor(HashSet<DbObject> dependencies)
Create a new visitor object to collect dependencies.
|
long |
getMaxDataModificationId()
Get the last data modification.
|
static ExpressionVisitor |
getMaxModificationIdVisitor() |
static ExpressionVisitor |
getOptimizableVisitor(Table table)
Create a new visitor to check if all aggregates are for the given table.
|
ColumnResolver |
getResolver()
Get the column resolver.
|
Table |
getTable()
Get the table.
|
int |
getType()
Get the visitor type.
|
ExpressionVisitor |
incrementQueryLevel(int offset)
Increment or decrement the query level.
|
public static final int INDEPENDENT
public static final ExpressionVisitor INDEPENDENT_VISITOR
public static final int OPTIMIZABLE_MIN_MAX_COUNT_ALL
public static final int DETERMINISTIC
public static final ExpressionVisitor DETERMINISTIC_VISITOR
public static final int EVALUATABLE
public static final ExpressionVisitor EVALUATABLE_VISITOR
public static final int SET_MAX_DATA_MODIFICATION_ID
public static final int READONLY
public static final ExpressionVisitor READONLY_VISITOR
public static final int NOT_FROM_RESOLVER
public static final int GET_DEPENDENCIES
public static final int QUERY_COMPARABLE
public static final int GET_COLUMNS
public static final ExpressionVisitor QUERY_COMPARABLE_VISITOR
public static ExpressionVisitor getDependenciesVisitor(HashSet<DbObject> dependencies)
dependencies
- the dependencies setpublic static ExpressionVisitor getOptimizableVisitor(Table table)
table
- the tablepublic static ExpressionVisitor getColumnsVisitor(HashSet<Column> columns)
columns
- the columns mappublic static ExpressionVisitor getMaxModificationIdVisitor()
public void addDependency(DbObject obj)
obj
- the additional dependency.public HashSet<DbObject> getDependencies()
public ExpressionVisitor incrementQueryLevel(int offset)
offset
- 1 to increment, -1 to decrementpublic ColumnResolver getResolver()
public void addDataModificationId(long value)
value
- the data modification idpublic long getMaxDataModificationId()
public Table getTable()
public int getType()
Copyright © 2012 JBoss by Red Hat. All Rights Reserved.