org.teiid.language
Class LanguageFactory

java.lang.Object
  extended by org.teiid.language.LanguageFactory

public class LanguageFactory
extends java.lang.Object

Factory for the construction of language objects that implement the language interfaces. This factory is provided by the connector environment and can be used in modifying the language interfaces if needed.


Field Summary
static LanguageFactory INSTANCE
          Public instance, holds no state so can be shared by everyone.
 
Constructor Summary
LanguageFactory()
           
 
Method Summary
 AggregateFunction createAggregate(java.lang.String name, boolean isDistinct, Expression expression, java.lang.Class<?> type)
           
 AndOr createAndOr(AndOr.Operator operator, Condition left, Condition right)
           
 Argument createArgument(Argument.Direction direction, Literal value, java.lang.Class<?> type, ProcedureParameter metadataReference)
           
 Call createCall(java.lang.String name, java.util.List<Argument> parameters, Procedure metadataReference)
           
 ColumnReference createColumnReference(java.lang.String name, NamedTable group, Column metadataReference, java.lang.Class<?> type)
           
 Comparison createCompareCriteria(Comparison.Operator operator, Expression leftExpression, Expression rightExpression)
           
 Delete createDelete(NamedTable group, Condition where)
           
 Exists createExists(Select query)
           
 Function createFunction(java.lang.String functionName, Expression[] args, java.lang.Class<?> type)
           
 Function createFunction(java.lang.String functionName, java.util.List<? extends Expression> args, java.lang.Class<?> type)
           
 GroupBy createGroupBy(java.util.List<Expression> items)
           
 In createIn(Expression leftExpression, java.util.List<Expression> rightExpressions, boolean isNegated)
           
 DerivedTable createInlineView(QueryExpression query, java.lang.String name)
           
 Insert createInsert(NamedTable group, java.util.List<ColumnReference> columns, InsertValueSource valueSource)
           
 ExpressionValueSource createInsertExpressionValueSource(java.util.List<Expression> values)
           
 IsNull createIsNullCriteria(Expression expression, boolean isNegated)
           
 Join createJoin(Join.JoinType joinType, TableReference leftItem, TableReference rightItem, Condition condition)
           
 Like createLikeCriteria(Expression leftExpression, Expression rightExpression, java.lang.Character escapeCharacter, boolean isNegated)
           
 Literal createLiteral(java.lang.Object value, java.lang.Class<?> type)
           
 NamedTable createNamedTable(java.lang.String name, java.lang.String correlationName, Table metadataReference)
           
 Not createNot(Condition criteria)
           
 OrderBy createOrderBy(java.util.List<SortSpecification> items)
           
 SortSpecification createOrderByItem(ColumnReference element, SortSpecification.Ordering direction)
           
 Select createQuery(java.util.List<DerivedColumn> select, boolean isDistinct, java.util.List<TableReference> from, Condition where, GroupBy groupBy, Condition having, OrderBy orderBy)
           
 ScalarSubquery createScalarSubquery(Select query)
           
 SearchedCase createSearchedCaseExpression(java.util.List<SearchedWhenClause> cases, Expression elseExpression, java.lang.Class<?> type)
           
 SearchedWhenClause createSearchedWhenCondition(Condition condition, Expression result)
           
 DerivedColumn createSelectSymbol(java.lang.String name, Expression expression)
           
 SetClause createSetClause(ColumnReference symbol, Expression value)
           
 SetQuery createSetOp(SetQuery.Operation operation, boolean all, QueryExpression leftQuery, QueryExpression rightQuery, OrderBy orderBy, Limit limit)
           
 SubqueryComparison createSubqueryCompareCriteria(Expression leftExpression, Comparison.Operator operator, SubqueryComparison.Quantifier quantifier, Select subquery)
           
 SubqueryIn createSubqueryInCriteria(Expression expression, Select subquery, boolean isNegated)
           
 Update createUpdate(NamedTable group, java.util.List<SetClause> updates, Condition criteria)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

INSTANCE

public static final LanguageFactory INSTANCE
Public instance, holds no state so can be shared by everyone.

Constructor Detail

LanguageFactory

public LanguageFactory()
Method Detail

createAggregate

public AggregateFunction createAggregate(java.lang.String name,
                                         boolean isDistinct,
                                         Expression expression,
                                         java.lang.Class<?> type)

createCompareCriteria

public Comparison createCompareCriteria(Comparison.Operator operator,
                                        Expression leftExpression,
                                        Expression rightExpression)

createAndOr

public AndOr createAndOr(AndOr.Operator operator,
                         Condition left,
                         Condition right)

createDelete

public Delete createDelete(NamedTable group,
                           Condition where)

createColumnReference

public ColumnReference createColumnReference(java.lang.String name,
                                             NamedTable group,
                                             Column metadataReference,
                                             java.lang.Class<?> type)

createExists

public Exists createExists(Select query)

createFunction

public Function createFunction(java.lang.String functionName,
                               Expression[] args,
                               java.lang.Class<?> type)

createFunction

public Function createFunction(java.lang.String functionName,
                               java.util.List<? extends Expression> args,
                               java.lang.Class<?> type)

createNamedTable

public NamedTable createNamedTable(java.lang.String name,
                                   java.lang.String correlationName,
                                   Table metadataReference)

createGroupBy

public GroupBy createGroupBy(java.util.List<Expression> items)

createIn

public In createIn(Expression leftExpression,
                   java.util.List<Expression> rightExpressions,
                   boolean isNegated)

createInsert

public Insert createInsert(NamedTable group,
                           java.util.List<ColumnReference> columns,
                           InsertValueSource valueSource)

createInsertExpressionValueSource

public ExpressionValueSource createInsertExpressionValueSource(java.util.List<Expression> values)

createIsNullCriteria

public IsNull createIsNullCriteria(Expression expression,
                                   boolean isNegated)

createJoin

public Join createJoin(Join.JoinType joinType,
                       TableReference leftItem,
                       TableReference rightItem,
                       Condition condition)

createLikeCriteria

public Like createLikeCriteria(Expression leftExpression,
                               Expression rightExpression,
                               java.lang.Character escapeCharacter,
                               boolean isNegated)

createLiteral

public Literal createLiteral(java.lang.Object value,
                             java.lang.Class<?> type)

createNot

public Not createNot(Condition criteria)

createOrderBy

public OrderBy createOrderBy(java.util.List<SortSpecification> items)

createOrderByItem

public SortSpecification createOrderByItem(ColumnReference element,
                                           SortSpecification.Ordering direction)

createArgument

public Argument createArgument(Argument.Direction direction,
                               Literal value,
                               java.lang.Class<?> type,
                               ProcedureParameter metadataReference)

createCall

public Call createCall(java.lang.String name,
                       java.util.List<Argument> parameters,
                       Procedure metadataReference)

createQuery

public Select createQuery(java.util.List<DerivedColumn> select,
                          boolean isDistinct,
                          java.util.List<TableReference> from,
                          Condition where,
                          GroupBy groupBy,
                          Condition having,
                          OrderBy orderBy)

createScalarSubquery

public ScalarSubquery createScalarSubquery(Select query)

createSearchedCaseExpression

public SearchedCase createSearchedCaseExpression(java.util.List<SearchedWhenClause> cases,
                                                 Expression elseExpression,
                                                 java.lang.Class<?> type)

createSearchedWhenCondition

public SearchedWhenClause createSearchedWhenCondition(Condition condition,
                                                      Expression result)

createSelectSymbol

public DerivedColumn createSelectSymbol(java.lang.String name,
                                        Expression expression)

createSubqueryCompareCriteria

public SubqueryComparison createSubqueryCompareCriteria(Expression leftExpression,
                                                        Comparison.Operator operator,
                                                        SubqueryComparison.Quantifier quantifier,
                                                        Select subquery)

createSubqueryInCriteria

public SubqueryIn createSubqueryInCriteria(Expression expression,
                                           Select subquery,
                                           boolean isNegated)

createUpdate

public Update createUpdate(NamedTable group,
                           java.util.List<SetClause> updates,
                           Condition criteria)

createInlineView

public DerivedTable createInlineView(QueryExpression query,
                                     java.lang.String name)

createSetOp

public SetQuery createSetOp(SetQuery.Operation operation,
                            boolean all,
                            QueryExpression leftQuery,
                            QueryExpression rightQuery,
                            OrderBy orderBy,
                            Limit limit)

createSetClause

public SetClause createSetClause(ColumnReference symbol,
                                 Expression value)


Copyright © 2011. All Rights Reserved.