com.metamatrix.query.sql.visitor
Class CorrelatedReferenceCollectorVisitor

java.lang.Object
  extended by com.metamatrix.query.sql.LanguageVisitor
      extended by com.metamatrix.query.sql.visitor.CorrelatedReferenceCollectorVisitor

public class CorrelatedReferenceCollectorVisitor
extends LanguageVisitor

This visitor class will traverse a language object tree and collect references that correspond to correlated subquery references.

The easiest way to use this visitor is to call the static method which creates the the visitor by passing it the Langiuage Object and the variable context to be looked up. The public visit() methods should NOT be called directly.


Constructor Summary
CorrelatedReferenceCollectorVisitor(java.util.Collection groupSymbols, java.util.List correlatedReferences)
           
 
Method Summary
static void collectReferences(LanguageObject obj, java.util.Collection groupSymbols, java.util.List correlatedReferences)
          Helper to use this visitor.
 java.util.List getReferences()
           
 void visit(Reference obj)
          Visit a language object and collect symbols.
 
Methods inherited from class com.metamatrix.query.sql.LanguageVisitor
setAbort, shouldAbort, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

CorrelatedReferenceCollectorVisitor

public CorrelatedReferenceCollectorVisitor(java.util.Collection groupSymbols,
                                           java.util.List correlatedReferences)
Method Detail

getReferences

public java.util.List getReferences()

visit

public void visit(Reference obj)
Visit a language object and collect symbols. This method should NOT be called directly.

Overrides:
visit in class LanguageVisitor
Parameters:
obj - Language object

collectReferences

public static final void collectReferences(LanguageObject obj,
                                           java.util.Collection groupSymbols,
                                           java.util.List correlatedReferences)

Helper to use this visitor.

Parameters:
obj - The Language object that is to be visited
groupSymbols - Collection of GroupSymbols to restrict collection to - these are the groups that the client (outer query) is interested in references to from the correlated subquery
correlatedReferences - List of References collected


Copyright © 2009. All Rights Reserved.