/** * A translator for Sybase IQ 15.1+ */ @Translator(name="sybaseiq", description="A translator for Sybase Database", deprecated="sap-iq") public class SybaseIQExecutionFactory extends SAPIQExecutionFactory { }
@Translator(name="sap-gateway", description="A translator for making OData data service calls to SAP Gateway") public class SAPODataExecutionFactory extends ODataExecutionFactory { public SAPODataExecutionFactory() { super(); setSupportsOdataCount(true); setSupportsOdataFilter(true); setSupportsOdataOrderBy(true); setSupportsOdataSkip(true); setSupportsOdataTop(true); } @Override public MetadataProcessor<WSConnection> getMetadataProcessor() { return new SAPMetadataProcessor(); } }
@Translator(name="salesforce-41", description="A translator for Salesforce With API version 41") public class SalesForce41ExecutionFactory extends SalesForceExecutionFactory { }
@Translator(name="sap-nw-gateway", description="A translator for making OData data service calls to SAP Gateway", deprecated="sap-gateway") public class SAPNWODataExecutionFactory extends SAPODataExecutionFactory { }
/** * Translator for Greenplum. */ @Translator(name="greenplum", description="A translator for the Greenplum Database") public class GreenplumExecutionFactory extends PostgreSQLExecutionFactory { @Override public boolean supportsCorrelatedSubqueries() { return false; } @Override public boolean supportsElementaryOlapOperations() { //greenplum is/was based upon postgresql 8.2, but added extensions for window functions //this can be verified back to greenplum 4.1. Since that and earlier releases are eol //it suffices to just return true return true; } }
@Translator(name="ingres93", description="A translator for Ingres 9.3 or later Database") public class Ingres93ExecutionFactory extends IngresExecutionFactory { @Override public void start() throws TranslatorException { super.start(); convert.addTypeMapping("ansidate", FunctionModifier.DATE); //$NON-NLS-1$ convert.addTypeMapping("timestamp(9) with time zone", FunctionModifier.TIMESTAMP); //$NON-NLS-1$ } @SuppressWarnings("unchecked") @Override public List<?> translateLimit(Limit limit, ExecutionContext context) { if (limit.getRowOffset() > 0) { return Arrays.asList("OFFSET ", limit.getRowOffset(), " FETCH FIRST ", limit.getRowLimit(), " ROWS ONLY"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ } return super.translateLimit(limit, context); } @Override public boolean supportsRowOffset() { return true; } }
@Deprecated @Translator(name="hbase", description="HBase Translator, reads and writes the data to HBase", deprecated="phoenix") public class HBaseExecutionFactory extends PhoenixExecutionFactory { public HBaseExecutionFactory() { super(); setSupportsFullOuterJoins(false); } }
@Translator(name="ucanaccess", description="A translator for read/write Microsoft Access Database") public class UCanAccessExecutionFactory extends HsqlExecutionFactory { public static final String UCANACCESS = "ucanaccess"; //$NON-NLS-1$ public UCanAccessExecutionFactory() { setSupportsOrderBy(true); setMaxInCriteriaSize(JDBCExecutionFactory.DEFAULT_MAX_IN_CRITERIA); setMaxDependentInPredicates(10); } @Override public void start() throws TranslatorException { super.start(); addPushDownFunction(UCANACCESS, "DCount", TypeFacility.RUNTIME_NAMES.BIG_INTEGER, TypeFacility.RUNTIME_NAMES.STRING, TypeFacility.RUNTIME_NAMES.STRING, TypeFacility.RUNTIME_NAMES.STRING); //$NON-NLS-1$ addPushDownFunction(UCANACCESS, "DSum", TypeFacility.RUNTIME_NAMES.BIG_INTEGER, TypeFacility.RUNTIME_NAMES.STRING, TypeFacility.RUNTIME_NAMES.STRING, TypeFacility.RUNTIME_NAMES.STRING); //$NON-NLS-1$ addPushDownFunction(UCANACCESS, "DMax", TypeFacility.RUNTIME_NAMES.INTEGER, TypeFacility.RUNTIME_NAMES.STRING, TypeFacility.RUNTIME_NAMES.STRING); //$NON-NLS-1$ addPushDownFunction(UCANACCESS, "DMin", TypeFacility.RUNTIME_NAMES.BIG_INTEGER, TypeFacility.RUNTIME_NAMES.STRING, TypeFacility.RUNTIME_NAMES.STRING); //$NON-NLS-1$ addPushDownFunction(UCANACCESS, "DAvg", TypeFacility.RUNTIME_NAMES.BIG_INTEGER, TypeFacility.RUNTIME_NAMES.STRING, TypeFacility.RUNTIME_NAMES.STRING); //$NON-NLS-1$ addPushDownFunction(UCANACCESS, "DFirst", TypeFacility.RUNTIME_NAMES.OBJECT, TypeFacility.RUNTIME_NAMES.STRING, TypeFacility.RUNTIME_NAMES.STRING); //$NON-NLS-1$ addPushDownFunction(UCANACCESS, "DLast", TypeFacility.RUNTIME_NAMES.OBJECT, TypeFacility.RUNTIME_NAMES.STRING, TypeFacility.RUNTIME_NAMES.STRING); //$NON-NLS-1$ } @Override public boolean supportsDependentJoins() { return false; } }
@Translator(name="swagger", description="A translator for making swagger based data service call") public class SwaggerExecutionFactory extends ExecutionFactory<ConnectionFactory, WSConnection> { public SwaggerExecutionFactory() { setSourceRequiredForMetadata(true); setSupportsOrderBy(false); setSupportsSelectDistinct(false); setSupportsInnerJoins(false); setSupportsFullOuterJoins(false); setSupportsOuterJoins(false); } @Override public ProcedureExecution createProcedureExecution(Call command, ExecutionContext executionContext, RuntimeMetadata metadata, WSConnection connection) throws TranslatorException { return new SwaggerProcedureExecution(command, this, executionContext, metadata, connection); } @Override public final List<String> getSupportedFunctions() { return Collections.emptyList(); } @Override public MetadataProcessor<WSConnection> getMetadataProcessor() { return new SwaggerMetadataProcessor(this); } }
@Translator(name="olap", description="A translator for OLAP Cubes") public class OlapExecutionFactory extends ExecutionFactory<DataSource, Connection> { private static final String INVOKE_MDX = "invokeMdx"; //$NON-NLS-1$
@Translator(name="informix", description="A translator for Informix Database") public class InformixExecutionFactory extends JDBCExecutionFactory {
@Translator(name="redshift", description="A translator for Redshift") public class RedshiftExecutionFactory extends PostgreSQLExecutionFactory {
@Translator(name="excel", description="Excel file translator") public class ExcelExecutionFactory extends ExecutionFactory<ConnectionFactory, VirtualFileConnection> {
@Translator(name = "simpledb", description = "Translator for Amazon SimpleDB") public class SimpleDBExecutionFactory extends ExecutionFactory<ConnectionFactory, SimpleDBConnection> { public static final String INTERSECTION = "INTERSECTION"; //$NON-NLS-1$
@Translator(name="access", description="A translator for Microsoft Access Database") public class AccessExecutionFactory extends BaseSybaseExecutionFactory {
@Translator(name="mysql5", description="A translator for open source MySQL5 Database") public class MySQL5ExecutionFactory extends MySQLExecutionFactory {
@Translator(name="google-spreadsheet", description="A translator for Google Spreadsheet") public class SpreadsheetExecutionFactory extends ExecutionFactory<ConnectionFactory, GoogleSpreadsheetConnection>{ public static final BundleUtil UTIL = BundleUtil.getBundleUtil(SpreadsheetExecutionFactory.class);
@Translator(name="db2", description="A translator for IBM DB2 Database") public class DB2ExecutionFactory extends BaseDB2ExecutionFactory {
@Translator(name="jdbc-simple", description="An extended JDBC ANSI translator with some simple capabilities") public class SimpleJDBCExecutionFactory extends JDBCExecutionFactory {
@Translator(name="intersystems-cache", description="A translator for Intersystems Cache Database") public class InterSystemsCacheExecutionFactory extends JDBCExecutionFactory {