From c6103c7c9a6b6971d2aa0b8e3997608cb5f2c36f Mon Sep 17 00:00:00 2001 From: lresende Date: Mon, 2 Nov 2009 22:22:29 +0000 Subject: Move the das folder as new trunk for das sub project git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@832144 13f79535-47bb-0310-9956-ffa450edef68 --- java/das/samples/transaction/build.xml | 46 --- java/das/samples/transaction/pom.xml | 148 ------- java/das/samples/transaction/readme.htm | 449 --------------------- .../das/databaseSetup/DatabaseSetupUtil.java | 67 --- .../manager/GeronimoTransactionManagerService.java | 118 ------ .../tx/manager/GeronimoTransactionManagerUtil.java | 122 ------ .../samples/das/tx/sample/MoneyTransfer.java | 193 --------- .../src/main/resources/BankAccountDBConfig.xml | 34 -- .../src/main/resources/BankAccounts.xml | 30 -- 9 files changed, 1207 deletions(-) delete mode 100644 java/das/samples/transaction/build.xml delete mode 100644 java/das/samples/transaction/pom.xml delete mode 100644 java/das/samples/transaction/readme.htm delete mode 100644 java/das/samples/transaction/src/main/java/org/apache/tuscany/samples/das/databaseSetup/DatabaseSetupUtil.java delete mode 100644 java/das/samples/transaction/src/main/java/org/apache/tuscany/samples/das/tx/manager/GeronimoTransactionManagerService.java delete mode 100644 java/das/samples/transaction/src/main/java/org/apache/tuscany/samples/das/tx/manager/GeronimoTransactionManagerUtil.java delete mode 100644 java/das/samples/transaction/src/main/java/org/apache/tuscany/samples/das/tx/sample/MoneyTransfer.java delete mode 100644 java/das/samples/transaction/src/main/resources/BankAccountDBConfig.xml delete mode 100644 java/das/samples/transaction/src/main/resources/BankAccounts.xml (limited to 'java/das/samples/transaction') diff --git a/java/das/samples/transaction/build.xml b/java/das/samples/transaction/build.xml deleted file mode 100644 index 5289215be5..0000000000 --- a/java/das/samples/transaction/build.xml +++ /dev/null @@ -1,46 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/java/das/samples/transaction/pom.xml b/java/das/samples/transaction/pom.xml deleted file mode 100644 index f6e50d779e..0000000000 --- a/java/das/samples/transaction/pom.xml +++ /dev/null @@ -1,148 +0,0 @@ - - - - 4.0.0 - - org.apache.tuscany.das.samples - tuscany-das-samples - 1.0-SNAPSHOT - - - tuscany-das-sample-transaction - jar - Tuscany DAS J2SE Transaction Sample Using Transaction Manager - Sample use of RDB DAS in a J2SE application with Transaction Manager - - - - org.apache.tuscany.das - tuscany-das-rdb - ${das.version} - compile - - - - org.apache.tuscany.sdo - tuscany-sdo-impl - ${sdo.version} - compile - - - - org.apache.tuscany.sdo - tuscany-sdo-api-r2.1 - ${sdo.version} - compile - - - - org.apache.tuscany.das.samples - tuscany-das-sample-dbconfig - ${das.version} - compile - - - org.apache.derby - derby - - - - - - mysql - mysql-connector-java - 5.0.4 - compile - - - - org.apache.geronimo.specs - geronimo-jta_1.1_spec - 1.1 - - - - org.apache.geronimo.components - geronimo-transaction - 2.0.1 - - - mx4j - mx4j - - - commons-jelly-tags-velocity - commons-jelly - - - velocity - velocity - - - geronimo-core - org.apache.geronimo.modules - - - geronimo-kernel - org.apache.geronimo.modules - - - geronimo-system - org.apache.geronimo.modules - - - geronimo-j2ee - org.apache.geronimo.modules - - - - - - - - - sample-transaction - src/main/java - - - src/main/java - - - src/main/resources - - - - - org.apache.maven.plugins - maven-jar-plugin - - - - org.apache.tuscany.samples.das.tx.sample.MoneyTransfer - true - - - - - - - - - diff --git a/java/das/samples/transaction/readme.htm b/java/das/samples/transaction/readme.htm deleted file mode 100644 index 6cf450d41a..0000000000 --- a/java/das/samples/transaction/readme.htm +++ /dev/null @@ -1,449 +0,0 @@ - - - - - - - - - -Tuscany RDB DAS Sample - - - - - - - - - - - -
- -

RDB DAS Transaction Sample

- -

 

- -

Introduction

- -

This stand-alone sample demonstrates the RDB Data Access Service -transaction management with external Transaction Manager. This example uses Geronimo - as the transaction manager.

- -

 

- -

Example

- -

In this MoneyTransfer example,user entered amount will be withdrawn from -one of his bankaccount using one call to das.applyChanges(dataGraph1) and same -amount will  be deposited to his another -account using another call to das.applyChanges(dataGraph2). Based on whether -user selects commit/rollback, these 2 applyChanges() will behave identically. -i.e. both will commit or both will rollback, but partial transaction will not -happen. Example build.xml - sets for transfer of 1200 from Account1 to Account2 -[commit].

- -

 

- -

Building and Running

- -

 From binary distribution, base -directory is {DAS_ROOT}\ samples\transaction. Refer to below settings from -this base directory.

- -

1]BankAccounts.xml available in sample-transaction.jar, is the DAS -config file. Note that, as transaction is externally managed, this uses -managedtx=false setting.

- -

 

- -

2]MySQL server should be running. The example uses MySQL DB (with innoDB -ON to support transaction). Database dastest, table bankaccount and -data will be created during sample run. For this preconfigured -BankAccountDBConfig.xml available in sample-transaction.jar, will be used. User -needs to set correct values for url, login etc. in this.

- -

 

- -

3] Apache Ant latest version should be installed.Download Apache Ant -latest version on and extract into folder <apache_ant_folder>. You can -find it here: http://ant.apache.org/bindownload.cgi.Add -<apache_ant_folder>/bin directory to your OS path variable.

- -

 

- -

4] From base directory run-  -ant

- -

 

- -

The sample will run and output the following:

- -
- -

Buildfile: build.xml

- -

 

- -

run:

- -

     [java] -INIT database

- -

     [java] -INIT transaction manager

- -

     [java] -Wed Sep 19 17:09:42 IST 2007 DEBUG: Executing XA statement: XA START

- -

 0x01000000000000004bceb90109b6b0f3000000000000000000000000000000000000000000000

- -

000000000000000000000000000000000000000000000000000,0x00000000000000000000000000

- -

00000000000000000000000000000000000000000000000000000000000000000000000000000000

- -

0000000000000000000000,0x4765526f

- -

     [java] -Get a connection

- -

     [java] -Before transaction, table is:

- -

     [java]     id      -name    balance

- -

     [java]     1       -John Feng       1200

- -

     [java]     2       -John Feng       0

- -

     [java] -Begin a transaction

- -

     [java] -Update the table - 2 accounts

- -

     [java] -*commit* the transaction

- -

     [java] -Wed Sep 19 17:09:45 IST 2007 DEBUG: Executing XA statement: XA END 0

- -

x01000000000000004bceb90109b6b0f300000000000000000000000000000000000000000000000

- -

0000000000000000000000000000000000000000000000000,0x0000000000000000000000000000

- -

00000000000000000000000000000000000000000000000000000000000000000000000000000000

- -

00000000000000000000,0x4765526f

- -

     [java] -Wed Sep 19 17:09:45 IST 2007 DEBUG: Executing XA statement: XA PREPA

- -

RE 0x01000000000000004bceb90109b6b0f30000000000000000000000000000000000000000000

- -

00000000000000000000000000000000000000000000000000000,0x000000000000000000000000

- -

00000000000000000000000000000000000000000000000000000000000000000000000000000000

- -

000000000000000000000000,0x4765526f

- -

     [java] -Wed Sep 19 17:09:45 IST 2007 DEBUG: Executing XA statement: XA COMMI

- -

T 0x01000000000000004bceb90109b6b0f300000000000000000000000000000000000000000000

- -

0000000000000000000000000000000000000000000000000000,0x0000000000000000000000000

- -

00000000000000000000000000000000000000000000000000000000000000000000000000000000

- -

00000000000000000000000,0x4765526f

- -

     [java] -After transaction, table is:

- -

     [java]     id      -name    balance

- -

     [java]     1       -John Feng       0

- -

     [java]     2       -John Feng       1200

- -

     [java] -Cleanup

- -

     [java] -End MoneyTransfer

- -

     [java]

- -

 

- -

BUILD SUCCESSFUL

- -

Total time: 8 seconds

- -
- -

Observation: The build.xml ant file only works on DAS Java binary -distribution.

- -
- - - - diff --git a/java/das/samples/transaction/src/main/java/org/apache/tuscany/samples/das/databaseSetup/DatabaseSetupUtil.java b/java/das/samples/transaction/src/main/java/org/apache/tuscany/samples/das/databaseSetup/DatabaseSetupUtil.java deleted file mode 100644 index fbcbe1a5f7..0000000000 --- a/java/das/samples/transaction/src/main/java/org/apache/tuscany/samples/das/databaseSetup/DatabaseSetupUtil.java +++ /dev/null @@ -1,67 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.tuscany.samples.das.databaseSetup; - -import java.sql.Connection; -import java.sql.ResultSet; - -import org.apache.tuscany.das.rdb.dbconfig.DBConfig; -import org.apache.tuscany.das.rdb.dbconfig.DBConfigUtil; -import org.apache.tuscany.das.rdb.dbconfig.DBInitializer; -import org.apache.tuscany.samples.das.tx.manager.GeronimoTransactionManagerUtil; - -/** - * Setup database, XA resources required by the sample - * - * - */ -public class DatabaseSetupUtil { - private static DBConfig dbConfig = null; - /** - * Constructor for DatabaseSetupUtil. - */ - public DatabaseSetupUtil(String dbConfigFile) throws Exception { - //create database tables, data - DBInitializer dbInitializer = new DBInitializer(dbConfigFile); - dbInitializer.refreshDatabaseData(); - //read DAS Config - dbConfig = DBConfigUtil.loadDBConfig(ClassLoader.getSystemResourceAsStream(dbConfigFile)); - } - - public static DBConfig getDBConfig() { - return DatabaseSetupUtil.dbConfig; - } - - public static void main(String[] args) throws Exception{ - //test program - new DatabaseSetupUtil("BankAccountDBConfig.xml"); - GeronimoTransactionManagerUtil tmUtil = new GeronimoTransactionManagerUtil(); - tmUtil.initTransactionManager(); - tmUtil.startTransaction(); - Connection conn = tmUtil.getConnection(); - - ResultSet rs = conn.createStatement().executeQuery("select id, balance from bankaccount"); - while(rs.next()){ - System.out.println("result row: "+rs.getInt(1)+","+rs.getString(2)); - } - - tmUtil.commitTransaction(); - - } -} diff --git a/java/das/samples/transaction/src/main/java/org/apache/tuscany/samples/das/tx/manager/GeronimoTransactionManagerService.java b/java/das/samples/transaction/src/main/java/org/apache/tuscany/samples/das/tx/manager/GeronimoTransactionManagerService.java deleted file mode 100644 index ee106bec0c..0000000000 --- a/java/das/samples/transaction/src/main/java/org/apache/tuscany/samples/das/tx/manager/GeronimoTransactionManagerService.java +++ /dev/null @@ -1,118 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.tuscany.samples.das.tx.manager; - -import javax.transaction.HeuristicMixedException; -import javax.transaction.HeuristicRollbackException; -import javax.transaction.InvalidTransactionException; -import javax.transaction.NotSupportedException; -import javax.transaction.RollbackException; -import javax.transaction.SystemException; -import javax.transaction.Transaction; -import javax.transaction.TransactionManager; - -import org.apache.geronimo.transaction.manager.TransactionManagerImpl; -import org.apache.geronimo.transaction.manager.XidFactoryImpl; - -/** - * A TransactionManager that delegates to a Geronimo JTA transaction manager. This class serves as a - * wrapper for initializing the Geronimo TM as a system service. - * - * @version $Rev$ $Date$ - */ -public class GeronimoTransactionManagerService implements TransactionManager { - private TransactionManager transactionManager; - private int timeout = 250; - - public GeronimoTransactionManagerService() { - } - - /** - * Returns the transaction timeout in seconds - * - * @return the transaction timeout in seconds - */ - public int getTimeout() { - return timeout; - } - - /** - * Sets the transaction timeout in seconds - */ - public void setTimeout(int timeout) { - this.timeout = timeout; - } - - public void init() throws Exception { - XidFactoryImpl factory = new XidFactoryImpl(); - transactionManager = new TransactionManagerImpl(timeout, factory, null); - } - - public void begin() throws NotSupportedException, SystemException { - transactionManager.begin(); - } - - public void commit() throws HeuristicMixedException, - HeuristicRollbackException, - IllegalStateException, - RollbackException, - SecurityException, - SystemException { - transactionManager.commit(); - } - - public TransactionManager getTransactionManager() { - return transactionManager; - } - - public int getStatus() throws SystemException { - return transactionManager.getStatus(); - } - - public Transaction getTransaction() throws SystemException { - return transactionManager.getTransaction(); - } - - public void resume(Transaction transaction) - throws IllegalStateException, InvalidTransactionException, SystemException { - transactionManager.resume(transaction); - } - - public void rollback() throws IllegalStateException, SecurityException, SystemException { - transactionManager.rollback(); - } - - public void setRollbackOnly() throws IllegalStateException, SystemException { - transactionManager.setRollbackOnly(); - } - - public void setTransactionTimeout(int i) throws SystemException { - transactionManager.setTransactionTimeout(i); - } - - public Transaction suspend() throws SystemException { - return transactionManager.suspend(); - } - - public void begin(long timeout) throws NotSupportedException, SystemException { - transactionManager.begin(); - return; - } - -} diff --git a/java/das/samples/transaction/src/main/java/org/apache/tuscany/samples/das/tx/manager/GeronimoTransactionManagerUtil.java b/java/das/samples/transaction/src/main/java/org/apache/tuscany/samples/das/tx/manager/GeronimoTransactionManagerUtil.java deleted file mode 100644 index 084e735117..0000000000 --- a/java/das/samples/transaction/src/main/java/org/apache/tuscany/samples/das/tx/manager/GeronimoTransactionManagerUtil.java +++ /dev/null @@ -1,122 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.tuscany.samples.das.tx.manager; - -import java.sql.Connection; -import java.sql.SQLException; - -import javax.sql.XAConnection; -import javax.sql.XADataSource; -import javax.transaction.xa.XAResource; -import javax.transaction.xa.Xid; - -import org.apache.geronimo.transaction.manager.XidFactory; -import org.apache.geronimo.transaction.manager.XidFactoryImpl; -import org.apache.tuscany.das.rdb.dbconfig.DBConfig; -import org.apache.tuscany.samples.das.databaseSetup.DatabaseSetupUtil; - -import com.mysql.jdbc.jdbc2.optional.MysqlXADataSource; - -public class GeronimoTransactionManagerUtil { - private GeronimoTransactionManagerService service; - private static XADataSource xads; - private static XAConnection xaconn = null; - private static XAResource xares = null; - private static XidFactory xidFact = null; - private static Xid xid = null; - - public void initTransactionManager() { - // Get a transction manager - try { - xidFact = new XidFactoryImpl(); - // creates an instance of Geronimo TM Service - service = new GeronimoTransactionManagerService(); - service.init(); - service.begin(); - initDataSource(); - initXAConnection(); - } catch (Exception e) { - e.printStackTrace(); - System.exit(1); - } - } - - private void initDataSource() { - //setup XADataSource - xads = new MysqlXADataSource(); - try { - DBConfig dbcfg = DatabaseSetupUtil.getDBConfig(); - ((MysqlXADataSource) xads).setUser(dbcfg.getConnectionInfo().getConnectionProperties().getUserName()); - ((MysqlXADataSource) xads).setPassword(dbcfg.getConnectionInfo().getConnectionProperties().getPassword()); - ((MysqlXADataSource) xads).setUrl(dbcfg.getConnectionInfo().getConnectionProperties().getDatabaseURL()); - ((MysqlXADataSource) xads).setURL(dbcfg.getConnectionInfo().getConnectionProperties().getDatabaseURL()); - } catch (Exception e) { - e.printStackTrace(); - System.exit(1); - } - } - - private void initXAConnection() throws SQLException{ - DBConfig dbcfg = DatabaseSetupUtil.getDBConfig(); - xaconn = xads.getXAConnection(dbcfg.getConnectionInfo().getConnectionProperties().getUserName(), - dbcfg.getConnectionInfo().getConnectionProperties().getPassword()); - } - - public void startTransaction() throws Exception { - try{ - //create XAResource - xid= xidFact.createXid(); - xares = xaconn.getXAResource(); - xares.setTransactionTimeout(250); //something - xares.start(xid, XAResource.TMNOFLAGS); - return; - }catch(Exception e) { - e.printStackTrace(); - throw e; - } - } - - public void commitTransaction() throws Exception { - xares.end(xid, XAResource.TMSUCCESS); - xares.prepare(xid); - xares.commit(xid, false); //onePhase=true/false - } - - public void rollbackTransaction() throws Exception { - xares.end(xid, XAResource.TMFAIL); - xares.prepare(xid); - xares.rollback(xid); - } - - public Connection getConnection() throws SQLException { - return xaconn.getConnection(); - } - - /** - * cleanup - */ - public void cleanup() throws Exception{ - xaconn.close(); - xid = null; - xares = null; - xaconn = null; - xads = null; - service.commit(); - } -} diff --git a/java/das/samples/transaction/src/main/java/org/apache/tuscany/samples/das/tx/sample/MoneyTransfer.java b/java/das/samples/transaction/src/main/java/org/apache/tuscany/samples/das/tx/sample/MoneyTransfer.java deleted file mode 100644 index 650f60f089..0000000000 --- a/java/das/samples/transaction/src/main/java/org/apache/tuscany/samples/das/tx/sample/MoneyTransfer.java +++ /dev/null @@ -1,193 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.tuscany.samples.das.tx.sample; - -import java.io.InputStream; -import java.sql.Connection; -import java.sql.ResultSet; -import java.sql.Statement; - -import org.apache.tuscany.das.rdb.Command; -import org.apache.tuscany.das.rdb.DAS; -import org.apache.tuscany.samples.das.databaseSetup.DatabaseSetupUtil; -import org.apache.tuscany.samples.das.tx.manager.GeronimoTransactionManagerUtil; - -import commonj.sdo.DataObject; - -/** - * Sample using Geronimo TM to execute multiple DAS applyChanges() under one transaction. - * - */ -public class MoneyTransfer { - - private static final String USAGE = "usage: java MoneyTransfer [commit|rollback] [transferAmount]"; - private static final String SQL_REQUEST = "select id, name, balance from bankaccount"; - private static Connection conn = null; - private static DAS das = null; - - private static void printTable() { - try { - Statement stmt = conn.createStatement(); - ResultSet rset = stmt.executeQuery(SQL_REQUEST); - int numcols = rset.getMetaData().getColumnCount(); - for (int i = 1; i <= numcols; i++) { - System.out.print("\t" + rset.getMetaData().getColumnName(i)); - } - System.out.println(); - while (rset.next()) { - for (int i = 1; i <= numcols; i++) { - System.out.print("\t" + rset.getString(i)); - } - System.out.println(""); - } - } catch (Exception e) { - e.printStackTrace(); - } - } - - public static void main(String[] args) { - GeronimoTransactionManagerUtil tmUtil = null; - - if (args.length != 2 || (!args[0].equals("commit") && !args[0].equals("rollback"))) { - System.out.println(USAGE + "\n"); - System.exit(1); - } - - String completion = args[0]; - float transferAmount = 0; - try { - transferAmount = Float.parseFloat(args[1]); - } catch (NumberFormatException e) { - System.out.println(USAGE); - System.out.println("[transferAmount] has to be a float\n"); - System.exit(1); - } - - System.out.println("INIT database"); - try{ - new DatabaseSetupUtil("BankAccountDBConfig.xml"); - }catch(Exception e){ - e.printStackTrace(); - System.exit(1); - } - - try { - System.out.println("INIT transaction manager"); - tmUtil = new GeronimoTransactionManagerUtil(); - tmUtil.initTransactionManager(); - tmUtil.startTransaction(); - } catch (Exception e) { - System.out.println("Exception of type :" + e.getClass().getName() + " has been thrown"); - System.out.println("Exception message :" + e.getMessage()); - e.printStackTrace(); - System.exit(1); - } - - try { - System.out.println("Get a connection"); - conn = tmUtil.getConnection(); - conn.setAutoCommit(false); - } catch (Exception e) { - e.printStackTrace(); - } - - System.out.println("Before transaction, table is:"); - printTable(); - - try { - System.out.println("Begin a transaction"); - init(); //initialize DAS instance - System.out.println("Update the table - 2 accounts"); - withdrawFromBankAccount1(transferAmount); - depositToBankAccount2(transferAmount); - - if (completion.equals("commit")) { - System.out.println("*commit* the transaction"); - tmUtil.commitTransaction(); - } else { - System.out.println("*rollback* the transaction"); - tmUtil.rollbackTransaction(); - } - } catch (Exception e) { - System.out.println("Exception of type :" + e.getClass().getName() + " has been thrown"); - System.out.println("Exception message :" + e.getMessage()); - e.printStackTrace(); - System.exit(1); - } - - System.out.println("After transaction, table is:"); - printTable(); - - System.out.println("Cleanup"); - try { - tmUtil.cleanup(); - } catch (Exception e) { - e.printStackTrace(); - } - - System.out.println("End MoneyTransfer\n"); - System.exit(0); - } - - private static void init(){ - try{ - das = DAS.FACTORY.createDAS(getConfig("BankAccounts.xml"), conn); - }catch(Exception e){ - e.printStackTrace(); - } - } - - /** - * Withdraw asked amount from account1 - * @return - */ - public static final void withdrawFromBankAccount1(float transferAmount) { - Command read = das.getCommand("BankAccount1Data"); - DataObject root = read.executeQuery(); - DataObject account1 = (DataObject)root.getList("BANKACCOUNT").get(0); - float currentBalance = account1.getFloat("BALANCE"); - float newBalance = currentBalance - transferAmount; - account1.setFloat("BALANCE", newBalance); - das.applyChanges(root); - } - - /** - * Deposit asked amount into account2 - * @return - */ - public static final void depositToBankAccount2(float transferAmount) { - Command read = das.getCommand("BankAccount2Data"); - DataObject root = read.executeQuery(); - DataObject account2 = (DataObject)root.getList("BANKACCOUNT").get(0); - float currentBalance = account2.getFloat("BALANCE"); - float newBalance = currentBalance + transferAmount; - account2.setFloat("BALANCE", newBalance); - das.applyChanges(root); - } - - /**Utilities - * - * @param fileName - * @return - */ - private static InputStream getConfig(String fileName) { - MoneyTransfer jdbcExample = new MoneyTransfer(); - return jdbcExample.getClass().getClassLoader().getResourceAsStream(fileName); - } -} diff --git a/java/das/samples/transaction/src/main/resources/BankAccountDBConfig.xml b/java/das/samples/transaction/src/main/resources/BankAccountDBConfig.xml deleted file mode 100644 index 1ade9f2341..0000000000 --- a/java/das/samples/transaction/src/main/resources/BankAccountDBConfig.xml +++ /dev/null @@ -1,34 +0,0 @@ - - - - - - - - - 1, 'John Feng', 1200 - 2, 'John Feng', 0 -
- -
diff --git a/java/das/samples/transaction/src/main/resources/BankAccounts.xml b/java/das/samples/transaction/src/main/resources/BankAccounts.xml deleted file mode 100644 index 09c1a5bb04..0000000000 --- a/java/das/samples/transaction/src/main/resources/BankAccounts.xml +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - - -
- -
-- cgit v1.2.3