You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by bd...@apache.org on 2006/12/04 21:40:15 UTC
svn commit: r482345 - in /incubator/tuscany/java/das/rdb/src:
main/java/org/apache/tuscany/das/rdb/
main/java/org/apache/tuscany/das/rdb/config/wrapper/
test/java/org/apache/tuscany/das/rdb/test/
Author: bdaniel
Date: Mon Dec 4 12:40:14 2006
New Revision: 482345
URL: http://svn.apache.org/viewvc?view=rev&rev=482345
Log:
Add the ability to add a Column programmaticly
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/test/java/org/apache/tuscany/das/rdb/test/ProgrammaticConfigTests.java
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?view=diff&rev=482345&r1=482344&r2=482345
==============================================================================
--- 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 Mon Dec 4 12:40:14 2006
@@ -18,6 +18,7 @@
*/
package org.apache.tuscany.das.rdb;
+import org.apache.tuscany.das.rdb.config.Column;
import org.apache.tuscany.das.rdb.config.Command;
import org.apache.tuscany.das.rdb.config.Config;
import org.apache.tuscany.das.rdb.config.ConfigFactory;
@@ -57,8 +58,12 @@
return configWrapper.addRelationship(parentName, childName);
}
- public Table addTable(String name, String propertyName) {
- return configWrapper.addTable(name, propertyName);
+ public Table addTable(String name, String typeName) {
+ return configWrapper.addTable(name, typeName);
+ }
+
+ public Column addColumn(Table table, String columnName, String propertyName) {
+ return configWrapper.addColumn(table, columnName, propertyName);
}
public void addUpdateStatement(Table table, String statement, String 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?view=diff&rev=482345&r1=482344&r2=482345
==============================================================================
--- 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 Mon Dec 4 12:40:14 2006
@@ -262,6 +262,15 @@
return table;
}
+ public Column addColumn(Table table, String name, String propertyName) {
+ Column column = ConfigFactory.INSTANCE.createColumn();
+ column.setColumnName(name);
+ column.setPropertyName(propertyName);
+
+ table.getColumn().add(column);
+ return column;
+ }
+
private Table findOrCreateTable(String tableName) {
Table table = getTable(tableName);
if (table == null) {
Modified: incubator/tuscany/java/das/rdb/src/test/java/org/apache/tuscany/das/rdb/test/ProgrammaticConfigTests.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/das/rdb/src/test/java/org/apache/tuscany/das/rdb/test/ProgrammaticConfigTests.java?view=diff&rev=482345&r1=482344&r2=482345
==============================================================================
--- incubator/tuscany/java/das/rdb/src/test/java/org/apache/tuscany/das/rdb/test/ProgrammaticConfigTests.java (original)
+++ incubator/tuscany/java/das/rdb/src/test/java/org/apache/tuscany/das/rdb/test/ProgrammaticConfigTests.java Mon Dec 4 12:40:14 2006
@@ -18,6 +18,7 @@
*/
package org.apache.tuscany.das.rdb.test;
+import java.sql.SQLException;
import java.util.List;
import org.apache.tuscany.das.rdb.Command;
@@ -152,6 +153,32 @@
}
+ public void testAddColumnWithPropertyName() throws SQLException {
+ String statement = "SELECT * FROM BOOK WHERE BOOK.BOOK_ID = ?";
+
+ // Create Table config programmatically
+ ConfigHelper helper = new ConfigHelper();
+ Table table = helper.addTable("BOOK", "Book");
+ helper.addPrimaryKey("Book.BOOK_ID");
+ helper.addColumn(table, "NAME", "bookName");
+ DAS das = DAS.FACTORY.createDAS(helper.getConfig(), getConnection());
+ Command select = das.createCommand(statement);
+ select.setParameter(1, Integer.valueOf(1));
+
+ DataObject root = select.executeQuery();
+
+ DataObject newBook = root.createDataObject("Book");
+ newBook.setString("bookName", "Ant Colonies of the Old World");
+ newBook.setInt("BOOK_ID", 1001);
+ root.getList("Book").add(newBook);
+
+ das.applyChanges(root);
+
+ //Verify
+ select.setParameter(1, Integer.valueOf(1001));
+ root = select.executeQuery();
+ assertEquals("Ant Colonies of the Old World", root.getString("Book[1]/bookName"));
+ }
/**
* Simple unit test for ConnectionInfo
* @throws Exception
---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-commits-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-commits-help@ws.apache.org