@Override public void visit(Query query) { //don't allow confusion with deep nesting by removing intermediate groups List<GroupSymbol> fromGroups = null; if (query.getFrom() != null) { fromGroups = query.getFrom().getGroups(); HashMap<GroupSymbol, GroupSymbol> groupMap = new HashMap<GroupSymbol, GroupSymbol>(); for (GroupSymbol g : fromGroups) { groupMap.put(g, g); } visitor.outerGroups.add(groupMap); } super.visit(query); if (fromGroups != null) { visitor.outerGroups.remove(visitor.outerGroups.size() - 1); } } });
@Override public void visit(Query query) { //don't allow confusion with deep nesting by removing intermediate groups List<GroupSymbol> fromGroups = null; if (query.getFrom() != null) { fromGroups = query.getFrom().getGroups(); HashMap<GroupSymbol, GroupSymbol> groupMap = new HashMap<GroupSymbol, GroupSymbol>(); for (GroupSymbol g : fromGroups) { groupMap.put(g, g); } visitor.outerGroups.add(groupMap); } super.visit(query); if (fromGroups != null) { visitor.outerGroups.remove(visitor.outerGroups.size() - 1); } } });
@Override public void visit(Query query) { //don't allow confusion with deep nesting by removing intermediate groups List<GroupSymbol> fromGroups = null; if (query.getFrom() != null) { fromGroups = query.getFrom().getGroups(); HashMap<GroupSymbol, GroupSymbol> groupMap = new HashMap<GroupSymbol, GroupSymbol>(); for (GroupSymbol g : fromGroups) { groupMap.put(g, g); } visitor.outerGroups.add(groupMap); } super.visit(query); if (fromGroups != null) { visitor.outerGroups.remove(visitor.outerGroups.size() - 1); } } });
public void visit(AggregateSymbol obj) { if (!obj.isWindowed()) { // Visit aggregate symbol but do not dive into it's expression preVisitVisitor(obj); postVisitVisitor(obj); } else { super.visit(obj); } }
public void visit(AggregateSymbol obj) { if (!obj.isWindowed()) { // Visit aggregate symbol but do not dive into it's expression preVisitVisitor(obj); postVisitVisitor(obj); } else { super.visit(obj); } }
public void visit(AggregateSymbol obj) { if (!obj.isWindowed()) { // Visit aggregate symbol but do not dive into it's expression preVisitVisitor(obj); postVisitVisitor(obj); } else { super.visit(obj); } }
/** * Add to the navigation the visitation of expanded commands * which are inlined with clauses */ @Override public void visit(UnaryFromClause obj) { super.visit(obj); if (obj.getExpandedCommand() != null && !obj.getGroup().isProcedure()) { obj.getExpandedCommand().acceptVisitor(this); } } };
@Override public void visit(DependentSetCriteria obj1) { if (obj1.hasMultipleAttributes()) { Array array = (Array) obj1.getExpression(); visitNodes(array.getExpressions()); super.postVisitVisitor(obj1); } else { super.visit(obj1); } }
/** * Add to the navigation the visitation of expanded commands * which are inlined with clauses */ @Override public void visit(UnaryFromClause obj) { super.visit(obj); if (obj.getExpandedCommand() != null && !obj.getGroup().isProcedure()) { obj.getExpandedCommand().acceptVisitor(this); } } };
/** * Add to the navigation the visitation of expanded commands * which are inlined with clauses */ @Override public void visit(UnaryFromClause obj) { super.visit(obj); if (obj.getExpandedCommand() != null && !obj.getGroup().isProcedure()) { obj.getExpandedCommand().acceptVisitor(this); } } };
@Override public void visit(DependentSetCriteria obj1) { if (obj1.hasMultipleAttributes() && obj1.getExpression() instanceof Array) { Array array = (Array) obj1.getExpression(); visitNodes(array.getExpressions()); super.postVisitVisitor(obj1); } else { super.visit(obj1); } }
@Override public void visit(DependentSetCriteria obj1) { if (obj1.hasMultipleAttributes() && obj1.getExpression() instanceof Array) { Array array = (Array) obj1.getExpression(); visitNodes(array.getExpressions()); super.postVisitVisitor(obj1); } else { super.visit(obj1); } }