[teiid-commits] teiid SVN: r2124 - in trunk: api and 18 other directories.
teiid-commits at lists.jboss.org
teiid-commits at lists.jboss.org
Thu May 13 12:19:08 EDT 2010
Author: rareddy
Date: 2010-05-13 12:19:04 -0400 (Thu, 13 May 2010)
New Revision: 2124
Added:
trunk/api/
trunk/api/src/main/java/org/teiid/metadata/MetadataFactory.java
trunk/api/src/main/java/org/teiid/metadata/RuntimeMetadata.java
trunk/api/src/main/java/org/teiid/resource/spi/BasicManagedConnection.java
trunk/api/src/main/java/org/teiid/resource/spi/BasicManagedConnectionFactory.java
trunk/api/src/main/java/org/teiid/translator/Execution.java
trunk/api/src/main/java/org/teiid/translator/ExecutionFactory.java
trunk/api/src/main/java/org/teiid/translator/MetadataProvider.java
trunk/api/src/main/java/org/teiid/translator/ProcedureExecution.java
trunk/api/src/main/java/org/teiid/translator/ResultSetExecution.java
trunk/api/src/main/java/org/teiid/translator/TranslatorCapabilities.java
trunk/api/src/main/java/org/teiid/translator/TranslatorException.java
trunk/api/src/main/java/org/teiid/translator/UpdateExecution.java
Removed:
trunk/api/src/main/java/org/teiid/metadata/MetadataFactory.java
trunk/api/src/main/java/org/teiid/metadata/RuntimeMetadata.java
trunk/api/src/main/java/org/teiid/resource/spi/BasicManagedConnection.java
trunk/api/src/main/java/org/teiid/resource/spi/BasicManagedConnectionFactory.java
trunk/api/src/main/java/org/teiid/translator/ConnectorCapabilities.java
trunk/api/src/main/java/org/teiid/translator/ConnectorException.java
trunk/api/src/main/java/org/teiid/translator/Execution.java
trunk/api/src/main/java/org/teiid/translator/ExecutionFactory.java
trunk/api/src/main/java/org/teiid/translator/MetadataProvider.java
trunk/api/src/main/java/org/teiid/translator/ProcedureExecution.java
trunk/api/src/main/java/org/teiid/translator/ResultSetExecution.java
trunk/api/src/main/java/org/teiid/translator/UpdateExecution.java
trunk/connector-api/
Modified:
trunk/api/pom.xml
trunk/connectors/connector-ldap/pom.xml
trunk/connectors/connector-salesforce/pom.xml
trunk/connectors/connector-text/pom.xml
trunk/connectors/pom.xml
trunk/connectors/sandbox/translator-yahoo/pom.xml
trunk/connectors/translator-jdbc/pom.xml
trunk/connectors/translator-ldap/pom.xml
trunk/connectors/translator-loopback/pom.xml
trunk/connectors/translator-salesforce/pom.xml
trunk/connectors/translator-text/pom.xml
trunk/engine/pom.xml
trunk/jboss-integration/pom.xml
trunk/metadata/pom.xml
trunk/pom.xml
trunk/runtime/pom.xml
trunk/test-integration/pom.xml
Log:
TEIID-1075: renaming the connector-api module as the teiid-api module
Copied: trunk/api (from rev 2122, trunk/connector-api)
Modified: trunk/api/pom.xml
===================================================================
--- trunk/connector-api/pom.xml 2010-05-13 13:40:34 UTC (rev 2122)
+++ trunk/api/pom.xml 2010-05-13 16:19:04 UTC (rev 2124)
@@ -8,9 +8,9 @@
<version>7.0.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
- <artifactId>teiid-connector-api</artifactId>
- <name>Connector API</name>
- <description>API for creating connectors.</description>
+ <artifactId>teiid-api</artifactId>
+ <name>Teiid Translator API</name>
+ <description>API for creating Translators and other common extenders in Teiid</description>
<dependencies>
<dependency>
@@ -33,4 +33,4 @@
</dependency>
</dependencies>
-</project>
\ No newline at end of file
+</project>
Deleted: trunk/api/src/main/java/org/teiid/metadata/MetadataFactory.java
===================================================================
--- trunk/connector-api/src/main/java/org/teiid/metadata/MetadataFactory.java 2010-05-13 13:40:34 UTC (rev 2122)
+++ trunk/api/src/main/java/org/teiid/metadata/MetadataFactory.java 2010-05-13 16:19:04 UTC (rev 2124)
@@ -1,280 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * See the COPYRIGHT.txt file distributed with this work for information
- * regarding copyright ownership. Some portions may be licensed
- * to Red Hat, Inc. under one or more contributor license agreements.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
- * 02110-1301 USA.
- */
-
-package org.teiid.metadata;
-
-import java.util.ArrayList;
-import java.util.LinkedList;
-import java.util.List;
-import java.util.Map;
-import java.util.Properties;
-
-import org.teiid.connector.DataPlugin;
-import org.teiid.core.id.UUIDFactory;
-import org.teiid.translator.ConnectorException;
-import org.teiid.translator.TypeFacility;
-
-
-/**
- * Allows connectors to build metadata for use by the engine.
- *
- * TODO: add support for datatype import
- * TODO: add support for unique constraints
- */
-public class MetadataFactory {
-
- private Schema schema;
- private UUIDFactory factory = new UUIDFactory();
- private Map<String, Datatype> dataTypes;
- private Properties importProperties;
- private MetadataStore store = new MetadataStore();
-
- public MetadataFactory(String modelName, Map<String, Datatype> dataTypes, Properties importProperties) {
- this.dataTypes = dataTypes;
- schema = new Schema();
- schema.setName(modelName);
- setUUID(schema);
- store.addSchema(schema);
- this.importProperties = importProperties;
- }
-
- public MetadataStore getMetadataStore() {
- return store;
- }
-
- public Properties getImportProperties() {
- return importProperties;
- }
-
- private void setUUID(AbstractMetadataRecord record) {
- record.setUUID(factory.create().toString());
- }
-
- /**
- * Add a table with the given name to the model.
- * @param name
- * @return
- * @throws ConnectorException
- */
- public Table addTable(String name) throws ConnectorException {
- Table table = new Table();
- table.setTableType(Table.Type.Table);
- table.setName(name);
- setUUID(table);
- this.schema.addTable(table);
- return table;
- }
-
- /**
- * Adds a column to the table with the given name and type.
- * @param name
- * @param type should be one of {@link TypeFacility.RUNTIME_NAMES}
- * @param table
- * @return
- * @throws ConnectorException
- */
- public Column addColumn(String name, String type, ColumnSet<?> table) throws ConnectorException {
- if (name.indexOf(AbstractMetadataRecord.NAME_DELIM_CHAR) != -1) {
- throw new ConnectorException(DataPlugin.Util.getString("MetadataFactory.invalid_name", name)); //$NON-NLS-1$
- }
- Column column = new Column();
- column.setName(name);
- table.addColumn(column);
- column.setPosition(table.getColumns().size()); //1 based indexing
- Datatype datatype = setColumnType(type, column);
- column.setCaseSensitive(datatype.isCaseSensitive());
- column.setAutoIncremented(datatype.isAutoIncrement());
- column.setSigned(datatype.isSigned());
- setUUID(column);
- return column;
- }
-
- private Datatype setColumnType(String type,
- BaseColumn column) throws ConnectorException {
- Datatype datatype = dataTypes.get(type);
- if (datatype == null) {
- throw new ConnectorException(DataPlugin.Util.getString("MetadataFactory.unknown_datatype", type)); //$NON-NLS-1$
- }
- column.setDatatype(datatype);
- column.setDatatypeUUID(datatype.getUUID());
- column.setLength(datatype.getLength());
- column.setPrecision(datatype.getPrecisionLength());
- column.setRadix(datatype.getRadix());
- column.setRuntimeType(datatype.getRuntimeTypeName());
- return datatype;
- }
-
- /**
- * Adds a primary key to the given table. The column names should be in key order.
- * @param name
- * @param columnNames
- * @param table
- * @return
- * @throws ConnectorException
- */
- public KeyRecord addPrimaryKey(String name, List<String> columnNames, Table table) throws ConnectorException {
- KeyRecord primaryKey = new KeyRecord(KeyRecord.Type.Primary);
- primaryKey.setParent(table);
- primaryKey.setColumns(new ArrayList<Column>(columnNames.size()));
- primaryKey.setName(name);
- setUUID(primaryKey);
- assignColumns(columnNames, table, primaryKey);
- table.setPrimaryKey(primaryKey);
- return primaryKey;
- }
-
- /**
- * Adds an access pattern to the given table.
- * @param name
- * @param columnNames
- * @param table
- * @return
- * @throws ConnectorException
- */
- public KeyRecord addAccessPattern(String name, List<String> columnNames, Table table) throws ConnectorException {
- KeyRecord ap = new KeyRecord(KeyRecord.Type.AccessPattern);
- ap.setParent(table);
- ap.setColumns(new ArrayList<Column>(columnNames.size()));
- ap.setName(name);
- setUUID(ap);
- assignColumns(columnNames, table, ap);
- table.getAccessPatterns().add(ap);
- return ap;
- }
-
- /**
- * Adds an index to the given table.
- * @param name
- * @param nonUnique true indicates that an index is being added.
- * @param columnNames
- * @param table
- * @return
- * @throws ConnectorException
- */
- public KeyRecord addIndex(String name, boolean nonUnique, List<String> columnNames, Table table) throws ConnectorException {
- KeyRecord index = new KeyRecord(nonUnique?KeyRecord.Type.NonUnique:KeyRecord.Type.Index);
- index.setParent(table);
- index.setColumns(new ArrayList<Column>(columnNames.size()));
- index.setName(name);
- setUUID(index);
- assignColumns(columnNames, table, index);
- table.getIndexes().add(index);
- return index;
- }
-
- /**
- * Adds a foreign key to the given table. The column names should be in key order.
- * @param name
- * @param columnNames
- * @param pkTable
- * @param table
- * @return
- * @throws ConnectorException
- */
- public ForeignKey addForiegnKey(String name, List<String> columnNames, Table pkTable, Table table) throws ConnectorException {
- ForeignKey foreignKey = new ForeignKey();
- foreignKey.setParent(table);
- foreignKey.setColumns(new ArrayList<Column>(columnNames.size()));
- foreignKey.setName(name);
- setUUID(foreignKey);
- if (pkTable.getPrimaryKey() == null) {
- throw new ConnectorException("No primary key defined for table " + pkTable); //$NON-NLS-1$
- }
- foreignKey.setPrimaryKey(pkTable.getPrimaryKey());
- foreignKey.setUniqueKeyID(pkTable.getPrimaryKey().getUUID());
- assignColumns(columnNames, table, foreignKey);
- table.getForeignKeys().add(foreignKey);
- return foreignKey;
- }
-
- /**
- * Add a procedure with the given name to the model.
- * @param name
- * @return
- * @throws ConnectorException
- */
- public Procedure addProcedure(String name) throws ConnectorException {
- Procedure procedure = new Procedure();
- procedure.setName(name);
- setUUID(procedure);
- procedure.setParameters(new LinkedList<ProcedureParameter>());
- this.schema.addProcedure(procedure);
- return procedure;
- }
-
- /**
- * Add a procedure parameter.
- * @param name
- * @param type should be one of {@link TypeFacility.RUNTIME_NAMES}
- * @param parameterType should be one of {@link ProcedureParameter.Type}
- * @param procedure
- * @return
- * @throws ConnectorException
- */
- public ProcedureParameter addProcedureParameter(String name, String type, ProcedureParameter.Type parameterType, Procedure procedure) throws ConnectorException {
- ProcedureParameter param = new ProcedureParameter();
- param.setName(name);
- setUUID(param);
- param.setType(parameterType);
- param.setProcedure(procedure);
- setColumnType(type, param);
- procedure.getParameters().add(param);
- param.setPosition(procedure.getParameters().size()); //1 based indexing
- return param;
- }
-
- /**
- * Add a procedure resultset column to the given procedure.
- * @param name
- * @param type should be one of {@link TypeFacility.RUNTIME_NAMES}
- * @param procedure
- * @return
- * @throws ConnectorException
- */
- public Column addProcedureResultSetColumn(String name, String type, Procedure procedure) throws ConnectorException {
- if (procedure.getResultSet() == null) {
- ColumnSet<Procedure> resultSet = new ColumnSet<Procedure>();
- resultSet.setParent(procedure);
- resultSet.setName("RSParam"); //$NON-NLS-1$
- setUUID(resultSet);
- procedure.setResultSet(resultSet);
- }
- return addColumn(name, type, procedure.getResultSet());
- }
-
- private void assignColumns(List<String> columnNames, Table table,
- ColumnSet<?> columns) throws ConnectorException {
- for (String columnName : columnNames) {
- boolean match = false;
- for (Column column : table.getColumns()) {
- if (column.getName().equals(columnName)) {
- match = true;
- columns.getColumns().add(column);
- break;
- }
- }
- if (!match) {
- throw new ConnectorException(DataPlugin.Util.getString("MetadataFactory.no_column_found", columnName)); //$NON-NLS-1$
- }
- }
- }
-}
Copied: trunk/api/src/main/java/org/teiid/metadata/MetadataFactory.java (from rev 2123, trunk/connector-api/src/main/java/org/teiid/metadata/MetadataFactory.java)
===================================================================
--- trunk/api/src/main/java/org/teiid/metadata/MetadataFactory.java (rev 0)
+++ trunk/api/src/main/java/org/teiid/metadata/MetadataFactory.java 2010-05-13 16:19:04 UTC (rev 2124)
@@ -0,0 +1,280 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * See the COPYRIGHT.txt file distributed with this work for information
+ * regarding copyright ownership. Some portions may be licensed
+ * to Red Hat, Inc. under one or more contributor license agreements.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+ * 02110-1301 USA.
+ */
+
+package org.teiid.metadata;
+
+import java.util.ArrayList;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Map;
+import java.util.Properties;
+
+import org.teiid.connector.DataPlugin;
+import org.teiid.core.id.UUIDFactory;
+import org.teiid.translator.TranslatorException;
+import org.teiid.translator.TypeFacility;
+
+
+/**
+ * Allows connectors to build metadata for use by the engine.
+ *
+ * TODO: add support for datatype import
+ * TODO: add support for unique constraints
+ */
+public class MetadataFactory {
+
+ private Schema schema;
+ private UUIDFactory factory = new UUIDFactory();
+ private Map<String, Datatype> dataTypes;
+ private Properties importProperties;
+ private MetadataStore store = new MetadataStore();
+
+ public MetadataFactory(String modelName, Map<String, Datatype> dataTypes, Properties importProperties) {
+ this.dataTypes = dataTypes;
+ schema = new Schema();
+ schema.setName(modelName);
+ setUUID(schema);
+ store.addSchema(schema);
+ this.importProperties = importProperties;
+ }
+
+ public MetadataStore getMetadataStore() {
+ return store;
+ }
+
+ public Properties getImportProperties() {
+ return importProperties;
+ }
+
+ private void setUUID(AbstractMetadataRecord record) {
+ record.setUUID(factory.create().toString());
+ }
+
+ /**
+ * Add a table with the given name to the model.
+ * @param name
+ * @return
+ * @throws TranslatorException
+ */
+ public Table addTable(String name) throws TranslatorException {
+ Table table = new Table();
+ table.setTableType(Table.Type.Table);
+ table.setName(name);
+ setUUID(table);
+ this.schema.addTable(table);
+ return table;
+ }
+
+ /**
+ * Adds a column to the table with the given name and type.
+ * @param name
+ * @param type should be one of {@link TypeFacility.RUNTIME_NAMES}
+ * @param table
+ * @return
+ * @throws TranslatorException
+ */
+ public Column addColumn(String name, String type, ColumnSet<?> table) throws TranslatorException {
+ if (name.indexOf(AbstractMetadataRecord.NAME_DELIM_CHAR) != -1) {
+ throw new TranslatorException(DataPlugin.Util.getString("MetadataFactory.invalid_name", name)); //$NON-NLS-1$
+ }
+ Column column = new Column();
+ column.setName(name);
+ table.addColumn(column);
+ column.setPosition(table.getColumns().size()); //1 based indexing
+ Datatype datatype = setColumnType(type, column);
+ column.setCaseSensitive(datatype.isCaseSensitive());
+ column.setAutoIncremented(datatype.isAutoIncrement());
+ column.setSigned(datatype.isSigned());
+ setUUID(column);
+ return column;
+ }
+
+ private Datatype setColumnType(String type,
+ BaseColumn column) throws TranslatorException {
+ Datatype datatype = dataTypes.get(type);
+ if (datatype == null) {
+ throw new TranslatorException(DataPlugin.Util.getString("MetadataFactory.unknown_datatype", type)); //$NON-NLS-1$
+ }
+ column.setDatatype(datatype);
+ column.setDatatypeUUID(datatype.getUUID());
+ column.setLength(datatype.getLength());
+ column.setPrecision(datatype.getPrecisionLength());
+ column.setRadix(datatype.getRadix());
+ column.setRuntimeType(datatype.getRuntimeTypeName());
+ return datatype;
+ }
+
+ /**
+ * Adds a primary key to the given table. The column names should be in key order.
+ * @param name
+ * @param columnNames
+ * @param table
+ * @return
+ * @throws TranslatorException
+ */
+ public KeyRecord addPrimaryKey(String name, List<String> columnNames, Table table) throws TranslatorException {
+ KeyRecord primaryKey = new KeyRecord(KeyRecord.Type.Primary);
+ primaryKey.setParent(table);
+ primaryKey.setColumns(new ArrayList<Column>(columnNames.size()));
+ primaryKey.setName(name);
+ setUUID(primaryKey);
+ assignColumns(columnNames, table, primaryKey);
+ table.setPrimaryKey(primaryKey);
+ return primaryKey;
+ }
+
+ /**
+ * Adds an access pattern to the given table.
+ * @param name
+ * @param columnNames
+ * @param table
+ * @return
+ * @throws TranslatorException
+ */
+ public KeyRecord addAccessPattern(String name, List<String> columnNames, Table table) throws TranslatorException {
+ KeyRecord ap = new KeyRecord(KeyRecord.Type.AccessPattern);
+ ap.setParent(table);
+ ap.setColumns(new ArrayList<Column>(columnNames.size()));
+ ap.setName(name);
+ setUUID(ap);
+ assignColumns(columnNames, table, ap);
+ table.getAccessPatterns().add(ap);
+ return ap;
+ }
+
+ /**
+ * Adds an index to the given table.
+ * @param name
+ * @param nonUnique true indicates that an index is being added.
+ * @param columnNames
+ * @param table
+ * @return
+ * @throws TranslatorException
+ */
+ public KeyRecord addIndex(String name, boolean nonUnique, List<String> columnNames, Table table) throws TranslatorException {
+ KeyRecord index = new KeyRecord(nonUnique?KeyRecord.Type.NonUnique:KeyRecord.Type.Index);
+ index.setParent(table);
+ index.setColumns(new ArrayList<Column>(columnNames.size()));
+ index.setName(name);
+ setUUID(index);
+ assignColumns(columnNames, table, index);
+ table.getIndexes().add(index);
+ return index;
+ }
+
+ /**
+ * Adds a foreign key to the given table. The column names should be in key order.
+ * @param name
+ * @param columnNames
+ * @param pkTable
+ * @param table
+ * @return
+ * @throws TranslatorException
+ */
+ public ForeignKey addForiegnKey(String name, List<String> columnNames, Table pkTable, Table table) throws TranslatorException {
+ ForeignKey foreignKey = new ForeignKey();
+ foreignKey.setParent(table);
+ foreignKey.setColumns(new ArrayList<Column>(columnNames.size()));
+ foreignKey.setName(name);
+ setUUID(foreignKey);
+ if (pkTable.getPrimaryKey() == null) {
+ throw new TranslatorException("No primary key defined for table " + pkTable); //$NON-NLS-1$
+ }
+ foreignKey.setPrimaryKey(pkTable.getPrimaryKey());
+ foreignKey.setUniqueKeyID(pkTable.getPrimaryKey().getUUID());
+ assignColumns(columnNames, table, foreignKey);
+ table.getForeignKeys().add(foreignKey);
+ return foreignKey;
+ }
+
+ /**
+ * Add a procedure with the given name to the model.
+ * @param name
+ * @return
+ * @throws TranslatorException
+ */
+ public Procedure addProcedure(String name) throws TranslatorException {
+ Procedure procedure = new Procedure();
+ procedure.setName(name);
+ setUUID(procedure);
+ procedure.setParameters(new LinkedList<ProcedureParameter>());
+ this.schema.addProcedure(procedure);
+ return procedure;
+ }
+
+ /**
+ * Add a procedure parameter.
+ * @param name
+ * @param type should be one of {@link TypeFacility.RUNTIME_NAMES}
+ * @param parameterType should be one of {@link ProcedureParameter.Type}
+ * @param procedure
+ * @return
+ * @throws TranslatorException
+ */
+ public ProcedureParameter addProcedureParameter(String name, String type, ProcedureParameter.Type parameterType, Procedure procedure) throws TranslatorException {
+ ProcedureParameter param = new ProcedureParameter();
+ param.setName(name);
+ setUUID(param);
+ param.setType(parameterType);
+ param.setProcedure(procedure);
+ setColumnType(type, param);
+ procedure.getParameters().add(param);
+ param.setPosition(procedure.getParameters().size()); //1 based indexing
+ return param;
+ }
+
+ /**
+ * Add a procedure resultset column to the given procedure.
+ * @param name
+ * @param type should be one of {@link TypeFacility.RUNTIME_NAMES}
+ * @param procedure
+ * @return
+ * @throws TranslatorException
+ */
+ public Column addProcedureResultSetColumn(String name, String type, Procedure procedure) throws TranslatorException {
+ if (procedure.getResultSet() == null) {
+ ColumnSet<Procedure> resultSet = new ColumnSet<Procedure>();
+ resultSet.setParent(procedure);
+ resultSet.setName("RSParam"); //$NON-NLS-1$
+ setUUID(resultSet);
+ procedure.setResultSet(resultSet);
+ }
+ return addColumn(name, type, procedure.getResultSet());
+ }
+
+ private void assignColumns(List<String> columnNames, Table table,
+ ColumnSet<?> columns) throws TranslatorException {
+ for (String columnName : columnNames) {
+ boolean match = false;
+ for (Column column : table.getColumns()) {
+ if (column.getName().equals(columnName)) {
+ match = true;
+ columns.getColumns().add(column);
+ break;
+ }
+ }
+ if (!match) {
+ throw new TranslatorException(DataPlugin.Util.getString("MetadataFactory.no_column_found", columnName)); //$NON-NLS-1$
+ }
+ }
+ }
+}
Deleted: trunk/api/src/main/java/org/teiid/metadata/RuntimeMetadata.java
===================================================================
--- trunk/connector-api/src/main/java/org/teiid/metadata/RuntimeMetadata.java 2010-05-13 13:40:34 UTC (rev 2122)
+++ trunk/api/src/main/java/org/teiid/metadata/RuntimeMetadata.java 2010-05-13 16:19:04 UTC (rev 2124)
@@ -1,78 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * See the COPYRIGHT.txt file distributed with this work for information
- * regarding copyright ownership. Some portions may be licensed
- * to Red Hat, Inc. under one or more contributor license agreements.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
- * 02110-1301 USA.
- */
-
-package org.teiid.metadata;
-
-import org.teiid.translator.ConnectorException;
-
-/**
- * Helper methods that can be used to access runtime metadata.
- */
-public interface RuntimeMetadata {
-
- /**
- * Look up an object by identifier
- * @param fullName
- * @return The object
- */
- Table getTable(String fullName) throws ConnectorException;
-
- /**
- * Look up an object by identifier
- * @param fullName
- * @return The object
- */
- Column getColumn(String fullName) throws ConnectorException;
-
- /**
- * Look up an object by identifier
- * @param fullName
- * @return The object
- */
- Procedure getProcedure(String fullName) throws ConnectorException;
-
- /**
- * Gets the contents of a VDB resource in binary form.
- * @param resourcePath a path returned by getVDBResourcePaths()
- * @return the binary contents of the resource in a byte[]
- * @throws ConnectorException if the operation fails
- * @since 4.3
- */
- public byte[] getBinaryVDBResource(String resourcePath) throws ConnectorException;
-
- /**
- * Gets the contents of a VDB resource as a String.
- * @param resourcePath a path returned by getVDBResourcePaths()
- * @return the contents of the resource as a String of characters
- * @throws ConnectorException if the operation fails
- * @since 4.3
- */
- public String getCharacterVDBResource(String resourcePath) throws ConnectorException;
-
- /**
- * Gets the resource paths of all the resources in the VDB.
- * @return an array of resource paths of the resources in the VDB
- * @throws ConnectorException if the operation fails
- * @since 4.3
- */
- public String[] getVDBResourcePaths() throws ConnectorException;
-}
Copied: trunk/api/src/main/java/org/teiid/metadata/RuntimeMetadata.java (from rev 2123, trunk/connector-api/src/main/java/org/teiid/metadata/RuntimeMetadata.java)
===================================================================
--- trunk/api/src/main/java/org/teiid/metadata/RuntimeMetadata.java (rev 0)
+++ trunk/api/src/main/java/org/teiid/metadata/RuntimeMetadata.java 2010-05-13 16:19:04 UTC (rev 2124)
@@ -0,0 +1,78 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * See the COPYRIGHT.txt file distributed with this work for information
+ * regarding copyright ownership. Some portions may be licensed
+ * to Red Hat, Inc. under one or more contributor license agreements.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+ * 02110-1301 USA.
+ */
+
+package org.teiid.metadata;
+
+import org.teiid.translator.TranslatorException;
+
+/**
+ * Helper methods that can be used to access runtime metadata.
+ */
+public interface RuntimeMetadata {
+
+ /**
+ * Look up an object by identifier
+ * @param fullName
+ * @return The object
+ */
+ Table getTable(String fullName) throws TranslatorException;
+
+ /**
+ * Look up an object by identifier
+ * @param fullName
+ * @return The object
+ */
+ Column getColumn(String fullName) throws TranslatorException;
+
+ /**
+ * Look up an object by identifier
+ * @param fullName
+ * @return The object
+ */
+ Procedure getProcedure(String fullName) throws TranslatorException;
+
+ /**
+ * Gets the contents of a VDB resource in binary form.
+ * @param resourcePath a path returned by getVDBResourcePaths()
+ * @return the binary contents of the resource in a byte[]
+ * @throws TranslatorException if the operation fails
+ * @since 4.3
+ */
+ public byte[] getBinaryVDBResource(String resourcePath) throws TranslatorException;
+
+ /**
+ * Gets the contents of a VDB resource as a String.
+ * @param resourcePath a path returned by getVDBResourcePaths()
+ * @return the contents of the resource as a String of characters
+ * @throws TranslatorException if the operation fails
+ * @since 4.3
+ */
+ public String getCharacterVDBResource(String resourcePath) throws TranslatorException;
+
+ /**
+ * Gets the resource paths of all the resources in the VDB.
+ * @return an array of resource paths of the resources in the VDB
+ * @throws TranslatorException if the operation fails
+ * @since 4.3
+ */
+ public String[] getVDBResourcePaths() throws TranslatorException;
+}
Deleted: trunk/api/src/main/java/org/teiid/resource/spi/BasicManagedConnection.java
===================================================================
--- trunk/connector-api/src/main/java/org/teiid/resource/spi/BasicManagedConnection.java 2010-05-13 13:40:34 UTC (rev 2122)
+++ trunk/api/src/main/java/org/teiid/resource/spi/BasicManagedConnection.java 2010-05-13 16:19:04 UTC (rev 2124)
@@ -1,168 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * See the COPYRIGHT.txt file distributed with this work for information
- * regarding copyright ownership. Some portions may be licensed
- * to Red Hat, Inc. under one or more contributor license agreements.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
- * 02110-1301 USA.
- */
-package org.teiid.resource.spi;
-
-import java.io.PrintWriter;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.HashSet;
-import java.util.Set;
-
-import javax.resource.ResourceException;
-import javax.resource.cci.Connection;
-import javax.resource.spi.ConnectionEvent;
-import javax.resource.spi.ConnectionEventListener;
-import javax.resource.spi.ConnectionRequestInfo;
-import javax.resource.spi.LocalTransaction;
-import javax.resource.spi.ManagedConnection;
-import javax.resource.spi.ManagedConnectionMetaData;
-import javax.security.auth.Subject;
-import javax.transaction.xa.XAResource;
-
-import org.teiid.translator.ConnectorException;
-
-public class BasicManagedConnection implements ManagedConnection {
- protected PrintWriter log;
- protected final Collection<ConnectionEventListener> listeners = new ArrayList<ConnectionEventListener>();
- private BasicConnection physicalConnection;
- private final Set<WrappedConnection> handles = new HashSet<WrappedConnection>();
-
- public BasicManagedConnection(BasicConnection connection) {
- this.physicalConnection = connection;
- }
-
- @Override
- public void associateConnection(Object handle) throws ResourceException {
- if (!(handle instanceof WrappedConnection)) {
- throw new ResourceException("Wrong connection supplied to assosiate"); //$NON-NLS-1$
- }
- ((WrappedConnection)handle).setManagedConnection(this);
- synchronized (this.handles) {
- this.handles.add((WrappedConnection)handle);
- }
- }
-
- @Override
- public void cleanup() throws ResourceException {
- synchronized (this.handles) {
- for (WrappedConnection wc:this.handles) {
- wc.setManagedConnection(null);
- }
- handles.clear();
- }
- ConnectionContext.setSubject(null);
- }
-
- @Override
- public void destroy() throws ResourceException {
- cleanup();
-
- this.physicalConnection.close();
- this.physicalConnection = null;
- }
-
- @Override
- public ManagedConnectionMetaData getMetaData() throws ResourceException {
- return null;
- }
-
- @Override
- public Object getConnection(Subject arg0, ConnectionRequestInfo arg1) throws ResourceException {
- if(!(arg1 instanceof ConnectionRequestInfoWrapper)) {
- throw new ConnectorException("Un-recognized Connection Request Info object received"); //$NON-NLS-1$
- }
- ConnectionContext.setSubject(arg0);
-
- WrappedConnection wc = new WrappedConnection(this);
- synchronized(this.handles) {
- this.handles.add(wc);
- }
- return wc;
- }
-
- @Override
- public LocalTransaction getLocalTransaction() throws ResourceException {
- return null;
- }
-
- @Override
- public XAResource getXAResource() throws ResourceException {
- return null;
- }
-
- @Override
- public void addConnectionEventListener(ConnectionEventListener arg0) {
- synchronized (this.listeners) {
- this.listeners.add(arg0);
- }
- }
-
- @Override
- public void removeConnectionEventListener(ConnectionEventListener arg0) {
- synchronized (this.listeners) {
- this.listeners.remove(arg0);
- }
- }
-
- @Override
- public void setLogWriter(PrintWriter arg0) throws ResourceException {
- this.log = arg0;
- }
-
- @Override
- public PrintWriter getLogWriter() throws ResourceException {
- return this.log;
- }
-
- // called by the wrapped connection to notify the close of the connection.
- void connectionClosed(WrappedConnection wc) {
-
- synchronized (this.handles) {
- handles.remove(wc);
- }
-
- ConnectionEvent ce = new ConnectionEvent(this, ConnectionEvent.CONNECTION_CLOSED);
- ce.setConnectionHandle(wc);
-
- ArrayList<ConnectionEventListener> copy = null;
- synchronized (this.listeners) {
- copy = new ArrayList<ConnectionEventListener>(this.listeners);
- }
-
- for(ConnectionEventListener l: copy) {
- l.connectionClosed(ce);
- }
- }
-
- Connection getConnection() throws ConnectorException {
- if (this.physicalConnection == null)
- throw new ConnectorException("Connection has been destroyed!!!"); //$NON-NLS-1$
- return this.physicalConnection;
- }
-
- public boolean isValid() {
- if (this.physicalConnection == null) {
- return false;
- }
- return this.physicalConnection.isAlive();
- }
-}
Copied: trunk/api/src/main/java/org/teiid/resource/spi/BasicManagedConnection.java (from rev 2123, trunk/connector-api/src/main/java/org/teiid/resource/spi/BasicManagedConnection.java)
===================================================================
--- trunk/api/src/main/java/org/teiid/resource/spi/BasicManagedConnection.java (rev 0)
+++ trunk/api/src/main/java/org/teiid/resource/spi/BasicManagedConnection.java 2010-05-13 16:19:04 UTC (rev 2124)
@@ -0,0 +1,166 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * See the COPYRIGHT.txt file distributed with this work for information
+ * regarding copyright ownership. Some portions may be licensed
+ * to Red Hat, Inc. under one or more contributor license agreements.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+ * 02110-1301 USA.
+ */
+package org.teiid.resource.spi;
+
+import java.io.PrintWriter;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.HashSet;
+import java.util.Set;
+
+import javax.resource.ResourceException;
+import javax.resource.cci.Connection;
+import javax.resource.spi.ConnectionEvent;
+import javax.resource.spi.ConnectionEventListener;
+import javax.resource.spi.ConnectionRequestInfo;
+import javax.resource.spi.LocalTransaction;
+import javax.resource.spi.ManagedConnection;
+import javax.resource.spi.ManagedConnectionMetaData;
+import javax.security.auth.Subject;
+import javax.transaction.xa.XAResource;
+
+public class BasicManagedConnection implements ManagedConnection {
+ protected PrintWriter log;
+ protected final Collection<ConnectionEventListener> listeners = new ArrayList<ConnectionEventListener>();
+ private BasicConnection physicalConnection;
+ private final Set<WrappedConnection> handles = new HashSet<WrappedConnection>();
+
+ public BasicManagedConnection(BasicConnection connection) {
+ this.physicalConnection = connection;
+ }
+
+ @Override
+ public void associateConnection(Object handle) throws ResourceException {
+ if (!(handle instanceof WrappedConnection)) {
+ throw new ResourceException("Wrong connection supplied to assosiate"); //$NON-NLS-1$
+ }
+ ((WrappedConnection)handle).setManagedConnection(this);
+ synchronized (this.handles) {
+ this.handles.add((WrappedConnection)handle);
+ }
+ }
+
+ @Override
+ public void cleanup() throws ResourceException {
+ synchronized (this.handles) {
+ for (WrappedConnection wc:this.handles) {
+ wc.setManagedConnection(null);
+ }
+ handles.clear();
+ }
+ ConnectionContext.setSubject(null);
+ }
+
+ @Override
+ public void destroy() throws ResourceException {
+ cleanup();
+
+ this.physicalConnection.close();
+ this.physicalConnection = null;
+ }
+
+ @Override
+ public ManagedConnectionMetaData getMetaData() throws ResourceException {
+ return null;
+ }
+
+ @Override
+ public Object getConnection(Subject arg0, ConnectionRequestInfo arg1) throws ResourceException {
+ if(!(arg1 instanceof ConnectionRequestInfoWrapper)) {
+ throw new ResourceException("Un-recognized Connection Request Info object received"); //$NON-NLS-1$
+ }
+ ConnectionContext.setSubject(arg0);
+
+ WrappedConnection wc = new WrappedConnection(this);
+ synchronized(this.handles) {
+ this.handles.add(wc);
+ }
+ return wc;
+ }
+
+ @Override
+ public LocalTransaction getLocalTransaction() throws ResourceException {
+ return null;
+ }
+
+ @Override
+ public XAResource getXAResource() throws ResourceException {
+ return null;
+ }
+
+ @Override
+ public void addConnectionEventListener(ConnectionEventListener arg0) {
+ synchronized (this.listeners) {
+ this.listeners.add(arg0);
+ }
+ }
+
+ @Override
+ public void removeConnectionEventListener(ConnectionEventListener arg0) {
+ synchronized (this.listeners) {
+ this.listeners.remove(arg0);
+ }
+ }
+
+ @Override
+ public void setLogWriter(PrintWriter arg0) throws ResourceException {
+ this.log = arg0;
+ }
+
+ @Override
+ public PrintWriter getLogWriter() throws ResourceException {
+ return this.log;
+ }
+
+ // called by the wrapped connection to notify the close of the connection.
+ void connectionClosed(WrappedConnection wc) {
+
+ synchronized (this.handles) {
+ handles.remove(wc);
+ }
+
+ ConnectionEvent ce = new ConnectionEvent(this, ConnectionEvent.CONNECTION_CLOSED);
+ ce.setConnectionHandle(wc);
+
+ ArrayList<ConnectionEventListener> copy = null;
+ synchronized (this.listeners) {
+ copy = new ArrayList<ConnectionEventListener>(this.listeners);
+ }
+
+ for(ConnectionEventListener l: copy) {
+ l.connectionClosed(ce);
+ }
+ }
+
+ Connection getConnection() throws ResourceException {
+ if (this.physicalConnection == null)
+ throw new ResourceException("Connection has been destroyed!!!"); //$NON-NLS-1$
+ return this.physicalConnection;
+ }
+
+ public boolean isValid() {
+ if (this.physicalConnection == null) {
+ return false;
+ }
+ return this.physicalConnection.isAlive();
+ }
+}
Deleted: trunk/api/src/main/java/org/teiid/resource/spi/BasicManagedConnectionFactory.java
===================================================================
--- trunk/connector-api/src/main/java/org/teiid/resource/spi/BasicManagedConnectionFactory.java 2010-05-13 13:40:34 UTC (rev 2122)
+++ trunk/api/src/main/java/org/teiid/resource/spi/BasicManagedConnectionFactory.java 2010-05-13 16:19:04 UTC (rev 2124)
@@ -1,120 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * See the COPYRIGHT.txt file distributed with this work for information
- * regarding copyright ownership. Some portions may be licensed
- * to Red Hat, Inc. under one or more contributor license agreements.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
- * 02110-1301 USA.
- */
-package org.teiid.resource.spi;
-
-import java.io.PrintWriter;
-import java.util.Collection;
-import java.util.HashSet;
-import java.util.Set;
-
-import javax.resource.ResourceException;
-import javax.resource.spi.ConnectionManager;
-import javax.resource.spi.ConnectionRequestInfo;
-import javax.resource.spi.ManagedConnection;
-import javax.resource.spi.ManagedConnectionFactory;
-import javax.resource.spi.ResourceAdapter;
-import javax.resource.spi.ResourceAdapterAssociation;
-import javax.resource.spi.ValidatingManagedConnectionFactory;
-import javax.security.auth.Subject;
-
-import org.teiid.core.TeiidException;
-import org.teiid.core.util.ReflectionHelper;
-import org.teiid.translator.ConnectorException;
-
-
-public abstract class BasicManagedConnectionFactory implements ManagedConnectionFactory, ResourceAdapterAssociation, ValidatingManagedConnectionFactory {
-
- private static final long serialVersionUID = -7302713800883776790L;
- private PrintWriter log;
- private BasicResourceAdapter ra;
-
- @Override
- public abstract Object createConnectionFactory() throws ResourceException;
-
- @Override
- public Object createConnectionFactory(ConnectionManager arg0) throws ResourceException {
- return createConnectionFactory();
- }
-
- @Override
- public ManagedConnection createManagedConnection(Subject arg0, ConnectionRequestInfo arg1) throws ResourceException {
- ConnectionRequestInfoWrapper criw = (ConnectionRequestInfoWrapper)arg1;
- return new BasicManagedConnection(criw.cf.getConnection());
- }
-
- @Override
- public PrintWriter getLogWriter() throws ResourceException {
- return this.log;
- }
-
- @Override
- public ManagedConnection matchManagedConnections(Set arg0, Subject arg1, ConnectionRequestInfo arg2) throws ResourceException {
- return (ManagedConnection)arg0.iterator().next();
- }
-
- @Override
- public void setLogWriter(PrintWriter arg0) throws ResourceException {
- this.log = arg0;
- }
-
- @Override
- public ResourceAdapter getResourceAdapter() {
- return this.ra;
- }
-
- @Override
- public void setResourceAdapter(ResourceAdapter arg0) throws ResourceException {
- this.ra = (BasicResourceAdapter)arg0;
- }
-
- public static <T> T getInstance(Class<T> expectedType, String className, Collection ctorObjs, Class defaultClass) throws ConnectorException {
- try {
- if (className == null) {
- if (defaultClass == null) {
- throw new ConnectorException("Neither class name or default class specified to create an instance"); //$NON-NLS-1$
- }
- return expectedType.cast(defaultClass.newInstance());
- }
- return expectedType.cast(ReflectionHelper.create(className, ctorObjs, Thread.currentThread().getContextClassLoader()));
- } catch (TeiidException e) {
- throw new ConnectorException(e);
- } catch (IllegalAccessException e) {
- throw new ConnectorException(e);
- } catch(InstantiationException e) {
- throw new ConnectorException(e);
- }
- }
-
- @Override
- public Set<BasicManagedConnection> getInvalidConnections(Set arg0) throws ResourceException {
- HashSet<BasicManagedConnection> result = new HashSet<BasicManagedConnection>();
- for (Object object : arg0) {
- if (object instanceof BasicManagedConnection) {
- BasicManagedConnection bmc = (BasicManagedConnection)object;
- if (!bmc.isValid()) {
- result.add(bmc);
- }
- }
- }
- return result;
- }
-}
Copied: trunk/api/src/main/java/org/teiid/resource/spi/BasicManagedConnectionFactory.java (from rev 2123, trunk/connector-api/src/main/java/org/teiid/resource/spi/BasicManagedConnectionFactory.java)
===================================================================
--- trunk/api/src/main/java/org/teiid/resource/spi/BasicManagedConnectionFactory.java (rev 0)
+++ trunk/api/src/main/java/org/teiid/resource/spi/BasicManagedConnectionFactory.java 2010-05-13 16:19:04 UTC (rev 2124)
@@ -0,0 +1,119 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * See the COPYRIGHT.txt file distributed with this work for information
+ * regarding copyright ownership. Some portions may be licensed
+ * to Red Hat, Inc. under one or more contributor license agreements.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+ * 02110-1301 USA.
+ */
+package org.teiid.resource.spi;
+
+import java.io.PrintWriter;
+import java.util.Collection;
+import java.util.HashSet;
+import java.util.Set;
+
+import javax.resource.ResourceException;
+import javax.resource.spi.ConnectionManager;
+import javax.resource.spi.ConnectionRequestInfo;
+import javax.resource.spi.ManagedConnection;
+import javax.resource.spi.ManagedConnectionFactory;
+import javax.resource.spi.ResourceAdapter;
+import javax.resource.spi.ResourceAdapterAssociation;
+import javax.resource.spi.ValidatingManagedConnectionFactory;
+import javax.security.auth.Subject;
+
+import org.teiid.core.TeiidException;
+import org.teiid.core.util.ReflectionHelper;
+
+
+public abstract class BasicManagedConnectionFactory implements ManagedConnectionFactory, ResourceAdapterAssociation, ValidatingManagedConnectionFactory {
+
+ private static final long serialVersionUID = -7302713800883776790L;
+ private PrintWriter log;
+ private BasicResourceAdapter ra;
+
+ @Override
+ public abstract Object createConnectionFactory() throws ResourceException;
+
+ @Override
+ public Object createConnectionFactory(ConnectionManager arg0) throws ResourceException {
+ return createConnectionFactory();
+ }
+
+ @Override
+ public ManagedConnection createManagedConnection(Subject arg0, ConnectionRequestInfo arg1) throws ResourceException {
+ ConnectionRequestInfoWrapper criw = (ConnectionRequestInfoWrapper)arg1;
+ return new BasicManagedConnection(criw.cf.getConnection());
+ }
+
+ @Override
+ public PrintWriter getLogWriter() throws ResourceException {
+ return this.log;
+ }
+
+ @Override
+ public ManagedConnection matchManagedConnections(Set arg0, Subject arg1, ConnectionRequestInfo arg2) throws ResourceException {
+ return (ManagedConnection)arg0.iterator().next();
+ }
+
+ @Override
+ public void setLogWriter(PrintWriter arg0) throws ResourceException {
+ this.log = arg0;
+ }
+
+ @Override
+ public ResourceAdapter getResourceAdapter() {
+ return this.ra;
+ }
+
+ @Override
+ public void setResourceAdapter(ResourceAdapter arg0) throws ResourceException {
+ this.ra = (BasicResourceAdapter)arg0;
+ }
+
+ public static <T> T getInstance(Class<T> expectedType, String className, Collection ctorObjs, Class defaultClass) throws ResourceException {
+ try {
+ if (className == null) {
+ if (defaultClass == null) {
+ throw new ResourceException("Neither class name or default class specified to create an instance"); //$NON-NLS-1$
+ }
+ return expectedType.cast(defaultClass.newInstance());
+ }
+ return expectedType.cast(ReflectionHelper.create(className, ctorObjs, Thread.currentThread().getContextClassLoader()));
+ } catch (TeiidException e) {
+ throw new ResourceException(e);
+ } catch (IllegalAccessException e) {
+ throw new ResourceException(e);
+ } catch(InstantiationException e) {
+ throw new ResourceException(e);
+ }
+ }
+
+ @Override
+ public Set<BasicManagedConnection> getInvalidConnections(Set arg0) throws ResourceException {
+ HashSet<BasicManagedConnection> result = new HashSet<BasicManagedConnection>();
+ for (Object object : arg0) {
+ if (object instanceof BasicManagedConnection) {
+ BasicManagedConnection bmc = (BasicManagedConnection)object;
+ if (!bmc.isValid()) {
+ result.add(bmc);
+ }
+ }
+ }
+ return result;
+ }
+}
Deleted: trunk/api/src/main/java/org/teiid/translator/ConnectorCapabilities.java
===================================================================
--- trunk/connector-api/src/main/java/org/teiid/translator/ConnectorCapabilities.java 2010-05-13 13:40:34 UTC (rev 2122)
+++ trunk/api/src/main/java/org/teiid/translator/ConnectorCapabilities.java 2010-05-13 16:19:04 UTC (rev 2124)
@@ -1,394 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * See the COPYRIGHT.txt file distributed with this work for information
- * regarding copyright ownership. Some portions may be licensed
- * to Red Hat, Inc. under one or more contributor license agreements.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
- * 02110-1301 USA.
- */
-
-package org.teiid.translator;
-
-import java.util.List;
-
-import org.teiid.language.BatchedUpdates;
-import org.teiid.language.SetQuery;
-
-
-/**
- * Allows a connector to specify the capabilities that a connector
- * supports.
- */
-public interface ConnectorCapabilities {
-
- public enum SupportedJoinCriteria {
- /**
- * Indicates that any supported criteria is allowed.
- */
- ANY,
- /**
- * Indicates that any simple comparison of elements is allowed.
- */
- THETA,
- /**
- * Indicates that only equality predicates of elements are allowed.
- */
- EQUI,
- /**
- * Indicates that only equality predicates between
- * exactly one primary and foreign key is allowed per join.
- */
- KEY
- }
-
- /**
- * Support indicates connector can accept queries with SELECT DISTINCT
- * @since 3.1 SP2
- */
- boolean supportsSelectDistinct();
-
- /**
- * Support indicates connector can accept expressions other than element
- * symbols in the SELECT clause. Specific supports for the expression
- * type are still checked.
- * @since 6.1.0
- */
- boolean supportsSelectExpression();
-
- /**
- * Support indicates connector can accept groups with aliases
- * @since 3.1 SP2
- */
- boolean supportsAliasedGroup();
-
- /**
- * Get the supported join criteria. A null return value will be treated
- * as {@link SupportedJoinCriteria#ANY}
- * @since 6.1.0
- */
- SupportedJoinCriteria getSupportedJoinCriteria();
-
- /**
- * Support indicates connector can accept inner or cross joins
- * @since 6.1.0
- */
- boolean supportsInnerJoins();
-
- /**
- * Support indicates connector can accept self-joins where a
- * group is joined to itself with aliases. Connector must also support
- * {@link #supportsAliasedGroup()}.
- * @since 3.1 SP2
- */
- boolean supportsSelfJoins();
-
- /**
- * Support indicates connector can accept left outer joins
- * @since 3.1 SP2
- */
- boolean supportsOuterJoins();
-
- /**
- * Support indicates connector can accept full outer joins
- * @since 3.1 SP2
- */
- boolean supportsFullOuterJoins();
-
- /**
- * Support indicates connector can accept inline views (subqueries
- * in the FROM clause).
- * @since 4.1
- */
- boolean supportsInlineViews();
-
- /**
- * Support indicates connector accepts criteria of form (element BETWEEN constant AND constant)
- * <br>NOT CURRENTLY USED - between is rewritten as compound compare criteria
- * @since 4.0
- */
- boolean supportsBetweenCriteria();
-
- /**
- * Support indicates connector accepts criteria of form (element = constant)
- * @since 3.1 SP2
- */
- boolean supportsCompareCriteriaEquals();
-
- /**
- * Support indicates connector accepts criteria of form (element <=|>= constant)
- * <br>The query engine will may pushdown queries containing < or > if NOT is also
- * supported.
- * @since 3.1 SP2
- */
- boolean supportsCompareCriteriaOrdered();
-
- /**
- * Support indicates connector accepts criteria of form (element LIKE constant)
- * @since 3.1 SP2
- */
- boolean supportsLikeCriteria();
-
- /**
- * Support indicates connector accepts criteria of form (element LIKE constant ESCAPE char)
- * @since 3.1 SP2
- */
- boolean supportsLikeCriteriaEscapeCharacter();
-
- /**
- * Support indicates connector accepts criteria of form (element IN set)
- * @since 3.1 SP2
- */
- boolean supportsInCriteria();
-
- /**
- * Support indicates connector accepts IN criteria with a subquery on the right side
- * @since 4.0
- */
- boolean supportsInCriteriaSubquery();
-
- /**
- * Support indicates connector accepts criteria of form (element IS NULL)
- * @since 3.1 SP2
- */
- boolean supportsIsNullCriteria();
-
- /**
- * Support indicates connector accepts logical criteria connected by OR
- * @since 3.1 SP2
- */
- boolean supportsOrCriteria();
-
- /**
- * Support indicates connector accepts logical criteria NOT
- * @since 3.1 SP2
- */
- boolean supportsNotCriteria();
-
- /**
- * Support indicates connector accepts the EXISTS criteria
- * @since 4.0
- */
- boolean supportsExistsCriteria();
-
- /**
- * Support indicates connector accepts the quantified comparison criteria that
- * use SOME
- * @since 4.0
- */
- boolean supportsQuantifiedCompareCriteriaSome();
-
- /**
- * Support indicates connector accepts the quantified comparison criteria that
- * use ALL
- * @since 4.0
- */
- boolean supportsQuantifiedCompareCriteriaAll();
-
- /**
- * Support indicates connector accepts ORDER BY clause, including multiple elements
- * and ascending and descending sorts.
- * @since 3.1 SP2
- */
- boolean supportsOrderBy();
-
- /**
- * Support indicates connector accepts ORDER BY clause with columns not from the select
- * @since 6.2
- * @return
- */
- boolean supportsOrderByUnrelated();
-
- /**
- * Whether the source supports an explicit GROUP BY clause
- * @since 6.1
- */
- boolean supportsGroupBy();
-
- /**
- * Whether the source supports the HAVING clause
- * @since 6.1
- */
- boolean supportsHaving();
-
- /**
- * Support indicates connector can accept the SUM aggregate function
- * @since 3.1 SP2
- */
- boolean supportsAggregatesSum();
-
- /**
- * Support indicates connector can accept the AVG aggregate function
- * @since 3.1 SP2
- */
- boolean supportsAggregatesAvg();
-
- /**
- * Support indicates connector can accept the MIN aggregate function
- * @since 3.1 SP2
- */
- boolean supportsAggregatesMin();
-
- /**
- * Support indicates connector can accept the MAX aggregate function
- * @since 3.1 SP2
- */
- boolean supportsAggregatesMax();
-
- /**
- * Support indicates connector can accept the COUNT aggregate function
- * @since 3.1 SP2
- */
- boolean supportsAggregatesCount();
-
- /**
- * Support indicates connector can accept the COUNT(*) aggregate function
- * @since 3.1 SP2
- */
- boolean supportsAggregatesCountStar();
-
- /**
- * Support indicates connector can accept DISTINCT within aggregate functions
- * @since 3.1 SP2
- */
- boolean supportsAggregatesDistinct();
-
- /**
- * Support indicates connector can accept scalar subqueries in the SELECT, WHERE, and
- * HAVING clauses
- * @since 4.0
- */
- boolean supportsScalarSubqueries();
-
- /**
- * Support indicates connector can accept correlated subqueries wherever subqueries
- * are accepted
- * @since 4.0
- */
- boolean supportsCorrelatedSubqueries();
-
- /**
- * Support indicates connector can accept queries with non-searched
- * CASE <expression> WHEN <expression> ... END
- * <br>NOT CURRENTLY USED - case is pushed down as searched case
- * @since 4.0
- */
- boolean supportsCaseExpressions();
-
- /**
- * Support indicates connector can accept queries with searched CASE WHEN <criteria> ... END
- * @since 4.0
- */
- boolean supportsSearchedCaseExpressions();
-
- /**
- * Support indicates that the connector supports the UNION of two queries.
- * @since 4.2
- */
- boolean supportsUnions();
-
- /**
- * Support indicates that the connector supports an ORDER BY on a SetQuery.
- * @since 5.6
- */
- boolean supportsSetQueryOrderBy();
-
- /**
- * Support indicates that the connector supports the INTERSECT of two queries.
- * @since 5.6
- */
- boolean supportsIntersect();
-
- /**
- * Support indicates that the connector supports the EXCEPT of two queries.
- * @since 5.6
- */
- boolean supportsExcept();
-
- /**
- * Get list of all supported function names. Arithmetic functions have names like
- * "+".
- * @since 3.1 SP3
- */
- List<String> getSupportedFunctions();
-
- /**
- * Get the integer value representing the number of values allowed in an IN criteria
- * in the WHERE clause of a query
- * @since 5.0
- */
- int getMaxInCriteriaSize();
-
- /**
- * <p>Support indicates that the connector supports functions in GROUP BY, such as:
- * <code>SELECT dayofmonth(theDate), COUNT(*) FROM table GROUP BY dayofmonth(theDate)</code></p>
- *
- * <br>NOT CURRENTLY USED - group by expressions create an inline view for pushdown
- * @since 5.0
- */
- boolean supportsFunctionsInGroupBy();
-
- /**
- * Gets whether the connector can limit the number of rows returned by a query.
- * @since 5.0 SP1
- */
- boolean supportsRowLimit();
-
- /**
- * 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
- * @since 5.0 SP1
- */
- boolean supportsRowOffset();
-
- /**
- * The number of groups supported in the from clause. Added for a Sybase limitation.
- * @since 5.6
- * @return the number of groups supported in the from clause, or -1 if there is no limit
- */
- int getMaxFromGroups();
-
- /**
- * Whether the source prefers to use ANSI style joins.
- * @since 6.0
- */
- boolean useAnsiJoin();
-
- /**
- * Whether the source supports queries without criteria.
- * @since 6.0
- */
- boolean requiresCriteria();
-
- /**
- * Whether the source supports {@link BatchedUpdates}
- * @since 6.0
- */
- boolean supportsBatchedUpdates();
-
- /**
- * Whether the source supports updates with multiple value sets
- * @since 6.0
- */
- boolean supportsBulkUpdate();
-
- /**
- * Support indicates that the connector can accept INSERTs with
- * values specified by an {@link SetQuery}.
- * @since 6.1
- */
- boolean supportsInsertWithQueryExpression();
-
-}
Deleted: trunk/api/src/main/java/org/teiid/translator/ConnectorException.java
===================================================================
--- trunk/connector-api/src/main/java/org/teiid/translator/ConnectorException.java 2010-05-13 13:40:34 UTC (rev 2122)
+++ trunk/api/src/main/java/org/teiid/translator/ConnectorException.java 2010-05-13 16:19:04 UTC (rev 2124)
@@ -1,79 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * See the COPYRIGHT.txt file distributed with this work for information
- * regarding copyright ownership. Some portions may be licensed
- * to Red Hat, Inc. under one or more contributor license agreements.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
- * 02110-1301 USA.
- */
-
-package org.teiid.translator;
-
-import javax.resource.ResourceException;
-
-/**
- * An exception the connector writer can return in case of an
- * error while using the connector.
- */
-public class ConnectorException extends ResourceException{
-
- private static final long serialVersionUID = -5980862789340592219L;
-
- /**
- * No-arg constructor required by Externalizable semantics.
- */
- public ConnectorException() {
- super();
- }
-
- /**
- * Construct an instance with the message specified.
- *
- * @param message A message describing the exception
- */
- public ConnectorException( String message ) {
- super( message );
- }
-
- public ConnectorException( String errorCode, String message ) {
- super( message, errorCode);
- }
-
- public ConnectorException( int errorCode, String message ) {
- super(message, Integer.toString(errorCode));
- }
-
-
- /**
- * Construct an instance from a message and an exception to chain to this one.
- *
- * @param code A code denoting the exception
- * @param e An exception to nest within this one
- */
- public ConnectorException( Throwable e, String message ) {
- super(message,e);
- }
-
- /**
- * Construct an instance with a linked exception specified.
- *
- * @param e An exception to chain to this exception
- */
- public ConnectorException( Throwable e ) {
- super( e );
- }
-
-}
Deleted: trunk/api/src/main/java/org/teiid/translator/Execution.java
===================================================================
--- trunk/connector-api/src/main/java/org/teiid/translator/Execution.java 2010-05-13 13:40:34 UTC (rev 2122)
+++ trunk/api/src/main/java/org/teiid/translator/Execution.java 2010-05-13 16:19:04 UTC (rev 2124)
@@ -1,54 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * See the COPYRIGHT.txt file distributed with this work for information
- * regarding copyright ownership. Some portions may be licensed
- * to Red Hat, Inc. under one or more contributor license agreements.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
- * 02110-1301 USA.
- */
-
-package org.teiid.translator;
-
-
-/**
- * An execution represents the state and lifecycle for a particular
- * command execution. The methods provided on this interface define
- * standard lifecycle methods.
- * When execution completes, the {@link #close()} will be called. If
- * execution must be aborted, due to user or administrator action, the
- * {@link #cancel()} will be called.
- */
-public interface Execution {
-
- /**
- * Terminates the execution normally.
- */
- void close() throws ConnectorException;
-
- /**
- * Cancels the execution abnormally. This will happen via
- * a different thread from the one performing the execution, so
- * should be expected to happen in a multi-threaded scenario.
- */
- void cancel() throws ConnectorException;
-
- /**
- * Execute the associated command. Results will be retrieved through a specific sub-interface call.
- * @throws ConnectorException
- */
- void execute() throws ConnectorException;
-
-}
Copied: trunk/api/src/main/java/org/teiid/translator/Execution.java (from rev 2123, trunk/connector-api/src/main/java/org/teiid/translator/Execution.java)
===================================================================
--- trunk/api/src/main/java/org/teiid/translator/Execution.java (rev 0)
+++ trunk/api/src/main/java/org/teiid/translator/Execution.java 2010-05-13 16:19:04 UTC (rev 2124)
@@ -0,0 +1,54 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * See the COPYRIGHT.txt file distributed with this work for information
+ * regarding copyright ownership. Some portions may be licensed
+ * to Red Hat, Inc. under one or more contributor license agreements.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+ * 02110-1301 USA.
+ */
+
+package org.teiid.translator;
+
+
+/**
+ * An execution represents the state and lifecycle for a particular
+ * command execution. The methods provided on this interface define
+ * standard lifecycle methods.
+ * When execution completes, the {@link #close()} will be called. If
+ * execution must be aborted, due to user or administrator action, the
+ * {@link #cancel()} will be called.
+ */
+public interface Execution {
+
+ /**
+ * Terminates the execution normally.
+ */
+ void close() throws TranslatorException;
+
+ /**
+ * Cancels the execution abnormally. This will happen via
+ * a different thread from the one performing the execution, so
+ * should be expected to happen in a multi-threaded scenario.
+ */
+ void cancel() throws TranslatorException;
+
+ /**
+ * Execute the associated command. Results will be retrieved through a specific sub-interface call.
+ * @throws TranslatorException
+ */
+ void execute() throws TranslatorException;
+
+}
Deleted: trunk/api/src/main/java/org/teiid/translator/ExecutionFactory.java
===================================================================
--- trunk/connector-api/src/main/java/org/teiid/translator/ExecutionFactory.java 2010-05-13 13:40:34 UTC (rev 2122)
+++ trunk/api/src/main/java/org/teiid/translator/ExecutionFactory.java 2010-05-13 16:19:04 UTC (rev 2124)
@@ -1,430 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * See the COPYRIGHT.txt file distributed with this work for information
- * regarding copyright ownership. Some portions may be licensed
- * to Red Hat, Inc. under one or more contributor license agreements.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
- * 02110-1301 USA.
- */
-
-package org.teiid.translator;
-
-import java.util.List;
-
-import org.teiid.language.Call;
-import org.teiid.language.Command;
-import org.teiid.language.LanguageFactory;
-import org.teiid.language.QueryExpression;
-import org.teiid.metadata.RuntimeMetadata;
-
-
-
-/**
- * <p>The primary entry point for a Translator. This class should be extended by the custom translator writer.</p>
- *
- * The deployer instantiates this class through reflection. So it is important to have no-arg constructor. Once constructed
- * the "start" method is called. This class represents the basic capabilities of the translator.
- */
-public class ExecutionFactory implements ConnectorCapabilities{
-
- public static final int DEFAULT_MAX_FROM_GROUPS = -1;
-
- private static final TypeFacility TYPE_FACILITY = new TypeFacility();
-
- private boolean immutable = false;
- private boolean exceptionOnMaxRows = false;
- private int maxResultRows = DEFAULT_MAX_FROM_GROUPS;
- private boolean xaCapable;
- private boolean sourceRequired = true;
-
- /**
- * Initialize the connector with supplied configuration
- */
- public void start() throws ConnectorException {
- }
-
- /**
- * Defines if the Connector is read-only connector
- * @return
- */
- @TranslatorProperty(name="immutable", display="Is Immutable",description="Is Immutable, True if the source never changes.",advanced=true, defaultValue="false")
- public boolean isImmutable() {
- return immutable;
- }
-
- public void setImmutable(boolean arg0) {
- this.immutable = arg0;
- }
-
- /**
- * Throw exception if there are more rows in the result set than specified in the MaxResultRows setting.
- * @return
- */
- @TranslatorProperty(name="exception-on-max-rows", display="Exception on Exceeding Max Rows",description="Indicates if an Exception should be thrown if the specified value for Maximum Result Rows is exceeded; else no exception and no more than the maximum will be returned",advanced=true, defaultValue="true")
- public boolean isExceptionOnMaxRows() {
- return exceptionOnMaxRows;
- }
-
- public void setExceptionOnMaxRows(boolean arg0) {
- this.exceptionOnMaxRows = arg0;
- }
-
- /**
- * Maximum result set rows to fetch
- * @return
- */
- @TranslatorProperty(name="max-result-rows", display="Maximum Result Rows", description="Maximum Result Rows allowed", advanced=true, defaultValue="-1")
- public int getMaxResultRows() {
- return maxResultRows;
- }
-
- public void setMaxResultRows(int arg0) {
- this.maxResultRows = arg0;
- }
-
- /**
- * Shows the XA transaction capability of the Connector.
- * @return
- */
- @TranslatorProperty(name="xa-capable", display="Is XA Capable", description="True, if this connector supports XA Transactions", defaultValue="false")
- public boolean isXaCapable() {
- return xaCapable;
- }
-
- public void setXaCapable(boolean arg0) {
- this.xaCapable = arg0;
- }
-
- /**
- * Flag that indicates if a underlying source connection required for this execution factory to work
- * @return
- */
- public boolean isSourceRequired() {
- return sourceRequired;
- }
-
- public void setSourceRequired(boolean value) {
- this.sourceRequired = value;
- }
-
- /**
- * Obtain a reference to the default LanguageFactory that can be used to construct
- * new language interface objects. This is typically needed when modifying the language
- * objects passed to the connector or for testing when objects need to be created.
- */
- public LanguageFactory getLanguageFactory() {
- return LanguageFactory.INSTANCE;
- }
-
- /**
- * Obtain a reference to the type facility, which can be used to perform many type
- * conversions supplied by the Connector API.
- */
- public TypeFacility getTypeFacility() {
- return TYPE_FACILITY;
- }
-
- /**
- * Create an execution object for the specified command
- * @param command the command
- * @param executionContext Provides information about the context that this command is
- * executing within, such as the identifiers for the command being executed
- * @param metadata Access to runtime metadata if needed to translate the command
- * @param connection connection factory object to the data source
- * @return An execution object that can use to execute the command
- */
- public Execution createExecution(Command command, ExecutionContext executionContext, RuntimeMetadata metadata, Object connectionFactory) throws ConnectorException {
- if (command instanceof QueryExpression) {
- return createResultSetExecution((QueryExpression)command, executionContext, metadata, connectionFactory);
- }
- if (command instanceof Call) {
- return createProcedureExecution((Call)command, executionContext, metadata, connectionFactory);
- }
- return createUpdateExecution(command, executionContext, metadata, connectionFactory);
- }
-
- public ResultSetExecution createResultSetExecution(QueryExpression command, ExecutionContext executionContext, RuntimeMetadata metadata, Object connection) throws ConnectorException {
- throw new ConnectorException("Unsupported Execution"); //$NON-NLS-1$
- }
-
- public ProcedureExecution createProcedureExecution(Call command, ExecutionContext executionContext, RuntimeMetadata metadata, Object connection) throws ConnectorException {
- throw new ConnectorException("Unsupported Execution");//$NON-NLS-1$
- }
-
- public UpdateExecution createUpdateExecution(Command command, ExecutionContext executionContext, RuntimeMetadata metadata, Object connection) throws ConnectorException {
- throw new ConnectorException("Unsupported Execution");//$NON-NLS-1$
- }
-
- @Override
- public boolean supportsSelectDistinct() {
- return false;
- }
-
- @Override
- public boolean supportsAliasedGroup() {
- return false;
- }
-
- @Override
- public boolean supportsSelfJoins() {
- return false;
- }
-
- @Override
- public boolean supportsOuterJoins() {
- return false;
- }
-
- @Override
- public boolean supportsFullOuterJoins() {
- return false;
- }
-
- @Override
- public boolean supportsBetweenCriteria() {
- return false;
- }
-
- @Override
- public boolean supportsCompareCriteriaEquals() {
- return false;
- }
-
- @Override
- public boolean supportsLikeCriteria() {
- return false;
- }
-
- @Override
- public boolean supportsLikeCriteriaEscapeCharacter() {
- return false;
- }
-
- @Override
- public boolean supportsInCriteria() {
- return false;
- }
-
- @Override
- public boolean supportsInCriteriaSubquery() {
- return false;
- }
-
- @Override
- public boolean supportsIsNullCriteria() {
- return false;
- }
-
- @Override
- public boolean supportsOrCriteria() {
- return false;
- }
-
- @Override
- public boolean supportsNotCriteria() {
- return false;
- }
-
- @Override
- public boolean supportsExistsCriteria() {
- return false;
- }
-
- @Override
- public boolean supportsQuantifiedCompareCriteriaSome() {
- return false;
- }
-
- @Override
- public boolean supportsQuantifiedCompareCriteriaAll() {
- return false;
- }
-
- @Override
- public boolean supportsOrderBy() {
- return false;
- }
-
- @Override
- public boolean supportsAggregatesSum() {
- return false;
- }
-
- @Override
- public boolean supportsAggregatesAvg() {
- return false;
- }
-
- @Override
- public boolean supportsAggregatesMin() {
- return false;
- }
-
- @Override
- public boolean supportsAggregatesMax() {
- return false;
- }
-
- @Override
- public boolean supportsAggregatesCount() {
- return false;
- }
-
- @Override
- public boolean supportsAggregatesCountStar() {
- return false;
- }
-
- @Override
- public boolean supportsAggregatesDistinct() {
- return false;
- }
-
- @Override
- public boolean supportsScalarSubqueries() {
- return false;
- }
-
- @Override
- public boolean supportsCorrelatedSubqueries() {
- return false;
- }
-
- @Override
- public boolean supportsCaseExpressions() {
- return false;
- }
-
- @Override
- public boolean supportsSearchedCaseExpressions() {
- return false;
- }
-
- @Override
- public List<String> getSupportedFunctions() {
- return null;
- }
-
- public boolean supportsInlineViews() {
- return false;
- }
-
- @Override
- public boolean supportsUnions() {
- return false;
- }
-
- @Override
- public int getMaxInCriteriaSize() {
- return DEFAULT_MAX_FROM_GROUPS;
- }
-
- @Override
- public boolean supportsFunctionsInGroupBy() {
- return false;
- }
-
- @Override
- public boolean supportsRowLimit() {
- return false;
- }
-
- @Override
- public boolean supportsRowOffset() {
- return false;
- }
-
- @Override
- public int getMaxFromGroups() {
- return DEFAULT_MAX_FROM_GROUPS; //-1 indicates no max
- }
-
- @Override
- public boolean supportsExcept() {
- return false;
- }
-
- @Override
- public boolean supportsIntersect() {
- return false;
- }
-
- @Override
- public boolean supportsSetQueryOrderBy() {
- return false;
- }
-
- @Override
- public boolean useAnsiJoin() {
- return false;
- }
-
- @Override
- public boolean requiresCriteria() {
- return false;
- }
-
- @Override
- public boolean supportsBatchedUpdates() {
- return false;
- }
-
- @Override
- public boolean supportsGroupBy() {
- return false;
- }
-
- @Override
- public boolean supportsHaving() {
- return false;
- }
-
- @Override
- public boolean supportsInnerJoins() {
- return false;
- }
-
- @Override
- public boolean supportsSelectExpression() {
- return false;
- }
-
- @Override
- public SupportedJoinCriteria getSupportedJoinCriteria() {
- return SupportedJoinCriteria.ANY;
- }
-
- @Override
- public boolean supportsCompareCriteriaOrdered() {
- return false;
- }
-
- @Override
- public boolean supportsInsertWithQueryExpression() {
- return false;
- }
-
- @Override
- public boolean supportsBulkUpdate() {
- return false;
- }
-
- @Override
- public boolean supportsOrderByUnrelated() {
- return false;
- }
-
-}
Copied: trunk/api/src/main/java/org/teiid/translator/ExecutionFactory.java (from rev 2123, trunk/connector-api/src/main/java/org/teiid/translator/ExecutionFactory.java)
===================================================================
--- trunk/api/src/main/java/org/teiid/translator/ExecutionFactory.java (rev 0)
+++ trunk/api/src/main/java/org/teiid/translator/ExecutionFactory.java 2010-05-13 16:19:04 UTC (rev 2124)
@@ -0,0 +1,430 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * See the COPYRIGHT.txt file distributed with this work for information
+ * regarding copyright ownership. Some portions may be licensed
+ * to Red Hat, Inc. under one or more contributor license agreements.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+ * 02110-1301 USA.
+ */
+
+package org.teiid.translator;
+
+import java.util.List;
+
+import org.teiid.language.Call;
+import org.teiid.language.Command;
+import org.teiid.language.LanguageFactory;
+import org.teiid.language.QueryExpression;
+import org.teiid.metadata.RuntimeMetadata;
+
+
+
+/**
+ * <p>The primary entry point for a Translator. This class should be extended by the custom translator writer.</p>
+ *
+ * The deployer instantiates this class through reflection. So it is important to have no-arg constructor. Once constructed
+ * the "start" method is called. This class represents the basic capabilities of the translator.
+ */
+public class ExecutionFactory implements TranslatorCapabilities{
+
+ public static final int DEFAULT_MAX_FROM_GROUPS = -1;
+
+ private static final TypeFacility TYPE_FACILITY = new TypeFacility();
+
+ private boolean immutable = false;
+ private boolean exceptionOnMaxRows = false;
+ private int maxResultRows = DEFAULT_MAX_FROM_GROUPS;
+ private boolean xaCapable;
+ private boolean sourceRequired = true;
+
+ /**
+ * Initialize the connector with supplied configuration
+ */
+ public void start() throws TranslatorException {
+ }
+
+ /**
+ * Defines if the Connector is read-only connector
+ * @return
+ */
+ @TranslatorProperty(name="immutable", display="Is Immutable",description="Is Immutable, True if the source never changes.",advanced=true, defaultValue="false")
+ public boolean isImmutable() {
+ return immutable;
+ }
+
+ public void setImmutable(boolean arg0) {
+ this.immutable = arg0;
+ }
+
+ /**
+ * Throw exception if there are more rows in the result set than specified in the MaxResultRows setting.
+ * @return
+ */
+ @TranslatorProperty(name="exception-on-max-rows", display="Exception on Exceeding Max Rows",description="Indicates if an Exception should be thrown if the specified value for Maximum Result Rows is exceeded; else no exception and no more than the maximum will be returned",advanced=true, defaultValue="true")
+ public boolean isExceptionOnMaxRows() {
+ return exceptionOnMaxRows;
+ }
+
+ public void setExceptionOnMaxRows(boolean arg0) {
+ this.exceptionOnMaxRows = arg0;
+ }
+
+ /**
+ * Maximum result set rows to fetch
+ * @return
+ */
+ @TranslatorProperty(name="max-result-rows", display="Maximum Result Rows", description="Maximum Result Rows allowed", advanced=true, defaultValue="-1")
+ public int getMaxResultRows() {
+ return maxResultRows;
+ }
+
+ public void setMaxResultRows(int arg0) {
+ this.maxResultRows = arg0;
+ }
+
+ /**
+ * Shows the XA transaction capability of the Connector.
+ * @return
+ */
+ @TranslatorProperty(name="xa-capable", display="Is XA Capable", description="True, if this connector supports XA Transactions", defaultValue="false")
+ public boolean isXaCapable() {
+ return xaCapable;
+ }
+
+ public void setXaCapable(boolean arg0) {
+ this.xaCapable = arg0;
+ }
+
+ /**
+ * Flag that indicates if a underlying source connection required for this execution factory to work
+ * @return
+ */
+ public boolean isSourceRequired() {
+ return sourceRequired;
+ }
+
+ public void setSourceRequired(boolean value) {
+ this.sourceRequired = value;
+ }
+
+ /**
+ * Obtain a reference to the default LanguageFactory that can be used to construct
+ * new language interface objects. This is typically needed when modifying the language
+ * objects passed to the connector or for testing when objects need to be created.
+ */
+ public LanguageFactory getLanguageFactory() {
+ return LanguageFactory.INSTANCE;
+ }
+
+ /**
+ * Obtain a reference to the type facility, which can be used to perform many type
+ * conversions supplied by the Connector API.
+ */
+ public TypeFacility getTypeFacility() {
+ return TYPE_FACILITY;
+ }
+
+ /**
+ * Create an execution object for the specified command
+ * @param command the command
+ * @param executionContext Provides information about the context that this command is
+ * executing within, such as the identifiers for the command being executed
+ * @param metadata Access to runtime metadata if needed to translate the command
+ * @param connection connection factory object to the data source
+ * @return An execution object that can use to execute the command
+ */
+ public Execution createExecution(Command command, ExecutionContext executionContext, RuntimeMetadata metadata, Object connectionFactory) throws TranslatorException {
+ if (command instanceof QueryExpression) {
+ return createResultSetExecution((QueryExpression)command, executionContext, metadata, connectionFactory);
+ }
+ if (command instanceof Call) {
+ return createProcedureExecution((Call)command, executionContext, metadata, connectionFactory);
+ }
+ return createUpdateExecution(command, executionContext, metadata, connectionFactory);
+ }
+
+ public ResultSetExecution createResultSetExecution(QueryExpression command, ExecutionContext executionContext, RuntimeMetadata metadata, Object connection) throws TranslatorException {
+ throw new TranslatorException("Unsupported Execution"); //$NON-NLS-1$
+ }
+
+ public ProcedureExecution createProcedureExecution(Call command, ExecutionContext executionContext, RuntimeMetadata metadata, Object connection) throws TranslatorException {
+ throw new TranslatorException("Unsupported Execution");//$NON-NLS-1$
+ }
+
+ public UpdateExecution createUpdateExecution(Command command, ExecutionContext executionContext, RuntimeMetadata metadata, Object connection) throws TranslatorException {
+ throw new TranslatorException("Unsupported Execution");//$NON-NLS-1$
+ }
+
+ @Override
+ public boolean supportsSelectDistinct() {
+ return false;
+ }
+
+ @Override
+ public boolean supportsAliasedGroup() {
+ return false;
+ }
+
+ @Override
+ public boolean supportsSelfJoins() {
+ return false;
+ }
+
+ @Override
+ public boolean supportsOuterJoins() {
+ return false;
+ }
+
+ @Override
+ public boolean supportsFullOuterJoins() {
+ return false;
+ }
+
+ @Override
+ public boolean supportsBetweenCriteria() {
+ return false;
+ }
+
+ @Override
+ public boolean supportsCompareCriteriaEquals() {
+ return false;
+ }
+
+ @Override
+ public boolean supportsLikeCriteria() {
+ return false;
+ }
+
+ @Override
+ public boolean supportsLikeCriteriaEscapeCharacter() {
+ return false;
+ }
+
+ @Override
+ public boolean supportsInCriteria() {
+ return false;
+ }
+
+ @Override
+ public boolean supportsInCriteriaSubquery() {
+ return false;
+ }
+
+ @Override
+ public boolean supportsIsNullCriteria() {
+ return false;
+ }
+
+ @Override
+ public boolean supportsOrCriteria() {
+ return false;
+ }
+
+ @Override
+ public boolean supportsNotCriteria() {
+ return false;
+ }
+
+ @Override
+ public boolean supportsExistsCriteria() {
+ return false;
+ }
+
+ @Override
+ public boolean supportsQuantifiedCompareCriteriaSome() {
+ return false;
+ }
+
+ @Override
+ public boolean supportsQuantifiedCompareCriteriaAll() {
+ return false;
+ }
+
+ @Override
+ public boolean supportsOrderBy() {
+ return false;
+ }
+
+ @Override
+ public boolean supportsAggregatesSum() {
+ return false;
+ }
+
+ @Override
+ public boolean supportsAggregatesAvg() {
+ return false;
+ }
+
+ @Override
+ public boolean supportsAggregatesMin() {
+ return false;
+ }
+
+ @Override
+ public boolean supportsAggregatesMax() {
+ return false;
+ }
+
+ @Override
+ public boolean supportsAggregatesCount() {
+ return false;
+ }
+
+ @Override
+ public boolean supportsAggregatesCountStar() {
+ return false;
+ }
+
+ @Override
+ public boolean supportsAggregatesDistinct() {
+ return false;
+ }
+
+ @Override
+ public boolean supportsScalarSubqueries() {
+ return false;
+ }
+
+ @Override
+ public boolean supportsCorrelatedSubqueries() {
+ return false;
+ }
+
+ @Override
+ public boolean supportsCaseExpressions() {
+ return false;
+ }
+
+ @Override
+ public boolean supportsSearchedCaseExpressions() {
+ return false;
+ }
+
+ @Override
+ public List<String> getSupportedFunctions() {
+ return null;
+ }
+
+ public boolean supportsInlineViews() {
+ return false;
+ }
+
+ @Override
+ public boolean supportsUnions() {
+ return false;
+ }
+
+ @Override
+ public int getMaxInCriteriaSize() {
+ return DEFAULT_MAX_FROM_GROUPS;
+ }
+
+ @Override
+ public boolean supportsFunctionsInGroupBy() {
+ return false;
+ }
+
+ @Override
+ public boolean supportsRowLimit() {
+ return false;
+ }
+
+ @Override
+ public boolean supportsRowOffset() {
+ return false;
+ }
+
+ @Override
+ public int getMaxFromGroups() {
+ return DEFAULT_MAX_FROM_GROUPS; //-1 indicates no max
+ }
+
+ @Override
+ public boolean supportsExcept() {
+ return false;
+ }
+
+ @Override
+ public boolean supportsIntersect() {
+ return false;
+ }
+
+ @Override
+ public boolean supportsSetQueryOrderBy() {
+ return false;
+ }
+
+ @Override
+ public boolean useAnsiJoin() {
+ return false;
+ }
+
+ @Override
+ public boolean requiresCriteria() {
+ return false;
+ }
+
+ @Override
+ public boolean supportsBatchedUpdates() {
+ return false;
+ }
+
+ @Override
+ public boolean supportsGroupBy() {
+ return false;
+ }
+
+ @Override
+ public boolean supportsHaving() {
+ return false;
+ }
+
+ @Override
+ public boolean supportsInnerJoins() {
+ return false;
+ }
+
+ @Override
+ public boolean supportsSelectExpression() {
+ return false;
+ }
+
+ @Override
+ public SupportedJoinCriteria getSupportedJoinCriteria() {
+ return SupportedJoinCriteria.ANY;
+ }
+
+ @Override
+ public boolean supportsCompareCriteriaOrdered() {
+ return false;
+ }
+
+ @Override
+ public boolean supportsInsertWithQueryExpression() {
+ return false;
+ }
+
+ @Override
+ public boolean supportsBulkUpdate() {
+ return false;
+ }
+
+ @Override
+ public boolean supportsOrderByUnrelated() {
+ return false;
+ }
+
+}
Deleted: trunk/api/src/main/java/org/teiid/translator/MetadataProvider.java
===================================================================
--- trunk/connector-api/src/main/java/org/teiid/translator/MetadataProvider.java 2010-05-13 13:40:34 UTC (rev 2122)
+++ trunk/api/src/main/java/org/teiid/translator/MetadataProvider.java 2010-05-13 16:19:04 UTC (rev 2124)
@@ -1,31 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * See the COPYRIGHT.txt file distributed with this work for information
- * regarding copyright ownership. Some portions may be licensed
- * to Red Hat, Inc. under one or more contributor license agreements.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
- * 02110-1301 USA.
- */
-
-package org.teiid.translator;
-
-import org.teiid.metadata.MetadataFactory;
-
-public interface MetadataProvider {
-
- void getConnectorMetadata(MetadataFactory metadataFactory, Object connectionFactory) throws ConnectorException;
-
-}
Copied: trunk/api/src/main/java/org/teiid/translator/MetadataProvider.java (from rev 2123, trunk/connector-api/src/main/java/org/teiid/translator/MetadataProvider.java)
===================================================================
--- trunk/api/src/main/java/org/teiid/translator/MetadataProvider.java (rev 0)
+++ trunk/api/src/main/java/org/teiid/translator/MetadataProvider.java 2010-05-13 16:19:04 UTC (rev 2124)
@@ -0,0 +1,31 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * See the COPYRIGHT.txt file distributed with this work for information
+ * regarding copyright ownership. Some portions may be licensed
+ * to Red Hat, Inc. under one or more contributor license agreements.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+ * 02110-1301 USA.
+ */
+
+package org.teiid.translator;
+
+import org.teiid.metadata.MetadataFactory;
+
+public interface MetadataProvider {
+
+ void getConnectorMetadata(MetadataFactory metadataFactory, Object connectionFactory) throws TranslatorException;
+
+}
Deleted: trunk/api/src/main/java/org/teiid/translator/ProcedureExecution.java
===================================================================
--- trunk/connector-api/src/main/java/org/teiid/translator/ProcedureExecution.java 2010-05-13 13:40:34 UTC (rev 2122)
+++ trunk/api/src/main/java/org/teiid/translator/ProcedureExecution.java 2010-05-13 16:19:04 UTC (rev 2124)
@@ -1,44 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * See the COPYRIGHT.txt file distributed with this work for information
- * regarding copyright ownership. Some portions may be licensed
- * to Red Hat, Inc. under one or more contributor license agreements.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
- * 02110-1301 USA.
- */
-
-package org.teiid.translator;
-
-import java.util.List;
-
-import org.teiid.language.Call;
-
-/**
- * The procedure execution represents the case where a connector can execute a
- * {@link Call}. The output may include 0 or more output parameters and
- * optionally a result set.
- */
-public interface ProcedureExecution extends ResultSetExecution {
-
- /**
- * Get the output parameter values. Results should place the return parameter
- * first if it is present, then the IN/OUT and OUT parameters should follow in
- * the order they appeared in the command.
- * @throws ConnectorException If an error occurs while retrieving the output value
- */
- List<?> getOutputParameterValues() throws ConnectorException;
-
-}
Copied: trunk/api/src/main/java/org/teiid/translator/ProcedureExecution.java (from rev 2123, trunk/connector-api/src/main/java/org/teiid/translator/ProcedureExecution.java)
===================================================================
--- trunk/api/src/main/java/org/teiid/translator/ProcedureExecution.java (rev 0)
+++ trunk/api/src/main/java/org/teiid/translator/ProcedureExecution.java 2010-05-13 16:19:04 UTC (rev 2124)
@@ -0,0 +1,44 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * See the COPYRIGHT.txt file distributed with this work for information
+ * regarding copyright ownership. Some portions may be licensed
+ * to Red Hat, Inc. under one or more contributor license agreements.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+ * 02110-1301 USA.
+ */
+
+package org.teiid.translator;
+
+import java.util.List;
+
+import org.teiid.language.Call;
+
+/**
+ * The procedure execution represents the case where a connector can execute a
+ * {@link Call}. The output may include 0 or more output parameters and
+ * optionally a result set.
+ */
+public interface ProcedureExecution extends ResultSetExecution {
+
+ /**
+ * Get the output parameter values. Results should place the return parameter
+ * first if it is present, then the IN/OUT and OUT parameters should follow in
+ * the order they appeared in the command.
+ * @throws TranslatorException If an error occurs while retrieving the output value
+ */
+ List<?> getOutputParameterValues() throws TranslatorException;
+
+}
Deleted: trunk/api/src/main/java/org/teiid/translator/ResultSetExecution.java
===================================================================
--- trunk/connector-api/src/main/java/org/teiid/translator/ResultSetExecution.java 2010-05-13 13:40:34 UTC (rev 2122)
+++ trunk/api/src/main/java/org/teiid/translator/ResultSetExecution.java 2010-05-13 16:19:04 UTC (rev 2124)
@@ -1,45 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * See the COPYRIGHT.txt file distributed with this work for information
- * regarding copyright ownership. Some portions may be licensed
- * to Red Hat, Inc. under one or more contributor license agreements.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
- * 02110-1301 USA.
- */
-
-package org.teiid.translator;
-
-import java.util.List;
-
-import org.teiid.language.Call;
-import org.teiid.language.QueryExpression;
-
-/**
- * Defines an execution for {@link QueryExpression}s and {@link Call}s that
- * returns a resultset, which is represented through the iterator method
- * {@link #next()}.
- */
-public interface ResultSetExecution extends Execution {
-
- /**
- * Retrieves the next row of the resultset.
- * @return the next row or null indicating that there are no more results
- * @throws ConnectorException
- * @throws DataNotAvailableException
- */
- List<?> next() throws ConnectorException, DataNotAvailableException;
-
-}
Copied: trunk/api/src/main/java/org/teiid/translator/ResultSetExecution.java (from rev 2123, trunk/connector-api/src/main/java/org/teiid/translator/ResultSetExecution.java)
===================================================================
--- trunk/api/src/main/java/org/teiid/translator/ResultSetExecution.java (rev 0)
+++ trunk/api/src/main/java/org/teiid/translator/ResultSetExecution.java 2010-05-13 16:19:04 UTC (rev 2124)
@@ -0,0 +1,45 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * See the COPYRIGHT.txt file distributed with this work for information
+ * regarding copyright ownership. Some portions may be licensed
+ * to Red Hat, Inc. under one or more contributor license agreements.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+ * 02110-1301 USA.
+ */
+
+package org.teiid.translator;
+
+import java.util.List;
+
+import org.teiid.language.Call;
+import org.teiid.language.QueryExpression;
+
+/**
+ * Defines an execution for {@link QueryExpression}s and {@link Call}s that
+ * returns a resultset, which is represented through the iterator method
+ * {@link #next()}.
+ */
+public interface ResultSetExecution extends Execution {
+
+ /**
+ * Retrieves the next row of the resultset.
+ * @return the next row or null indicating that there are no more results
+ * @throws TranslatorException
+ * @throws DataNotAvailableException
+ */
+ List<?> next() throws TranslatorException, DataNotAvailableException;
+
+}
Copied: trunk/api/src/main/java/org/teiid/translator/TranslatorCapabilities.java (from rev 2123, trunk/connector-api/src/main/java/org/teiid/translator/TranslatorCapabilities.java)
===================================================================
--- trunk/api/src/main/java/org/teiid/translator/TranslatorCapabilities.java (rev 0)
+++ trunk/api/src/main/java/org/teiid/translator/TranslatorCapabilities.java 2010-05-13 16:19:04 UTC (rev 2124)
@@ -0,0 +1,394 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * See the COPYRIGHT.txt file distributed with this work for information
+ * regarding copyright ownership. Some portions may be licensed
+ * to Red Hat, Inc. under one or more contributor license agreements.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+ * 02110-1301 USA.
+ */
+
+package org.teiid.translator;
+
+import java.util.List;
+
+import org.teiid.language.BatchedUpdates;
+import org.teiid.language.SetQuery;
+
+
+/**
+ * Allows a connector to specify the capabilities that a connector
+ * supports.
+ */
+public interface TranslatorCapabilities {
+
+ public enum SupportedJoinCriteria {
+ /**
+ * Indicates that any supported criteria is allowed.
+ */
+ ANY,
+ /**
+ * Indicates that any simple comparison of elements is allowed.
+ */
+ THETA,
+ /**
+ * Indicates that only equality predicates of elements are allowed.
+ */
+ EQUI,
+ /**
+ * Indicates that only equality predicates between
+ * exactly one primary and foreign key is allowed per join.
+ */
+ KEY
+ }
+
+ /**
+ * Support indicates connector can accept queries with SELECT DISTINCT
+ * @since 3.1 SP2
+ */
+ boolean supportsSelectDistinct();
+
+ /**
+ * Support indicates connector can accept expressions other than element
+ * symbols in the SELECT clause. Specific supports for the expression
+ * type are still checked.
+ * @since 6.1.0
+ */
+ boolean supportsSelectExpression();
+
+ /**
+ * Support indicates connector can accept groups with aliases
+ * @since 3.1 SP2
+ */
+ boolean supportsAliasedGroup();
+
+ /**
+ * Get the supported join criteria. A null return value will be treated
+ * as {@link SupportedJoinCriteria#ANY}
+ * @since 6.1.0
+ */
+ SupportedJoinCriteria getSupportedJoinCriteria();
+
+ /**
+ * Support indicates connector can accept inner or cross joins
+ * @since 6.1.0
+ */
+ boolean supportsInnerJoins();
+
+ /**
+ * Support indicates connector can accept self-joins where a
+ * group is joined to itself with aliases. Connector must also support
+ * {@link #supportsAliasedGroup()}.
+ * @since 3.1 SP2
+ */
+ boolean supportsSelfJoins();
+
+ /**
+ * Support indicates connector can accept left outer joins
+ * @since 3.1 SP2
+ */
+ boolean supportsOuterJoins();
+
+ /**
+ * Support indicates connector can accept full outer joins
+ * @since 3.1 SP2
+ */
+ boolean supportsFullOuterJoins();
+
+ /**
+ * Support indicates connector can accept inline views (subqueries
+ * in the FROM clause).
+ * @since 4.1
+ */
+ boolean supportsInlineViews();
+
+ /**
+ * Support indicates connector accepts criteria of form (element BETWEEN constant AND constant)
+ * <br>NOT CURRENTLY USED - between is rewritten as compound compare criteria
+ * @since 4.0
+ */
+ boolean supportsBetweenCriteria();
+
+ /**
+ * Support indicates connector accepts criteria of form (element = constant)
+ * @since 3.1 SP2
+ */
+ boolean supportsCompareCriteriaEquals();
+
+ /**
+ * Support indicates connector accepts criteria of form (element <=|>= constant)
+ * <br>The query engine will may pushdown queries containing < or > if NOT is also
+ * supported.
+ * @since 3.1 SP2
+ */
+ boolean supportsCompareCriteriaOrdered();
+
+ /**
+ * Support indicates connector accepts criteria of form (element LIKE constant)
+ * @since 3.1 SP2
+ */
+ boolean supportsLikeCriteria();
+
+ /**
+ * Support indicates connector accepts criteria of form (element LIKE constant ESCAPE char)
+ * @since 3.1 SP2
+ */
+ boolean supportsLikeCriteriaEscapeCharacter();
+
+ /**
+ * Support indicates connector accepts criteria of form (element IN set)
+ * @since 3.1 SP2
+ */
+ boolean supportsInCriteria();
+
+ /**
+ * Support indicates connector accepts IN criteria with a subquery on the right side
+ * @since 4.0
+ */
+ boolean supportsInCriteriaSubquery();
+
+ /**
+ * Support indicates connector accepts criteria of form (element IS NULL)
+ * @since 3.1 SP2
+ */
+ boolean supportsIsNullCriteria();
+
+ /**
+ * Support indicates connector accepts logical criteria connected by OR
+ * @since 3.1 SP2
+ */
+ boolean supportsOrCriteria();
+
+ /**
+ * Support indicates connector accepts logical criteria NOT
+ * @since 3.1 SP2
+ */
+ boolean supportsNotCriteria();
+
+ /**
+ * Support indicates connector accepts the EXISTS criteria
+ * @since 4.0
+ */
+ boolean supportsExistsCriteria();
+
+ /**
+ * Support indicates connector accepts the quantified comparison criteria that
+ * use SOME
+ * @since 4.0
+ */
+ boolean supportsQuantifiedCompareCriteriaSome();
+
+ /**
+ * Support indicates connector accepts the quantified comparison criteria that
+ * use ALL
+ * @since 4.0
+ */
+ boolean supportsQuantifiedCompareCriteriaAll();
+
+ /**
+ * Support indicates connector accepts ORDER BY clause, including multiple elements
+ * and ascending and descending sorts.
+ * @since 3.1 SP2
+ */
+ boolean supportsOrderBy();
+
+ /**
+ * Support indicates connector accepts ORDER BY clause with columns not from the select
+ * @since 6.2
+ * @return
+ */
+ boolean supportsOrderByUnrelated();
+
+ /**
+ * Whether the source supports an explicit GROUP BY clause
+ * @since 6.1
+ */
+ boolean supportsGroupBy();
+
+ /**
+ * Whether the source supports the HAVING clause
+ * @since 6.1
+ */
+ boolean supportsHaving();
+
+ /**
+ * Support indicates connector can accept the SUM aggregate function
+ * @since 3.1 SP2
+ */
+ boolean supportsAggregatesSum();
+
+ /**
+ * Support indicates connector can accept the AVG aggregate function
+ * @since 3.1 SP2
+ */
+ boolean supportsAggregatesAvg();
+
+ /**
+ * Support indicates connector can accept the MIN aggregate function
+ * @since 3.1 SP2
+ */
+ boolean supportsAggregatesMin();
+
+ /**
+ * Support indicates connector can accept the MAX aggregate function
+ * @since 3.1 SP2
+ */
+ boolean supportsAggregatesMax();
+
+ /**
+ * Support indicates connector can accept the COUNT aggregate function
+ * @since 3.1 SP2
+ */
+ boolean supportsAggregatesCount();
+
+ /**
+ * Support indicates connector can accept the COUNT(*) aggregate function
+ * @since 3.1 SP2
+ */
+ boolean supportsAggregatesCountStar();
+
+ /**
+ * Support indicates connector can accept DISTINCT within aggregate functions
+ * @since 3.1 SP2
+ */
+ boolean supportsAggregatesDistinct();
+
+ /**
+ * Support indicates connector can accept scalar subqueries in the SELECT, WHERE, and
+ * HAVING clauses
+ * @since 4.0
+ */
+ boolean supportsScalarSubqueries();
+
+ /**
+ * Support indicates connector can accept correlated subqueries wherever subqueries
+ * are accepted
+ * @since 4.0
+ */
+ boolean supportsCorrelatedSubqueries();
+
+ /**
+ * Support indicates connector can accept queries with non-searched
+ * CASE <expression> WHEN <expression> ... END
+ * <br>NOT CURRENTLY USED - case is pushed down as searched case
+ * @since 4.0
+ */
+ boolean supportsCaseExpressions();
+
+ /**
+ * Support indicates connector can accept queries with searched CASE WHEN <criteria> ... END
+ * @since 4.0
+ */
+ boolean supportsSearchedCaseExpressions();
+
+ /**
+ * Support indicates that the connector supports the UNION of two queries.
+ * @since 4.2
+ */
+ boolean supportsUnions();
+
+ /**
+ * Support indicates that the connector supports an ORDER BY on a SetQuery.
+ * @since 5.6
+ */
+ boolean supportsSetQueryOrderBy();
+
+ /**
+ * Support indicates that the connector supports the INTERSECT of two queries.
+ * @since 5.6
+ */
+ boolean supportsIntersect();
+
+ /**
+ * Support indicates that the connector supports the EXCEPT of two queries.
+ * @since 5.6
+ */
+ boolean supportsExcept();
+
+ /**
+ * Get list of all supported function names. Arithmetic functions have names like
+ * "+".
+ * @since 3.1 SP3
+ */
+ List<String> getSupportedFunctions();
+
+ /**
+ * Get the integer value representing the number of values allowed in an IN criteria
+ * in the WHERE clause of a query
+ * @since 5.0
+ */
+ int getMaxInCriteriaSize();
+
+ /**
+ * <p>Support indicates that the connector supports functions in GROUP BY, such as:
+ * <code>SELECT dayofmonth(theDate), COUNT(*) FROM table GROUP BY dayofmonth(theDate)</code></p>
+ *
+ * <br>NOT CURRENTLY USED - group by expressions create an inline view for pushdown
+ * @since 5.0
+ */
+ boolean supportsFunctionsInGroupBy();
+
+ /**
+ * Gets whether the connector can limit the number of rows returned by a query.
+ * @since 5.0 SP1
+ */
+ boolean supportsRowLimit();
+
+ /**
+ * 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
+ * @since 5.0 SP1
+ */
+ boolean supportsRowOffset();
+
+ /**
+ * The number of groups supported in the from clause. Added for a Sybase limitation.
+ * @since 5.6
+ * @return the number of groups supported in the from clause, or -1 if there is no limit
+ */
+ int getMaxFromGroups();
+
+ /**
+ * Whether the source prefers to use ANSI style joins.
+ * @since 6.0
+ */
+ boolean useAnsiJoin();
+
+ /**
+ * Whether the source supports queries without criteria.
+ * @since 6.0
+ */
+ boolean requiresCriteria();
+
+ /**
+ * Whether the source supports {@link BatchedUpdates}
+ * @since 6.0
+ */
+ boolean supportsBatchedUpdates();
+
+ /**
+ * Whether the source supports updates with multiple value sets
+ * @since 6.0
+ */
+ boolean supportsBulkUpdate();
+
+ /**
+ * Support indicates that the connector can accept INSERTs with
+ * values specified by an {@link SetQuery}.
+ * @since 6.1
+ */
+ boolean supportsInsertWithQueryExpression();
+
+}
Copied: trunk/api/src/main/java/org/teiid/translator/TranslatorException.java (from rev 2123, trunk/connector-api/src/main/java/org/teiid/translator/TranslatorException.java)
===================================================================
--- trunk/api/src/main/java/org/teiid/translator/TranslatorException.java (rev 0)
+++ trunk/api/src/main/java/org/teiid/translator/TranslatorException.java 2010-05-13 16:19:04 UTC (rev 2124)
@@ -0,0 +1,79 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * See the COPYRIGHT.txt file distributed with this work for information
+ * regarding copyright ownership. Some portions may be licensed
+ * to Red Hat, Inc. under one or more contributor license agreements.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+ * 02110-1301 USA.
+ */
+
+package org.teiid.translator;
+
+import org.teiid.core.TeiidException;
+
+/**
+ * An exception the connector writer can return in case of an
+ * error while using the connector.
+ */
+public class TranslatorException extends TeiidException{
+
+ private static final long serialVersionUID = -5980862789340592219L;
+
+ /**
+ * No-arg constructor required by Externalizable semantics.
+ */
+ public TranslatorException() {
+ super();
+ }
+
+ /**
+ * Construct an instance with the message specified.
+ *
+ * @param message A message describing the exception
+ */
+ public TranslatorException( String message ) {
+ super( message );
+ }
+
+ public TranslatorException( String errorCode, String message ) {
+ super( message, errorCode);
+ }
+
+ public TranslatorException( int errorCode, String message ) {
+ super(message, Integer.toString(errorCode));
+ }
+
+
+ /**
+ * Construct an instance from a message and an exception to chain to this one.
+ *
+ * @param code A code denoting the exception
+ * @param e An exception to nest within this one
+ */
+ public TranslatorException( Throwable e, String message ) {
+ super(e, message);
+ }
+
+ /**
+ * Construct an instance with a linked exception specified.
+ *
+ * @param e An exception to chain to this exception
+ */
+ public TranslatorException( Throwable e ) {
+ super( e );
+ }
+
+}
Deleted: trunk/api/src/main/java/org/teiid/translator/UpdateExecution.java
===================================================================
--- trunk/connector-api/src/main/java/org/teiid/translator/UpdateExecution.java 2010-05-13 13:40:34 UTC (rev 2122)
+++ trunk/api/src/main/java/org/teiid/translator/UpdateExecution.java 2010-05-13 16:19:04 UTC (rev 2124)
@@ -1,45 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * See the COPYRIGHT.txt file distributed with this work for information
- * regarding copyright ownership. Some portions may be licensed
- * to Red Hat, Inc. under one or more contributor license agreements.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
- * 02110-1301 USA.
- */
-
-package org.teiid.translator;
-
-import org.teiid.language.BatchedUpdates;
-import org.teiid.language.Delete;
-import org.teiid.language.Insert;
-import org.teiid.language.Update;
-
-
-/**
- * The update execution represents the case where a connector can
- * execute an {@link Insert}, {@link Update}, {@link Delete}, or {@link BatchedUpdates} command.
- */
-public interface UpdateExecution extends Execution {
-
- /**
- * Returns the update counts for the execution.
- * @return the update counts corresponding to the command executed
- * @throws DataNotAvailableException
- * @throws ConnectorException
- */
- int[] getUpdateCounts() throws DataNotAvailableException, ConnectorException;
-
-}
Copied: trunk/api/src/main/java/org/teiid/translator/UpdateExecution.java (from rev 2123, trunk/connector-api/src/main/java/org/teiid/translator/UpdateExecution.java)
===================================================================
--- trunk/api/src/main/java/org/teiid/translator/UpdateExecution.java (rev 0)
+++ trunk/api/src/main/java/org/teiid/translator/UpdateExecution.java 2010-05-13 16:19:04 UTC (rev 2124)
@@ -0,0 +1,45 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * See the COPYRIGHT.txt file distributed with this work for information
+ * regarding copyright ownership. Some portions may be licensed
+ * to Red Hat, Inc. under one or more contributor license agreements.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+ * 02110-1301 USA.
+ */
+
+package org.teiid.translator;
+
+import org.teiid.language.BatchedUpdates;
+import org.teiid.language.Delete;
+import org.teiid.language.Insert;
+import org.teiid.language.Update;
+
+
+/**
+ * The update execution represents the case where a connector can
+ * execute an {@link Insert}, {@link Update}, {@link Delete}, or {@link BatchedUpdates} command.
+ */
+public interface UpdateExecution extends Execution {
+
+ /**
+ * Returns the update counts for the execution.
+ * @return the update counts corresponding to the command executed
+ * @throws DataNotAvailableException
+ * @throws TranslatorException
+ */
+ int[] getUpdateCounts() throws DataNotAvailableException, TranslatorException;
+
+}
Modified: trunk/connectors/connector-ldap/pom.xml
===================================================================
--- trunk/connectors/connector-ldap/pom.xml 2010-05-13 14:30:43 UTC (rev 2123)
+++ trunk/connectors/connector-ldap/pom.xml 2010-05-13 16:19:04 UTC (rev 2124)
@@ -14,7 +14,7 @@
<dependencies>
<dependency>
<groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-connector-api</artifactId>
+ <artifactId>teiid-api</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
Modified: trunk/connectors/connector-salesforce/pom.xml
===================================================================
--- trunk/connectors/connector-salesforce/pom.xml 2010-05-13 14:30:43 UTC (rev 2123)
+++ trunk/connectors/connector-salesforce/pom.xml 2010-05-13 16:19:04 UTC (rev 2124)
@@ -14,7 +14,7 @@
<dependencies>
<dependency>
<groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-connector-api</artifactId>
+ <artifactId>teiid-api</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
Modified: trunk/connectors/connector-text/pom.xml
===================================================================
--- trunk/connectors/connector-text/pom.xml 2010-05-13 14:30:43 UTC (rev 2123)
+++ trunk/connectors/connector-text/pom.xml 2010-05-13 16:19:04 UTC (rev 2124)
@@ -15,7 +15,7 @@
<dependencies>
<dependency>
<groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-connector-api</artifactId>
+ <artifactId>teiid-api</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
Modified: trunk/connectors/pom.xml
===================================================================
--- trunk/connectors/pom.xml 2010-05-13 14:30:43 UTC (rev 2123)
+++ trunk/connectors/pom.xml 2010-05-13 16:19:04 UTC (rev 2124)
@@ -17,7 +17,7 @@
<!-- Internal Test Dependencies -->
<dependency>
<groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-connector-api</artifactId>
+ <artifactId>teiid-api</artifactId>
<type>test-jar</type>
<scope>test</scope>
</dependency>
Modified: trunk/connectors/sandbox/translator-yahoo/pom.xml
===================================================================
--- trunk/connectors/sandbox/translator-yahoo/pom.xml 2010-05-13 14:30:43 UTC (rev 2123)
+++ trunk/connectors/sandbox/translator-yahoo/pom.xml 2010-05-13 16:19:04 UTC (rev 2124)
@@ -13,7 +13,7 @@
<dependencies>
<dependency>
<groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-connector-api</artifactId>
+ <artifactId>teiid-api</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
Modified: trunk/connectors/translator-jdbc/pom.xml
===================================================================
--- trunk/connectors/translator-jdbc/pom.xml 2010-05-13 14:30:43 UTC (rev 2123)
+++ trunk/connectors/translator-jdbc/pom.xml 2010-05-13 16:19:04 UTC (rev 2124)
@@ -16,7 +16,7 @@
<dependencies>
<dependency>
<groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-connector-api</artifactId>
+ <artifactId>teiid-api</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
Modified: trunk/connectors/translator-ldap/pom.xml
===================================================================
--- trunk/connectors/translator-ldap/pom.xml 2010-05-13 14:30:43 UTC (rev 2123)
+++ trunk/connectors/translator-ldap/pom.xml 2010-05-13 16:19:04 UTC (rev 2124)
@@ -13,7 +13,7 @@
<dependencies>
<dependency>
<groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-connector-api</artifactId>
+ <artifactId>teiid-api</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
Modified: trunk/connectors/translator-loopback/pom.xml
===================================================================
--- trunk/connectors/translator-loopback/pom.xml 2010-05-13 14:30:43 UTC (rev 2123)
+++ trunk/connectors/translator-loopback/pom.xml 2010-05-13 16:19:04 UTC (rev 2124)
@@ -16,7 +16,7 @@
<dependencies>
<dependency>
<groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-connector-api</artifactId>
+ <artifactId>teiid-api</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
Modified: trunk/connectors/translator-salesforce/pom.xml
===================================================================
--- trunk/connectors/translator-salesforce/pom.xml 2010-05-13 14:30:43 UTC (rev 2123)
+++ trunk/connectors/translator-salesforce/pom.xml 2010-05-13 16:19:04 UTC (rev 2124)
@@ -15,7 +15,7 @@
<dependencies>
<dependency>
<groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-connector-api</artifactId>
+ <artifactId>teiid-api</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
Modified: trunk/connectors/translator-text/pom.xml
===================================================================
--- trunk/connectors/translator-text/pom.xml 2010-05-13 14:30:43 UTC (rev 2123)
+++ trunk/connectors/translator-text/pom.xml 2010-05-13 16:19:04 UTC (rev 2124)
@@ -14,7 +14,7 @@
<dependencies>
<dependency>
<groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-connector-api</artifactId>
+ <artifactId>teiid-api</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
Modified: trunk/engine/pom.xml
===================================================================
--- trunk/engine/pom.xml 2010-05-13 14:30:43 UTC (rev 2123)
+++ trunk/engine/pom.xml 2010-05-13 16:19:04 UTC (rev 2124)
@@ -39,7 +39,7 @@
<dependency>
<groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-connector-api</artifactId>
+ <artifactId>teiid-api</artifactId>
<scope>provided</scope>
</dependency>
Modified: trunk/jboss-integration/pom.xml
===================================================================
--- trunk/jboss-integration/pom.xml 2010-05-13 14:30:43 UTC (rev 2123)
+++ trunk/jboss-integration/pom.xml 2010-05-13 16:19:04 UTC (rev 2124)
@@ -20,7 +20,7 @@
<dependency>
<groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-connector-api</artifactId>
+ <artifactId>teiid-api</artifactId>
</dependency>
<dependency>
Modified: trunk/metadata/pom.xml
===================================================================
--- trunk/metadata/pom.xml 2010-05-13 14:30:43 UTC (rev 2123)
+++ trunk/metadata/pom.xml 2010-05-13 16:19:04 UTC (rev 2124)
@@ -43,7 +43,7 @@
<dependency>
<groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-connector-api</artifactId>
+ <artifactId>teiid-api</artifactId>
<scope>provided</scope>
</dependency>
Modified: trunk/pom.xml
===================================================================
--- trunk/pom.xml 2010-05-13 14:30:43 UTC (rev 2123)
+++ trunk/pom.xml 2010-05-13 16:19:04 UTC (rev 2124)
@@ -238,12 +238,12 @@
</dependency>
<dependency>
<groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-connector-api</artifactId>
+ <artifactId>teiid-api</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-connector-api</artifactId>
+ <artifactId>teiid-api</artifactId>
<type>test-jar</type>
<version>${project.version}</version>
<scope>test</scope>
@@ -466,7 +466,7 @@
</dependencyManagement>
<modules>
<module>common-core</module>
- <module>connector-api</module>
+ <module>api</module>
<module>client</module>
<module>engine</module>
<module>connectors</module>
Modified: trunk/runtime/pom.xml
===================================================================
--- trunk/runtime/pom.xml 2010-05-13 14:30:43 UTC (rev 2123)
+++ trunk/runtime/pom.xml 2010-05-13 16:19:04 UTC (rev 2124)
@@ -23,7 +23,7 @@
</dependency>
<dependency>
<groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-connector-api</artifactId>
+ <artifactId>teiid-api</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
Modified: trunk/test-integration/pom.xml
===================================================================
--- trunk/test-integration/pom.xml 2010-05-13 14:30:43 UTC (rev 2123)
+++ trunk/test-integration/pom.xml 2010-05-13 16:19:04 UTC (rev 2124)
@@ -37,7 +37,7 @@
</dependency>
<dependency>
<groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-connector-api</artifactId>
+ <artifactId>teiid-api</artifactId>
</dependency>
<dependency>
<groupId>org.jboss.teiid.connectors</groupId>
More information about the teiid-commits
mailing list