@Translator(name="couchbase", description="Couchbase Translator, reads and writes the data to Couchbase") public class CouchbaseExecutionFactory extends ExecutionFactory<ConnectionFactory,CouchbaseConnection>
ExecutionFactory.Format, ExecutionFactory.NullOrder, ExecutionFactory.SupportedJoinCriteria, ExecutionFactory.TransactionSupport| Modifier and Type | Field and Description |
|---|---|
protected Map<String,FunctionModifier> |
functionModifiers |
DEFAULT_MAX_FROM_GROUPS, DEFAULT_MAX_IN_CRITERIA_SIZE, DEFAULT_MAX_PROJECTED_COLUMNS| Constructor and Description |
|---|
CouchbaseExecutionFactory() |
| Modifier and Type | Method and Description |
|---|---|
ProcedureExecution |
createDirectExecution(List<Argument> arguments,
Command command,
ExecutionContext executionContext,
RuntimeMetadata metadata,
CouchbaseConnection connection) |
ProcedureExecution |
createProcedureExecution(Call command,
ExecutionContext executionContext,
RuntimeMetadata metadata,
CouchbaseConnection connection) |
ResultSetExecution |
createResultSetExecution(QueryExpression command,
ExecutionContext executionContext,
RuntimeMetadata metadata,
CouchbaseConnection connection) |
UpdateExecution |
createUpdateExecution(Command command,
ExecutionContext executionContext,
RuntimeMetadata metadata,
CouchbaseConnection connection) |
ExecutionFactory.NullOrder |
getDefaultNullOrder()
Returns the default null ordering
|
List<String> |
getDefaultSupportedFunctions() |
Map<String,FunctionModifier> |
getFunctionModifiers() |
int |
getMaxBulkInsertSize() |
MetadataProcessor<CouchbaseConnection> |
getMetadataProcessor()
Get a MetadataProcessor for the translator to read the metadata.
|
N1QLUpdateVisitor |
getN1QLUpdateVisitor() |
N1QLVisitor |
getN1QLVisitor() |
List<String> |
getSupportedFunctions()
Get list of all supported function names.
|
boolean |
isUseDouble() |
void |
registerFunctionModifier(String name,
FunctionModifier modifier) |
Object |
retrieveValue(Class<?> columnType,
Object value) |
boolean |
returnsSingleUpdateCount()
True if only a single value is returned for the update count.
|
void |
setMaxBulkInsertSize(int maxBulkInsertSize) |
void |
setUseDouble(boolean useDouble) |
void |
setValue(com.couchbase.client.java.document.json.JsonArray array,
Class<?> type,
Object attrValue) |
void |
setValue(com.couchbase.client.java.document.json.JsonObject json,
String attr,
Class<?> type,
Object attrValue) |
void |
start()
Initialize the connector with supplied configuration
|
boolean |
supportsAggregatesAvg()
Support indicates connector can accept the AVG aggregate function
|
boolean |
supportsAggregatesCount()
Support indicates connector can accept the COUNT aggregate function
|
boolean |
supportsAggregatesCountStar()
Support indicates connector can accept the COUNT(*) aggregate function
|
boolean |
supportsAggregatesDistinct()
Support indicates connector can accept DISTINCT within aggregate functions
|
boolean |
supportsAggregatesMax()
Support indicates connector can accept the MAX aggregate function
|
boolean |
supportsAggregatesMin()
Support indicates connector can accept the MIN aggregate function
|
boolean |
supportsAggregatesSum()
Support indicates connector can accept the SUM aggregate function
|
boolean |
supportsArrayAgg() |
boolean |
supportsBulkUpdate()
Whether the source supports updates with multiple value sets
|
boolean |
supportsCompareCriteriaEquals()
Support indicates connector accepts criteria of form (element = constant)
|
boolean |
supportsConvert(int fromType,
int toType)
Used for fine grained control of convert/cast pushdown.
|
boolean |
supportsExcept()
Support indicates that the connector supports the EXCEPT of two queries.
|
boolean |
supportsGroupBy()
Whether the source supports an explicit GROUP BY clause
|
boolean |
supportsHaving()
Whether the source supports the HAVING clause
|
boolean |
supportsIntersect()
Support indicates that the connector supports the INTERSECT of two queries.
|
boolean |
supportsOnlyLiteralComparison() |
boolean |
supportsOrderBy()
Support indicates connector accepts ORDER BY clause, including multiple elements
and ascending and descending sorts.
|
boolean |
supportsOrderByNullOrdering()
Returns whether the database supports explicit null ordering.
|
boolean |
supportsOrderByUnrelated()
Support indicates connector accepts ORDER BY clause with columns not from the select
|
boolean |
supportsRowLimit()
Gets whether the connector can limit the number of rows returned by a query.
|
boolean |
supportsRowOffset()
Gets whether the connector supports a SQL clause (similar to the LIMIT with an offset) that can return
result sets that start in the middle of the resulting rows returned by a query
|
boolean |
supportsSearchedCaseExpressions()
Support indicates connector can accept queries with searched CASE WHEN criteria ...
|
boolean |
supportsSelectExpression()
Support indicates connector can accept expressions other than element
symbols in the SELECT clause.
|
boolean |
supportsSelectWithoutFrom() |
boolean |
supportsUnions()
Support indicates that the connector supports the UNION of two queries.
|
boolean |
supportsUpsert() |
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, useBindingsForDependentJoinprotected Map<String,FunctionModifier> functionModifiers
public void start()
throws TranslatorException
ExecutionFactorystart in class ExecutionFactory<ConnectionFactory,CouchbaseConnection>TranslatorExceptionpublic List<String> getSupportedFunctions()
ExecutionFactorygetSupportedFunctions in class ExecutionFactory<ConnectionFactory,CouchbaseConnection>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.public void registerFunctionModifier(String name, FunctionModifier modifier)
public Map<String,FunctionModifier> getFunctionModifiers()
public ResultSetExecution createResultSetExecution(QueryExpression command, ExecutionContext executionContext, RuntimeMetadata metadata, CouchbaseConnection connection) throws TranslatorException
createResultSetExecution in class ExecutionFactory<ConnectionFactory,CouchbaseConnection>TranslatorExceptionpublic ProcedureExecution createProcedureExecution(Call command, ExecutionContext executionContext, RuntimeMetadata metadata, CouchbaseConnection connection) throws TranslatorException
createProcedureExecution in class ExecutionFactory<ConnectionFactory,CouchbaseConnection>TranslatorExceptionpublic UpdateExecution createUpdateExecution(Command command, ExecutionContext executionContext, RuntimeMetadata metadata, CouchbaseConnection connection) throws TranslatorException
createUpdateExecution in class ExecutionFactory<ConnectionFactory,CouchbaseConnection>TranslatorExceptionpublic ProcedureExecution createDirectExecution(List<Argument> arguments, Command command, ExecutionContext executionContext, RuntimeMetadata metadata, CouchbaseConnection connection) throws TranslatorException
createDirectExecution in class ExecutionFactory<ConnectionFactory,CouchbaseConnection>TranslatorExceptionpublic MetadataProcessor<CouchbaseConnection> getMetadataProcessor()
ExecutionFactorygetMetadataProcessor in class ExecutionFactory<ConnectionFactory,CouchbaseConnection>public boolean supportsAggregatesSum()
ExecutionFactorysupportsAggregatesSum in class ExecutionFactory<ConnectionFactory,CouchbaseConnection>public boolean supportsAggregatesAvg()
ExecutionFactorysupportsAggregatesAvg in class ExecutionFactory<ConnectionFactory,CouchbaseConnection>public boolean supportsAggregatesMin()
ExecutionFactorysupportsAggregatesMin in class ExecutionFactory<ConnectionFactory,CouchbaseConnection>public boolean supportsAggregatesMax()
ExecutionFactorysupportsAggregatesMax in class ExecutionFactory<ConnectionFactory,CouchbaseConnection>public boolean supportsAggregatesCount()
ExecutionFactorysupportsAggregatesCount in class ExecutionFactory<ConnectionFactory,CouchbaseConnection>public boolean supportsAggregatesCountStar()
ExecutionFactorysupportsAggregatesCountStar in class ExecutionFactory<ConnectionFactory,CouchbaseConnection>public boolean supportsAggregatesDistinct()
ExecutionFactorysupportsAggregatesDistinct in class ExecutionFactory<ConnectionFactory,CouchbaseConnection>public boolean supportsArrayAgg()
supportsArrayAgg in class ExecutionFactory<ConnectionFactory,CouchbaseConnection>public boolean supportsSelectExpression()
ExecutionFactorysupportsSelectExpression in class ExecutionFactory<ConnectionFactory,CouchbaseConnection>public boolean supportsRowLimit()
ExecutionFactorysupportsRowLimit in class ExecutionFactory<ConnectionFactory,CouchbaseConnection>public boolean supportsRowOffset()
ExecutionFactorysupportsRowOffset in class ExecutionFactory<ConnectionFactory,CouchbaseConnection>public boolean supportsOrderBy()
ExecutionFactorysupportsOrderBy in class ExecutionFactory<ConnectionFactory,CouchbaseConnection>public boolean supportsOrderByUnrelated()
ExecutionFactorysupportsOrderByUnrelated in class ExecutionFactory<ConnectionFactory,CouchbaseConnection>public boolean supportsOrderByNullOrdering()
ExecutionFactorysupportsOrderByNullOrdering in class ExecutionFactory<ConnectionFactory,CouchbaseConnection>public boolean supportsGroupBy()
ExecutionFactorysupportsGroupBy in class ExecutionFactory<ConnectionFactory,CouchbaseConnection>public boolean supportsHaving()
ExecutionFactorysupportsHaving in class ExecutionFactory<ConnectionFactory,CouchbaseConnection>public boolean supportsUnions()
ExecutionFactorysupportsUnions in class ExecutionFactory<ConnectionFactory,CouchbaseConnection>public boolean supportsIntersect()
ExecutionFactorysupportsIntersect in class ExecutionFactory<ConnectionFactory,CouchbaseConnection>public boolean supportsExcept()
ExecutionFactorysupportsExcept in class ExecutionFactory<ConnectionFactory,CouchbaseConnection>public boolean supportsSelectWithoutFrom()
supportsSelectWithoutFrom in class ExecutionFactory<ConnectionFactory,CouchbaseConnection>public boolean supportsCompareCriteriaEquals()
ExecutionFactorysupportsCompareCriteriaEquals in class ExecutionFactory<ConnectionFactory,CouchbaseConnection>public N1QLVisitor getN1QLVisitor()
public N1QLUpdateVisitor getN1QLUpdateVisitor()
public Object retrieveValue(Class<?> columnType, Object value) throws TranslatorException
TranslatorExceptionpublic void setValue(com.couchbase.client.java.document.json.JsonObject json,
String attr,
Class<?> type,
Object attrValue)
public void setValue(com.couchbase.client.java.document.json.JsonArray array,
Class<?> type,
Object attrValue)
public boolean supportsOnlyLiteralComparison()
supportsOnlyLiteralComparison in class ExecutionFactory<ConnectionFactory,CouchbaseConnection>public boolean supportsUpsert()
supportsUpsert in class ExecutionFactory<ConnectionFactory,CouchbaseConnection>public boolean supportsBulkUpdate()
ExecutionFactorysupportsBulkUpdate in class ExecutionFactory<ConnectionFactory,CouchbaseConnection>@TranslatorProperty(display="Max Bulk Insert Document Size", description="The max size of documents in a bulk insert. Default 100.", advanced=true) public int getMaxBulkInsertSize()
public void setMaxBulkInsertSize(int maxBulkInsertSize)
public boolean supportsConvert(int fromType,
int toType)
ExecutionFactoryExecutionFactory.getSupportedFunctions() should
contain SourceSystemFunctions.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.supportsConvert in class ExecutionFactory<ConnectionFactory,CouchbaseConnection>fromType - @see RUNTIME_CODEStoType - @see RUNTIME_CODESpublic ExecutionFactory.NullOrder getDefaultNullOrder()
ExecutionFactorygetDefaultNullOrder in class ExecutionFactory<ConnectionFactory,CouchbaseConnection>ExecutionFactory.NullOrderpublic boolean supportsSearchedCaseExpressions()
ExecutionFactorysupportsSearchedCaseExpressions in class ExecutionFactory<ConnectionFactory,CouchbaseConnection>public boolean returnsSingleUpdateCount()
ExecutionFactoryreturnsSingleUpdateCount in class ExecutionFactory<ConnectionFactory,CouchbaseConnection>@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()
public void setUseDouble(boolean useDouble)
Copyright © 2020. All rights reserved.