|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.teiid.language.visitor.AbstractLanguageVisitor
org.teiid.language.visitor.SQLStringVisitor
public class SQLStringVisitor
Creates a SQL string for a LanguageObject subtree. Instances of this class are not reusable, and are not thread-safe.
Field Summary | |
---|---|
protected java.lang.StringBuilder |
buffer
|
protected static java.lang.String |
UNDEFINED
|
protected static java.lang.String |
UNDEFINED_PARAM
|
Constructor Summary | |
---|---|
SQLStringVisitor()
|
Method Summary | |
---|---|
void |
append(LanguageObject obj)
Appends the string form of the ILanguageObject 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(java.util.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 |
appendNestedCondition(AndOr parent,
Condition condition)
|
protected void |
appendSetOperation(SetQuery.Operation operation)
|
protected void |
appendSetQuery(SetQuery parent,
QueryExpression obj,
boolean right)
|
protected java.lang.String |
escapeString(java.lang.String str,
java.lang.String quote)
Creates a SQL-safe string. |
protected java.lang.String |
getName(AbstractMetadataRecord object)
Gets the name of a group or element from the RuntimeMetadata |
static java.lang.String |
getShortName(java.lang.String elementName)
|
protected java.lang.String |
getSourceComment(Command command)
|
static java.lang.String |
getSQLString(LanguageObject obj)
Gets the SQL string representation for a given ILanguageObject. |
protected boolean |
isInfixFunction(java.lang.String function)
|
protected java.lang.String |
replaceElementName(java.lang.String group,
java.lang.String element)
Take the specified derived group and element short names and determine a replacement element name to use instead. |
java.lang.String |
toString()
|
protected boolean |
useAsInGroupAlias()
Indicates whether group alias should be of the form "...FROM groupA AS X" or "...FROM groupA X". |
protected boolean |
useParensForJoins()
|
protected boolean |
useParensForSetQueries()
|
protected boolean |
useSelectLimit()
|
void |
visit(AggregateFunction obj)
|
void |
visit(AndOr obj)
|
void |
visit(Argument obj)
|
void |
visit(Call obj)
|
void |
visit(ColumnReference obj)
|
void |
visit(Comparison obj)
|
void |
visit(Delete obj)
|
void |
visit(DerivedColumn obj)
|
void |
visit(DerivedTable obj)
|
void |
visit(Exists obj)
|
void |
visit(ExpressionValueSource obj)
|
void |
visit(Function obj)
|
void |
visit(GroupBy obj)
|
void |
visit(In obj)
|
void |
visit(Insert 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(Not obj)
|
void |
visit(OrderBy obj)
|
void |
visit(ScalarSubquery obj)
|
void |
visit(SearchedCase obj)
|
void |
visit(SearchedWhenClause obj)
|
void |
visit(Select obj)
|
void |
visit(SetClause clause)
|
void |
visit(SetQuery obj)
|
void |
visit(SortSpecification obj)
|
void |
visit(SubqueryComparison obj)
|
void |
visit(SubqueryIn obj)
|
void |
visit(Update obj)
|
Methods inherited from class org.teiid.language.visitor.AbstractLanguageVisitor |
---|
visit, visitNode, visitNodes, visitNodes |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
protected static final java.lang.String UNDEFINED
protected static final java.lang.String UNDEFINED_PARAM
protected java.lang.StringBuilder buffer
Constructor Detail |
---|
public SQLStringVisitor()
Method Detail |
---|
protected java.lang.String getName(AbstractMetadataRecord object)
id
- the id of the group or element
public void append(LanguageObject obj)
obj
- the language object instanceprotected void append(java.util.List<? extends LanguageObject> items)
items
- a list of ILanguageObjectsprotected void append(LanguageObject[] items)
items
- an array of ILanguageObjectsprotected java.lang.String escapeString(java.lang.String str, java.lang.String quote)
str
- the input string
public java.lang.String toString()
toString
in class java.lang.Object
public void visit(AggregateFunction obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
public void visit(Comparison obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
public void visit(AndOr obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
protected void appendNestedCondition(AndOr parent, Condition condition)
public void visit(Delete obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
protected java.lang.String replaceElementName(java.lang.String group, java.lang.String element)
group
- Group name, may be nullelement
- Element name, never null
public void visit(ColumnReference obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
public static java.lang.String getShortName(java.lang.String elementName)
elementName
-
public void visit(Call obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
public void visit(Exists obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
protected boolean isInfixFunction(java.lang.String function)
public void visit(Function obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
public void visit(NamedTable obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
protected boolean useAsInGroupAlias()
public void visit(GroupBy obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
public void visit(In obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
public void visit(DerivedTable obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
public void visit(Insert obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
public void visit(ExpressionValueSource obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
public void visit(IsNull obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
public void visit(Join obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
public void visit(Like obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
public void visit(Limit obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
public void visit(Literal obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
public void visit(Not obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
public void visit(OrderBy obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
public void visit(SortSpecification obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
public void visit(Argument obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
public void visit(Select obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
public void visit(SearchedCase obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
public void visit(SearchedWhenClause obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
protected java.lang.String getSourceComment(Command command)
public void visit(ScalarSubquery obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
public void visit(DerivedColumn obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
public void visit(SubqueryComparison obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
public void visit(SubqueryIn obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
public void visit(Update obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
public void visit(SetClause clause)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
public void visit(SetQuery obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
protected void appendSetOperation(SetQuery.Operation operation)
protected boolean useParensForSetQueries()
protected void appendSetQuery(SetQuery parent, QueryExpression obj, boolean right)
public static java.lang.String getSQLString(LanguageObject obj)
obj
- the root of the ILanguageObject hierarchy that needs to be
converted. This can be any subtree, and does not need to be a top-level
command
protected boolean useParensForJoins()
protected boolean useSelectLimit()
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |