Class RedshiftExecutionFactory
- java.lang.Object
-
- org.teiid.translator.ExecutionFactory<DataSource,Connection>
-
- org.teiid.translator.jdbc.JDBCExecutionFactory
-
- org.teiid.translator.jdbc.postgresql.PostgreSQLExecutionFactory
-
- org.teiid.translator.jdbc.redshift.RedshiftExecutionFactory
-
@Translator(name="redshift", description="A translator for Redshift") public class RedshiftExecutionFactory extends PostgreSQLExecutionFactory
Translator class for Red Shift.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.teiid.translator.jdbc.JDBCExecutionFactory
JDBCExecutionFactory.StructRetrieval
-
Nested classes/interfaces inherited from class org.teiid.translator.ExecutionFactory
ExecutionFactory.Format, ExecutionFactory.NullOrder, ExecutionFactory.SupportedJoinCriteria, ExecutionFactory.TransactionSupport
-
-
Field Summary
-
Fields inherited from class org.teiid.translator.jdbc.postgresql.PostgreSQLExecutionFactory
convertModifier, EIGHT_0, EIGHT_1, EIGHT_2, EIGHT_3, EIGHT_4, NINE_0, NINE_3, NINE_4, ONE_3, ONE_4, ONE_5, parseModifier, POSTGRESQL, TWO_0
-
Fields inherited from class org.teiid.translator.jdbc.JDBCExecutionFactory
DEFAULT_MAX_DEPENDENT_PREDICATES, DEFAULT_MAX_IN_CRITERIA, DEFAULT_TIME_ZONE, dialect
-
Fields inherited from class org.teiid.translator.ExecutionFactory
DEFAULT_MAX_FROM_GROUPS, DEFAULT_MAX_IN_CRITERIA_SIZE, DEFAULT_MAX_PROJECTED_COLUMNS
-
-
Constructor Summary
Constructors Constructor Description RedshiftExecutionFactory()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ObjectconvertToken(String group)Convert to a new parsing token or return null if not possibleStringgetCreateTemporaryTablePostfix(boolean inTransaction)List<String>getSupportedFunctions()Get list of all supported function names.booleanhasTimeType()Return false to indicate that time support should be emulated with timestamps.voidintializeConnectionAfterCancel(Connection c)Implemented if theConnectionneeds initialized after a statement cancelvoidstart()Initialize the connector with supplied configurationbooleansupportsConvert(int fromType, int toType)Used for fine grained control of convert/cast pushdown.booleansupportsQuantifiedCompareCriteriaAll()Support indicates connector accepts the quantified comparison criteria that use ALLbooleansupportsQuantifiedCompareCriteriaSome()Support indicates connector accepts the quantified comparison criteria that use SOME-
Methods inherited from class org.teiid.translator.jdbc.postgresql.PostgreSQLExecutionFactory
addDefaultEscape, bindValue, getDefaultNullOrder, getHibernateDialectClassName, getMaxProjectedColumns, getMetadataProcessor, getPostGisVersion, getSQLConversionVisitor, getTimestampNanoPrecision, initCapabilities, isProjSupported, loadedTemporaryTable, preserveNullTyping, retrieveGeographyValue, retrieveGeometryValue, retrieveValue, retrieveValue, setPostGisVersion, setProjSupported, supportsAdvancedOlapOperations, supportsAggregatesEnhancedNumeric, supportsArrayAgg, supportsArrayType, supportsCommonTableExpressions, supportsElementaryOlapOperations, supportsExcept, supportsFormatLiteral, supportsFunctionsInGroupBy, supportsGeographyType, supportsInlineViews, supportsIntersect, supportsIsDistinctCriteria, supportsLateralJoin, supportsLikeRegex, supportsOnlyFormatLiterals, supportsOrderByNullOrdering, supportsRecursiveCommonTableExpressions, supportsRowLimit, supportsRowOffset, supportsSelectExpressionArrayType, supportsSelectWithoutFrom, supportsSimilarTo, supportsStringAgg, supportsWindowDistinctAggregates, translate, translateGeographySelect, translateGeometrySelect, translateLimit, translateLiteralBinaryType, translateLiteralBoolean, translateLiteralDate, translateLiteralTime, translateLiteralTimestamp, usesDatabaseVersion, useStreamsForLobs
-
Methods inherited from class org.teiid.translator.jdbc.JDBCExecutionFactory
addSourceComment, afterInitialConnectionObtained, closeConnection, convertObject, createDirectExecution, createMetadataProcessor, createProcedureExecution, createResultSetExecution, createTempTable, createUpdateExecution, executeStoredProcedure, formatDateValue, formatDateValue, getCommentFormat, getConnection, getCreateTemporaryTableString, getCreateTempTableSQL, getDatabaseCalendar, getDatabaseTimeZone, getDatabaseVersion, getDefaultSupportedFunctions, getDialect, getFunctionModifiers, getLateralKeyword, getLikeRegexString, getMaxPreparedInsertBatchSize, getMetadata, getRemovePushdownCharacters, getSetOperationString, getSourceComment, getStructRetrieval, getTemporaryTableName, getVersion, isCharacterType, isDefaultTimeZone, isEnableDependentJoins, isExtendedAscii, isNonAscii, isNonAscii, isNonAsciiFunction, isSourceRequired, isSourceRequiredForCapabilities, isTrimStrings, obtainedConnection, registerFunctionModifier, registerSpecificTypeOfOutParameter, replaceElementName, retrieveGeographyValue, retrieveGeometryValue, setCommentFormat, setDatabaseTimeZone, setDatabaseVersion, setDatabaseVersion, setEnableDependentJoins, setFetchSize, setMaxPreparedInsertBatchSize, setRemovePushdownCharacters, setStructRetrieval, setTrimStrings, setUseBindingsForDependentJoin, setUseBindVariables, setUseCommentsInSourceQuery, supportsAggregatesAvg, supportsAggregatesCount, supportsAggregatesCountStar, supportsAggregatesDistinct, supportsAggregatesMax, supportsAggregatesMin, supportsAggregatesSum, supportsAliasedTable, supportsBatchedUpdates, supportsBooleanExpressions, supportsBulkUpdate, supportsCompareCriteriaEquals, supportsCompareCriteriaOrdered, supportsCorrelatedSubqueries, supportsDependentJoins, supportsExistsCriteria, supportsFullDependentJoins, supportsGeneratedKeys, supportsGeneratedKeys, supportsGroupBy, supportsHaving, supportsInCriteria, supportsInCriteriaSubquery, supportsInsertWithQueryExpression, supportsIsNullCriteria, supportsLikeCriteria, supportsLikeCriteriaEscapeCharacter, supportsNotCriteria, supportsOrCriteria, supportsOrderByUnrelated, supportsProcedureParameterExpression, supportsScalarSubqueries, supportsSearchedCaseExpressions, supportsSelectExpression, supportsSelfJoins, supportsSetQueryOrderBy, supportsUnions, tempTableRequiresTransaction, translateCommand, translateGeographyLiteral, translateGeographyParameter, translateGeometryLiteral, translateGeometryParameter, useAsInGroupAlias, useBindingsForDependentJoin, useBindVariables, useColumnNamesForGeneratedKeys, useCommentsInSourceQuery, useNBindingType, useParensForJoins, useParensForSetQueries, usePreparedStatements, useScientificNotation, useSelectLimit, useUnicodePrefix, useWithRollup
-
Methods inherited from class org.teiid.translator.ExecutionFactory
addPushDownFunction, areLobsUsableAfterClose, createExecution, getCacheDirective, getCollationLocale, getConnection, getDirectQueryProcedureName, getExcludedCommonTableExpressionName, getInstance, getLanguageFactory, getMaxDependentInPredicates, getMaxFromGroups, getMaxInCriteriaSize, getNativeQueryProcedureName, getPushDownFunctions, getRequiredLikeEscape, getSupportedJoinCriteria, getTransactionSupport, getTypeFacility, isCopyLobs, isForkable, isImmutable, isSourceRequiredForMetadata, isThreadBound, requiresCriteria, returnsSingleUpdateCount, setCollationLocale, setCopyLobs, setDirectQueryProcedureName, setExcludedCommonTableExpressionName, setImmutable, setMaxDependentInPredicates, setMaxInCriteriaSize, setNativeQueryProcedureName, setRequiresCriteria, setSourceRequired, setSourceRequiredForMetadata, setSupportedJoinCriteria, setSupportsDirectQueryProcedure, setSupportsFullOuterJoins, setSupportsInnerJoins, setSupportsNativeQueries, setSupportsOrderBy, setSupportsOuterJoins, setSupportsSelectDistinct, setThreadBound, setTransactionSupport, supportsAggregatesCountBig, supportsCompareCriteriaOrderedExclusive, supportsCorrelatedSubqueryLimit, supportsDirectQueryProcedure, supportsFullOuterJoins, supportsGroupByMultipleDistinctAggregates, supportsGroupByRollup, supportsInnerJoins, supportsLateralJoinCondition, supportsListAgg, supportsMultipleOpenExecutions, supportsNativeQueries, supportsOnlyCorrelatedSubqueries, supportsOnlyLateralJoinProcedure, supportsOnlyLiteralComparison, supportsOnlyRelationshipStyleJoins, supportsOnlySingleTableGroupBy, supportsOnlyTimestampAddLiteral, supportsOrderBy, supportsOrderByWithExtendedGrouping, supportsOuterJoins, supportsPartialFiltering, supportsProcedureTable, supportsScalarSubqueryProjection, supportsSelectDistinct, supportsSetQueryLimitOffset, supportsSubqueryCommonTableExpressions, supportsSubqueryInOn, supportsUpsert, supportsWindowFrameClause, supportsWindowFunctionCumeDist, supportsWindowFunctionNthValue, supportsWindowFunctionNtile, supportsWindowFunctionPercentRank, supportsWindowOrderByWithAggregates, useAnsiJoin
-
-
-
-
Method Detail
-
start
public void start() throws TranslatorExceptionDescription copied from class:ExecutionFactoryInitialize the connector with supplied configuration- Overrides:
startin classPostgreSQLExecutionFactory- Throws:
TranslatorException
-
intializeConnectionAfterCancel
public void intializeConnectionAfterCancel(Connection c) throws SQLException
Description copied from class:JDBCExecutionFactoryImplemented if theConnectionneeds initialized after a statement cancel- Overrides:
intializeConnectionAfterCancelin classJDBCExecutionFactory- Throws:
SQLException
-
hasTimeType
public boolean hasTimeType()
Description copied from class:JDBCExecutionFactoryReturn false to indicate that time support should be emulated with timestamps.- Overrides:
hasTimeTypein classJDBCExecutionFactory- Returns:
- true if database has a time type
-
supportsConvert
public boolean supportsConvert(int fromType, int toType)Description copied from class:ExecutionFactoryUsed for fine grained control of convert/cast pushdown. TheExecutionFactory.getSupportedFunctions()should containSourceSystemFunctions.CONVERT. This method can then return false to indicate a lack of specific support. The engine will does not care about an unnecessary conversion where fromType == toType. By default lob conversion is disabled.- Overrides:
supportsConvertin classExecutionFactory<DataSource,Connection>- Returns:
- true if the given conversion is supported.
- See Also:
TypeFacility.RUNTIME_CODES,TypeFacility.RUNTIME_CODES
-
getSupportedFunctions
public List<String> getSupportedFunctions()
Description copied from class:ExecutionFactoryGet list of all supported function names. Arithmetic functions have names like "+".- Overrides:
getSupportedFunctionsin classPostgreSQLExecutionFactory- See Also:
for a listing of system pushdown functions. Note that not all system functions are listed as some functions will use a common name such as CONCAT vs. the || operator, and other functions will be rewritten and not pushed down, such as SPACE. Note: User defined functions should be specified fully qualified.
-
supportsQuantifiedCompareCriteriaAll
public boolean supportsQuantifiedCompareCriteriaAll()
Description copied from class:ExecutionFactorySupport indicates connector accepts the quantified comparison criteria that use ALL- Overrides:
supportsQuantifiedCompareCriteriaAllin classJDBCExecutionFactory
-
supportsQuantifiedCompareCriteriaSome
public boolean supportsQuantifiedCompareCriteriaSome()
Description copied from class:ExecutionFactorySupport indicates connector accepts the quantified comparison criteria that use SOME- Overrides:
supportsQuantifiedCompareCriteriaSomein classJDBCExecutionFactory
-
convertToken
public Object convertToken(String group)
Description copied from class:PostgreSQLExecutionFactoryConvert to a new parsing token or return null if not possible- Overrides:
convertTokenin classPostgreSQLExecutionFactory- Returns:
-
getCreateTemporaryTablePostfix
public String getCreateTemporaryTablePostfix(boolean inTransaction)
- Overrides:
getCreateTemporaryTablePostfixin classPostgreSQLExecutionFactory- Returns:
- the post script for the temp table create
-
-