@Translator(name="loopback", description="A translator for testing, that returns mock data") public class LoopbackExecutionFactory extends ExecutionFactory<Object,Object>
ExecutionFactory.Format, ExecutionFactory.NullOrder, ExecutionFactory.SupportedJoinCriteria
DEFAULT_MAX_FROM_GROUPS, DEFAULT_MAX_IN_CRITERIA_SIZE
Constructor and Description |
---|
LoopbackExecutionFactory() |
Modifier and Type | Method and Description |
---|---|
Execution |
createExecution(Command command,
ExecutionContext executionContext,
RuntimeMetadata metadata,
Object connection)
Create an execution object for the specified command
|
Object |
getConnection(Object factory)
Return a connection object from the given connection factory.
|
long |
getPollIntervalInMilli() |
int |
getRowCount() |
List<String> |
getSupportedFunctions()
Get list of all supported function names.
|
int |
getWaitTime() |
boolean |
isSourceRequired()
Flag that indicates if a underlying source connection required for this execution factory to work
|
boolean |
isThrowError() |
void |
setPollIntervalInMilli(long intervel) |
void |
setRowCount(int rowCount) |
void |
setThrowError(boolean error) |
void |
setWaitTime(int waitTime) |
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 |
supportsAliasedTable()
Support indicates connector can accept groups with aliases
|
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 |
supportsCorrelatedSubqueries()
Support indicates connector can accept correlated subqueries wherever subqueries
are accepted
|
boolean |
supportsExcept()
Support indicates that the connector supports the EXCEPT of two queries.
|
boolean |
supportsExistsCriteria()
Support indicates connector accepts the EXISTS criteria
|
boolean |
supportsGroupBy()
Whether the source supports an explicit GROUP BY clause
|
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 |
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 |
supportsNotCriteria()
Support indicates connector accepts logical criteria NOT
|
boolean |
supportsOrCriteria()
Support indicates connector accepts logical criteria connected by OR
|
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 |
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 |
supportsSelectExpression()
Support indicates connector can accept expressions other than element
symbols in the SELECT clause.
|
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 |
supportsUnions()
Support indicates that the connector supports the UNION of two queries.
|
addPushDownFunction, areLobsUsableAfterClose, closeConnection, createProcedureExecution, createResultSetExecution, createUpdateExecution, getConnection, getDefaultNullOrder, getInstance, getLanguageFactory, getMaxDependentInPredicates, getMaxFromGroups, getMaxInCriteriaSize, getMetadata, getPushDownFunctions, getSupportedJoinCriteria, getTypeFacility, isCopyLobs, isImmutable, requiresCriteria, setCopyLobs, setImmutable, setMaxDependentInPredicates, setMaxInCriteriaSize, setRequiresCriteria, setSourceRequired, setSupportedJoinCriteria, setSupportsFullOuterJoins, setSupportsInnerJoins, setSupportsOrderBy, setSupportsOuterJoins, setSupportsSelectDistinct, supportsAdvancedOlapOperations, supportsAggregatesEnhancedNumeric, supportsArrayAgg, supportsBatchedUpdates, supportsBulkUpdate, supportsCommonTableExpressions, supportsConvert, supportsDependentJoins, supportsElementaryOlapOperations, supportsFormatLiteral, supportsFullOuterJoins, supportsFunctionsInGroupBy, supportsInnerJoins, supportsInsertWithQueryExpression, supportsLikeRegex, supportsOnlyFormatLiterals, supportsOnlyLiteralComparison, supportsOnlySingleTableGroupBy, supportsOrderBy, supportsOrderByNullOrdering, supportsOrderByUnrelated, supportsOuterJoins, supportsRowOffset, supportsSelectDistinct, supportsSimilarTo, supportsWindowDistinctAggregates, supportsWindowOrderByWithAggregates, useAnsiJoin
public Object getConnection(Object factory) throws TranslatorException
ExecutionFactory
ConnectionFactory
. Subclasses should override, if they use
another type of connection factory.getConnection
in class ExecutionFactory<Object,Object>
TranslatorException
ExecutionFactory.getConnection(Object, ExecutionContext)
@TranslatorProperty(display="Max Random Wait Time", advanced=true) public int getWaitTime()
public void setWaitTime(int waitTime)
@TranslatorProperty(display="Rows Per Query", advanced=true) public int getRowCount()
public void setRowCount(int rowCount)
@TranslatorProperty(display="Always Throw Error") public boolean isThrowError()
public void setThrowError(boolean error)
@TranslatorProperty(display="Poll interval if using a Asynchronous Connector") public long getPollIntervalInMilli()
public void setPollIntervalInMilli(long intervel)
public void start() throws TranslatorException
ExecutionFactory
start
in class ExecutionFactory<Object,Object>
TranslatorException
public Execution createExecution(Command command, ExecutionContext executionContext, RuntimeMetadata metadata, Object connection) throws TranslatorException
ExecutionFactory
createExecution
in class ExecutionFactory<Object,Object>
command
- the commandexecutionContext
- Provides information about the context that this command is
executing within, such as the identifiers for the command being executedmetadata
- Access to runtime metadata if needed to translate the commandconnection
- connection factory object to the data sourceTranslatorException
public boolean isSourceRequired()
ExecutionFactory
isSourceRequired
in class ExecutionFactory<Object,Object>
public List<String> getSupportedFunctions()
ExecutionFactory
getSupportedFunctions
in class ExecutionFactory<Object,Object>
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.
public boolean supportsGroupBy()
ExecutionFactory
supportsGroupBy
in class ExecutionFactory<Object,Object>
public boolean supportsAggregatesAvg()
ExecutionFactory
supportsAggregatesAvg
in class ExecutionFactory<Object,Object>
public boolean supportsAggregatesCount()
ExecutionFactory
supportsAggregatesCount
in class ExecutionFactory<Object,Object>
public boolean supportsAggregatesCountStar()
ExecutionFactory
supportsAggregatesCountStar
in class ExecutionFactory<Object,Object>
public boolean supportsAggregatesDistinct()
ExecutionFactory
supportsAggregatesDistinct
in class ExecutionFactory<Object,Object>
public boolean supportsAggregatesMax()
ExecutionFactory
supportsAggregatesMax
in class ExecutionFactory<Object,Object>
public boolean supportsAggregatesMin()
ExecutionFactory
supportsAggregatesMin
in class ExecutionFactory<Object,Object>
public boolean supportsAggregatesSum()
ExecutionFactory
supportsAggregatesSum
in class ExecutionFactory<Object,Object>
public boolean supportsAliasedTable()
ExecutionFactory
supportsAliasedTable
in class ExecutionFactory<Object,Object>
public boolean supportsCompareCriteriaEquals()
ExecutionFactory
supportsCompareCriteriaEquals
in class ExecutionFactory<Object,Object>
public boolean supportsCorrelatedSubqueries()
ExecutionFactory
supportsCorrelatedSubqueries
in class ExecutionFactory<Object,Object>
public boolean supportsExistsCriteria()
ExecutionFactory
supportsExistsCriteria
in class ExecutionFactory<Object,Object>
public boolean supportsInCriteria()
ExecutionFactory
supportsInCriteria
in class ExecutionFactory<Object,Object>
public boolean supportsInCriteriaSubquery()
ExecutionFactory
supportsInCriteriaSubquery
in class ExecutionFactory<Object,Object>
public boolean supportsIsNullCriteria()
ExecutionFactory
supportsIsNullCriteria
in class ExecutionFactory<Object,Object>
public boolean supportsLikeCriteria()
ExecutionFactory
supportsLikeCriteria
in class ExecutionFactory<Object,Object>
public boolean supportsLikeCriteriaEscapeCharacter()
ExecutionFactory
supportsLikeCriteriaEscapeCharacter
in class ExecutionFactory<Object,Object>
public boolean supportsNotCriteria()
ExecutionFactory
supportsNotCriteria
in class ExecutionFactory<Object,Object>
public boolean supportsOrCriteria()
ExecutionFactory
supportsOrCriteria
in class ExecutionFactory<Object,Object>
public boolean supportsQuantifiedCompareCriteriaAll()
ExecutionFactory
supportsQuantifiedCompareCriteriaAll
in class ExecutionFactory<Object,Object>
public boolean supportsScalarSubqueries()
ExecutionFactory
supportsScalarSubqueries
in class ExecutionFactory<Object,Object>
public boolean supportsSearchedCaseExpressions()
ExecutionFactory
supportsSearchedCaseExpressions
in class ExecutionFactory<Object,Object>
public boolean supportsSelfJoins()
ExecutionFactory
ExecutionFactory.supportsAliasedTable()
.supportsSelfJoins
in class ExecutionFactory<Object,Object>
public boolean supportsInlineViews()
ExecutionFactory
supportsInlineViews
in class ExecutionFactory<Object,Object>
public boolean supportsQuantifiedCompareCriteriaSome()
ExecutionFactory
supportsQuantifiedCompareCriteriaSome
in class ExecutionFactory<Object,Object>
public boolean supportsRowLimit()
ExecutionFactory
supportsRowLimit
in class ExecutionFactory<Object,Object>
public boolean supportsSelectExpression()
ExecutionFactory
supportsSelectExpression
in class ExecutionFactory<Object,Object>
public boolean supportsSetQueryOrderBy()
ExecutionFactory
supportsSetQueryOrderBy
in class ExecutionFactory<Object,Object>
public boolean supportsUnions()
ExecutionFactory
supportsUnions
in class ExecutionFactory<Object,Object>
public boolean supportsCompareCriteriaOrdered()
ExecutionFactory
supportsCompareCriteriaOrdered
in class ExecutionFactory<Object,Object>
public boolean supportsExcept()
ExecutionFactory
supportsExcept
in class ExecutionFactory<Object,Object>
public boolean supportsHaving()
ExecutionFactory
supportsHaving
in class ExecutionFactory<Object,Object>
public boolean supportsIntersect()
ExecutionFactory
supportsIntersect
in class ExecutionFactory<Object,Object>
Copyright © 2012 JBoss by Red Hat. All Rights Reserved.