[teiid-commits] teiid SVN: r1928 - in trunk: client/src/main/java/com/metamatrix/common/xa and 10 other directories.

teiid-commits at lists.jboss.org teiid-commits at lists.jboss.org
Fri Mar 5 14:50:20 EST 2010


Author: shawkins
Date: 2010-03-05 14:50:20 -0500 (Fri, 05 Mar 2010)
New Revision: 1928

Added:
   trunk/engine/src/test/java/com/metamatrix/cdk/
   trunk/engine/src/test/java/com/metamatrix/cdk/CommandBuilder.java
   trunk/metadata/src/test/java/com/metamatrix/cdk/
   trunk/metadata/src/test/java/com/metamatrix/cdk/api/
   trunk/metadata/src/test/java/com/metamatrix/cdk/unittest/
Removed:
   trunk/connector-api/src/main/java/org/teiid/connector/xa/
   trunk/connector-sdk/
   trunk/metadata/src/test/java/com/metamatrix/metadata/runtime/
Modified:
   trunk/client/src/main/java/com/metamatrix/common/xa/MMXid.java
   trunk/connectors/pom.xml
   trunk/engine/src/main/java/com/metamatrix/common/buffer/impl/MemoryStorageManager.java
   trunk/engine/src/main/java/org/teiid/metadata/TransformationMetadata.java
   trunk/pom.xml
   trunk/test-integration/pom.xml
Log:
TEIID-833 removing connector-sdk

Modified: trunk/client/src/main/java/com/metamatrix/common/xa/MMXid.java
===================================================================
--- trunk/client/src/main/java/com/metamatrix/common/xa/MMXid.java	2010-03-05 19:11:41 UTC (rev 1927)
+++ trunk/client/src/main/java/com/metamatrix/common/xa/MMXid.java	2010-03-05 19:50:20 UTC (rev 1928)
@@ -22,7 +22,10 @@
 
 package com.metamatrix.common.xa;
 
-import java.io.Serializable;
+import java.io.Externalizable;
+import java.io.IOException;
+import java.io.ObjectInput;
+import java.io.ObjectOutput;
 import java.math.BigInteger;
 
 import javax.transaction.xa.Xid;
@@ -30,7 +33,7 @@
 /**
  * Teiid implementation of Xid.
  */
-public class MMXid implements Xid, Serializable {
+public class MMXid implements Xid, Externalizable {
     private static final long serialVersionUID = -7078441828703404308L;
     
     private int formatID;
@@ -139,4 +142,19 @@
 	    return toString().hashCode();
 	}
 	
+	@Override
+	public void readExternal(ObjectInput in) throws IOException,
+			ClassNotFoundException {
+		this.formatID = in.readInt();
+		this.globalTransactionId = (byte[])in.readObject();
+		this.branchQualifier = (byte[])in.readObject();
+	}
+	
+	@Override
+	public void writeExternal(ObjectOutput out) throws IOException {
+		out.writeInt(this.formatID);
+		out.writeObject(this.globalTransactionId);
+		out.writeObject(this.branchQualifier);
+	}
+	
 }

Modified: trunk/connectors/pom.xml
===================================================================
--- trunk/connectors/pom.xml	2010-03-05 19:11:41 UTC (rev 1927)
+++ trunk/connectors/pom.xml	2010-03-05 19:50:20 UTC (rev 1928)
@@ -23,30 +23,24 @@
     </dependency>
     <dependency>
       <groupId>org.jboss.teiid</groupId>
-      <artifactId>teiid-connector-sdk</artifactId>      
-      <scope>test</scope>
-    </dependency>
-    <dependency>
-      <groupId>org.jboss.teiid</groupId>
-      <artifactId>teiid-connector-sdk</artifactId>
+      <artifactId>teiid-engine</artifactId>
       <type>test-jar</type>
       <scope>test</scope>
     </dependency>
     <dependency>
       <groupId>org.jboss.teiid</groupId>
-      <artifactId>teiid-engine</artifactId>
-      <type>test-jar</type>
+      <artifactId>teiid-common-core</artifactId>
       <scope>test</scope>
     </dependency>
     <dependency>
       <groupId>org.jboss.teiid</groupId>
       <artifactId>teiid-common-core</artifactId>
+      <type>test-jar</type>
       <scope>test</scope>
     </dependency>
     <dependency>
       <groupId>org.jboss.teiid</groupId>
-      <artifactId>teiid-common-core</artifactId>
-      <type>test-jar</type>
+      <artifactId>teiid-client</artifactId>
       <scope>test</scope>
     </dependency>
     <dependency>

Modified: trunk/engine/src/main/java/com/metamatrix/common/buffer/impl/MemoryStorageManager.java
===================================================================
--- trunk/engine/src/main/java/com/metamatrix/common/buffer/impl/MemoryStorageManager.java	2010-03-05 19:11:41 UTC (rev 1927)
+++ trunk/engine/src/main/java/com/metamatrix/common/buffer/impl/MemoryStorageManager.java	2010-03-05 19:50:20 UTC (rev 1928)
@@ -36,7 +36,7 @@
 	@Override
 	public FileStore createFileStore(String name) {
 		return new FileStore() {
-			private ByteBuffer buffer = ByteBuffer.allocate(2 << 15);
+			private ByteBuffer buffer = ByteBuffer.allocate(1 << 16);
 			
 			@Override
 			public void writeDirect(byte[] bytes, int offset, int length) throws MetaMatrixComponentException {

Modified: trunk/engine/src/main/java/org/teiid/metadata/TransformationMetadata.java
===================================================================
--- trunk/engine/src/main/java/org/teiid/metadata/TransformationMetadata.java	2010-03-05 19:11:41 UTC (rev 1927)
+++ trunk/engine/src/main/java/org/teiid/metadata/TransformationMetadata.java	2010-03-05 19:50:20 UTC (rev 1928)
@@ -54,10 +54,8 @@
 
 import com.metamatrix.api.exception.MetaMatrixComponentException;
 import com.metamatrix.api.exception.query.QueryMetadataException;
-import com.metamatrix.common.log.LogManager;
 import com.metamatrix.common.properties.UnmodifiableProperties;
 import com.metamatrix.common.types.DataTypeManager;
-import com.metamatrix.common.util.LogConstants;
 import com.metamatrix.core.util.ArgCheck;
 import com.metamatrix.core.util.LRUCache;
 import com.metamatrix.core.util.ObjectConverterUtil;
@@ -973,35 +971,33 @@
      * @since 4.3
      */
     public byte[] getBinaryVDBResource(String resourcePath) throws MetaMatrixComponentException, QueryMetadataException {
-        String content = this.getCharacterVDBResource(resourcePath);
-        if(content != null) {
-            return content.getBytes();
-        }
-        return null;
-    }
-
-    /** 
-     * @see com.metamatrix.query.metadata.BasicQueryMetadata#getCharacterVDBResource(java.lang.String)
-     * @since 4.3
-     */
-    public String getCharacterVDBResource(String resourcePath) throws MetaMatrixComponentException, QueryMetadataException {
     	for (VirtualFile f:this.vdbEntries.keySet()) {
     		if (f.getPathName().equals(resourcePath)) {
     			Boolean v = this.vdbEntries.get(f);
     			if (v.booleanValue()) {
 	    			try {
-						return ObjectConverterUtil.convertToString(f.openStream());
+						return ObjectConverterUtil.convertToByteArray(f.openStream());
 					} catch (IOException e) {
-						LogManager.logError(LogConstants.CTX_CONFIG, e, e.getMessage());
+						throw new MetaMatrixComponentException(e);
 					}
     			}
-    			else {
-    				break;
-    			}
+				break;
     		}
     	}
     	return null;
     }
+
+    /** 
+     * @see com.metamatrix.query.metadata.BasicQueryMetadata#getCharacterVDBResource(java.lang.String)
+     * @since 4.3
+     */
+    public String getCharacterVDBResource(String resourcePath) throws MetaMatrixComponentException, QueryMetadataException {
+    	try {
+			return ObjectConverterUtil.convertToString(new ByteArrayInputStream(getBinaryVDBResource(resourcePath)));
+		} catch (IOException e) {
+			throw new MetaMatrixComponentException(e);
+		}
+    }
     
     public CompositeMetadataStore getMetadataStore() {
     	return this.store;

Copied: trunk/engine/src/test/java/com/metamatrix/cdk/CommandBuilder.java (from rev 1923, trunk/connector-sdk/src/main/java/com/metamatrix/cdk/CommandBuilder.java)
===================================================================
--- trunk/engine/src/test/java/com/metamatrix/cdk/CommandBuilder.java	                        (rev 0)
+++ trunk/engine/src/test/java/com/metamatrix/cdk/CommandBuilder.java	2010-03-05 19:50:20 UTC (rev 1928)
@@ -0,0 +1,113 @@
+/*
+ * 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 com.metamatrix.cdk;
+
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
+
+import org.teiid.connector.language.LanguageFactory;
+import org.teiid.dqp.internal.datamgr.language.LanguageBridgeFactory;
+
+import com.metamatrix.api.exception.MetaMatrixComponentException;
+import com.metamatrix.api.exception.query.QueryParserException;
+import com.metamatrix.api.exception.query.QueryResolverException;
+import com.metamatrix.api.exception.query.QueryValidatorException;
+import com.metamatrix.core.MetaMatrixRuntimeException;
+import com.metamatrix.query.metadata.QueryMetadataInterface;
+import com.metamatrix.query.optimizer.relational.AliasGenerator;
+import com.metamatrix.query.parser.QueryParser;
+import com.metamatrix.query.resolver.QueryResolver;
+import com.metamatrix.query.rewriter.QueryRewriter;
+import com.metamatrix.query.sql.lang.Command;
+import com.metamatrix.query.sql.lang.Query;
+import com.metamatrix.query.sql.lang.Select;
+import com.metamatrix.query.sql.symbol.AllSymbol;
+
+/**
+ * Convert a query string into a SQL language parse tree.
+ */
+public class CommandBuilder {
+	
+	public static LanguageFactory getLanuageFactory() {
+		return LanguageFactory.INSTANCE;
+	}
+
+    private QueryMetadataInterface metadata;
+    
+    /**
+     * @param metadata The metadata describing the datasource which the query is for.
+     */
+    public CommandBuilder(QueryMetadataInterface metadata) {
+        this.metadata = metadata;
+    }
+    
+    public org.teiid.connector.language.Command getCommand(String queryString) {
+        return getCommand(queryString, false, false);
+    }
+    
+    public org.teiid.connector.language.Command getCommand(String queryString, boolean generateAliases, boolean supportsGroupAlias) {
+        Command command = null;
+        try {
+            command = QueryParser.getQueryParser().parseCommand(queryString);
+            QueryResolver.resolveCommand(command, metadata);
+            command = QueryRewriter.rewrite(command, metadata, null);
+            expandAllSymbol(command);            
+            if (generateAliases) {
+                command.acceptVisitor(new AliasGenerator(supportsGroupAlias));
+            }
+            return new LanguageBridgeFactory(metadata).translate(command);
+        } catch (QueryParserException e) {
+            throw new MetaMatrixRuntimeException(e);
+        } catch (QueryResolverException e) {
+            throw new MetaMatrixRuntimeException(e);
+        } catch (MetaMatrixComponentException e) {
+            throw new MetaMatrixRuntimeException(e);
+        } catch (QueryValidatorException e) {
+            throw new MetaMatrixRuntimeException(e);
+        }
+    }
+    
+    /**
+     * Convert the "*" in "select * from..." to the list of column names for the data source.
+     */
+    protected void expandAllSymbol(Command command) {
+        if (command instanceof Query) {
+            Query query = (Query) command;
+            Select select = query.getSelect();
+            List originalSymbols = select.getSymbols();
+            List expandedSymbols = new ArrayList();
+            for (Iterator i = originalSymbols.iterator(); i.hasNext(); ) {
+                Object next = i.next();
+                if (next instanceof AllSymbol) {
+                    AllSymbol allSymbol = (AllSymbol) next;
+                    expandedSymbols.addAll(allSymbol.getElementSymbols());
+                } else {
+                    expandedSymbols.add(next);
+                }
+            }
+            select.setSymbols(expandedSymbols);
+        }
+    }
+    
+}

Copied: trunk/metadata/src/test/java/com/metamatrix/cdk/api (from rev 1923, trunk/connector-sdk/src/main/java/com/metamatrix/cdk/api)

Copied: trunk/metadata/src/test/java/com/metamatrix/cdk/unittest (from rev 1923, trunk/connector-sdk/src/test/java/com/metamatrix/cdk/unittest)

Modified: trunk/pom.xml
===================================================================
--- trunk/pom.xml	2010-03-05 19:11:41 UTC (rev 1927)
+++ trunk/pom.xml	2010-03-05 19:50:20 UTC (rev 1928)
@@ -343,18 +343,6 @@
 				<artifactId>teiid-cache-jbosscache</artifactId>
 				<version>${project.version}</version>
 			</dependency>
-			<dependency>
-				<groupId>org.jboss.teiid</groupId>
-				<artifactId>teiid-connector-sdk</artifactId>
-				<version>${project.version}</version>
-			</dependency>
-			<dependency>
-				<groupId>org.jboss.teiid</groupId>
-				<artifactId>teiid-connector-sdk</artifactId>
-				<type>test-jar</type>
-				<version>${project.version}</version>
-				<scope>test</scope>
-			</dependency>
             <dependency>
                 <groupId>org.jboss.teiid</groupId>
                 <artifactId>teiid-jboss-integration</artifactId>
@@ -523,7 +511,6 @@
 		<module>cache-jbosscache</module>
 		<module>hibernate-dialect</module>
         <module>jboss-integration</module>
-        <module>connector-sdk</module>
         <module>jboss-embedded</module>
         
 	</modules>

Modified: trunk/test-integration/pom.xml
===================================================================
--- trunk/test-integration/pom.xml	2010-03-05 19:11:41 UTC (rev 1927)
+++ trunk/test-integration/pom.xml	2010-03-05 19:50:20 UTC (rev 1928)
@@ -48,15 +48,6 @@
 		</dependency>
 		<dependency>
 			<groupId>org.jboss.teiid</groupId>
-			<artifactId>teiid-connector-sdk</artifactId>
-		</dependency>
-		<dependency>
-			<groupId>org.jboss.teiid</groupId>
-			<artifactId>teiid-connector-sdk</artifactId>
-			<type>test-jar</type>
-		</dependency>
-		<dependency>
-			<groupId>org.jboss.teiid</groupId>
 			<artifactId>teiid-connector-api</artifactId>
 		</dependency>
 		<dependency>



More information about the teiid-commits mailing list