org.d2rq.db.op
Interface OpVisitor

All Known Implementing Classes:
OpVisitor.Default, SelectStatementBuilder

public interface OpVisitor

Visitor for DatabaseOps. Implements the Visitor pattern. When walking a hierarchy of DatabaseOps, for each node first the respective visitEnter() method is called, then all children are visited, and then visitLeave() is called. If visitEnter() returns false for some node, then its children will not be visited and visitLeave() is skipped for that node.

Author:
Richard Cyganiak (richard@cyganiak.de)

Nested Class Summary
static class OpVisitor.Default
           
 
Method Summary
 void visit(SQLOp table)
           
 void visit(TableOp table)
           
 boolean visitEnter(AliasOp table)
           
 boolean visitEnter(AssertUniqueKeyOp table)
           
 boolean visitEnter(DistinctOp table)
           
 boolean visitEnter(EmptyOp table)
           
 boolean visitEnter(InnerJoinOp table)
           
 boolean visitEnter(LimitOp table)
           
 boolean visitEnter(OrderOp table)
           
 boolean visitEnter(ProjectOp table)
           
 boolean visitEnter(SelectOp table)
           
 void visitLeave(AliasOp table)
           
 void visitLeave(AssertUniqueKeyOp table)
           
 void visitLeave(DistinctOp table)
           
 void visitLeave(EmptyOp table)
           
 void visitLeave(InnerJoinOp table)
           
 void visitLeave(LimitOp table)
           
 void visitLeave(OrderOp table)
           
 void visitLeave(ProjectOp table)
           
 void visitLeave(SelectOp table)
           
 void visitOpTrue()
           
 

Method Detail

visitEnter

boolean visitEnter(InnerJoinOp table)

visitLeave

void visitLeave(InnerJoinOp table)

visitEnter

boolean visitEnter(SelectOp table)

visitLeave

void visitLeave(SelectOp table)

visitEnter

boolean visitEnter(ProjectOp table)

visitLeave

void visitLeave(ProjectOp table)

visitEnter

boolean visitEnter(AliasOp table)

visitLeave

void visitLeave(AliasOp table)

visitEnter

boolean visitEnter(OrderOp table)

visitLeave

void visitLeave(OrderOp table)

visitEnter

boolean visitEnter(LimitOp table)

visitLeave

void visitLeave(LimitOp table)

visitEnter

boolean visitEnter(DistinctOp table)

visitLeave

void visitLeave(DistinctOp table)

visitEnter

boolean visitEnter(AssertUniqueKeyOp table)

visitLeave

void visitLeave(AssertUniqueKeyOp table)

visitEnter

boolean visitEnter(EmptyOp table)

visitLeave

void visitLeave(EmptyOp table)

visit

void visit(TableOp table)

visit

void visit(SQLOp table)

visitOpTrue

void visitOpTrue()