You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by kw...@apache.org on 2006/07/14 19:56:47 UTC

svn commit: r421969 - in /incubator/tuscany/java/das/rdb/src: main/java/org/apache/tuscany/das/rdb/ main/java/org/apache/tuscany/das/rdb/config/wrapper/ main/java/org/apache/tuscany/das/rdb/generator/impl/ main/java/org/apache/tuscany/das/rdb/graphbuil...

Author: kwilliams
Date: Fri Jul 14 10:56:46 2006
New Revision: 421969

URL: http://svn.apache.org/viewvc?rev=421969&view=rev
Log:
Brent's patch for T-528

Removed:
    incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/generator/impl/CudGenerator.java
Modified:
    incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/ConfigHelper.java
    incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/config/wrapper/MappingWrapper.java
    incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/config/wrapper/TableWrapper.java
    incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/generator/impl/DeleteGenerator.java
    incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/generator/impl/InsertGenerator.java
    incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/generator/impl/UpdateGenerator.java
    incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/graphbuilder/impl/DataObjectMaker.java
    incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/graphbuilder/schema/ESchemaMaker.java
    incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/ChangeFactory.java
    incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/CommandImpl.java
    incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/ConnectionImpl.java
    incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/DeleteCommandImpl.java
    incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/InsertCommandImpl.java
    incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/OptimisticWriteCommandImpl.java
    incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/Parameters.java
    incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/Statement.java
    incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/UpdateCommandImpl.java
    incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/WriteCommandImpl.java
    incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/merge/impl/GraphMerger.java
    incubator/tuscany/java/das/rdb/src/main/resources/config.xsd
    incubator/tuscany/java/das/rdb/src/test/java/org/apache/tuscany/das/rdb/test/CrudWithChangeHistory.java
    incubator/tuscany/java/das/rdb/src/test/java/org/apache/tuscany/das/rdb/test/DefectTests.java
    incubator/tuscany/java/das/rdb/src/test/resources/CustOrdersConnectionProps.xml
    incubator/tuscany/java/das/rdb/src/test/resources/basicCustomerMappingWithCUD.xml
    incubator/tuscany/java/das/rdb/src/test/resources/basicCustomerMappingWithInvalidCUD.xml
    incubator/tuscany/java/das/rdb/src/test/resources/basicStaticCustomer.xml

Modified: incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/ConfigHelper.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/ConfigHelper.java?rev=421969&r1=421968&r2=421969&view=diff
==============================================================================
--- incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/ConfigHelper.java (original)
+++ incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/ConfigHelper.java Fri Jul 14 10:56:46 2006
@@ -60,8 +60,8 @@
         configWrapper.addTable(name, propertyName);
     }
     
-    public void addUpdateStatement(String statement, String tableName) {
-        configWrapper.addUpdateCommand(tableName, statement);
+    public void addUpdateStatement(String statement, String tableName, String parameters) {
+        configWrapper.addUpdateCommand(tableName, statement, parameters);
     }     
     
     

Modified: incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/config/wrapper/MappingWrapper.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/config/wrapper/MappingWrapper.java?rev=421969&r1=421968&r2=421969&view=diff
==============================================================================
--- incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/config/wrapper/MappingWrapper.java (original)
+++ incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/config/wrapper/MappingWrapper.java Fri Jul 14 10:56:46 2006
@@ -29,6 +29,7 @@
 import org.apache.tuscany.das.rdb.config.KeyPair;
 import org.apache.tuscany.das.rdb.config.Relationship;
 import org.apache.tuscany.das.rdb.config.Table;
+import org.apache.tuscany.das.rdb.config.Update;
 import org.apache.tuscany.das.rdb.config.impl.ConfigFactoryImpl;
 import org.apache.tuscany.das.rdb.util.DebugUtil;
 
@@ -367,9 +368,12 @@
         throw new RuntimeException("Could not find relationship " + name + " in the configuration");
     }
 
-    public void addUpdateCommand(String tableName, String statement) {
+    public void addUpdateCommand(String tableName, String statement, String parameters) {
         Table table = findOrCreateTable(tableName);
-        table.setUpdate(statement);
+        Update update = ConfigFactoryImpl.eINSTANCE.createUpdate();
+        update.setSql(statement);
+        update.setParameters(parameters);
+        table.setUpdate(update);
         
     }
 

Modified: incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/config/wrapper/TableWrapper.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/config/wrapper/TableWrapper.java?rev=421969&r1=421968&r2=421969&view=diff
==============================================================================
--- incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/config/wrapper/TableWrapper.java (original)
+++ incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/config/wrapper/TableWrapper.java Fri Jul 14 10:56:46 2006
@@ -73,15 +73,6 @@
 		return c == null ? false : c.isGenerated();
 	}
 
-	// public Object getColumnNameByProperty(String propertyName) {
-	// Iterator i = table.getColumn().iterator();
-	// while (i.hasNext()) {
-	// Column c = (Column) i.next();
-	// if (propertyName.equals(c.getPropertyName()))
-	// return c.getName();
-	// }
-	// return propertyName;
-	// }
 
 	public String getConverter(String propertyName) {
 		Column c = getColumnByPropertyName(propertyName);

Modified: incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/generator/impl/DeleteGenerator.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/generator/impl/DeleteGenerator.java?rev=421969&r1=421968&r2=421969&view=diff
==============================================================================
--- incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/generator/impl/DeleteGenerator.java (original)
+++ incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/generator/impl/DeleteGenerator.java Fri Jul 14 10:56:46 2006
@@ -16,7 +16,6 @@
 */
 package org.apache.tuscany.das.rdb.generator.impl;
 
-import java.util.Collection;
 import java.util.Iterator;
 
 import org.apache.tuscany.das.rdb.config.Table;
@@ -32,11 +31,11 @@
 
 	private static final boolean debug = false;
 
-	public DeleteGenerator() {
+	private DeleteGenerator() {
 		super();
 	}
 
-	public String getDeleteStatement(Table t) {
+	private String getDeleteStatement(Table t) {
 		TableWrapper table = new TableWrapper(t);
 
 		StringBuffer statement = new StringBuffer();
@@ -56,11 +55,6 @@
 
 		DebugUtil.debugln(getClass(), debug, statement.toString());
 		return statement.toString();
-	}
-
-	public Collection getDeleteParameters(Table table) {
-		TableWrapper wrapper = new TableWrapper(table);
-		return wrapper.getPrimaryKeyProperties();
 	}
 
 	public DeleteCommandImpl getDeleteCommand(Table t) {

Modified: incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/generator/impl/InsertGenerator.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/generator/impl/InsertGenerator.java?rev=421969&r1=421968&r2=421969&view=diff
==============================================================================
--- incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/generator/impl/InsertGenerator.java (original)
+++ incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/generator/impl/InsertGenerator.java Fri Jul 14 10:56:46 2006
@@ -17,7 +17,6 @@
 package org.apache.tuscany.das.rdb.generator.impl;
 
 import java.util.ArrayList;
-import java.util.Collection;
 import java.util.Collections;
 import java.util.Iterator;
 import java.util.List;
@@ -40,7 +39,7 @@
 
 	private static final boolean debug = false;
 
-	public InsertGenerator() {
+	private InsertGenerator() {
 		super();
 	}
 
@@ -129,23 +128,6 @@
 
 		return fields;
 
-	}
-
-	public Collection getInsertParameters(MappingWrapper config,
-			DataObject changedObject, Table table) {
-		ArrayList parameters = new ArrayList();
-		TableWrapper wrapper = new TableWrapper(table);
-
-		Iterator i = getAttributeProperties(changedObject, config).iterator();
-
-		while (i.hasNext()) {
-			Property attr = (Property) i.next();
-			if (!wrapper.isGeneratedColumnProperty(attr.getName()))
-				parameters.add(changedObject.getType().getProperty(
-						attr.getName()));
-		}
-
-		return parameters;
 	}
 
 	private boolean hasState(MappingWrapper config, Relationship rel, DataObject changedObject) {							

Modified: incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/generator/impl/UpdateGenerator.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/generator/impl/UpdateGenerator.java?rev=421969&r1=421968&r2=421969&view=diff
==============================================================================
--- incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/generator/impl/UpdateGenerator.java (original)
+++ incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/generator/impl/UpdateGenerator.java Fri Jul 14 10:56:46 2006
@@ -17,7 +17,6 @@
 package org.apache.tuscany.das.rdb.generator.impl;
 
 import java.util.ArrayList;
-import java.util.Collection;
 import java.util.Iterator;
 import java.util.List;
 
@@ -43,7 +42,7 @@
 
 	public static UpdateGenerator instance = new UpdateGenerator();
 
-	public UpdateGenerator() {
+	private UpdateGenerator() {
 		super();
 	}
 
@@ -137,16 +136,6 @@
 		return updateCommand;
 	}
 
-	private List getDataTypeProperties(DataObject obj) {
-		ArrayList fields = new ArrayList();
-		Iterator i = obj.getType().getProperties().iterator();
-		while ( i.hasNext() ) {
-			Property p = (Property) i.next();
-			if ( p.getType().isDataType())
-				fields.add(p);
-		}
-		return fields;
-	}
 
 
 	private List getChangedFields(MappingWrapper mapping, ChangeSummary summary, DataObject obj) {
@@ -175,30 +164,6 @@
 	}
 	
 	
-	public Collection getUpdateParameters(DataObject changedObject, Table table) {
-		Type type = changedObject.getType();
-		TableWrapper wrapper = new TableWrapper(table);
-		Collection pkNames = wrapper.getPrimaryKeyProperties();
-		ArrayList parameters = new ArrayList();
-		ArrayList pkParams = new ArrayList();
-		
-		Iterator i = getDataTypeProperties(changedObject).iterator();
-		while (i.hasNext()) {
-			Property property = (Property) i.next();
-			String propertyName = property.getName();
-
-			ParameterImpl p = createParameter(wrapper, type.getProperty(propertyName));
-			if (pkNames.contains(propertyName)) {
-				pkParams.add(p);
-			} else {
-				parameters.add(p);
-			}
-		}
-		parameters.addAll(pkParams);		
-		
-		return parameters;
-		
-	}
 
 	private ParameterImpl createManagedParameter(TableWrapper table, Property property, int idx) {
 		ParameterImpl param = new ManagedParameterImpl();
@@ -210,9 +175,7 @@
 		
 		return param;
 	}
-	private ParameterImpl createParameter(TableWrapper table, Property property) {
-		return createParameter(table, property, -1);
-	}
+	
 	private ParameterImpl createParameter(TableWrapper table, Property property, int idx) {		
 		ParameterImpl param = new ParameterImpl();
 		param.setName(property.getName());

Modified: incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/graphbuilder/impl/DataObjectMaker.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/graphbuilder/impl/DataObjectMaker.java?rev=421969&r1=421968&r2=421969&view=diff
==============================================================================
--- incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/graphbuilder/impl/DataObjectMaker.java (original)
+++ incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/graphbuilder/impl/DataObjectMaker.java Fri Jul 14 10:56:46 2006
@@ -80,11 +80,11 @@
 				tableData.getTableName()).iterator();
 		while (columnNames.hasNext()) {
 			String columnName = (String) columnNames.next();
-			DataObject dataObject = (DataObject) obj;
-			Property p = findProperty(dataObject.getType(), columnName);
+			
+			Property p = findProperty(obj.getType(), columnName);
 			Object value = tableData.getColumnData(columnName);
 
-			dataObject.set(p, value);
+			obj.set(p, value);
 		}
 
 		return obj;

Modified: incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/graphbuilder/schema/ESchemaMaker.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/graphbuilder/schema/ESchemaMaker.java?rev=421969&r1=421968&r2=421969&view=diff
==============================================================================
--- incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/graphbuilder/schema/ESchemaMaker.java (original)
+++ incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/graphbuilder/schema/ESchemaMaker.java Fri Jul 14 10:56:46 2006
@@ -116,7 +116,7 @@
 				// TODO temporary check until Tuscany-203 is fixed
 				if ( !addedProperties.contains(columnName)) {
 					addedProperties.add(columnName);
-					Type atype = (Type) resultMetadata.getDataType(i);					
+					Type atype = resultMetadata.getDataType(i);					
 	
 					SDOUtil.createProperty(ref.getType(), columnName, atype);				
 

Modified: incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/ChangeFactory.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/ChangeFactory.java?rev=421969&r1=421968&r2=421969&view=diff
==============================================================================
--- incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/ChangeFactory.java (original)
+++ incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/ChangeFactory.java Fri Jul 14 10:56:46 2006
@@ -16,16 +16,18 @@
 */
 package org.apache.tuscany.das.rdb.impl;
 
-import java.util.Iterator;
-
+import org.apache.tuscany.das.rdb.config.Create;
+import org.apache.tuscany.das.rdb.config.Delete;
 import org.apache.tuscany.das.rdb.config.Table;
+import org.apache.tuscany.das.rdb.config.Update;
 import org.apache.tuscany.das.rdb.config.wrapper.MappingWrapper;
 import org.apache.tuscany.das.rdb.config.wrapper.TableWrapper;
-import org.apache.tuscany.das.rdb.generator.impl.CudGenerator;
+import org.apache.tuscany.das.rdb.generator.impl.DeleteGenerator;
+import org.apache.tuscany.das.rdb.generator.impl.InsertGenerator;
+import org.apache.tuscany.das.rdb.generator.impl.UpdateGenerator;
 import org.apache.tuscany.das.rdb.util.DebugUtil;
 
 import commonj.sdo.DataObject;
-import commonj.sdo.Property;
 import commonj.sdo.Type;
 
 public class ChangeFactory {
@@ -40,8 +42,6 @@
 
 	private static final boolean debug = false;
 
-	private CudGenerator cudGenerator;
-
 	private final MappingWrapper mapping;
 
 	private final ConnectionImpl connection; 
@@ -68,12 +68,6 @@
 	public void setDeleteCommand(DeleteCommandImpl cmd) {
 		deleteCommand = cmd;
 	}
-
-	private CudGenerator getCudGenerator() {
-		if (this.cudGenerator == null) 
-			this.cudGenerator = new CudGenerator();
-		return this.cudGenerator;
-	}
 	
 	ChangeOperation createUpdateOperation(DataObject changedObject, String propagatedID) {
 		return new UpdateOperation(getUpdateCommand(changedObject), changedObject, propagatedID);
@@ -109,17 +103,12 @@
 				}
 			}
 
-	
-			String createStatement = table.getCreate();
-			if ( createStatement == null ) {
-				createCommand = getCudGenerator().getInsertCommand(mapping, changedObject, table);
+			Create create = table.getCreate();
+		
+			if ( create == null ) {
+				createCommand = InsertGenerator.instance.getInsertCommand(mapping, changedObject, table);
 			} else {
-				createCommand = new InsertCommandImpl(createStatement);
-				Iterator i = getCudGenerator().getCreateParameters(mapping, changedObject, table).iterator();
-				while (i.hasNext()) {
-					Property p = (Property)i.next();				
-					createCommand.addParameter(p.getName(), p.getType());
-				}
+				createCommand = new InsertCommandImpl(create);						
 			}
 			createCommand.setConnection(connection);
 			createCommand.configWrapper = mapping;
@@ -141,15 +130,12 @@
 				}
 			}
 			
-			String deleteStatement = table.getDelete();
-			if ( deleteStatement == null ) {
-				deleteCommand = getCudGenerator().getDeleteCommand(table);
+			Delete delete = table.getDelete();
+			
+			if ( delete == null ) {
+				deleteCommand = DeleteGenerator.instance.getDeleteCommand(table);
 			} else {
-				deleteCommand = new DeleteCommandImpl(deleteStatement);			
-				Iterator i = getCudGenerator().getDeleteParameters(table).iterator();
-				while (i.hasNext()) {
-					deleteCommand.addParameter((String)i.next(), SDODataTypes.OBJECT);
-				}
+				deleteCommand = new DeleteCommandImpl(delete);						
 			}
 			deleteCommand.setConnection(connection);
 		}
@@ -169,18 +155,17 @@
 					throw new RuntimeException("Table " + changedObject.getType().getName() + " was changed in the DataGraph but is not present in the Config");
 				}
 			}
-			String updateStatement = table.getUpdate();
-			if ( updateStatement == null ) {
-				updateCommand = getCudGenerator().getUpdateCommand(mapping, changedObject,table);
+			
+			Update update = table.getUpdate();
+			
+			if ( update == null ) {
+				updateCommand = UpdateGenerator.instance.getUpdateCommand(mapping, changedObject,table);
 			} else {
 				TableWrapper t = new TableWrapper(table);
 				if ( t.getCollisionColumn() != null )
-					updateCommand = new OptimisticWriteCommandImpl(updateStatement);
+					updateCommand = new OptimisticWriteCommandImpl(update);
 				else
-					updateCommand = new UpdateCommandImpl(updateStatement);
-			
-			
-				updateCommand.addParameters(getCudGenerator().getUpdateParameters(changedObject, table));
+					updateCommand = new UpdateCommandImpl(update);				
 				
 			}
 			updateCommand.setConnection(connection);

Modified: incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/CommandImpl.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/CommandImpl.java?rev=421969&r1=421968&r2=421969&view=diff
==============================================================================
--- incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/CommandImpl.java (original)
+++ incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/CommandImpl.java Fri Jul 14 10:56:46 2006
@@ -24,7 +24,6 @@
 import org.apache.tuscany.das.rdb.Command;
 
 import commonj.sdo.DataObject;
-import commonj.sdo.Type;
 import commonj.sdo.helper.XSDHelper;
 
 public abstract class CommandImpl extends BaseCommandImpl implements Command {
@@ -59,26 +58,10 @@
 
 	public abstract DataObject executeQuery();
 
-	public void setParameterValue(String name, Object value) {
-		parameters.setParameter(name, value);
-	}
-
 	public void setParameter(int index, Object value) {
 		parameters.setParameter(index, value);
 	}
 
-	public void setParameterType(String name, Type dataType) {
-		parameters.setParameterWithType(name, dataType);
-	}
-
-	public void setParameterType(int index, Type dataType) {
-		parameters.setParameterWithType(index, dataType);
-	}
-
-	protected void addParameter(String name, Type sdoType) {
-		parameters.setParameterWithType(name, sdoType);
-	}
-
 	public void addParameter(ParameterImpl param) {
 		parameters.add(param);
 	}
@@ -86,15 +69,6 @@
 
 	public List getParameters() {
 		return parameters.parameterList();
-	}
-
-	public Object getParameterValue(String name) {
-		ParameterImpl p = parameters.get(name);
-		if (p == null)
-			throw new RuntimeException("Parameter with name " + name
-					+ " not found");
-
-		return p;
 	}
 
 	public Object getParameter(int index) {

Modified: incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/ConnectionImpl.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/ConnectionImpl.java?rev=421969&r1=421968&r2=421969&view=diff
==============================================================================
--- incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/ConnectionImpl.java (original)
+++ incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/ConnectionImpl.java Fri Jul 14 10:56:46 2006
@@ -70,15 +70,15 @@
 		}
 	}
 
-	public PreparedStatement prepareStatement(QueryString queryString)
+	public PreparedStatement prepareStatement(String queryString)
 			throws SQLException {
-		DebugUtil.debugln(getClass(), debug, "Preparing Statement: " + queryString.getPreparedString());
-		return connection.prepareStatement(queryString.getPreparedString(), java.sql.Statement.RETURN_GENERATED_KEYS);
+		DebugUtil.debugln(getClass(), debug, "Preparing Statement: " + queryString);
+		return connection.prepareStatement(queryString, java.sql.Statement.RETURN_GENERATED_KEYS);
 	}
 
-	public PreparedStatement preparePagedStatement(QueryString queryString) throws SQLException {
-		DebugUtil.debugln(getClass(), debug, "Preparing Statement: " + queryString.getPreparedString());
-		return connection.prepareStatement(queryString.getPreparedString(), ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);
+	public PreparedStatement preparePagedStatement(String queryString) throws SQLException {
+		DebugUtil.debugln(getClass(), debug, "Preparing Statement: " + queryString);
+		return connection.prepareStatement(queryString, ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);
 	}
 
 	public void setManageTransactions(boolean manageTransactions) {
@@ -86,8 +86,8 @@
 		
 	}
 
-	public CallableStatement prepareCall(QueryString queryString) throws SQLException {
-		return connection.prepareCall(queryString.getPreparedString());
+	public CallableStatement prepareCall(String queryString) throws SQLException {
+		return connection.prepareCall(queryString);
 	}
 
 	

Modified: incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/DeleteCommandImpl.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/DeleteCommandImpl.java?rev=421969&r1=421968&r2=421969&view=diff
==============================================================================
--- incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/DeleteCommandImpl.java (original)
+++ incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/DeleteCommandImpl.java Fri Jul 14 10:56:46 2006
@@ -16,10 +16,17 @@
  */
 package org.apache.tuscany.das.rdb.impl;
 
+import org.apache.tuscany.das.rdb.config.Delete;
+
 public class DeleteCommandImpl extends WriteCommandImpl {
 
 	public DeleteCommandImpl(String sqlString) {
 		super(sqlString);
+	}
+
+	public DeleteCommandImpl(Delete delete) {
+		super(delete.getSql());
+		addParameters(delete.getParameters());
 	}
 
 }

Modified: incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/InsertCommandImpl.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/InsertCommandImpl.java?rev=421969&r1=421968&r2=421969&view=diff
==============================================================================
--- incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/InsertCommandImpl.java (original)
+++ incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/InsertCommandImpl.java Fri Jul 14 10:56:46 2006
@@ -18,6 +18,8 @@
 
 import java.sql.SQLException;
 
+import org.apache.tuscany.das.rdb.config.Create;
+
 public class InsertCommandImpl extends WriteCommandImpl {
 
 	private int generatedKey;
@@ -28,6 +30,11 @@
 		super(sqlString);
 	}
 
+	public InsertCommandImpl(Create create) {
+		super(create.getSql());
+		addParameters(create.getParameters());
+	}
+
 	protected boolean isInsert() {
 		return true;
 	}
@@ -38,17 +45,6 @@
 			return generatedKey;
 		
 		throw new RuntimeException("No generated key is available");
-	}
-
-	public Object getParameterValue(String name) {
-
-		if (name.equals("generated_key"))
-			if (hasGeneratedKey)
-				return new Integer(generatedKey);
-			else
-				throw new RuntimeException("No generated key available");
-		
-		return super.getParameterValue(name);
 	}
 
 	protected void subtypeProcessing() throws SQLException {

Modified: incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/OptimisticWriteCommandImpl.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/OptimisticWriteCommandImpl.java?rev=421969&r1=421968&r2=421969&view=diff
==============================================================================
--- incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/OptimisticWriteCommandImpl.java (original)
+++ incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/OptimisticWriteCommandImpl.java Fri Jul 14 10:56:46 2006
@@ -18,10 +18,17 @@
 
 import java.sql.SQLException;
 
+import org.apache.tuscany.das.rdb.config.Update;
+
 public class OptimisticWriteCommandImpl extends UpdateCommandImpl {
 
 	public OptimisticWriteCommandImpl(String sqlString) {
 		super(sqlString);
+	}
+
+	public OptimisticWriteCommandImpl(Update update) {
+		super(update);
+		addParameters(update.getParameters());
 	}
 
 	public void execute() {

Modified: incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/Parameters.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/Parameters.java?rev=421969&r1=421968&r2=421969&view=diff
==============================================================================
--- incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/Parameters.java (original)
+++ incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/Parameters.java Fri Jul 14 10:56:46 2006
@@ -17,7 +17,6 @@
 package org.apache.tuscany.das.rdb.impl;
 
 import java.util.ArrayList;
-import java.util.HashMap;
 import java.util.Iterator;
 import java.util.List;
 
@@ -31,9 +30,7 @@
 
 	private ArrayList inParams = new ArrayList();
 
-	private ArrayList outParams = new ArrayList();
-
-	private HashMap parametersByName = new HashMap();
+	private ArrayList outParams = new ArrayList();	
 
 	private static boolean debug = false;
 
@@ -41,10 +38,6 @@
 		super();
 	}
 
-	public ParameterImpl get(String name) {
-		return (ParameterImpl) parametersByName.get(name);
-	}
-
 	public ParameterImpl get(int index) {
 		return (ParameterImpl) parameters.get(index);
 	}
@@ -64,23 +57,13 @@
 				|| (param.getDirection() == ParameterImpl.IN_OUT))
 			outParams.add(param);
 
-		this.parameters.add(param);
-		parametersByName.put(param.getName(), param);
+		this.parameters.add(param);		
 	}
 
 	public void add(ParameterImpl param) {
 		addParameter(param);
 	}
 
-	public ParameterImpl findOrCreateParameterNamed(String name) {
-		ParameterImpl param = get(name);
-		if (param == null) {
-			param = new ParameterImpl(name);
-			addParameter(param);
-		}
-		return param;
-	}
-
 	public ParameterImpl findOrCreateParameterWithIndex(int index, int direction,
 			Type sdoType) {
 		Iterator i = parameters.iterator();
@@ -112,26 +95,6 @@
 		param.setValue(value);
 	}
 
-	public void setParameter(String name, Object value) {
-		if (name == null)
-			throw new RuntimeException("Null parameter name not allowed");
-		ParameterImpl param = findOrCreateParameterNamed(name);
-		param.setValue(value);
-	}
-
-	public void setParameterWithType(String name, Type sdoType) {
-		if (name == null)
-			throw new RuntimeException("Null parameter name not allowed");
-		ParameterImpl p = findOrCreateParameterNamed(name);
-		p.setType(sdoType);
-	}
-
-    public void setParameterWithType(int index, Type sdoType) {
-        if (index == 0)
-            throw new RuntimeException("Null parameter index not allowed");
-        ParameterImpl p = findOrCreateParameterWithIndex(index);
-        p.setType(sdoType);
-    }
     
     public ParameterImpl parameterWithIndex(int index) {
 		Iterator i = parameters.iterator();

Modified: incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/Statement.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/Statement.java?rev=421969&r1=421968&r2=421969&view=diff
==============================================================================
--- incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/Statement.java (original)
+++ incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/Statement.java Fri Jul 14 10:56:46 2006
@@ -28,7 +28,7 @@
 // TODO - Can use some refactoring. Much code is duplicated in "execute" methods
 public class Statement {
 
-    protected final QueryString queryString;
+    protected final String queryString;
 
     protected ConnectionImpl jdbcConnection;
 
@@ -39,7 +39,7 @@
     private boolean isPaging = false;
 
     public Statement(String sqlString) {
-        this.queryString = new QueryString(sqlString);
+        this.queryString = sqlString; //new QueryString(sqlString);
     }
 
     public ResultSet executeQuery(Parameters parameters) throws SQLException {
@@ -58,8 +58,8 @@
             Iterator inParams = parameters.inParams().iterator();
             while (inParams.hasNext()) {
                 ParameterImpl param = (ParameterImpl) inParams.next();
-                if (param.getIndex() == 0)
-                    param.setIndex(queryString.getParameterIndex(param.getName()));
+//                if (param.getIndex() == 0)
+//                    param.setIndex(queryString.getParameterIndex(param.getName()));
                 cs.setObject(param.getIndex(), param.getValue());
             }
 
@@ -67,8 +67,8 @@
             Iterator outParams = parameters.outParams().iterator();
             while (outParams.hasNext()) {
                 ParameterImpl param = (ParameterImpl) outParams.next();
-                if (param.getIndex() == 0)
-                    param.setIndex(queryString.getParameterIndex(param.getName()));
+//                if (param.getIndex() == 0)
+//                    param.setIndex(queryString.getParameterIndex(param.getName()));
                 DebugUtil.debugln(getClass(), debug, "Registering parameter " + param.getName());
                 cs.registerOutParameter(param.getIndex(), SDODataTypeHelper.sqlTypeFor(param.getType()));
             }
@@ -99,8 +99,8 @@
         Iterator inParams = parameters.inParams().iterator();
         while (inParams.hasNext()) {
             ParameterImpl param = (ParameterImpl) inParams.next();
-            if (param.getIndex() == 0)
-                param.setIndex(queryString.getParameterIndex(param.getName()));
+//            if (param.getIndex() == 0)
+//                param.setIndex(queryString.getParameterIndex(param.getName()));
             cs.setObject(param.getIndex(), param.getValue());
         }
 
@@ -108,8 +108,8 @@
         Iterator outParams = parameters.outParams().iterator();
         while (outParams.hasNext()) {
             ParameterImpl param = (ParameterImpl) outParams.next();
-            if (param.getIndex() == 0)
-                param.setIndex(queryString.getParameterIndex(param.getName()));
+//            if (param.getIndex() == 0)
+//                param.setIndex(queryString.getParameterIndex(param.getName()));
             DebugUtil.debugln(getClass(), debug, "Registering parameter " + param.getName());
             cs.registerOutParameter(param.getIndex(), SDODataTypeHelper.sqlTypeFor(param.getType()));
         }
@@ -129,14 +129,14 @@
      * has been specified and try setObject otherwise.
      */
     public int executeUpdate(Parameters parameters) throws SQLException {
-        DebugUtil.debugln(getClass(), debug, "Executing statement " + queryString.getPreparedString());
+        DebugUtil.debugln(getClass(), debug, "Executing statement " + queryString);
         PreparedStatement ps = getPreparedStatement();
         Iterator i = parameters.inParams().iterator();
         while (i.hasNext()) {
             ParameterImpl param = (ParameterImpl) i.next();
 
-            if (param.getIndex() == 0)
-                param.setIndex(queryString.getParameterIndex(param.getName()));
+//            if (param.getIndex() == 0)
+//                param.setIndex(queryString.getParameterIndex(param.getName()));
             Object value = param.getValue();
             DebugUtil.debugln(getClass(), debug, "Setting parameter " + param.getIndex() + " to " + value);
             if (value == null) {
@@ -156,8 +156,8 @@
         Iterator i = parameters.inParams().iterator();
         while (i.hasNext()) {
             ParameterImpl param = (ParameterImpl) i.next();
-            if (param.getIndex() == 0)
-                param.setIndex(queryString.getParameterIndex(param.getName()));
+//            if (param.getIndex() == 0)
+//                param.setIndex(queryString.getParameterIndex(param.getName()));
             ps.setObject(param.getIndex(), param.getValue());
         }
         return ps;

Modified: incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/UpdateCommandImpl.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/UpdateCommandImpl.java?rev=421969&r1=421968&r2=421969&view=diff
==============================================================================
--- incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/UpdateCommandImpl.java (original)
+++ incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/UpdateCommandImpl.java Fri Jul 14 10:56:46 2006
@@ -16,10 +16,17 @@
  */
 package org.apache.tuscany.das.rdb.impl;
 
+import org.apache.tuscany.das.rdb.config.Update;
+
 public class UpdateCommandImpl extends WriteCommandImpl {
 
 	public UpdateCommandImpl(String sqlString) {
 		super(sqlString);
+	}
+	
+	public UpdateCommandImpl(Update update) {
+		super(update.getSql());
+		addParameters(update.getParameters());
 	}
 
 }

Modified: incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/WriteCommandImpl.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/WriteCommandImpl.java?rev=421969&r1=421968&r2=421969&view=diff
==============================================================================
--- incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/WriteCommandImpl.java (original)
+++ incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/WriteCommandImpl.java Fri Jul 14 10:56:46 2006
@@ -19,6 +19,7 @@
 import java.sql.SQLException;
 import java.util.Collection;
 import java.util.Iterator;
+import java.util.StringTokenizer;
 
 import org.apache.tuscany.das.rdb.config.Config;
 
@@ -70,8 +71,8 @@
 	public String toString() {
 		
 		StringBuffer buffer = new StringBuffer();
-		buffer.append("\nSQL: " + statement.queryString.getUnmodifiedString());
-		buffer.append("\nModified SQL: " + statement.queryString.getPreparedString());
+		buffer.append("\nSQL: " + statement.queryString);
+		
 		return buffer.toString();
 	}
 
@@ -79,6 +80,15 @@
 			throw new RuntimeException("No generated key is available");
 	}
 
+	public void addParameters(String parameters) {
+		StringTokenizer tokenizer = new StringTokenizer(parameters);
+		for (int idx=1; tokenizer.hasMoreTokens(); idx++) {
+			ParameterImpl p = new ParameterImpl();
+			p.setName(tokenizer.nextToken());		
+			p.setIndex(idx);
+			addParameter(p);
+		}
+	}
 	public void addParameters(Collection updateParameters) {
 		Iterator i = updateParameters.iterator();
 		while ( i.hasNext()) {

Modified: incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/merge/impl/GraphMerger.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/merge/impl/GraphMerger.java?rev=421969&r1=421968&r2=421969&view=diff
==============================================================================
--- incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/merge/impl/GraphMerger.java (original)
+++ incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/merge/impl/GraphMerger.java Fri Jul 14 10:56:46 2006
@@ -116,7 +116,7 @@
 						createObjectWithSubtree(root, refObject
 							.getContainmentProperty(), refObject);
 					
-						refObject = (DataObject) registry.get(refObject.getType().getName(), Collections.singletonList(getPrimaryKey(refObject)));
+						refObject = registry.get(refObject.getType().getName(), Collections.singletonList(getPrimaryKey(refObject)));
 						if (ref.isMany()) {
 							newObject.getList(
 								newObject.getType().getProperty(ref.getName()))

Modified: incubator/tuscany/java/das/rdb/src/main/resources/config.xsd
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/das/rdb/src/main/resources/config.xsd?rev=421969&r1=421968&r2=421969&view=diff
==============================================================================
--- incubator/tuscany/java/das/rdb/src/main/resources/config.xsd (original)
+++ incubator/tuscany/java/das/rdb/src/main/resources/config.xsd Fri Jul 14 10:56:46 2006
@@ -68,12 +68,24 @@
       <xsd:sequence>
          <xsd:element  maxOccurs="unbounded" minOccurs="0" name="Column"
             type="config:Column"/>
+         <xsd:element  maxOccurs="1" minOccurs="0" name="create" type="config:Create"/>
+         <xsd:element  maxOccurs="1" minOccurs="0" name="update" type="config:Update"/>
+         <xsd:element maxOccurs="1" minOccurs="0" name="delete" type="config:Delete"/>
       </xsd:sequence>
       <xsd:attribute name="tableName" type="xsd:string"/>
-      <xsd:attribute name="typeName" type="xsd:string"/>
-      <xsd:attribute name="create" type="xsd:string"/>
-      <xsd:attribute name="update" type="xsd:string"/>
-      <xsd:attribute name="delete" type="xsd:string"/>
+      <xsd:attribute name="typeName" type="xsd:string"/>      
+   </xsd:complexType>
+   <xsd:complexType name="Create">
+   	  <xsd:attribute name="sql" type="xsd:string"/>
+   	  <xsd:attribute name="parameters" type="xsd:string"/>
+   </xsd:complexType>
+    <xsd:complexType name="Update">
+   	  <xsd:attribute name="sql" type="xsd:string"/>
+   	  <xsd:attribute name="parameters" type="xsd:string"/>
+   </xsd:complexType>
+    <xsd:complexType name="Delete">
+   	  <xsd:attribute name="sql" type="xsd:string"/>
+   	  <xsd:attribute name="parameters" type="xsd:string"/>
    </xsd:complexType>
    <xsd:complexType name="KeyPair">
       <xsd:attribute name="primaryKeyColumn" type="xsd:string"/>

Modified: incubator/tuscany/java/das/rdb/src/test/java/org/apache/tuscany/das/rdb/test/CrudWithChangeHistory.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/das/rdb/src/test/java/org/apache/tuscany/das/rdb/test/CrudWithChangeHistory.java?rev=421969&r1=421968&r2=421969&view=diff
==============================================================================
--- incubator/tuscany/java/das/rdb/src/test/java/org/apache/tuscany/das/rdb/test/CrudWithChangeHistory.java (original)
+++ incubator/tuscany/java/das/rdb/src/test/java/org/apache/tuscany/das/rdb/test/CrudWithChangeHistory.java Fri Jul 14 10:56:46 2006
@@ -56,8 +56,8 @@
 
         // Provide updatecommand programmatically via config
         ConfigHelper helper = new ConfigHelper();
-        helper.addUpdateStatement("update CUSTOMER set LASTNAME = :LASTNAME, ADDRESS = :ADDRESS where ID = :ID",
-                "CUSTOMER");
+        helper.addUpdateStatement("update CUSTOMER set LASTNAME = ?, ADDRESS = ? where ID = ?",
+                "CUSTOMER", "LASTNAME ADDRESS ID");
 
         DAS das = DAS.FACTORY.createDAS(helper.getConfig(), getConnection());
         // Read customer 1

Modified: incubator/tuscany/java/das/rdb/src/test/java/org/apache/tuscany/das/rdb/test/DefectTests.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/das/rdb/src/test/java/org/apache/tuscany/das/rdb/test/DefectTests.java?rev=421969&r1=421968&r2=421969&view=diff
==============================================================================
--- incubator/tuscany/java/das/rdb/src/test/java/org/apache/tuscany/das/rdb/test/DefectTests.java (original)
+++ incubator/tuscany/java/das/rdb/src/test/java/org/apache/tuscany/das/rdb/test/DefectTests.java Fri Jul 14 10:56:46 2006
@@ -119,7 +119,7 @@
 
         // Provide updatecommand programmatically via config
         ConfigHelper helper = new ConfigHelper();
-        helper.addUpdateStatement("update CUSTOMER set LASTNAME = :LASTNAME where ID = :ID", "CUSTOMER");         
+        helper.addUpdateStatement("update CUSTOMER set LASTNAME = ? where ID = ?", "CUSTOMER", "LASTNAME ID");         
         
     	DAS das = DAS.FACTORY.createDAS(helper.getConfig(), getConnection());
     	

Modified: incubator/tuscany/java/das/rdb/src/test/resources/CustOrdersConnectionProps.xml
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/das/rdb/src/test/resources/CustOrdersConnectionProps.xml?rev=421969&r1=421968&r2=421969&view=diff
==============================================================================
--- incubator/tuscany/java/das/rdb/src/test/resources/CustOrdersConnectionProps.xml (original)
+++ incubator/tuscany/java/das/rdb/src/test/resources/CustOrdersConnectionProps.xml Fri Jul 14 10:56:46 2006
@@ -25,7 +25,7 @@
     </Command>
     
     <Command name="customer and orders"
-        SQL="select * from CUSTOMER left join ANORDER on CUSTOMER.ID = ANORDER.CUSTOMER_ID where CUSTOMER.ID = :ID"
+        SQL="select * from CUSTOMER left join ANORDER on CUSTOMER.ID = ANORDER.CUSTOMER_ID where CUSTOMER.ID = ?"
         kind="Select">
         <Parameter name=":ID"/>
     </Command>
@@ -37,9 +37,9 @@
     </Command>
     
     <Command name="update customer"
-        SQL="update CUSTOMER set LASTNAME = 'Pavick' where ID = :ID"
+        SQL="update CUSTOMER set LASTNAME = 'Pavick' where ID = ?"
         kind="Update">
-        <Parameter name=":ID"/>
+        <Parameter name="ID"/>
     </Command>      
     
     <Table tableName="CUSTOMER">

Modified: incubator/tuscany/java/das/rdb/src/test/resources/basicCustomerMappingWithCUD.xml
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/das/rdb/src/test/resources/basicCustomerMappingWithCUD.xml?rev=421969&r1=421968&r2=421969&view=diff
==============================================================================
--- incubator/tuscany/java/das/rdb/src/test/resources/basicCustomerMappingWithCUD.xml (original)
+++ incubator/tuscany/java/das/rdb/src/test/resources/basicCustomerMappingWithCUD.xml Fri Jul 14 10:56:46 2006
@@ -16,12 +16,10 @@
  -->
 <Config xsi:noNamespaceSchemaLocation="http:///org.apache.tuscany.das.rdb/config.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
 
-  <Table tableName="CUSTOMER"
-	  
-	  create="insert into customer values (:ID, :LASTNAME, :ADDRESS)"
-	  update="update customer set lastname = :LASTNAME, address = :ADDRESS where ID = :ID"
-      delete="delete from customer where ID = :ID">
-
+  <Table tableName="CUSTOMER">  		 
+	  <create sql="insert into customer values (?, ?, ?)" parameters="ID LASTNAME ADDRESS"/>
+	  <update sql="update customer set lastname = ?, address = ? where ID = ?" parameters="LASTNAME ADDRESS ID"/>
+      <delete sql="delete from customer where ID = ?" parameters="ID"/>
   </Table>
 	
 </Config>

Modified: incubator/tuscany/java/das/rdb/src/test/resources/basicCustomerMappingWithInvalidCUD.xml
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/das/rdb/src/test/resources/basicCustomerMappingWithInvalidCUD.xml?rev=421969&r1=421968&r2=421969&view=diff
==============================================================================
--- incubator/tuscany/java/das/rdb/src/test/resources/basicCustomerMappingWithInvalidCUD.xml (original)
+++ incubator/tuscany/java/das/rdb/src/test/resources/basicCustomerMappingWithInvalidCUD.xml Fri Jul 14 10:56:46 2006
@@ -16,10 +16,11 @@
  -->
 <Config xsi:noNamespaceSchemaLocation="http:///org.apache.tuscany.das.rdb/config.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
 
-  <Table tableName="CUSTOMER"
-	  create="insert into customer blah values (:ID, :LASTNAME, :ADDRESS)"
-	  update="update customer blah set lastname = :LASTNAME, address = :ADDRESS where ID = :ID"
-      delete="delete from customer blah where ID = :ID">
+  <Table tableName="CUSTOMER">
+	  <create sql="insert into customer blah values (?, ?, ?)" parameters="ID LASTNAME ADDRESS"/>
+	  <update sql="update customer blah set lastname = ?, address = ? where ID = ?" parameters="LASTNAME ADDRESS ID"/>
+      <delete sql="delete from customer blah where ID = ?" parameters="ID"/>
+     
     <Column columnName="ID" primaryKey="true"/>
     <Column columnName="LASTNAME"/>
     <Column columnName="ADDRESS"/> 

Modified: incubator/tuscany/java/das/rdb/src/test/resources/basicStaticCustomer.xml
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/das/rdb/src/test/resources/basicStaticCustomer.xml?rev=421969&r1=421968&r2=421969&view=diff
==============================================================================
--- incubator/tuscany/java/das/rdb/src/test/resources/basicStaticCustomer.xml (original)
+++ incubator/tuscany/java/das/rdb/src/test/resources/basicStaticCustomer.xml Fri Jul 14 10:56:46 2006
@@ -18,8 +18,8 @@
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 dataObjectModel="org.apache.tuscany.das.rdb.test.customer.Customer">
   
-  <Table tableName="CUSTOMER" typeName="Customer">
-    <Column columnName="ID" primaryKey="true"/>
+ <Table tableName="CUSTOMER" typeName="Customer">
+   <Column columnName="ID" primaryKey="true"/>
     <Column columnName="LASTNAME"/>
     <Column columnName="ADDRESS"/> 
   </Table>



---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-commits-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-commits-help@ws.apache.org


Re: svn commit: r421969 - in /incubator/tuscany/java/das/rdb/src: main/java/org/apache/tuscany/das/rdb/ main/java/org/apache/tuscany/das/rdb/config/wrapper/ main/java/org/apache/tuscany/das/rdb/generator/impl/ main/java/org/apache/tuscany/das/rdb/graphbuil...

Posted by Kevin Williams <ke...@qwest.net>.
Very cool.  I'll start doing that.

Jeremy Boynes wrote:

> On Jul 14, 2006, at 10:56 AM, kwilliams@apache.org wrote:
>
>> Author: kwilliams
>> Date: Fri Jul 14 10:56:46 2006
>> New Revision: 421969
>>
>> URL: http://svn.apache.org/viewvc?rev=421969&view=rev
>> Log:
>> Brent's patch for T-528
>>
>
> You may not know this but if you use the JIRA id in the log message  
> the commit will automatically get linked to the JIRA issue. For example,
>
> Log: Brent's patch for TUSCANY-528
>
> It takes a couple of minutes to show up in the "Subversion Commits"  
> tab but it's a neat feature.
> -- 
> Jeremy
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
> For additional commands, e-mail: tuscany-dev-help@ws.apache.org
>
>
>
>



---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-dev-help@ws.apache.org


Re: svn commit: r421969 - in /incubator/tuscany/java/das/rdb/src: main/java/org/apache/tuscany/das/rdb/ main/java/org/apache/tuscany/das/rdb/config/wrapper/ main/java/org/apache/tuscany/das/rdb/generator/impl/ main/java/org/apache/tuscany/das/rdb/graphbuil...

Posted by Jeremy Boynes <jb...@apache.org>.
On Jul 14, 2006, at 10:56 AM, kwilliams@apache.org wrote:

> Author: kwilliams
> Date: Fri Jul 14 10:56:46 2006
> New Revision: 421969
>
> URL: http://svn.apache.org/viewvc?rev=421969&view=rev
> Log:
> Brent's patch for T-528
>

You may not know this but if you use the JIRA id in the log message  
the commit will automatically get linked to the JIRA issue. For example,

Log: Brent's patch for TUSCANY-528

It takes a couple of minutes to show up in the "Subversion Commits"  
tab but it's a neat feature.
--
Jeremy


---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-dev-help@ws.apache.org