| Modifier and Type | Field and Description |
|---|---|
| private final HashSet | |
| private DeferModification | |
| private boolean | |
| private int | |
| private int |
| Access | Constructor and Description |
|---|---|
| private | VTIDeferModPolicy(FromVTI targetVTI, String[] columnNames, DeferModification deferralControl, int statementType)
|
| Modifier and Type | Method and Description |
|---|---|
| public static boolean | deferIt(int
DeferModification.INSERT_STATEMENT, UPDATE_STATEMENT, or DELETE_STATEMENT statementType, FromVTI The target VTI targetVTI, String[] The list of columns being updated, null if this is not an update statement updateColumnNames, QueryTreeNode source)See if a VTI modification statement should be deferred. |
| public boolean | skipChildren(Visitable
the node to process node)Implements org. Method that is called to indicate whether we should skip all nodes below this node for traversal. |
| public boolean | stopTraversal()
Implements org. Method that is called to see if query tree traversal should be stopped before visiting all nodes. |
| public Visitable | visit(Visitable
the node to process node)Implements org. This is the default visit operation on a QueryTreeNode. |
| public boolean | visitChildrenFirst(Visitable
the top node of a sub-tree about to be visited node)Implements org. Method that is called to see if |
| columns | back to summary |
|---|---|
| private final HashSet<String> columns | |
| deferralControl | back to summary |
|---|---|
| private DeferModification deferralControl | |
| deferred | back to summary |
|---|---|
| private boolean deferred | |
| statementType | back to summary |
|---|---|
| private int statementType | |
| tableNumber | back to summary |
|---|---|
| private int tableNumber | |
| VTIDeferModPolicy | back to summary |
|---|---|
| private VTIDeferModPolicy(FromVTI targetVTI, String[] columnNames, DeferModification deferralControl, int statementType) | |
| deferIt | back to summary |
|---|---|
| public static boolean deferIt(int statementType, FromVTI targetVTI, String[] updateColumnNames, QueryTreeNode source) throws StandardException See if a VTI modification statement should be deferred. | |
| skipChildren | back to summary |
|---|---|
| public boolean skipChildren(Visitable node) Implements org. Doc from org. Method that is called to indicate whether we should skip all nodes below this node for traversal. Useful if we want to effectively ignore/prune all branches under a particular node. Differs from stopTraversal() in that it only affects subtrees, rather than the entire traversal.
| |
| stopTraversal | back to summary |
|---|---|
| public boolean stopTraversal() Implements org. Doc from org. Method that is called to see if query tree traversal should be stopped before visiting all nodes. Useful for short circuiting traversal if we already know we are done.
| |
| visit | back to summary |
|---|---|
| public Visitable visit(Visitable node) throws StandardException Implements org. Doc from org. This is the default visit operation on a QueryTreeNode. It just returns the node. This will typically suffice as the default visit operation for most visitors unless the visitor needs to count the number of nodes visited or something like that. Visitors will overload this method by implementing a version with a signature that matches a specific type of node. For example, if I want to do something special with aggregate nodes, then that Visitor will implement a visit(AggregateNode node) method which does the aggregate specific processing.
| |
| visitChildrenFirst | back to summary |
|---|---|
| public boolean visitChildrenFirst(Visitable node) Implements org. Doc from org. Method that is called to see if
| |