|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.teiid.connector.visitor.framework.AbstractLanguageVisitor
org.teiid.connector.visitor.util.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.StringBuffer |
buffer
|
protected static java.lang.String |
UNDEFINED
|
protected static java.lang.String |
UNDEFINED_PARAM
|
| Fields inherited from interface org.teiid.connector.visitor.util.SQLReservedWords |
|---|
ALL, ALL_COLS, AND, ANY, AS, ASC, AVG, BEGIN, BETWEEN, BIGDECIMAL, BIGINTEGER, BREAK, BY, BYTE, CASE, CAST, CHAR, COMMA, CONTINUE, CONVERT, COUNT, CREATE, CRITERIA, CROSS, DATE, DEBUG, DECLARE, DELETE, DESC, DISTINCT, DOT, DOUBLE, ELSE, END, EQ, ERROR, ESCAPE, EXCEPT, EXEC, EXECUTE, EXISTS, FALSE, FLOAT, FOR, FROM, FULL, GE, GROUP, GT, HAS, HAVING, IF, IN, INNER, INSERT, INTEGER, INTERSECT, INTO, IS, JOIN, LE, LEFT, LIKE, LIMIT, LONG, LOOP, LPAREN, LT, MAKEDEP, MAX, MIN, NE, NOT, NULL, OBJECT, ON, OPTION, OR, ORDER, OUTER, PROCEDURE, QUOTE, RIGHT, RPAREN, SELECT, SET, SHORT, SHOWPLAN, SOME, SPACE, SQL_TSI_DAY, SQL_TSI_FRAC_SECOND, SQL_TSI_HOUR, SQL_TSI_MINUTE, SQL_TSI_MONTH, SQL_TSI_QUARTER, SQL_TSI_SECOND, SQL_TSI_WEEK, SQL_TSI_YEAR, STRING, SUM, THEN, TIME, TIMESTAMP, TIMESTAMPADD, TIMESTAMPDIFF, TRANSLATE, TRUE, UNION, UNKNOWN, UPDATE, USING, VALUES, VIRTUAL, WHEN, WHERE, WHILE, WITH |
| Constructor Summary | |
|---|---|
SQLStringVisitor()
|
|
| Method Summary | |
|---|---|
void |
append(ILanguageObject obj)
Appends the string form of the ILanguageObject to the current buffer. |
protected void |
append(ILanguageObject[] 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 ILanguageObject> items)
Simple utility to append a list of language objects to the current buffer by creating a comma-separated list. |
protected void |
appendSetOperation(ISetQuery.Operation operation)
|
protected void |
appendSetQuery(IQueryCommand obj)
|
protected java.lang.String |
escapeString(java.lang.String str)
Creates a SQL-safe string. |
protected java.lang.String |
getName(MetadataObject 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(ICommand command)
|
static java.lang.String |
getSQLString(ILanguageObject obj)
Gets the SQL string representation for a given ILanguageObject. |
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 |
useParensForSetQueries()
|
void |
visit(IAggregate obj)
|
void |
visit(IBulkInsert obj)
|
void |
visit(ICompareCriteria obj)
|
void |
visit(ICompoundCriteria obj)
|
void |
visit(IDelete obj)
|
void |
visit(IElement obj)
|
void |
visit(IExistsCriteria obj)
|
void |
visit(IFrom obj)
|
void |
visit(IFunction obj)
|
void |
visit(IGroup obj)
|
void |
visit(IGroupBy obj)
|
void |
visit(IInCriteria obj)
|
void |
visit(IInlineView obj)
|
void |
visit(IInsert obj)
|
void |
visit(IIsNullCriteria obj)
|
void |
visit(IJoin obj)
|
void |
visit(ILikeCriteria obj)
|
void |
visit(ILimit obj)
|
void |
visit(ILiteral obj)
|
void |
visit(INotCriteria obj)
|
void |
visit(IOrderBy obj)
|
void |
visit(IOrderByItem obj)
|
void |
visit(IParameter obj)
|
void |
visit(IProcedure obj)
|
void |
visit(IQuery obj)
|
void |
visit(IScalarSubquery obj)
|
void |
visit(ISearchedCaseExpression obj)
|
void |
visit(ISelect obj)
|
void |
visit(ISelectSymbol obj)
|
void |
visit(ISetClause clause)
|
void |
visit(ISetClauseList obj)
|
void |
visit(ISetQuery obj)
|
void |
visit(ISubqueryCompareCriteria obj)
|
void |
visit(ISubqueryInCriteria obj)
|
void |
visit(IUpdate obj)
|
| Methods inherited from class org.teiid.connector.visitor.framework.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.StringBuffer buffer
| Constructor Detail |
|---|
public SQLStringVisitor()
| Method Detail |
|---|
protected java.lang.String getName(MetadataObject object)
id - the id of the group or element
public void append(ILanguageObject obj)
obj - the language object instanceprotected void append(java.util.List<? extends ILanguageObject> items)
items - a list of ILanguageObjectsprotected void append(ILanguageObject[] items)
items - an array of ILanguageObjectsprotected java.lang.String escapeString(java.lang.String str)
str - the input string
public java.lang.String toString()
toString in class java.lang.Objectpublic void visit(IAggregate obj)
visit in interface LanguageObjectVisitorvisit in class AbstractLanguageVisitorcom.metamatrix.data.visitor.LanguageObjectVisitor#visit(org.teiid.connector.language.IAggregate)public void visit(ICompareCriteria obj)
visit in interface LanguageObjectVisitorvisit in class AbstractLanguageVisitorcom.metamatrix.data.visitor.LanguageObjectVisitor#visit(org.teiid.connector.language.ICompareCriteria)public void visit(ICompoundCriteria obj)
visit in interface LanguageObjectVisitorvisit in class AbstractLanguageVisitorcom.metamatrix.data.visitor.LanguageObjectVisitor#visit(org.teiid.connector.language.ICompoundCriteria)public void visit(IDelete obj)
visit in interface LanguageObjectVisitorvisit in class AbstractLanguageVisitorcom.metamatrix.data.visitor.LanguageObjectVisitor#visit(org.teiid.connector.language.IDelete)
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(IElement obj)
visit in interface LanguageObjectVisitorvisit in class AbstractLanguageVisitorcom.metamatrix.data.visitor.LanguageObjectVisitor#visit(org.teiid.connector.language.IElement)public static java.lang.String getShortName(java.lang.String elementName)
elementName -
public void visit(IProcedure obj)
visit in interface LanguageObjectVisitorvisit in class AbstractLanguageVisitorcom.metamatrix.data.visitor.LanguageObjectVisitor#visit(com.metamatrix.data.language.IExecute)public void visit(IExistsCriteria obj)
visit in interface LanguageObjectVisitorvisit in class AbstractLanguageVisitorpublic void visit(IFrom obj)
visit in interface LanguageObjectVisitorvisit in class AbstractLanguageVisitorcom.metamatrix.data.visitor.LanguageObjectVisitor#visit(org.teiid.connector.language.IFrom)public void visit(IFunction obj)
visit in interface LanguageObjectVisitorvisit in class AbstractLanguageVisitorcom.metamatrix.data.visitor.LanguageObjectVisitor#visit(org.teiid.connector.language.IFunction)public void visit(IGroup obj)
visit in interface LanguageObjectVisitorvisit in class AbstractLanguageVisitorcom.metamatrix.data.visitor.LanguageObjectVisitor#visit(org.teiid.connector.language.IGroup)protected boolean useAsInGroupAlias()
public void visit(IGroupBy obj)
visit in interface LanguageObjectVisitorvisit in class AbstractLanguageVisitorcom.metamatrix.data.visitor.LanguageObjectVisitor#visit(org.teiid.connector.language.IGroupBy)public void visit(IInCriteria obj)
visit in interface LanguageObjectVisitorvisit in class AbstractLanguageVisitorcom.metamatrix.data.visitor.LanguageObjectVisitor#visit(org.teiid.connector.language.IInCriteria)public void visit(IInlineView obj)
visit in interface LanguageObjectVisitorvisit in class AbstractLanguageVisitorpublic void visit(IInsert obj)
visit in interface LanguageObjectVisitorvisit in class AbstractLanguageVisitorcom.metamatrix.data.visitor.LanguageObjectVisitor#visit(org.teiid.connector.language.IInsert)public void visit(IBulkInsert obj)
visit in interface LanguageObjectVisitorvisit in class AbstractLanguageVisitorpublic void visit(IIsNullCriteria obj)
visit in interface LanguageObjectVisitorvisit in class AbstractLanguageVisitorcom.metamatrix.data.visitor.LanguageObjectVisitor#visit(org.teiid.connector.language.IIsNullCriteria)public void visit(IJoin obj)
visit in interface LanguageObjectVisitorvisit in class AbstractLanguageVisitorcom.metamatrix.data.visitor.LanguageObjectVisitor#visit(org.teiid.connector.language.IJoin)public void visit(ILikeCriteria obj)
visit in interface LanguageObjectVisitorvisit in class AbstractLanguageVisitorcom.metamatrix.data.visitor.LanguageObjectVisitor#visit(org.teiid.connector.language.ILikeCriteria)public void visit(ILimit obj)
visit in interface LanguageObjectVisitorvisit in class AbstractLanguageVisitorpublic void visit(ILiteral obj)
visit in interface LanguageObjectVisitorvisit in class AbstractLanguageVisitorcom.metamatrix.data.visitor.LanguageObjectVisitor#visit(org.teiid.connector.language.ILiteral)public void visit(INotCriteria obj)
visit in interface LanguageObjectVisitorvisit in class AbstractLanguageVisitorcom.metamatrix.data.visitor.LanguageObjectVisitor#visit(org.teiid.connector.language.INotCriteria)public void visit(IOrderBy obj)
visit in interface LanguageObjectVisitorvisit in class AbstractLanguageVisitorcom.metamatrix.data.visitor.LanguageObjectVisitor#visit(org.teiid.connector.language.IOrderBy)public void visit(IOrderByItem obj)
visit in interface LanguageObjectVisitorvisit in class AbstractLanguageVisitorcom.metamatrix.data.visitor.LanguageObjectVisitor#visit(org.teiid.connector.language.IOrderByItem)public void visit(IParameter obj)
visit in interface LanguageObjectVisitorvisit in class AbstractLanguageVisitorcom.metamatrix.data.visitor.LanguageObjectVisitor#visit(org.teiid.connector.language.IParameter)public void visit(IQuery obj)
visit in interface LanguageObjectVisitorvisit in class AbstractLanguageVisitorcom.metamatrix.data.visitor.LanguageObjectVisitor#visit(org.teiid.connector.language.IQuery)public void visit(ISearchedCaseExpression obj)
visit in interface LanguageObjectVisitorvisit in class AbstractLanguageVisitorcom.metamatrix.data.visitor.LanguageObjectVisitor#visit(org.teiid.connector.language.ISearchedCaseExpression)public void visit(ISelect obj)
visit in interface LanguageObjectVisitorvisit in class AbstractLanguageVisitorcom.metamatrix.data.visitor.LanguageObjectVisitor#visit(org.teiid.connector.language.ISelect)protected java.lang.String getSourceComment(ICommand command)
public void visit(IScalarSubquery obj)
visit in interface LanguageObjectVisitorvisit in class AbstractLanguageVisitorpublic void visit(ISelectSymbol obj)
visit in interface LanguageObjectVisitorvisit in class AbstractLanguageVisitorcom.metamatrix.data.visitor.LanguageObjectVisitor#visit(org.teiid.connector.language.ISelectSymbol)public void visit(ISubqueryCompareCriteria obj)
visit in interface LanguageObjectVisitorvisit in class AbstractLanguageVisitorpublic void visit(ISubqueryInCriteria obj)
visit in interface LanguageObjectVisitorvisit in class AbstractLanguageVisitorpublic void visit(IUpdate obj)
visit in interface LanguageObjectVisitorvisit in class AbstractLanguageVisitorcom.metamatrix.data.visitor.LanguageObjectVisitor#visit(org.teiid.connector.language.IUpdate)public void visit(ISetClauseList obj)
visit in interface LanguageObjectVisitorvisit in class AbstractLanguageVisitorpublic void visit(ISetClause clause)
visit in interface LanguageObjectVisitorvisit in class AbstractLanguageVisitorpublic void visit(ISetQuery obj)
visit in interface LanguageObjectVisitorvisit in class AbstractLanguageVisitorprotected void appendSetOperation(ISetQuery.Operation operation)
protected boolean useParensForSetQueries()
protected void appendSetQuery(IQueryCommand obj)
public static java.lang.String getSQLString(ILanguageObject 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
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||