com.metamatrix.query.optimizer.xml
Class XMLNodeMappingVisitor

java.lang.Object
  extended by com.metamatrix.query.sql.LanguageVisitor
      extended by com.metamatrix.query.sql.visitor.ExpressionMappingVisitor
          extended by com.metamatrix.query.sql.visitor.AbstractSymbolMappingVisitor
              extended by com.metamatrix.query.optimizer.xml.XMLNodeMappingVisitor

public class XMLNodeMappingVisitor
extends AbstractSymbolMappingVisitor

This visitor is able to map symbols based on the XML document model: given a symbol representing one of the nodes of the document which is mapped, this object will find the Symbol representing the relational element it is mapped to.


Constructor Summary
XMLNodeMappingVisitor(MappingDocument rootNode, QueryMetadataInterface metadata)
          Constructor for XMLNodeMappingVisitor.
 
Method Summary
static Criteria convertCriteria(Criteria simpleCrit, MappingDocument rootNode, QueryMetadataInterface metadata)
          Convert the criteria from names using document identifiers to names using result set (i.e.
static LanguageObject convertObject(LanguageObject object, MappingDocument rootNode, QueryMetadataInterface metadata)
           
protected  Symbol getMappedSymbol(Symbol symbol)
          Get the mapped symbol from the specified symbol.
 
Methods inherited from class com.metamatrix.query.sql.visitor.AbstractSymbolMappingVisitor
getUnmappedSymbols, replaceExpression, visit, visit, visit, visit, visit, visit, visit, visit, visit
 
Methods inherited from class com.metamatrix.query.sql.visitor.ExpressionMappingVisitor
createAliases, getVariableValues, mapExpressions, setVariableValues, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit
 
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
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

XMLNodeMappingVisitor

public XMLNodeMappingVisitor(MappingDocument rootNode,
                             QueryMetadataInterface metadata)
Constructor for XMLNodeMappingVisitor.

Method Detail

getMappedSymbol

protected Symbol getMappedSymbol(Symbol symbol)
Description copied from class: AbstractSymbolMappingVisitor
Get the mapped symbol from the specified symbol. Subclasses should implement this method to look up the target symbol from the specified symbol.

Specified by:
getMappedSymbol in class AbstractSymbolMappingVisitor
Parameters:
symbol - Source symbol
Returns:
Target symbol
See Also:
AbstractSymbolMappingVisitor.getMappedSymbol(Symbol)

convertCriteria

public static Criteria convertCriteria(Criteria simpleCrit,
                                       MappingDocument rootNode,
                                       QueryMetadataInterface metadata)
                                throws QueryPlannerException,
                                       MetaMatrixComponentException
Convert the criteria from names using document identifiers to names using result set (i.e. mapping class) identifiers.

Parameters:
simpleCrit - Criteria to convert
rootNode - Root of mapping node tree
Returns:
Criteria Converted criteria
Throws:
QueryPlannerException - if simpleCrit has a XML document model element that is not mapped to data in a mapping class
MetaMatrixComponentException

convertObject

public static LanguageObject convertObject(LanguageObject object,
                                           MappingDocument rootNode,
                                           QueryMetadataInterface metadata)
                                    throws QueryPlannerException,
                                           MetaMatrixComponentException
Throws:
QueryPlannerException
MetaMatrixComponentException


Copyright © 2009. All Rights Reserved.