Package org.teiid.translator.odata4
Class ODataExecutionFactory
- java.lang.Object
-
- org.teiid.translator.ExecutionFactory<ConnectionFactory,WSConnection>
-
- org.teiid.translator.odata4.ODataExecutionFactory
-
@Translator(name="odata4", description="A translator for making OData V4 data service calls") public class ODataExecutionFactory extends ExecutionFactory<ConnectionFactory,WSConnection>
TODO: Type comparison isof(T), isof(x, T) Whether targeted instance can be converted to the specified type. media streams are generally not supported yet. (blobs, clobs)
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.teiid.translator.ExecutionFactory
ExecutionFactory.Format, ExecutionFactory.NullOrder, ExecutionFactory.SupportedJoinCriteria, ExecutionFactory.TransactionSupport
-
-
Field Summary
Fields Modifier and Type Field Description static TimeZoneDEFAULT_TIME_ZONEprotected Map<String,FunctionModifier>functionModifiers-
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 ODataExecutionFactory()
-
Method Summary
-
Methods inherited from class org.teiid.translator.ExecutionFactory
addPushDownFunction, areLobsUsableAfterClose, closeConnection, createDirectExecution, createExecution, getCacheDirective, getCollationLocale, getConnection, getConnection, getDefaultNullOrder, getDirectQueryProcedureName, getExcludedCommonTableExpressionName, getInstance, getLanguageFactory, getMaxDependentInPredicates, getMaxFromGroups, getMaxInCriteriaSize, getMaxProjectedColumns, getNativeQueryProcedureName, getPushDownFunctions, getRequiredLikeEscape, getSupportedJoinCriteria, getTransactionSupport, getTypeFacility, initCapabilities, isCopyLobs, isForkable, isImmutable, isSourceRequired, isSourceRequiredForCapabilities, 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, supportsAdvancedOlapOperations, supportsAggregatesAvg, supportsAggregatesCountBig, supportsAggregatesDistinct, supportsAggregatesEnhancedNumeric, supportsAggregatesMax, supportsAggregatesMin, supportsAggregatesSum, supportsAliasedTable, supportsArrayAgg, supportsBatchedUpdates, supportsBulkUpdate, supportsCommonTableExpressions, supportsCompareCriteriaOrderedExclusive, supportsConvert, supportsCorrelatedSubqueries, supportsCorrelatedSubqueryLimit, supportsDependentJoins, supportsDirectQueryProcedure, supportsElementaryOlapOperations, supportsExcept, supportsExistsCriteria, supportsFormatLiteral, supportsFullDependentJoins, supportsFullOuterJoins, supportsFunctionsInGroupBy, supportsGroupBy, supportsGroupByMultipleDistinctAggregates, supportsGroupByRollup, supportsHaving, supportsInCriteriaSubquery, supportsInlineViews, supportsInnerJoins, supportsInsertWithQueryExpression, supportsIntersect, supportsIsDistinctCriteria, supportsLateralJoin, supportsLateralJoinCondition, supportsLikeCriteria, supportsLikeCriteriaEscapeCharacter, supportsLikeRegex, supportsListAgg, supportsMultipleOpenExecutions, supportsNativeQueries, supportsOnlyCorrelatedSubqueries, supportsOnlyFormatLiterals, supportsOnlyLateralJoinProcedure, supportsOnlySingleTableGroupBy, supportsOnlyTimestampAddLiteral, supportsOrderByNullOrdering, supportsOrderByWithExtendedGrouping, supportsOuterJoins, supportsPartialFiltering, supportsProcedureParameterExpression, supportsProcedureTable, supportsRecursiveCommonTableExpressions, supportsScalarSubqueries, supportsScalarSubqueryProjection, supportsSearchedCaseExpressions, supportsSelectDistinct, supportsSelectExpression, supportsSelectExpressionArrayType, supportsSelectWithoutFrom, supportsSelfJoins, supportsSetQueryLimitOffset, supportsSetQueryOrderBy, supportsSimilarTo, supportsStringAgg, supportsSubqueryCommonTableExpressions, supportsSubqueryInOn, supportsUnions, supportsUpsert, supportsWindowDistinctAggregates, supportsWindowFrameClause, supportsWindowFunctionCumeDist, supportsWindowFunctionNthValue, supportsWindowFunctionNtile, supportsWindowFunctionPercentRank, supportsWindowOrderByWithAggregates, useBindingsForDependentJoin
-
-
-
-
Field Detail
-
DEFAULT_TIME_ZONE
public static final TimeZone DEFAULT_TIME_ZONE
-
functionModifiers
protected Map<String,FunctionModifier> functionModifiers
-
-
Method Detail
-
start
public void start() throws TranslatorException- Overrides:
startin classExecutionFactory<ConnectionFactory,WSConnection>- Throws:
TranslatorException
-
getMetadata
public void getMetadata(MetadataFactory metadataFactory, WSConnection conn) throws TranslatorException
- Overrides:
getMetadatain classExecutionFactory<ConnectionFactory,WSConnection>- Throws:
TranslatorException
-
getMetadataProcessor
public MetadataProcessor<WSConnection> getMetadataProcessor()
- Overrides:
getMetadataProcessorin classExecutionFactory<ConnectionFactory,WSConnection>
-
getSchema
protected org.apache.olingo.client.api.edm.xml.XMLMetadata getSchema(WSConnection conn) throws TranslatorException
- Throws:
TranslatorException
-
createResultSetExecution
public ResultSetExecution createResultSetExecution(QueryExpression command, ExecutionContext executionContext, RuntimeMetadata metadata, WSConnection connection) throws TranslatorException
- Overrides:
createResultSetExecutionin classExecutionFactory<ConnectionFactory,WSConnection>- Throws:
TranslatorException
-
createProcedureExecution
public ProcedureExecution createProcedureExecution(Call command, ExecutionContext executionContext, RuntimeMetadata metadata, WSConnection connection) throws TranslatorException
- Overrides:
createProcedureExecutionin classExecutionFactory<ConnectionFactory,WSConnection>- Throws:
TranslatorException
-
createUpdateExecution
public UpdateExecution createUpdateExecution(Command command, ExecutionContext executionContext, RuntimeMetadata metadata, WSConnection connection) throws TranslatorException
- Overrides:
createUpdateExecutionin classExecutionFactory<ConnectionFactory,WSConnection>- Throws:
TranslatorException
-
getSupportedFunctions
public List<String> getSupportedFunctions()
- Overrides:
getSupportedFunctionsin classExecutionFactory<ConnectionFactory,WSConnection>
-
getFunctionModifiers
public Map<String,FunctionModifier> getFunctionModifiers()
Return a map of function name to FunctionModifier.- Returns:
- Map of function name to FunctionModifier.
-
registerFunctionModifier
public void registerFunctionModifier(String name, FunctionModifier modifier)
Add theFunctionModifierto the set of known modifiers.- Parameters:
name-modifier-
-
supportsOdataFilter
@TranslatorProperty(display="Supports $Filter", description="True, $filter is supported", advanced=true) public boolean supportsOdataFilter()
-
setSupportsOdataFilter
public void setSupportsOdataFilter(boolean supports)
-
supportsOdataOrderBy
@TranslatorProperty(display="Supports $OrderBy", description="True, $orderby is supported", advanced=true) public boolean supportsOdataOrderBy()
-
setSupportsOdataOrderBy
public void setSupportsOdataOrderBy(boolean supports)
-
supportsOdataCount
@TranslatorProperty(display="Supports $count", description="True, $count is supported", advanced=true) public boolean supportsOdataCount()
-
setSupportsOdataCount
public void setSupportsOdataCount(boolean supports)
-
supportsOdataSkip
@TranslatorProperty(display="Supports $skip", description="True, $skip is supported", advanced=true) public boolean supportsOdataSkip()
-
setSupportsOdataSkip
public void setSupportsOdataSkip(boolean supports)
-
supportsOdataTop
@TranslatorProperty(display="Supports $top", description="True, $top is supported", advanced=true) public boolean supportsOdataTop()
-
setSupportsOdataTop
public void setSupportsOdataTop(boolean supports)
-
supportsUpdates
@TranslatorProperty(display="Supports Updates", description="True, if(PUT,PATCH,DELETE) operations supported", advanced=true) public boolean supportsUpdates()
-
setSupportsUpdates
public void setSupportsUpdates(boolean supports)
-
supportsCompareCriteriaEquals
public boolean supportsCompareCriteriaEquals()
- Overrides:
supportsCompareCriteriaEqualsin classExecutionFactory<ConnectionFactory,WSConnection>
-
supportsCompareCriteriaOrdered
public boolean supportsCompareCriteriaOrdered()
- Overrides:
supportsCompareCriteriaOrderedin classExecutionFactory<ConnectionFactory,WSConnection>
-
supportsIsNullCriteria
public boolean supportsIsNullCriteria()
- Overrides:
supportsIsNullCriteriain classExecutionFactory<ConnectionFactory,WSConnection>
-
supportsOrCriteria
public boolean supportsOrCriteria()
- Overrides:
supportsOrCriteriain classExecutionFactory<ConnectionFactory,WSConnection>
-
supportsNotCriteria
public boolean supportsNotCriteria()
- Overrides:
supportsNotCriteriain classExecutionFactory<ConnectionFactory,WSConnection>
-
supportsInCriteria
public boolean supportsInCriteria()
- Overrides:
supportsInCriteriain classExecutionFactory<ConnectionFactory,WSConnection>
-
supportsQuantifiedCompareCriteriaSome
public boolean supportsQuantifiedCompareCriteriaSome()
- Overrides:
supportsQuantifiedCompareCriteriaSomein classExecutionFactory<ConnectionFactory,WSConnection>
-
supportsQuantifiedCompareCriteriaAll
public boolean supportsQuantifiedCompareCriteriaAll()
- Overrides:
supportsQuantifiedCompareCriteriaAllin classExecutionFactory<ConnectionFactory,WSConnection>
-
supportsOrderBy
@TranslatorProperty(display="Supports ORDER BY", description="True, if this connector supports ORDER BY", advanced=true) public boolean supportsOrderBy()
- Overrides:
supportsOrderByin classExecutionFactory<ConnectionFactory,WSConnection>
-
supportsOrderByUnrelated
public boolean supportsOrderByUnrelated()
- Overrides:
supportsOrderByUnrelatedin classExecutionFactory<ConnectionFactory,WSConnection>
-
supportsAggregatesCount
public boolean supportsAggregatesCount()
- Overrides:
supportsAggregatesCountin classExecutionFactory<ConnectionFactory,WSConnection>
-
supportsAggregatesCountStar
public boolean supportsAggregatesCountStar()
- Overrides:
supportsAggregatesCountStarin classExecutionFactory<ConnectionFactory,WSConnection>
-
supportsRowLimit
public boolean supportsRowLimit()
- Overrides:
supportsRowLimitin classExecutionFactory<ConnectionFactory,WSConnection>
-
supportsRowOffset
public boolean supportsRowOffset()
- Overrides:
supportsRowOffsetin classExecutionFactory<ConnectionFactory,WSConnection>
-
supportsOnlyLiteralComparison
public boolean supportsOnlyLiteralComparison()
- Overrides:
supportsOnlyLiteralComparisonin classExecutionFactory<ConnectionFactory,WSConnection>
-
useAnsiJoin
public boolean useAnsiJoin()
- Overrides:
useAnsiJoinin classExecutionFactory<ConnectionFactory,WSConnection>
-
supportsArrayType
public boolean supportsArrayType()
- Overrides:
supportsArrayTypein classExecutionFactory<ConnectionFactory,WSConnection>
-
supportsGeographyType
public boolean supportsGeographyType()
- Overrides:
supportsGeographyTypein classExecutionFactory<ConnectionFactory,WSConnection>
-
-