public class BaseDelegatingExecutionFactory<F,C> extends ExecutionFactory<F,C> implements DelegatingExecutionFactory<F,C>
ExecutionFactory
.
You will create a custom translator as a subclass of this class containing overrides for
any method you wish to intercept.
Given that subclass is given a Translator
name of 'custom-delegator', your 'vdb.xml' file will
contain an XML fragment like the following to assign the delegate:
<translator type="custom-delegator" name="my-translator" description="custom translator">
<property value="delegateName" name="name of the delegate instance"/>
<!-- any custom properties will also appear here -->
</translator>
ExecutionFactory.Format, ExecutionFactory.NullOrder, ExecutionFactory.SupportedJoinCriteria
DEFAULT_MAX_FROM_GROUPS, DEFAULT_MAX_IN_CRITERIA_SIZE
Constructor and Description |
---|
BaseDelegatingExecutionFactory() |
Modifier and Type | Method and Description |
---|---|
boolean |
areLobsUsableAfterClose()
Indicates if LOBs are usable after the execution is closed.
|
void |
closeConnection(C connection,
F factory)
Closes a connection object from the given connection factory.
|
ProcedureExecution |
createDirectExecution(List<Argument> arguments,
Command command,
ExecutionContext executionContext,
RuntimeMetadata metadata,
C connection) |
ProcedureExecution |
createProcedureExecution(Call command,
ExecutionContext executionContext,
RuntimeMetadata metadata,
C connection) |
ResultSetExecution |
createResultSetExecution(QueryExpression command,
ExecutionContext executionContext,
RuntimeMetadata metadata,
C connection) |
UpdateExecution |
createUpdateExecution(Command command,
ExecutionContext executionContext,
RuntimeMetadata metadata,
C connection) |
boolean |
equals(Object obj) |
CacheDirective |
getCacheDirective(Command command,
ExecutionContext executionContext,
RuntimeMetadata metadata)
Get the
CacheDirective to control command caching. |
C |
getConnection(F factory,
ExecutionContext executionContext)
Return a connection object from the given connection factory.
|
ExecutionFactory.NullOrder |
getDefaultNullOrder()
Returns the default null ordering
|
protected ExecutionFactory<F,C> |
getDelegate()
For testing only
|
String |
getDelegateName() |
String |
getDirectQueryProcedureName()
Defines the name of the direct processing procedure.
|
LanguageFactory |
getLanguageFactory()
Obtain a reference to the default LanguageFactory that can be used to construct
new language interface objects.
|
int |
getMaxDependentInPredicates()
Get the integer value representing the max number of dependent IN predicates.
|
int |
getMaxFromGroups()
The number of groups supported in the from clause.
|
int |
getMaxInCriteriaSize()
Get the integer value representing the number of values allowed in an IN criteria
in the WHERE clause of a query
|
void |
getMetadata(MetadataFactory metadataFactory,
C conn)
Implement to provide metadata to the metadata for use by the engine.
|
List<FunctionMethod> |
getPushDownFunctions()
Get a list of
FunctionMethod s that will be contributed to the SYS schema. |
List<String> |
getSupportedFunctions()
Get list of all supported function names.
|
ExecutionFactory.SupportedJoinCriteria |
getSupportedJoinCriteria()
Get the supported join criteria.
|
TypeFacility |
getTypeFacility()
Obtain a reference to the type facility, which can be used to perform many type
conversions supplied by the Connector API.
|
int |
hashCode() |
void |
initCapabilities(C connection)
Invoked if
ExecutionFactory.isSourceRequiredForCapabilities() returns true |
boolean |
isCopyLobs() |
boolean |
isForkable()
When forkable the engine may use a separate thread to interact with returned
Execution . |
boolean |
isImmutable()
Defines if the Connector is read-only connector
|
boolean |
isSourceRequired()
Flag that indicates if a underlying source connection required for this execution factory to work
|
boolean |
isSourceRequiredForCapabilities()
If true, the
ExecutionFactory.initCapabilities(Object) method will be consulted prior
to deteremining the capabilites |
boolean |
isSourceRequiredForMetadata()
Flag that indicates if a underlying source connection required for this execution factory to return metadata
|
boolean |
isThreadBound() |
boolean |
requiresCriteria()
Whether the source supports queries without criteria.
|
void |
setDelegate(ExecutionFactory<F,C> delegate)
Sets the delegate, will be called by Teiid after
ExecutionFactory.start() |
void |
setDelegateName(String delegateName) |
boolean |
supportsAdvancedOlapOperations() |
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 |
supportsAggregatesEnhancedNumeric()
Support indicates connector can accept STDDEV_POP, STDDEV_VAR, VAR_POP, VAR_SAMP
|
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 |
supportsAliasedTable()
Support indicates connector can accept groups with aliases
|
boolean |
supportsArrayAgg() |
boolean |
supportsArrayType()
The engine currently uses array types for dependent joins.
|
boolean |
supportsBatchedUpdates()
Whether the source supports
BatchedUpdates |
boolean |
supportsBulkUpdate()
Whether the source supports updates with multiple value sets
|
boolean |
supportsCommonTableExpressions() |
boolean |
supportsCompareCriteriaEquals()
Support indicates connector accepts criteria of form (element = constant)
|
boolean |
supportsCompareCriteriaOrdered()
Support indicates connector accepts criteria of form (element <=|>= constant)
The query engine will may pushdown queries containing < or > if NOT is also supported. |
boolean |
supportsConvert(int fromType,
int toType)
Used for fine grained control of convert/cast pushdown.
|
boolean |
supportsCorrelatedSubqueries()
Support indicates connector can accept correlated subqueries wherever subqueries
are accepted
|
boolean |
supportsDependentJoins()
NOTE: The pushed independent tuples will not have been
converted to a unique set and may contain duplicates.
|
boolean |
supportsDirectQueryProcedure()
True, if this translator supports execution of source specific commands unaltered through a direct procedure.
|
boolean |
supportsElementaryOlapOperations() |
boolean |
supportsExcept()
Support indicates that the connector supports the EXCEPT of two queries.
|
boolean |
supportsExistsCriteria()
Support indicates connector accepts the EXISTS criteria
|
boolean |
supportsFormatLiteral(String literal,
ExecutionFactory.Format format) |
boolean |
supportsFullDependentJoins() |
boolean |
supportsFullOuterJoins()
Support indicates connector can accept full outer joins
|
boolean |
supportsFunctionsInGroupBy()
Support indicates that the connector supports non-column expressions in GROUP BY, such as:
SELECT dayofmonth(theDate), COUNT(*) FROM table GROUP BY dayofmonth(theDate) |
boolean |
supportsGroupBy()
Whether the source supports an explicit GROUP BY clause
|
boolean |
supportsGroupByRollup() |
boolean |
supportsHaving()
Whether the source supports the HAVING clause
|
boolean |
supportsInCriteria()
Support indicates connector accepts criteria of form (element IN set)
|
boolean |
supportsInCriteriaSubquery()
Support indicates connector accepts IN criteria with a subquery on the right side
|
boolean |
supportsInlineViews()
Support indicates connector can accept inline views (subqueries
in the FROM clause).
|
boolean |
supportsInnerJoins()
Support indicates connector can accept inner or cross joins
|
boolean |
supportsInsertWithQueryExpression()
|
boolean |
supportsIntersect()
Support indicates that the connector supports the INTERSECT of two queries.
|
boolean |
supportsIsNullCriteria()
Support indicates connector accepts criteria of form (element IS NULL)
|
boolean |
supportsLikeCriteria()
Support indicates connector accepts criteria of form (element LIKE constant)
|
boolean |
supportsLikeCriteriaEscapeCharacter()
Support indicates connector accepts criteria of form (element LIKE constant ESCAPE char)
|
boolean |
supportsLikeRegex() |
boolean |
supportsNotCriteria()
Support indicates connector accepts logical criteria NOT
|
boolean |
supportsOnlyCorrelatedSubqueries() |
boolean |
supportsOnlyFormatLiterals()
|
boolean |
supportsOnlyLiteralComparison() |
boolean |
supportsOnlySingleTableGroupBy()
Whether the source supports grouping only over a single table
|
boolean |
supportsOrCriteria()
Support indicates connector accepts logical criteria connected by OR
|
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 |
supportsOrderByWithExtendedGrouping() |
boolean |
supportsOuterJoins()
Support indicates connector can accept left outer joins
|
boolean |
supportsQuantifiedCompareCriteriaAll()
Support indicates connector accepts the quantified comparison criteria that
use ALL
|
boolean |
supportsQuantifiedCompareCriteriaSome()
Support indicates connector accepts the quantified comparison criteria that
use SOME
|
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 |
supportsScalarSubqueries()
Support indicates connector can accept scalar subqueries in the SELECT, WHERE, and
HAVING clauses
|
boolean |
supportsSearchedCaseExpressions()
Support indicates connector can accept queries with searched CASE WHEN
|
boolean |
supportsSelectDistinct()
Support indicates connector can accept queries with SELECT DISTINCT
|
boolean |
supportsSelectExpression()
Support indicates connector can accept expressions other than element
symbols in the SELECT clause.
|
boolean |
supportsSelectWithoutFrom() |
boolean |
supportsSelfJoins()
Support indicates connector can accept self-joins where a
group is joined to itself with aliases.
|
boolean |
supportsSetQueryOrderBy()
Support indicates that the connector supports an ORDER BY on a SetQuery.
|
boolean |
supportsSimilarTo() |
boolean |
supportsStringAgg() |
boolean |
supportsSubqueryInOn()
Refines subquery support.
|
boolean |
supportsUnions()
Support indicates that the connector supports the UNION of two queries.
|
boolean |
supportsWindowDistinctAggregates() |
boolean |
supportsWindowOrderByWithAggregates() |
String |
toString() |
boolean |
useAnsiJoin()
Whether the source prefers to use ANSI style joins.
|
addPushDownFunction, createExecution, getConnection, getInstance, getMetadataProcessor, getNativeQueryProcedureName, setCopyLobs, setDirectQueryProcedureName, setImmutable, setMaxDependentInPredicates, setMaxInCriteriaSize, setNativeQueryProcedureName, setRequiresCriteria, setSourceRequired, setSourceRequiredForMetadata, setSupportedJoinCriteria, setSupportsDirectQueryProcedure, setSupportsFullOuterJoins, setSupportsInnerJoins, setSupportsNativeQueries, setSupportsOrderBy, setSupportsOuterJoins, setSupportsSelectDistinct, setThreadBound, start, supportsNativeQueries
protected ExecutionFactory<F,C> getDelegate()
public void setDelegate(ExecutionFactory<F,C> delegate)
ExecutionFactory.start()
setDelegate
in interface DelegatingExecutionFactory<F,C>
@TranslatorProperty(display="Delegate name", required=true) public String getDelegateName()
getDelegateName
in interface DelegatingExecutionFactory<F,C>
public void setDelegateName(String delegateName)
public boolean areLobsUsableAfterClose()
ExecutionFactory
areLobsUsableAfterClose
in class ExecutionFactory<F,C>
public void closeConnection(C connection, F factory)
ExecutionFactory
Connection
. Subclasses should override, if they use
another type of connection.closeConnection
in class ExecutionFactory<F,C>
public ProcedureExecution createProcedureExecution(Call command, ExecutionContext executionContext, RuntimeMetadata metadata, C connection) throws TranslatorException
createProcedureExecution
in class ExecutionFactory<F,C>
TranslatorException
public ResultSetExecution createResultSetExecution(QueryExpression command, ExecutionContext executionContext, RuntimeMetadata metadata, C connection) throws TranslatorException
createResultSetExecution
in class ExecutionFactory<F,C>
TranslatorException
public UpdateExecution createUpdateExecution(Command command, ExecutionContext executionContext, RuntimeMetadata metadata, C connection) throws TranslatorException
createUpdateExecution
in class ExecutionFactory<F,C>
TranslatorException
public C getConnection(F factory, ExecutionContext executionContext) throws TranslatorException
ExecutionFactory
ConnectionFactory
. Subclasses should override, if they use
another type of connection factory or wish to use the ExecutionContext
. By default calls ExecutionFactory.getConnection(Object)
getConnection
in class ExecutionFactory<F,C>
executionContext
- null if this is a system request for a connectionTranslatorException
public ExecutionFactory.NullOrder getDefaultNullOrder()
ExecutionFactory
getDefaultNullOrder
in class ExecutionFactory<F,C>
ExecutionFactory.NullOrder
public LanguageFactory getLanguageFactory()
ExecutionFactory
getLanguageFactory
in class ExecutionFactory<F,C>
public int getMaxFromGroups()
ExecutionFactory
getMaxFromGroups
in class ExecutionFactory<F,C>
public void getMetadata(MetadataFactory metadataFactory, C conn) throws TranslatorException
ExecutionFactory
getMetadata
in class ExecutionFactory<F,C>
conn
- may be null if the source is not requiredTranslatorException
- to indicate a recoverable error, otherwise a RuntimeExceptionExecutionFactory.isSourceRequiredForMetadata()
public List<FunctionMethod> getPushDownFunctions()
ExecutionFactory
FunctionMethod
s that will be contributed to the SYS schema.
To avoid conflicts with system functions, the function name should contain a
qualifier - typically <translator name>.<function name>getPushDownFunctions
in class ExecutionFactory<F,C>
ExecutionFactory#addPushDownFunction(String, String, FunctionParameter, FunctionParameter...)
public List<String> getSupportedFunctions()
ExecutionFactory
getSupportedFunctions
in class ExecutionFactory<F,C>
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 TypeFacility getTypeFacility()
ExecutionFactory
getTypeFacility
in class ExecutionFactory<F,C>
public boolean isImmutable()
ExecutionFactory
isImmutable
in class ExecutionFactory<F,C>
public boolean isSourceRequired()
ExecutionFactory
isSourceRequired
in class ExecutionFactory<F,C>
public boolean supportsAggregatesAvg()
ExecutionFactory
supportsAggregatesAvg
in class ExecutionFactory<F,C>
public boolean supportsAggregatesCount()
ExecutionFactory
supportsAggregatesCount
in class ExecutionFactory<F,C>
public boolean supportsAggregatesCountStar()
ExecutionFactory
supportsAggregatesCountStar
in class ExecutionFactory<F,C>
public boolean supportsAggregatesDistinct()
ExecutionFactory
supportsAggregatesDistinct
in class ExecutionFactory<F,C>
public boolean supportsAggregatesEnhancedNumeric()
ExecutionFactory
supportsAggregatesEnhancedNumeric
in class ExecutionFactory<F,C>
public boolean supportsAggregatesMax()
ExecutionFactory
supportsAggregatesMax
in class ExecutionFactory<F,C>
public boolean supportsAggregatesMin()
ExecutionFactory
supportsAggregatesMin
in class ExecutionFactory<F,C>
public boolean supportsAggregatesSum()
ExecutionFactory
supportsAggregatesSum
in class ExecutionFactory<F,C>
public boolean supportsAliasedTable()
ExecutionFactory
supportsAliasedTable
in class ExecutionFactory<F,C>
public boolean supportsBatchedUpdates()
ExecutionFactory
BatchedUpdates
supportsBatchedUpdates
in class ExecutionFactory<F,C>
public boolean supportsBulkUpdate()
ExecutionFactory
supportsBulkUpdate
in class ExecutionFactory<F,C>
public boolean supportsCommonTableExpressions()
supportsCommonTableExpressions
in class ExecutionFactory<F,C>
public boolean supportsCompareCriteriaEquals()
ExecutionFactory
supportsCompareCriteriaEquals
in class ExecutionFactory<F,C>
public boolean supportsCompareCriteriaOrdered()
ExecutionFactory
supportsCompareCriteriaOrdered
in class ExecutionFactory<F,C>
public boolean supportsCorrelatedSubqueries()
ExecutionFactory
supportsCorrelatedSubqueries
in class ExecutionFactory<F,C>
public boolean supportsExcept()
ExecutionFactory
supportsExcept
in class ExecutionFactory<F,C>
public boolean supportsExistsCriteria()
ExecutionFactory
supportsExistsCriteria
in class ExecutionFactory<F,C>
public boolean supportsFunctionsInGroupBy()
ExecutionFactory
Support indicates that the connector supports non-column expressions in GROUP BY, such as:
SELECT dayofmonth(theDate), COUNT(*) FROM table GROUP BY dayofmonth(theDate)
supportsFunctionsInGroupBy
in class ExecutionFactory<F,C>
public boolean supportsGroupBy()
ExecutionFactory
supportsGroupBy
in class ExecutionFactory<F,C>
public boolean supportsHaving()
ExecutionFactory
supportsHaving
in class ExecutionFactory<F,C>
public boolean supportsInCriteria()
ExecutionFactory
supportsInCriteria
in class ExecutionFactory<F,C>
public boolean supportsInCriteriaSubquery()
ExecutionFactory
supportsInCriteriaSubquery
in class ExecutionFactory<F,C>
public boolean supportsInlineViews()
ExecutionFactory
supportsInlineViews
in class ExecutionFactory<F,C>
public boolean supportsInsertWithQueryExpression()
ExecutionFactory
SetQuery
or Select
supportsInsertWithQueryExpression
in class ExecutionFactory<F,C>
public boolean supportsIntersect()
ExecutionFactory
supportsIntersect
in class ExecutionFactory<F,C>
public boolean supportsIsNullCriteria()
ExecutionFactory
supportsIsNullCriteria
in class ExecutionFactory<F,C>
public boolean supportsLikeCriteria()
ExecutionFactory
supportsLikeCriteria
in class ExecutionFactory<F,C>
public boolean supportsLikeCriteriaEscapeCharacter()
ExecutionFactory
supportsLikeCriteriaEscapeCharacter
in class ExecutionFactory<F,C>
public boolean supportsNotCriteria()
ExecutionFactory
supportsNotCriteria
in class ExecutionFactory<F,C>
public boolean supportsOrCriteria()
ExecutionFactory
supportsOrCriteria
in class ExecutionFactory<F,C>
public boolean supportsOrderByNullOrdering()
ExecutionFactory
supportsOrderByNullOrdering
in class ExecutionFactory<F,C>
public boolean supportsOrderByUnrelated()
ExecutionFactory
supportsOrderByUnrelated
in class ExecutionFactory<F,C>
public boolean supportsQuantifiedCompareCriteriaAll()
ExecutionFactory
supportsQuantifiedCompareCriteriaAll
in class ExecutionFactory<F,C>
public boolean supportsQuantifiedCompareCriteriaSome()
ExecutionFactory
supportsQuantifiedCompareCriteriaSome
in class ExecutionFactory<F,C>
public boolean supportsRowLimit()
ExecutionFactory
supportsRowLimit
in class ExecutionFactory<F,C>
public boolean supportsRowOffset()
ExecutionFactory
supportsRowOffset
in class ExecutionFactory<F,C>
public boolean supportsScalarSubqueries()
ExecutionFactory
supportsScalarSubqueries
in class ExecutionFactory<F,C>
public boolean supportsSearchedCaseExpressions()
ExecutionFactory
supportsSearchedCaseExpressions
in class ExecutionFactory<F,C>
public boolean supportsSelectExpression()
ExecutionFactory
supportsSelectExpression
in class ExecutionFactory<F,C>
public boolean supportsSelfJoins()
ExecutionFactory
ExecutionFactory.supportsAliasedTable()
.supportsSelfJoins
in class ExecutionFactory<F,C>
public boolean supportsSetQueryOrderBy()
ExecutionFactory
supportsSetQueryOrderBy
in class ExecutionFactory<F,C>
public boolean supportsUnions()
ExecutionFactory
supportsUnions
in class ExecutionFactory<F,C>
public boolean useAnsiJoin()
ExecutionFactory
useAnsiJoin
in class ExecutionFactory<F,C>
public boolean isCopyLobs()
isCopyLobs
in class ExecutionFactory<F,C>
public boolean supportsArrayAgg()
supportsArrayAgg
in class ExecutionFactory<F,C>
public boolean supportsElementaryOlapOperations()
supportsElementaryOlapOperations
in class ExecutionFactory<F,C>
public boolean supportsFormatLiteral(String literal, ExecutionFactory.Format format)
supportsFormatLiteral
in class ExecutionFactory<F,C>
public boolean supportsLikeRegex()
supportsLikeRegex
in class ExecutionFactory<F,C>
public boolean supportsOnlyFormatLiterals()
ExecutionFactory
supportsOnlyFormatLiterals
in class ExecutionFactory<F,C>
public boolean supportsOnlySingleTableGroupBy()
ExecutionFactory
supportsOnlySingleTableGroupBy
in class ExecutionFactory<F,C>
public boolean supportsSimilarTo()
supportsSimilarTo
in class ExecutionFactory<F,C>
public boolean supportsWindowDistinctAggregates()
supportsWindowDistinctAggregates
in class ExecutionFactory<F,C>
public boolean supportsWindowOrderByWithAggregates()
supportsWindowOrderByWithAggregates
in class ExecutionFactory<F,C>
public int getMaxInCriteriaSize()
ExecutionFactory
getMaxInCriteriaSize
in class ExecutionFactory<F,C>
public ExecutionFactory.SupportedJoinCriteria getSupportedJoinCriteria()
ExecutionFactory
ExecutionFactory.SupportedJoinCriteria.ANY
getSupportedJoinCriteria
in class ExecutionFactory<F,C>
public boolean requiresCriteria()
ExecutionFactory
requiresCriteria
in class ExecutionFactory<F,C>
public boolean supportsFullOuterJoins()
ExecutionFactory
supportsFullOuterJoins
in class ExecutionFactory<F,C>
public boolean supportsInnerJoins()
ExecutionFactory
supportsInnerJoins
in class ExecutionFactory<F,C>
public boolean supportsOrderBy()
ExecutionFactory
supportsOrderBy
in class ExecutionFactory<F,C>
public boolean supportsOuterJoins()
ExecutionFactory
supportsOuterJoins
in class ExecutionFactory<F,C>
public boolean supportsSelectDistinct()
ExecutionFactory
supportsSelectDistinct
in class ExecutionFactory<F,C>
public int getMaxDependentInPredicates()
ExecutionFactory
getMaxDependentInPredicates
in class ExecutionFactory<F,C>
public boolean supportsAdvancedOlapOperations()
supportsAdvancedOlapOperations
in class ExecutionFactory<F,C>
public boolean supportsSubqueryInOn()
ExecutionFactory
supportsSubqueryInOn
in class ExecutionFactory<F,C>
public boolean supportsConvert(int fromType, int toType)
ExecutionFactory
ExecutionFactory.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<F,C>
fromType
- @see RUNTIME_CODEStoType
- @see RUNTIME_CODESpublic boolean supportsDependentJoins()
ExecutionFactory
supportsDependentJoins
in class ExecutionFactory<F,C>
public boolean supportsOnlyLiteralComparison()
supportsOnlyLiteralComparison
in class ExecutionFactory<F,C>
public CacheDirective getCacheDirective(Command command, ExecutionContext executionContext, RuntimeMetadata metadata) throws TranslatorException
ExecutionFactory
CacheDirective
to control command caching.
Use CacheDirective.Scope.NONE
to indicate to the engine that no caching should be performed by the engine.
If cache parameters on the CacheDirective
will be changed by the Execution
, then
a new instance of a CacheDirective
should be set each time.
getCacheDirective
in class ExecutionFactory<F,C>
TranslatorException
public boolean isSourceRequiredForMetadata()
ExecutionFactory
isSourceRequiredForMetadata
in class ExecutionFactory<F,C>
public boolean isForkable()
ExecutionFactory
Execution
.isForkable
in class ExecutionFactory<F,C>
Execution
s can be called in separate threads from the processing threadpublic boolean supportsArrayType()
ExecutionFactory
supportsArrayType
in class ExecutionFactory<F,C>
public String getDirectQueryProcedureName()
ExecutionFactory
getDirectQueryProcedureName
in class ExecutionFactory<F,C>
public boolean supportsDirectQueryProcedure()
ExecutionFactory
supportsDirectQueryProcedure
in class ExecutionFactory<F,C>
public ProcedureExecution createDirectExecution(List<Argument> arguments, Command command, ExecutionContext executionContext, RuntimeMetadata metadata, C connection) throws TranslatorException
createDirectExecution
in class ExecutionFactory<F,C>
TranslatorException
public boolean supportsOnlyCorrelatedSubqueries()
supportsOnlyCorrelatedSubqueries
in class ExecutionFactory<F,C>
public boolean isSourceRequiredForCapabilities()
ExecutionFactory
ExecutionFactory.initCapabilities(Object)
method will be consulted prior
to deteremining the capabilitesisSourceRequiredForCapabilities
in class ExecutionFactory<F,C>
public void initCapabilities(C connection) throws TranslatorException
ExecutionFactory
ExecutionFactory.isSourceRequiredForCapabilities()
returns trueinitCapabilities
in class ExecutionFactory<F,C>
TranslatorException
public boolean supportsStringAgg()
supportsStringAgg
in class ExecutionFactory<F,C>
public boolean supportsFullDependentJoins()
supportsFullDependentJoins
in class ExecutionFactory<F,C>
public boolean supportsSelectWithoutFrom()
supportsSelectWithoutFrom
in class ExecutionFactory<F,C>
public boolean supportsGroupByRollup()
supportsGroupByRollup
in class ExecutionFactory<F,C>
public boolean supportsOrderByWithExtendedGrouping()
supportsOrderByWithExtendedGrouping
in class ExecutionFactory<F,C>
public boolean isThreadBound()
isThreadBound
in class ExecutionFactory<F,C>
Copyright © 2014 JBoss by Red Hat. All Rights Reserved.