public class MongoDBSelectVisitor extends HierarchyVisitor
Modifier and Type | Field and Description |
---|---|
protected ArrayList<TranslatorException> |
exceptions |
protected MongoDBExecutionFactory |
executionFactory |
protected ConcurrentHashMap<Object,org.teiid.translator.mongodb.ColumnDetail> |
expressionMap |
protected com.mongodb.BasicDBObject |
group |
protected com.mongodb.DBObject |
having |
protected LinkedList<org.teiid.translator.mongodb.MongoDocument> |
joinedDocuments |
protected Integer |
limit |
protected com.mongodb.DBObject |
match |
protected MergePlanner |
mergePlanner |
protected RuntimeMetadata |
metadata |
protected org.teiid.translator.mongodb.MongoDocument |
mongoDoc |
protected Stack<Object> |
onGoingExpression |
protected ArrayList<Condition> |
pendingConditions |
protected com.mongodb.BasicDBObject |
project |
protected boolean |
projectBeforeMatch |
protected ArrayList<String> |
selectColumnReferences |
protected ArrayList<String> |
selectColumns |
protected Integer |
skip |
protected com.mongodb.DBObject |
sort |
Constructor and Description |
---|
MongoDBSelectVisitor(MongoDBExecutionFactory executionFactory,
RuntimeMetadata metadata) |
Modifier and Type | Method and Description |
---|---|
void |
append(LanguageObject obj)
Appends the string form of the LanguageObject to the current buffer.
|
protected void |
append(LanguageObject[] items)
Simple utility to append an array of language objects to the current buffer
by creating a comma-separated list.
|
protected void |
append(List<? extends LanguageObject> items)
Simple utility to append a list of language objects to the current buffer
by creating a comma-separated list.
|
protected void |
buildComparisionQuery(Comparison obj,
Object rightExpr,
com.mongodb.QueryBuilder query) |
protected com.mongodb.BasicDBObject |
buildFunctionQuery(Comparison obj,
com.mongodb.BasicDBObject leftExpr,
Object rightExpr) |
protected com.mongodb.QueryBuilder |
buildInQuery(In obj,
com.mongodb.QueryBuilder query) |
protected com.mongodb.QueryBuilder |
buildIsNullQuery(IsNull obj,
com.mongodb.QueryBuilder query) |
protected com.mongodb.QueryBuilder |
buildLikeQuery(Like obj,
com.mongodb.QueryBuilder query) |
String |
getColumnName(ColumnReference obj) |
void |
visit(AggregateFunction obj) |
void |
visit(AndOr obj) |
void |
visit(Array array) |
void |
visit(ColumnReference obj) |
void |
visit(Comparison obj) |
void |
visit(DerivedColumn obj) |
void |
visit(Function obj) |
void |
visit(GroupBy obj) |
void |
visit(In obj) |
void |
visit(IsNull obj) |
void |
visit(Join obj) |
void |
visit(Like obj) |
void |
visit(Limit obj) |
void |
visit(Literal obj) |
void |
visit(NamedTable obj) |
void |
visit(OrderBy obj) |
void |
visit(Select obj) |
void |
visit(SortSpecification obj) |
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, visitNode, visitNodes, visitNodes
protected MongoDBExecutionFactory executionFactory
protected RuntimeMetadata metadata
protected ArrayList<TranslatorException> exceptions
protected ConcurrentHashMap<Object,org.teiid.translator.mongodb.ColumnDetail> expressionMap
protected org.teiid.translator.mongodb.MongoDocument mongoDoc
protected com.mongodb.BasicDBObject project
protected Integer limit
protected Integer skip
protected com.mongodb.DBObject sort
protected com.mongodb.DBObject match
protected com.mongodb.DBObject having
protected com.mongodb.BasicDBObject group
protected boolean projectBeforeMatch
protected MergePlanner mergePlanner
protected LinkedList<org.teiid.translator.mongodb.MongoDocument> joinedDocuments
public MongoDBSelectVisitor(MongoDBExecutionFactory executionFactory, RuntimeMetadata metadata)
public void append(LanguageObject obj)
obj
- the language object instanceprotected void append(List<? extends LanguageObject> items)
items
- a list of LanguageObjectsprotected void append(LanguageObject[] items)
items
- an array of LanguageObjectspublic String getColumnName(ColumnReference obj)
public void visit(DerivedColumn obj)
visit
in interface LanguageObjectVisitor
visit
in class HierarchyVisitor
public void visit(ColumnReference obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
public void visit(AggregateFunction obj)
visit
in interface LanguageObjectVisitor
visit
in class HierarchyVisitor
public void visit(Function obj)
visit
in interface LanguageObjectVisitor
visit
in class HierarchyVisitor
public void visit(NamedTable obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
public void visit(Join obj)
visit
in interface LanguageObjectVisitor
visit
in class HierarchyVisitor
public void visit(Select obj)
visit
in interface LanguageObjectVisitor
visit
in class HierarchyVisitor
public void visit(Comparison obj)
visit
in interface LanguageObjectVisitor
visit
in class HierarchyVisitor
protected com.mongodb.BasicDBObject buildFunctionQuery(Comparison obj, com.mongodb.BasicDBObject leftExpr, Object rightExpr)
protected void buildComparisionQuery(Comparison obj, Object rightExpr, com.mongodb.QueryBuilder query)
public void visit(AndOr obj)
visit
in interface LanguageObjectVisitor
visit
in class HierarchyVisitor
public void visit(Array array)
visit
in interface LanguageObjectVisitor
visit
in class HierarchyVisitor
public void visit(Literal obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
public void visit(In obj)
visit
in interface LanguageObjectVisitor
visit
in class HierarchyVisitor
protected com.mongodb.QueryBuilder buildInQuery(In obj, com.mongodb.QueryBuilder query)
public void visit(IsNull obj)
visit
in interface LanguageObjectVisitor
visit
in class HierarchyVisitor
protected com.mongodb.QueryBuilder buildIsNullQuery(IsNull obj, com.mongodb.QueryBuilder query)
public void visit(Like obj)
visit
in interface LanguageObjectVisitor
visit
in class HierarchyVisitor
protected com.mongodb.QueryBuilder buildLikeQuery(Like obj, com.mongodb.QueryBuilder query)
public void visit(Limit obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
public void visit(OrderBy obj)
visit
in interface LanguageObjectVisitor
visit
in class HierarchyVisitor
public void visit(SortSpecification obj)
visit
in interface LanguageObjectVisitor
visit
in class HierarchyVisitor
public void visit(GroupBy obj)
visit
in interface LanguageObjectVisitor
visit
in class HierarchyVisitor
Copyright © 2019. All rights reserved.