Package org.teiid.translator.couchbase
Class CouchbaseExecutionFactory
- java.lang.Object
-
- org.teiid.translator.ExecutionFactory<org.teiid.resource.api.ConnectionFactory,org.teiid.couchbase.CouchbaseConnection>
-
- org.teiid.translator.couchbase.CouchbaseExecutionFactory
-
@Translator(name="couchbase", description="Couchbase Translator, reads and writes the data to Couchbase") public class CouchbaseExecutionFactory extends org.teiid.translator.ExecutionFactory<org.teiid.resource.api.ConnectionFactory,org.teiid.couchbase.CouchbaseConnection>
-
-
Field Summary
Fields Modifier and Type Field Description protected Map<String,org.teiid.translator.jdbc.FunctionModifier>functionModifiers
-
Constructor Summary
Constructors Constructor Description CouchbaseExecutionFactory()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description org.teiid.translator.ProcedureExecutioncreateDirectExecution(List<org.teiid.language.Argument> arguments, org.teiid.language.Command command, org.teiid.translator.ExecutionContext executionContext, org.teiid.metadata.RuntimeMetadata metadata, org.teiid.couchbase.CouchbaseConnection connection)org.teiid.translator.ProcedureExecutioncreateProcedureExecution(org.teiid.language.Call command, org.teiid.translator.ExecutionContext executionContext, org.teiid.metadata.RuntimeMetadata metadata, org.teiid.couchbase.CouchbaseConnection connection)org.teiid.translator.ResultSetExecutioncreateResultSetExecution(org.teiid.language.QueryExpression command, org.teiid.translator.ExecutionContext executionContext, org.teiid.metadata.RuntimeMetadata metadata, org.teiid.couchbase.CouchbaseConnection connection)org.teiid.translator.UpdateExecutioncreateUpdateExecution(org.teiid.language.Command command, org.teiid.translator.ExecutionContext executionContext, org.teiid.metadata.RuntimeMetadata metadata, org.teiid.couchbase.CouchbaseConnection connection)org.teiid.translator.ExecutionFactory.NullOrdergetDefaultNullOrder()List<String>getDefaultSupportedFunctions()Map<String,org.teiid.translator.jdbc.FunctionModifier>getFunctionModifiers()intgetMaxBulkInsertSize()org.teiid.translator.MetadataProcessor<org.teiid.couchbase.CouchbaseConnection>getMetadataProcessor()N1QLUpdateVisitorgetN1QLUpdateVisitor()N1QLVisitorgetN1QLVisitor()List<String>getSupportedFunctions()booleanisUseDouble()voidregisterFunctionModifier(String name, org.teiid.translator.jdbc.FunctionModifier modifier)ObjectretrieveValue(Class<?> columnType, Object value)booleanreturnsSingleUpdateCount()voidsetMaxBulkInsertSize(int maxBulkInsertSize)voidsetUseDouble(boolean useDouble)voidsetValue(com.couchbase.client.java.document.json.JsonArray array, Class<?> type, Object attrValue)voidsetValue(com.couchbase.client.java.document.json.JsonObject json, String attr, Class<?> type, Object attrValue)voidstart()booleansupportsAggregatesAvg()booleansupportsAggregatesCount()booleansupportsAggregatesCountStar()booleansupportsAggregatesDistinct()booleansupportsAggregatesMax()booleansupportsAggregatesMin()booleansupportsAggregatesSum()booleansupportsArrayAgg()booleansupportsBulkUpdate()booleansupportsCompareCriteriaEquals()booleansupportsConvert(int fromType, int toType)booleansupportsExcept()booleansupportsGroupBy()booleansupportsHaving()booleansupportsIntersect()booleansupportsOnlyLiteralComparison()booleansupportsOrderBy()booleansupportsOrderByNullOrdering()booleansupportsOrderByUnrelated()booleansupportsRowLimit()booleansupportsRowOffset()booleansupportsSearchedCaseExpressions()booleansupportsSelectExpression()booleansupportsSelectWithoutFrom()booleansupportsUnions()booleansupportsUpsert()-
Methods inherited from class org.teiid.translator.ExecutionFactory
addPushDownFunction, areLobsUsableAfterClose, closeConnection, createExecution, getCacheDirective, getCollationLocale, getConnection, getConnection, getDirectQueryProcedureName, getExcludedCommonTableExpressionName, getInstance, getLanguageFactory, getMaxDependentInPredicates, getMaxFromGroups, getMaxInCriteriaSize, getMaxProjectedColumns, getMetadata, getNativeQueryProcedureName, getPushDownFunctions, getRequiredLikeEscape, getSupportedJoinCriteria, getTransactionSupport, getTypeFacility, initCapabilities, isCopyLobs, isForkable, isImmutable, isSourceRequired, isSourceRequiredForCapabilities, isSourceRequiredForMetadata, isThreadBound, requiresCriteria, setCollationLocale, setCopyLobs, setDirectQueryProcedureName, setExcludedCommonTableExpressionName, setImmutable, setMaxDependentInPredicates, setMaxInCriteriaSize, setNativeQueryProcedureName, setRequiresCriteria, setSourceRequired, setSourceRequiredForMetadata, setSupportedJoinCriteria, setSupportsDirectQueryProcedure, setSupportsFullOuterJoins, setSupportsInnerJoins, setSupportsNativeQueries, setSupportsOrderBy, setSupportsOuterJoins, setSupportsSelectDistinct, setThreadBound, setTransactionSupport, supportsAdvancedOlapOperations, supportsAggregatesCountBig, supportsAggregatesEnhancedNumeric, supportsAliasedTable, supportsArrayType, supportsBatchedUpdates, supportsCommonTableExpressions, supportsCompareCriteriaOrdered, supportsCompareCriteriaOrderedExclusive, supportsCorrelatedSubqueries, supportsCorrelatedSubqueryLimit, supportsDependentJoins, supportsDirectQueryProcedure, supportsElementaryOlapOperations, supportsExistsCriteria, supportsFormatLiteral, supportsFullDependentJoins, supportsFullOuterJoins, supportsFunctionsInGroupBy, supportsGeographyType, supportsGroupByMultipleDistinctAggregates, supportsGroupByRollup, supportsInCriteria, supportsInCriteriaSubquery, supportsInlineViews, supportsInnerJoins, supportsInsertWithQueryExpression, supportsIsDistinctCriteria, supportsIsNullCriteria, supportsLateralJoin, supportsLateralJoinCondition, supportsLikeCriteria, supportsLikeCriteriaEscapeCharacter, supportsLikeRegex, supportsListAgg, supportsMultipleOpenExecutions, supportsNativeQueries, supportsNotCriteria, supportsOnlyCorrelatedSubqueries, supportsOnlyFormatLiterals, supportsOnlyLateralJoinProcedure, supportsOnlySingleTableGroupBy, supportsOnlyTimestampAddLiteral, supportsOrCriteria, supportsOrderByWithExtendedGrouping, supportsOuterJoins, supportsPartialFiltering, supportsProcedureParameterExpression, supportsProcedureTable, supportsQuantifiedCompareCriteriaAll, supportsQuantifiedCompareCriteriaSome, supportsRecursiveCommonTableExpressions, supportsScalarSubqueries, supportsScalarSubqueryProjection, supportsSelectDistinct, supportsSelectExpressionArrayType, supportsSelfJoins, supportsSetQueryLimitOffset, supportsSetQueryOrderBy, supportsSimilarTo, supportsStringAgg, supportsSubqueryCommonTableExpressions, supportsSubqueryInOn, supportsWindowDistinctAggregates, supportsWindowFrameClause, supportsWindowFunctionCumeDist, supportsWindowFunctionNthValue, supportsWindowFunctionNtile, supportsWindowFunctionPercentRank, supportsWindowOrderByWithAggregates, useAnsiJoin, useBindingsForDependentJoin
-
-
-
-
Method Detail
-
start
public void start() throws org.teiid.translator.TranslatorException- Overrides:
startin classorg.teiid.translator.ExecutionFactory<org.teiid.resource.api.ConnectionFactory,org.teiid.couchbase.CouchbaseConnection>- Throws:
org.teiid.translator.TranslatorException
-
getSupportedFunctions
public List<String> getSupportedFunctions()
- Overrides:
getSupportedFunctionsin classorg.teiid.translator.ExecutionFactory<org.teiid.resource.api.ConnectionFactory,org.teiid.couchbase.CouchbaseConnection>
-
registerFunctionModifier
public void registerFunctionModifier(String name, org.teiid.translator.jdbc.FunctionModifier modifier)
-
getFunctionModifiers
public Map<String,org.teiid.translator.jdbc.FunctionModifier> getFunctionModifiers()
-
createResultSetExecution
public org.teiid.translator.ResultSetExecution createResultSetExecution(org.teiid.language.QueryExpression command, org.teiid.translator.ExecutionContext executionContext, org.teiid.metadata.RuntimeMetadata metadata, org.teiid.couchbase.CouchbaseConnection connection) throws org.teiid.translator.TranslatorException- Overrides:
createResultSetExecutionin classorg.teiid.translator.ExecutionFactory<org.teiid.resource.api.ConnectionFactory,org.teiid.couchbase.CouchbaseConnection>- Throws:
org.teiid.translator.TranslatorException
-
createProcedureExecution
public org.teiid.translator.ProcedureExecution createProcedureExecution(org.teiid.language.Call command, org.teiid.translator.ExecutionContext executionContext, org.teiid.metadata.RuntimeMetadata metadata, org.teiid.couchbase.CouchbaseConnection connection) throws org.teiid.translator.TranslatorException- Overrides:
createProcedureExecutionin classorg.teiid.translator.ExecutionFactory<org.teiid.resource.api.ConnectionFactory,org.teiid.couchbase.CouchbaseConnection>- Throws:
org.teiid.translator.TranslatorException
-
createUpdateExecution
public org.teiid.translator.UpdateExecution createUpdateExecution(org.teiid.language.Command command, org.teiid.translator.ExecutionContext executionContext, org.teiid.metadata.RuntimeMetadata metadata, org.teiid.couchbase.CouchbaseConnection connection) throws org.teiid.translator.TranslatorException- Overrides:
createUpdateExecutionin classorg.teiid.translator.ExecutionFactory<org.teiid.resource.api.ConnectionFactory,org.teiid.couchbase.CouchbaseConnection>- Throws:
org.teiid.translator.TranslatorException
-
createDirectExecution
public org.teiid.translator.ProcedureExecution createDirectExecution(List<org.teiid.language.Argument> arguments, org.teiid.language.Command command, org.teiid.translator.ExecutionContext executionContext, org.teiid.metadata.RuntimeMetadata metadata, org.teiid.couchbase.CouchbaseConnection connection) throws org.teiid.translator.TranslatorException
- Overrides:
createDirectExecutionin classorg.teiid.translator.ExecutionFactory<org.teiid.resource.api.ConnectionFactory,org.teiid.couchbase.CouchbaseConnection>- Throws:
org.teiid.translator.TranslatorException
-
getMetadataProcessor
public org.teiid.translator.MetadataProcessor<org.teiid.couchbase.CouchbaseConnection> getMetadataProcessor()
- Overrides:
getMetadataProcessorin classorg.teiid.translator.ExecutionFactory<org.teiid.resource.api.ConnectionFactory,org.teiid.couchbase.CouchbaseConnection>
-
supportsAggregatesSum
public boolean supportsAggregatesSum()
- Overrides:
supportsAggregatesSumin classorg.teiid.translator.ExecutionFactory<org.teiid.resource.api.ConnectionFactory,org.teiid.couchbase.CouchbaseConnection>
-
supportsAggregatesAvg
public boolean supportsAggregatesAvg()
- Overrides:
supportsAggregatesAvgin classorg.teiid.translator.ExecutionFactory<org.teiid.resource.api.ConnectionFactory,org.teiid.couchbase.CouchbaseConnection>
-
supportsAggregatesMin
public boolean supportsAggregatesMin()
- Overrides:
supportsAggregatesMinin classorg.teiid.translator.ExecutionFactory<org.teiid.resource.api.ConnectionFactory,org.teiid.couchbase.CouchbaseConnection>
-
supportsAggregatesMax
public boolean supportsAggregatesMax()
- Overrides:
supportsAggregatesMaxin classorg.teiid.translator.ExecutionFactory<org.teiid.resource.api.ConnectionFactory,org.teiid.couchbase.CouchbaseConnection>
-
supportsAggregatesCount
public boolean supportsAggregatesCount()
- Overrides:
supportsAggregatesCountin classorg.teiid.translator.ExecutionFactory<org.teiid.resource.api.ConnectionFactory,org.teiid.couchbase.CouchbaseConnection>
-
supportsAggregatesCountStar
public boolean supportsAggregatesCountStar()
- Overrides:
supportsAggregatesCountStarin classorg.teiid.translator.ExecutionFactory<org.teiid.resource.api.ConnectionFactory,org.teiid.couchbase.CouchbaseConnection>
-
supportsAggregatesDistinct
public boolean supportsAggregatesDistinct()
- Overrides:
supportsAggregatesDistinctin classorg.teiid.translator.ExecutionFactory<org.teiid.resource.api.ConnectionFactory,org.teiid.couchbase.CouchbaseConnection>
-
supportsArrayAgg
public boolean supportsArrayAgg()
- Overrides:
supportsArrayAggin classorg.teiid.translator.ExecutionFactory<org.teiid.resource.api.ConnectionFactory,org.teiid.couchbase.CouchbaseConnection>
-
supportsSelectExpression
public boolean supportsSelectExpression()
- Overrides:
supportsSelectExpressionin classorg.teiid.translator.ExecutionFactory<org.teiid.resource.api.ConnectionFactory,org.teiid.couchbase.CouchbaseConnection>
-
supportsRowLimit
public boolean supportsRowLimit()
- Overrides:
supportsRowLimitin classorg.teiid.translator.ExecutionFactory<org.teiid.resource.api.ConnectionFactory,org.teiid.couchbase.CouchbaseConnection>
-
supportsRowOffset
public boolean supportsRowOffset()
- Overrides:
supportsRowOffsetin classorg.teiid.translator.ExecutionFactory<org.teiid.resource.api.ConnectionFactory,org.teiid.couchbase.CouchbaseConnection>
-
supportsOrderBy
public boolean supportsOrderBy()
- Overrides:
supportsOrderByin classorg.teiid.translator.ExecutionFactory<org.teiid.resource.api.ConnectionFactory,org.teiid.couchbase.CouchbaseConnection>
-
supportsOrderByUnrelated
public boolean supportsOrderByUnrelated()
- Overrides:
supportsOrderByUnrelatedin classorg.teiid.translator.ExecutionFactory<org.teiid.resource.api.ConnectionFactory,org.teiid.couchbase.CouchbaseConnection>
-
supportsOrderByNullOrdering
public boolean supportsOrderByNullOrdering()
- Overrides:
supportsOrderByNullOrderingin classorg.teiid.translator.ExecutionFactory<org.teiid.resource.api.ConnectionFactory,org.teiid.couchbase.CouchbaseConnection>
-
supportsGroupBy
public boolean supportsGroupBy()
- Overrides:
supportsGroupByin classorg.teiid.translator.ExecutionFactory<org.teiid.resource.api.ConnectionFactory,org.teiid.couchbase.CouchbaseConnection>
-
supportsHaving
public boolean supportsHaving()
- Overrides:
supportsHavingin classorg.teiid.translator.ExecutionFactory<org.teiid.resource.api.ConnectionFactory,org.teiid.couchbase.CouchbaseConnection>
-
supportsUnions
public boolean supportsUnions()
- Overrides:
supportsUnionsin classorg.teiid.translator.ExecutionFactory<org.teiid.resource.api.ConnectionFactory,org.teiid.couchbase.CouchbaseConnection>
-
supportsIntersect
public boolean supportsIntersect()
- Overrides:
supportsIntersectin classorg.teiid.translator.ExecutionFactory<org.teiid.resource.api.ConnectionFactory,org.teiid.couchbase.CouchbaseConnection>
-
supportsExcept
public boolean supportsExcept()
- Overrides:
supportsExceptin classorg.teiid.translator.ExecutionFactory<org.teiid.resource.api.ConnectionFactory,org.teiid.couchbase.CouchbaseConnection>
-
supportsSelectWithoutFrom
public boolean supportsSelectWithoutFrom()
- Overrides:
supportsSelectWithoutFromin classorg.teiid.translator.ExecutionFactory<org.teiid.resource.api.ConnectionFactory,org.teiid.couchbase.CouchbaseConnection>
-
supportsCompareCriteriaEquals
public boolean supportsCompareCriteriaEquals()
- Overrides:
supportsCompareCriteriaEqualsin classorg.teiid.translator.ExecutionFactory<org.teiid.resource.api.ConnectionFactory,org.teiid.couchbase.CouchbaseConnection>
-
getN1QLVisitor
public N1QLVisitor getN1QLVisitor()
-
getN1QLUpdateVisitor
public N1QLUpdateVisitor getN1QLUpdateVisitor()
-
retrieveValue
public Object retrieveValue(Class<?> columnType, Object value) throws org.teiid.translator.TranslatorException
- Throws:
org.teiid.translator.TranslatorException
-
setValue
public void setValue(com.couchbase.client.java.document.json.JsonObject json, String attr, Class<?> type, Object attrValue)
-
setValue
public void setValue(com.couchbase.client.java.document.json.JsonArray array, Class<?> type, Object attrValue)
-
supportsOnlyLiteralComparison
public boolean supportsOnlyLiteralComparison()
- Overrides:
supportsOnlyLiteralComparisonin classorg.teiid.translator.ExecutionFactory<org.teiid.resource.api.ConnectionFactory,org.teiid.couchbase.CouchbaseConnection>
-
supportsUpsert
public boolean supportsUpsert()
- Overrides:
supportsUpsertin classorg.teiid.translator.ExecutionFactory<org.teiid.resource.api.ConnectionFactory,org.teiid.couchbase.CouchbaseConnection>
-
supportsBulkUpdate
public boolean supportsBulkUpdate()
- Overrides:
supportsBulkUpdatein classorg.teiid.translator.ExecutionFactory<org.teiid.resource.api.ConnectionFactory,org.teiid.couchbase.CouchbaseConnection>
-
getMaxBulkInsertSize
@TranslatorProperty(display="Max Bulk Insert Document Size", description="The max size of documents in a bulk insert. Default 100.", advanced=true) public int getMaxBulkInsertSize()
-
setMaxBulkInsertSize
public void setMaxBulkInsertSize(int maxBulkInsertSize)
-
supportsConvert
public boolean supportsConvert(int fromType, int toType)- Overrides:
supportsConvertin classorg.teiid.translator.ExecutionFactory<org.teiid.resource.api.ConnectionFactory,org.teiid.couchbase.CouchbaseConnection>
-
getDefaultNullOrder
public org.teiid.translator.ExecutionFactory.NullOrder getDefaultNullOrder()
- Overrides:
getDefaultNullOrderin classorg.teiid.translator.ExecutionFactory<org.teiid.resource.api.ConnectionFactory,org.teiid.couchbase.CouchbaseConnection>
-
supportsSearchedCaseExpressions
public boolean supportsSearchedCaseExpressions()
- Overrides:
supportsSearchedCaseExpressionsin classorg.teiid.translator.ExecutionFactory<org.teiid.resource.api.ConnectionFactory,org.teiid.couchbase.CouchbaseConnection>
-
returnsSingleUpdateCount
public boolean returnsSingleUpdateCount()
- Overrides:
returnsSingleUpdateCountin classorg.teiid.translator.ExecutionFactory<org.teiid.resource.api.ConnectionFactory,org.teiid.couchbase.CouchbaseConnection>
-
isUseDouble
@TranslatorProperty(display="Use Double", description="Use double rather than allowing for more precise types, such as long, bigdecimal, and biginteger", advanced=true) public boolean isUseDouble()
-
setUseDouble
public void setUseDouble(boolean useDouble)
-
-