org.xcmis.search.query.validate
Class Validator

java.lang.Object
  extended by org.xcmis.search.Visitors.AbstractModelVisitor
      extended by org.xcmis.search.query.validate.Validator
All Implemented Interfaces:
org.xcmis.search.QueryObjectModelVisitor

public class Validator
extends org.xcmis.search.Visitors.AbstractModelVisitor

A Visitor implementation that validates a query's used of a Schema and records any problems as errors.


Constructor Summary
Validator(QueryExecutionContext context, Map<org.xcmis.search.model.source.SelectorName,Schema.Table> selectorsByName)
           
 
Method Summary
 Schema.Table checkSelectorExistance(org.xcmis.search.model.source.SelectorName selectorName)
          Check if selector exists in list of selectors.
 Schema.Column checkTableAndColumnExistance(org.xcmis.search.model.source.SelectorName selectorName, String propertyName, boolean columnIsRequired)
          Check if selector exists in list of selectors.
 void visit(org.xcmis.search.model.constraint.ChildNode node)
           
 void visit(org.xcmis.search.model.source.join.ChildNodeJoinCondition node)
           
 void visit(org.xcmis.search.model.column.Column node)
           
 void visit(org.xcmis.search.model.constraint.Comparison node)
           
 void visit(org.xcmis.search.model.constraint.DescendantNode node)
           
 void visit(org.xcmis.search.model.source.join.DescendantNodeJoinCondition node)
           
 void visit(org.xcmis.search.model.source.join.EquiJoinCondition node)
           
 void visit(org.xcmis.search.model.constraint.FullTextSearch node)
           
 void visit(org.xcmis.search.model.operand.FullTextSearchScore node)
           
 void visit(org.xcmis.search.model.operand.Length node)
           
 void visit(org.xcmis.search.model.operand.LowerCase node)
           
 void visit(org.xcmis.search.model.operand.NodeDepth depth)
           
 void visit(org.xcmis.search.model.operand.NodeLocalName node)
           
 void visit(org.xcmis.search.model.operand.NodeName node)
           
 void visit(org.xcmis.search.model.ordering.Ordering node)
           
 void visit(org.xcmis.search.model.constraint.PropertyExistence node)
           
 void visit(org.xcmis.search.model.operand.PropertyValue node)
           
 void visit(org.xcmis.search.model.Query node)
           
 void visit(org.xcmis.search.model.constraint.SameNode node)
           
 void visit(org.xcmis.search.model.source.join.SameNodeJoinCondition node)
           
 void visit(org.xcmis.search.model.operand.UpperCase node)
           
 
Methods inherited from class org.xcmis.search.Visitors.AbstractModelVisitor
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

Validator

public Validator(QueryExecutionContext context,
                 Map<org.xcmis.search.model.source.SelectorName,Schema.Table> selectorsByName)
Parameters:
context - the query context
selectorsByName - the tables by their name or alias, as defined by the selectors
Method Detail

checkSelectorExistance

public Schema.Table checkSelectorExistance(org.xcmis.search.model.source.SelectorName selectorName)
Check if selector exists in list of selectors.

Parameters:
selectorName -
Returns:

checkTableAndColumnExistance

public Schema.Column checkTableAndColumnExistance(org.xcmis.search.model.source.SelectorName selectorName,
                                                  String propertyName,
                                                  boolean columnIsRequired)
Check if selector exists in list of selectors.

Parameters:
selectorName -
propertyName -
columnIsRequired -

visit

public void visit(org.xcmis.search.model.constraint.ChildNode node)
           throws org.xcmis.search.VisitException
Specified by:
visit in interface org.xcmis.search.QueryObjectModelVisitor
Overrides:
visit in class org.xcmis.search.Visitors.AbstractModelVisitor
Throws:
org.xcmis.search.VisitException
See Also:
Visitors.AbstractModelVisitor.visit(org.xcmis.search.model.constraint.ChildNode)

visit

public void visit(org.xcmis.search.model.source.join.ChildNodeJoinCondition node)
           throws org.xcmis.search.VisitException
Specified by:
visit in interface org.xcmis.search.QueryObjectModelVisitor
Overrides:
visit in class org.xcmis.search.Visitors.AbstractModelVisitor
Throws:
org.xcmis.search.VisitException
See Also:
Visitors.AbstractModelVisitor.visit(org.xcmis.search.model.source.join.ChildNodeJoinCondition)

visit

public void visit(org.xcmis.search.model.column.Column node)
           throws org.xcmis.search.VisitException
Specified by:
visit in interface org.xcmis.search.QueryObjectModelVisitor
Overrides:
visit in class org.xcmis.search.Visitors.AbstractModelVisitor
Throws:
org.xcmis.search.VisitException
See Also:
Visitors.AbstractModelVisitor.visit(org.xcmis.search.model.column.Column)

visit

public void visit(org.xcmis.search.model.constraint.Comparison node)
           throws org.xcmis.search.VisitException
Specified by:
visit in interface org.xcmis.search.QueryObjectModelVisitor
Overrides:
visit in class org.xcmis.search.Visitors.AbstractModelVisitor
Throws:
org.xcmis.search.VisitException
See Also:
Visitors.AbstractModelVisitor.visit(org.xcmis.search.model.constraint.Comparison)

visit

public void visit(org.xcmis.search.model.constraint.DescendantNode node)
           throws org.xcmis.search.VisitException
Specified by:
visit in interface org.xcmis.search.QueryObjectModelVisitor
Overrides:
visit in class org.xcmis.search.Visitors.AbstractModelVisitor
Throws:
org.xcmis.search.VisitException
See Also:
Visitors.AbstractModelVisitor.visit(org.xcmis.search.model.constraint.DescendantNode)

visit

public void visit(org.xcmis.search.model.source.join.DescendantNodeJoinCondition node)
           throws org.xcmis.search.VisitException
Specified by:
visit in interface org.xcmis.search.QueryObjectModelVisitor
Overrides:
visit in class org.xcmis.search.Visitors.AbstractModelVisitor
Throws:
org.xcmis.search.VisitException
See Also:
Visitors.AbstractModelVisitor.visit(org.xcmis.search.model.source.join.DescendantNodeJoinCondition)

visit

public void visit(org.xcmis.search.model.source.join.EquiJoinCondition node)
           throws org.xcmis.search.VisitException
Specified by:
visit in interface org.xcmis.search.QueryObjectModelVisitor
Overrides:
visit in class org.xcmis.search.Visitors.AbstractModelVisitor
Throws:
org.xcmis.search.VisitException
See Also:
Visitors.AbstractModelVisitor.visit(org.xcmis.search.model.source.join.EquiJoinCondition)

visit

public void visit(org.xcmis.search.model.constraint.FullTextSearch node)
           throws org.xcmis.search.VisitException
Specified by:
visit in interface org.xcmis.search.QueryObjectModelVisitor
Overrides:
visit in class org.xcmis.search.Visitors.AbstractModelVisitor
Throws:
org.xcmis.search.VisitException
See Also:
Visitors.AbstractModelVisitor.visit(org.xcmis.search.model.constraint.FullTextSearch)

visit

public void visit(org.xcmis.search.model.operand.FullTextSearchScore node)
           throws org.xcmis.search.VisitException
Specified by:
visit in interface org.xcmis.search.QueryObjectModelVisitor
Overrides:
visit in class org.xcmis.search.Visitors.AbstractModelVisitor
Throws:
org.xcmis.search.VisitException
See Also:
Visitors.AbstractModelVisitor.visit(org.xcmis.search.model.operand.FullTextSearchScore)

visit

public void visit(org.xcmis.search.model.operand.Length node)
           throws org.xcmis.search.VisitException
Specified by:
visit in interface org.xcmis.search.QueryObjectModelVisitor
Overrides:
visit in class org.xcmis.search.Visitors.AbstractModelVisitor
Throws:
org.xcmis.search.VisitException
See Also:
Visitors.AbstractModelVisitor.visit(org.xcmis.search.model.operand.Length)

visit

public void visit(org.xcmis.search.model.operand.LowerCase node)
           throws org.xcmis.search.VisitException
Specified by:
visit in interface org.xcmis.search.QueryObjectModelVisitor
Overrides:
visit in class org.xcmis.search.Visitors.AbstractModelVisitor
Throws:
org.xcmis.search.VisitException
See Also:
Visitors.AbstractModelVisitor.visit(org.xcmis.search.model.operand.LowerCase)

visit

public void visit(org.xcmis.search.model.operand.NodeDepth depth)
           throws org.xcmis.search.VisitException
Specified by:
visit in interface org.xcmis.search.QueryObjectModelVisitor
Overrides:
visit in class org.xcmis.search.Visitors.AbstractModelVisitor
Throws:
org.xcmis.search.VisitException
See Also:
Visitors.AbstractModelVisitor.visit(org.xcmis.search.model.operand.NodeDepth)

visit

public void visit(org.xcmis.search.model.operand.NodeLocalName node)
           throws org.xcmis.search.VisitException
Specified by:
visit in interface org.xcmis.search.QueryObjectModelVisitor
Overrides:
visit in class org.xcmis.search.Visitors.AbstractModelVisitor
Throws:
org.xcmis.search.VisitException
See Also:
Visitors.AbstractModelVisitor.visit(org.xcmis.search.model.operand.NodeLocalName)

visit

public void visit(org.xcmis.search.model.operand.NodeName node)
           throws org.xcmis.search.VisitException
Specified by:
visit in interface org.xcmis.search.QueryObjectModelVisitor
Overrides:
visit in class org.xcmis.search.Visitors.AbstractModelVisitor
Throws:
org.xcmis.search.VisitException
See Also:
Visitors.AbstractModelVisitor.visit(org.xcmis.search.model.operand.NodeName)

visit

public void visit(org.xcmis.search.model.constraint.PropertyExistence node)
           throws org.xcmis.search.VisitException
Specified by:
visit in interface org.xcmis.search.QueryObjectModelVisitor
Overrides:
visit in class org.xcmis.search.Visitors.AbstractModelVisitor
Throws:
org.xcmis.search.VisitException
See Also:
Visitors.AbstractModelVisitor.visit(org.xcmis.search.model.constraint.PropertyExistence)

visit

public void visit(org.xcmis.search.model.operand.PropertyValue node)
           throws org.xcmis.search.VisitException
Specified by:
visit in interface org.xcmis.search.QueryObjectModelVisitor
Overrides:
visit in class org.xcmis.search.Visitors.AbstractModelVisitor
Throws:
org.xcmis.search.VisitException
See Also:
Visitors.AbstractModelVisitor.visit(org.xcmis.search.model.operand.PropertyValue)

visit

public void visit(org.xcmis.search.model.Query node)
           throws org.xcmis.search.VisitException
Specified by:
visit in interface org.xcmis.search.QueryObjectModelVisitor
Overrides:
visit in class org.xcmis.search.Visitors.AbstractModelVisitor
Throws:
org.xcmis.search.VisitException
See Also:
Visitors.AbstractModelVisitor.visit(org.xcmis.search.model.Query)

visit

public void visit(org.xcmis.search.model.ordering.Ordering node)
           throws org.xcmis.search.VisitException
Specified by:
visit in interface org.xcmis.search.QueryObjectModelVisitor
Overrides:
visit in class org.xcmis.search.Visitors.AbstractModelVisitor
Throws:
org.xcmis.search.VisitException
See Also:
Visitors.AbstractModelVisitor.visit(org.xcmis.search.model.ordering.Ordering)

visit

public void visit(org.xcmis.search.model.constraint.SameNode node)
           throws org.xcmis.search.VisitException
Specified by:
visit in interface org.xcmis.search.QueryObjectModelVisitor
Overrides:
visit in class org.xcmis.search.Visitors.AbstractModelVisitor
Throws:
org.xcmis.search.VisitException
See Also:
Visitors.AbstractModelVisitor.visit(org.xcmis.search.model.constraint.SameNode)

visit

public void visit(org.xcmis.search.model.source.join.SameNodeJoinCondition node)
           throws org.xcmis.search.VisitException
Specified by:
visit in interface org.xcmis.search.QueryObjectModelVisitor
Overrides:
visit in class org.xcmis.search.Visitors.AbstractModelVisitor
Throws:
org.xcmis.search.VisitException
See Also:
Visitors.AbstractModelVisitor.visit(org.xcmis.search.model.source.join.SameNodeJoinCondition)

visit

public void visit(org.xcmis.search.model.operand.UpperCase node)
           throws org.xcmis.search.VisitException
Specified by:
visit in interface org.xcmis.search.QueryObjectModelVisitor
Overrides:
visit in class org.xcmis.search.Visitors.AbstractModelVisitor
Throws:
org.xcmis.search.VisitException
See Also:
Visitors.AbstractModelVisitor.visit(org.xcmis.search.model.operand.UpperCase)


Copyright © 2003-2013 eXo Platform SAS. All Rights Reserved.