|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.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.Object
public void visit(IAggregate obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
com.metamatrix.data.visitor.LanguageObjectVisitor#visit(org.teiid.connector.language.IAggregate)
public void visit(ICompareCriteria obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
com.metamatrix.data.visitor.LanguageObjectVisitor#visit(org.teiid.connector.language.ICompareCriteria)
public void visit(ICompoundCriteria obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
com.metamatrix.data.visitor.LanguageObjectVisitor#visit(org.teiid.connector.language.ICompoundCriteria)
public void visit(IDelete obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
com.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 LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
com.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 LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
com.metamatrix.data.visitor.LanguageObjectVisitor#visit(com.metamatrix.data.language.IExecute)
public void visit(IExistsCriteria obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
public void visit(IFrom obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
com.metamatrix.data.visitor.LanguageObjectVisitor#visit(org.teiid.connector.language.IFrom)
public void visit(IFunction obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
com.metamatrix.data.visitor.LanguageObjectVisitor#visit(org.teiid.connector.language.IFunction)
public void visit(IGroup obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
com.metamatrix.data.visitor.LanguageObjectVisitor#visit(org.teiid.connector.language.IGroup)
protected boolean useAsInGroupAlias()
public void visit(IGroupBy obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
com.metamatrix.data.visitor.LanguageObjectVisitor#visit(org.teiid.connector.language.IGroupBy)
public void visit(IInCriteria obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
com.metamatrix.data.visitor.LanguageObjectVisitor#visit(org.teiid.connector.language.IInCriteria)
public void visit(IInlineView obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
public void visit(IInsert obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
com.metamatrix.data.visitor.LanguageObjectVisitor#visit(org.teiid.connector.language.IInsert)
public void visit(IBulkInsert obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
public void visit(IIsNullCriteria obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
com.metamatrix.data.visitor.LanguageObjectVisitor#visit(org.teiid.connector.language.IIsNullCriteria)
public void visit(IJoin obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
com.metamatrix.data.visitor.LanguageObjectVisitor#visit(org.teiid.connector.language.IJoin)
public void visit(ILikeCriteria obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
com.metamatrix.data.visitor.LanguageObjectVisitor#visit(org.teiid.connector.language.ILikeCriteria)
public void visit(ILimit obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
public void visit(ILiteral obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
com.metamatrix.data.visitor.LanguageObjectVisitor#visit(org.teiid.connector.language.ILiteral)
public void visit(INotCriteria obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
com.metamatrix.data.visitor.LanguageObjectVisitor#visit(org.teiid.connector.language.INotCriteria)
public void visit(IOrderBy obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
com.metamatrix.data.visitor.LanguageObjectVisitor#visit(org.teiid.connector.language.IOrderBy)
public void visit(IOrderByItem obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
com.metamatrix.data.visitor.LanguageObjectVisitor#visit(org.teiid.connector.language.IOrderByItem)
public void visit(IParameter obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
com.metamatrix.data.visitor.LanguageObjectVisitor#visit(org.teiid.connector.language.IParameter)
public void visit(IQuery obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
com.metamatrix.data.visitor.LanguageObjectVisitor#visit(org.teiid.connector.language.IQuery)
public void visit(ISearchedCaseExpression obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
com.metamatrix.data.visitor.LanguageObjectVisitor#visit(org.teiid.connector.language.ISearchedCaseExpression)
public void visit(ISelect obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
com.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 LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
public void visit(ISelectSymbol obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
com.metamatrix.data.visitor.LanguageObjectVisitor#visit(org.teiid.connector.language.ISelectSymbol)
public void visit(ISubqueryCompareCriteria obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
public void visit(ISubqueryInCriteria obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
public void visit(IUpdate obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
com.metamatrix.data.visitor.LanguageObjectVisitor#visit(org.teiid.connector.language.IUpdate)
public void visit(ISetClauseList obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
public void visit(ISetClause clause)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
public void visit(ISetQuery obj)
visit
in interface LanguageObjectVisitor
visit
in class AbstractLanguageVisitor
protected 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 |