[jboss-svn-commits] JBL Code SVN: r25711 - in labs/jbosstm/trunk/qa: config/jdbc_profiles/default and 7 other directories.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Wed Mar 18 12:30:25 EDT 2009


Author: jhalliday
Date: 2009-03-18 12:30:25 -0400 (Wed, 18 Mar 2009)
New Revision: 25711

Added:
   labs/jbosstm/trunk/qa/config/jdbc_profiles/default/
   labs/jbosstm/trunk/qa/config/jdbc_profiles/default/JDBCProfiles
Modified:
   labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/JDBCResources01Cleanups/Cleanup01.java
   labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/JDBCResources01Impls/JDBCInfoTableImpl01.java
   labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/JDBCResources01Impls/JDBCInfoTableImpl02.java
   labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/JDBCResources01Setups/Setup01.java
   labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/JDBCResources01Setups/Setup02.java
   labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/JDBCResources02Cleanups/Cleanup01.java
   labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/JDBCResources02Impls/JDBCInfoTableImpl01.java
   labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/JDBCResources02Impls/JDBCInfoTableImpl02.java
   labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/JDBCResources02Setups/Setup01.java
   labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/JDBCResources02Setups/Setup02.java
   labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/Utils/JDBCProfileStore.java
Log:
Modified JDBCResource tests for ability to run from unknown hosts. JBTM-390


Added: labs/jbosstm/trunk/qa/config/jdbc_profiles/default/JDBCProfiles
===================================================================
--- labs/jbosstm/trunk/qa/config/jdbc_profiles/default/JDBCProfiles	                        (rev 0)
+++ labs/jbosstm/trunk/qa/config/jdbc_profiles/default/JDBCProfiles	2009-03-18 16:30:25 UTC (rev 25711)
@@ -0,0 +1,298 @@
+#
+# JBoss, Home of Professional Open Source
+# Copyright 2008, Red Hat Middleware LLC, and individual contributors
+# as indicated by the @author tags.
+# See the copyright.txt in the distribution for a
+# full listing of individual contributors.
+# This copyrighted material is made available to anyone wishing to use,
+# modify, copy, or redistribute it subject to the terms and conditions
+# of the GNU Lesser General Public License, v. 2.1.
+# This program is distributed in the hope that it will be useful, but WITHOUT A
+# 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,
+# v.2.1 along with this distribution; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+# MA  02110-1301, USA.
+#
+# (C) 2005-2008,
+# @author JBoss Inc.
+
+#########
+# This is the 'default' version of the profile, used by hosts that
+# can't find one mathcing their own name, which most means hudson slaves.
+#
+# The dbs it uses are in boston, so if running from a dev box on the vpn
+# you probably want to use the boston vpn endpoint or the tests will
+# be more likely to timeout.
+#########
+
+
+##########################################################################
+# PostgreSQL JNDI Profile
+##########################################################################
+
+DB_PGSQL_JNDI_NumberOfDrivers=2
+# the 'native' driver must come first. xa not required
+DB_PGSQL_JNDI_Driver0=org.postgresql.Driver
+DB_PGSQL_JNDI_Driver1=com.arjuna.ats.jdbc.TransactionalDriver
+# the uniq JNDI name
+DB_PGSQL_JNDI_Binding=pgsql
+# url is jdbc:arjuna:bindingname
+# the ts looks up bindingname in JNDI,
+# to which it is written by JNDIManager
+# The JNDI manager knows which XA datasource class to use
+# based on the non-xa driver class given above.
+DB_PGSQL_JNDI_DatabaseURL=jdbc:arjuna:pgsql
+# username and pass
+DB_PGSQL_JNDI_DatabaseUser=dtf11
+DB_PGSQL_JNDI_DatabasePassword=dtf11
+# datasource properties:
+DB_PGSQL_JNDI_DatabaseName=jbossts
+DB_PGSQL_JNDI_Host=dtfdb3.qa.atl2.redhat.com
+##DB_PGSQL_JNDI_Port=1521
+
+######################################################################
+# PostgreSQL JNDI Pair
+######################################################################
+
+DB1_PGSQL_JNDI_NumberOfDrivers=2
+DB1_PGSQL_JNDI_Driver0=org.postgresql.Driver
+DB1_PGSQL_JNDI_Driver1=com.arjuna.ats.jdbc.TransactionalDriver
+DB1_PGSQL_JNDI_Binding=pgsql1
+DB1_PGSQL_JNDI_DatabaseURL=jdbc:arjuna:pgsql1
+DB1_PGSQL_JNDI_DatabaseUser=dtf11
+DB1_PGSQL_JNDI_DatabasePassword=dtf11
+DB1_PGSQL_JNDI_DatabaseName=jbossts
+DB1_PGSQL_JNDI_Host=dtfdb3.qa.atl2.redhat.com
+
+DB2_PGSQL_JNDI_NumberOfDrivers=2
+DB2_PGSQL_JNDI_Driver0=org.postgresql.Driver
+DB2_PGSQL_JNDI_Driver1=com.arjuna.ats.jdbc.TransactionalDriver
+DB2_PGSQL_JNDI_Binding=pgsql2
+DB2_PGSQL_JNDI_DatabaseURL=jdbc:arjuna:pgsql2
+DB2_PGSQL_JNDI_DatabaseUser=dtf12
+DB2_PGSQL_JNDI_DatabasePassword=dtf12
+DB2_PGSQL_JNDI_DatabaseName=jbossts
+DB2_PGSQL_JNDI_Host=dtfdb3.qa.atl2.redhat.com
+
+##########################################################################
+# MySQL JNDI Profile
+##########################################################################
+
+DB_MYSQL_JNDI_NumberOfDrivers=2
+DB_MYSQL_JNDI_Driver0=com.mysql.jdbc.Driver
+DB_MYSQL_JNDI_Driver1=com.arjuna.ats.jdbc.TransactionalDriver
+DB_MYSQL_JNDI_Binding=mysql
+DB_MYSQL_JNDI_DatabaseURL=jdbc:arjuna:mysql
+DB_MYSQL_JNDI_DatabaseUser=dtf11
+DB_MYSQL_JNDI_DatabasePassword=dtf11
+DB_MYSQL_JNDI_DatabaseName=jbossts
+DB_MYSQL_JNDI_Host=dtfdb2.qa.atl2.redhat.com
+##DB_MYSQL_JNDI_Port=1521
+
+######################################################################
+# MySQL JNDI Pair
+######################################################################
+
+DB1_MYSQL_JNDI_NumberOfDrivers=2
+DB1_MYSQL_JNDI_Driver0=com.mysql.jdbc.Driver
+DB1_MYSQL_JNDI_Driver1=com.arjuna.ats.jdbc.TransactionalDriver
+DB1_MYSQL_JNDI_Binding=mysql1
+DB1_MYSQL_JNDI_DatabaseURL=jdbc:arjuna:mysql1
+DB1_MYSQL_JNDI_DatabaseUser=dtf11
+DB1_MYSQL_JNDI_DatabasePassword=dtf11
+DB1_MYSQL_JNDI_DatabaseName=jbossts
+DB1_MYSQL_JNDI_Host=dtfdb2.qa.atl2.redhat.com
+
+DB2_MYSQL_JNDI_NumberOfDrivers=2
+DB2_MYSQL_JNDI_Driver0=com.mysql.jdbc.Driver
+DB2_MYSQL_JNDI_Driver1=com.arjuna.ats.jdbc.TransactionalDriver
+DB2_MYSQL_JNDI_Binding=mysql2
+DB2_MYSQL_JNDI_DatabaseURL=jdbc:arjuna:mysql2
+DB2_MYSQL_JNDI_DatabaseUser=dtf12
+DB2_MYSQL_JNDI_DatabasePassword=dtf12
+DB2_MYSQL_JNDI_DatabaseName=jbossts
+DB2_MYSQL_JNDI_Host=dtfdb2.qa.atl2.redhat.com
+
+########################################################################
+# MSSQL Server JNDI Profile
+########################################################################
+
+DB_SQL_JNDI_NumberOfDrivers=2
+DB_SQL_JNDI_Driver1=com.arjuna.ats.jdbc.TransactionalDriver
+## dropped old sql2000 drive in favour of new sql2005 driver
+##DB_SQL_JNDI_Driver0=com.microsoft.jdbc.sqlserver.SQLServerDriver
+DB_SQL_JNDI_Driver0=com.microsoft.sqlserver.jdbc.SQLServerDriver
+DB_SQL_JNDI_Binding=sqlserver_jndi
+DB_SQL_JNDI_DatabaseURL=jdbc\:arjuna\:sqlserver_jndi
+DB_SQL_JNDI_DatabaseUser=dtf11
+DB_SQL_JNDI_DatabasePassword=dtf11
+DB_SQL_JNDI_DatabaseName=jbossts
+DB_SQL_JNDI_Host=dev30.qa.atl.jboss.com
+##DB_SQL_JNDI_Port=1433
+DB_SQL_JNDI_Port=3918
+
+######################################################################
+# MSSQL Server JNDI Pair
+######################################################################
+
+# DB1
+
+DB_SQL1_JNDI_NumberOfDrivers=2
+DB_SQL1_JNDI_Driver1=com.arjuna.ats.jdbc.TransactionalDriver
+## dropped old sql2000 drive in favour of new sql2005 driver
+##DB_SQL1_JNDI_Driver0=com.microsoft.jdbc.sqlserver.SQLServerDriver
+DB_SQL1_JNDI_Driver0=com.microsoft.sqlserver.jdbc.SQLServerDriver
+DB_SQL1_JNDI_Binding=sqlserver_jndi1
+DB_SQL1_JNDI_DatabaseURL=jdbc\:arjuna\:sqlserver_jndi1
+DB_SQL1_JNDI_DatabaseUser=dtf11
+DB_SQL1_JNDI_DatabasePassword=dtf11
+DB_SQL1_JNDI_DatabaseName=jbossts
+DB_SQL1_JNDI_Host=dev30.qa.atl.jboss.com
+DB_SQL1_JNDI_Port=3918
+
+# DB2
+
+DB_SQL2_JNDI_NumberOfDrivers=2
+DB_SQL2_JNDI_Driver1=com.arjuna.ats.jdbc.TransactionalDriver
+## dropped old sql2000 drive in favour of new sql2005 driver
+##DB_SQL2_JNDI_Driver0=com.microsoft.jdbc.sqlserver.SQLServerDriver
+DB_SQL2_JNDI_Driver0=com.microsoft.sqlserver.jdbc.SQLServerDriver
+DB_SQL2_JNDI_Binding=sqlserver_jndi2
+DB_SQL2_JNDI_DatabaseURL=jdbc\:arjuna\:sqlserver_jndi2
+DB_SQL2_JNDI_DatabaseUser=dtf12
+DB_SQL2_JNDI_DatabasePassword=dtf12
+DB_SQL2_JNDI_DatabaseName=jbossts
+DB_SQL2_JNDI_Host=dev30.qa.atl.jboss.com
+DB_SQL2_JNDI_Port=3918
+
+
+##########################################################################
+# Oracle thin JNDI Profile
+##########################################################################
+
+DB_THIN_JNDI_NumberOfDrivers=2
+DB_THIN_JNDI_Driver0=oracle.jdbc.driver.OracleDriver
+DB_THIN_JNDI_Driver1=com.arjuna.ats.jdbc.TransactionalDriver
+DB_THIN_JNDI_Binding=oracle_thin
+DB_THIN_JNDI_DatabaseURL=jdbc:arjuna:oracle_thin
+DB_THIN_JNDI_DatabaseUser=dtf11
+DB_THIN_JNDI_DatabasePassword=dtf11
+DB_THIN_JNDI_DatabaseName=TSH1
+DB_THIN_JNDI_Host=dtfdb5.qa.atl2.redhat.com
+DB_THIN_JNDI_Port=1521
+
+######################################################################
+# Oracle thin JNDI Pair
+######################################################################
+
+# DB1
+
+DB1_THIN_JNDI_NumberOfDrivers=2
+DB1_THIN_JNDI_Driver0=oracle.jdbc.driver.OracleDriver
+DB1_THIN_JNDI_Driver1=com.arjuna.ats.jdbc.TransactionalDriver
+DB1_THIN_JNDI_Binding=oracle_thin1
+DB1_THIN_JNDI_DatabaseURL=jdbc:arjuna:oracle_thin1
+DB1_THIN_JNDI_DatabaseUser=dtf11
+DB1_THIN_JNDI_DatabasePassword=dtf11
+DB1_THIN_JNDI_DatabaseName=TSH1
+DB1_THIN_JNDI_Host=dtfdb5.qa.atl2.redhat.com
+DB1_THIN_JNDI_Port=1521
+
+# DB2
+
+DB2_THIN_JNDI_NumberOfDrivers=2
+DB2_THIN_JNDI_Driver0=oracle.jdbc.driver.OracleDriver
+DB2_THIN_JNDI_Driver1=com.arjuna.ats.jdbc.TransactionalDriver
+DB2_THIN_JNDI_Binding=oracle_thin2
+DB2_THIN_JNDI_DatabaseURL=jdbc:arjuna:oracle_thin2
+DB2_THIN_JNDI_DatabaseUser=dtf12
+DB2_THIN_JNDI_DatabasePassword=dtf12
+DB2_THIN_JNDI_DatabaseName=TSH1
+DB2_THIN_JNDI_Host=dtfdb5.qa.atl2.redhat.com
+DB2_THIN_JNDI_Port=1521
+
+
+##########################################################################
+# IBMDB2 JNDI Profile
+##########################################################################
+
+DB_IBMDB2_JNDI_NumberOfDrivers=2
+DB_IBMDB2_JNDI_Driver0=com.ibm.db2.jcc.DB2Driver
+DB_IBMDB2_JNDI_Driver1=com.arjuna.ats.jdbc.TransactionalDriver
+DB_IBMDB2_JNDI_Binding=ibmdb2
+DB_IBMDB2_JNDI_DatabaseURL=jdbc:arjuna:ibmdb2
+DB_IBMDB2_JNDI_DatabaseUser=jbossts0
+DB_IBMDB2_JNDI_DatabasePassword=jbossts0
+DB_IBMDB2_JNDI_DatabaseName=jbossqa
+DB_IBMDB2_JNDI_Host=dev32.qa.atl.jboss.com
+DB_IBMDB2_JNDI_Port=50000
+
+######################################################################
+# IBMDB2 JNDI Pair
+######################################################################
+
+DB1_IBMDB2_JNDI_NumberOfDrivers=2
+DB1_IBMDB2_JNDI_Driver0=com.ibm.db2.jcc.DB2Driver
+DB1_IBMDB2_JNDI_Driver1=com.arjuna.ats.jdbc.TransactionalDriver
+DB1_IBMDB2_JNDI_Binding=ibmdb21
+DB1_IBMDB2_JNDI_DatabaseURL=jdbc:arjuna:ibmdb21
+DB1_IBMDB2_JNDI_DatabaseUser=jbossts0
+DB1_IBMDB2_JNDI_DatabasePassword=jbossts0
+DB1_IBMDB2_JNDI_DatabaseName=jbossqa
+DB1_IBMDB2_JNDI_Host=dev32.qa.atl.jboss.com
+DB1_IBMDB2_JNDI_Port=50000
+
+DB2_IBMDB2_JNDI_NumberOfDrivers=2
+DB2_IBMDB2_JNDI_Driver0=com.ibm.db2.jcc.DB2Driver
+DB2_IBMDB2_JNDI_Driver1=com.arjuna.ats.jdbc.TransactionalDriver
+DB2_IBMDB2_JNDI_Binding=ibmdb22
+DB2_IBMDB2_JNDI_DatabaseURL=jdbc:arjuna:ibmdb22
+DB2_IBMDB2_JNDI_DatabaseUser=jbossts1
+DB2_IBMDB2_JNDI_DatabasePassword=jbossts1
+DB2_IBMDB2_JNDI_DatabaseName=jbossqa
+DB2_IBMDB2_JNDI_Host=dev32.qa.atl.jboss.com
+DB2_IBMDB2_JNDI_Port=50000
+
+
+##########################################################################
+# Sybase JNDI Profile
+##########################################################################
+
+DB_SYBASE_JNDI_NumberOfDrivers=2
+DB_SYBASE_JNDI_Driver0=com.sybase.jdbc2.jdbc.SybDriver
+DB_SYBASE_JNDI_Driver1=com.arjuna.ats.jdbc.TransactionalDriver
+DB_SYBASE_JNDI_Binding=sybase
+DB_SYBASE_JNDI_DatabaseURL=jdbc:arjuna:sybase
+DB_SYBASE_JNDI_DatabaseUser=jbossts0
+DB_SYBASE_JNDI_DatabasePassword=jbossts0
+DB_SYBASE_JNDI_DatabaseName=jbossts
+DB_SYBASE_JNDI_Host=dev01.qa.atl.jboss.com
+DB_SYBASE_JNDI_Port=4100
+
+######################################################################
+# Sybase JNDI Pair
+######################################################################
+
+DB1_SYBASE_JNDI_NumberOfDrivers=2
+DB1_SYBASE_JNDI_Driver0=com.sybase.jdbc2.jdbc.SybDriver
+DB1_SYBASE_JNDI_Driver1=com.arjuna.ats.jdbc.TransactionalDriver
+DB1_SYBASE_JNDI_Binding=sybase1
+DB1_SYBASE_JNDI_DatabaseURL=jdbc:arjuna:sybase1
+DB1_SYBASE_JNDI_DatabaseUser=jbossts0
+DB1_SYBASE_JNDI_DatabasePassword=jbossts0
+DB1_SYBASE_JNDI_DatabaseName=jbossts
+DB1_SYBASE_JNDI_Host=dev01.qa.atl.jboss.com
+DB1_SYBASE_JNDI_Port=4100
+
+DB2_SYBASE_JNDI_NumberOfDrivers=2
+DB2_SYBASE_JNDI_Driver0=com.sybase.jdbc2.jdbc.SybDriver
+DB2_SYBASE_JNDI_Driver1=com.arjuna.ats.jdbc.TransactionalDriver
+DB2_SYBASE_JNDI_Binding=sybase2
+DB2_SYBASE_JNDI_DatabaseURL=jdbc:arjuna:sybase2
+DB2_SYBASE_JNDI_DatabaseUser=jbossts1
+DB2_SYBASE_JNDI_DatabasePassword=jbossts1
+DB2_SYBASE_JNDI_DatabaseName=jbossts
+DB2_SYBASE_JNDI_Host=dev01.qa.atl.jboss.com
+DB2_SYBASE_JNDI_Port=4100

Modified: labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/JDBCResources01Cleanups/Cleanup01.java
===================================================================
--- labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/JDBCResources01Cleanups/Cleanup01.java	2009-03-18 16:01:20 UTC (rev 25710)
+++ labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/JDBCResources01Cleanups/Cleanup01.java	2009-03-18 16:30:25 UTC (rev 25711)
@@ -91,8 +91,10 @@
 				{
 					Statement statement = connection.createStatement();
 
-					System.err.println("DROP TABLE " + databaseUser + "_InfoTable");
-					statement.executeUpdate("DROP TABLE " + databaseUser + "_InfoTable");
+                    String tableName = JDBCProfileStore.getTableName(databaseUser, "Infotable");
+                    
+					System.err.println("DROP TABLE " + tableName );
+					statement.executeUpdate("DROP TABLE " + tableName);
 
 					statement.close();
 					connection.close();

Modified: labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/JDBCResources01Impls/JDBCInfoTableImpl01.java
===================================================================
--- labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/JDBCResources01Impls/JDBCInfoTableImpl01.java	2009-03-18 16:01:20 UTC (rev 25710)
+++ labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/JDBCResources01Impls/JDBCInfoTableImpl01.java	2009-03-18 16:30:25 UTC (rev 25711)
@@ -33,6 +33,7 @@
 
 import org.jboss.jbossts.qa.JDBCResources01.*;
 import org.jboss.jbossts.qa.Utils.OTS;
+import org.jboss.jbossts.qa.Utils.JDBCProfileStore;
 import org.omg.CORBA.StringHolder;
 
 import java.sql.*;
@@ -103,8 +104,11 @@
 			{
 				statement.setQueryTimeout(_databaseTimeout);
 			}
-			System.err.println("INSERT INTO " + _dbUser + "_InfoTable VALUES(\'" + name + "\', \'" + value + "\')");
-			statement.executeUpdate("INSERT INTO " + _dbUser + "_InfoTable VALUES(\'" + name + "\', \'" + value + "\')");
+            
+            String tableName = JDBCProfileStore.getTableName(_dbUser, "Infotable");
+            
+			System.err.println("INSERT INTO " + tableName + " VALUES(\'" + name + "\', \'" + value + "\')");
+			statement.executeUpdate("INSERT INTO " + tableName + " VALUES(\'" + name + "\', \'" + value + "\')");
 		}
 		catch (Exception exception)
 		{
@@ -143,8 +147,11 @@
 			{
 				statement.setQueryTimeout(_databaseTimeout);
 			}
-			System.err.println("UPDATE " + _dbUser + "_InfoTable SET Value = \'" + value + "\' WHERE Name = \'" + name + "\'");
-			statement.executeUpdate("UPDATE " + _dbUser + "_InfoTable SET Value = \'" + value + "\' WHERE Name = \'" + name + "\'");
+            
+            String tableName = JDBCProfileStore.getTableName(_dbUser, "Infotable");
+            
+			System.err.println("UPDATE " + tableName + " SET Value = \'" + value + "\' WHERE Name = \'" + name + "\'");
+			statement.executeUpdate("UPDATE " + tableName + " SET Value = \'" + value + "\' WHERE Name = \'" + name + "\'");
 		}
 		catch (Exception exception)
 		{
@@ -184,8 +191,11 @@
 			{
 				statement.setQueryTimeout(_databaseTimeout);
 			}
-			System.err.println("SELECT Value FROM " + _dbUser + "_InfoTable WHERE Name = \'" + name + "\'");
-			resultSet = statement.executeQuery("SELECT Value FROM " + _dbUser + "_InfoTable WHERE Name = \'" + name + "\'");
+            
+            String tableName = JDBCProfileStore.getTableName(_dbUser, "Infotable");
+            
+			System.err.println("SELECT Value FROM " + tableName + " WHERE Name = \'" + name + "\'");
+			resultSet = statement.executeQuery("SELECT Value FROM " + tableName + " WHERE Name = \'" + name + "\'");
 			if (!resultSet.next())
 			{
 				throw new Exception("Result set is empty - expected a row");
@@ -245,8 +255,11 @@
 			{
 				statement.setQueryTimeout(_databaseTimeout);
 			}
-			System.err.println("DELETE FROM " + _dbUser + "_InfoTable WHERE Name = \'" + name + "\'");
-			statement.executeUpdate("DELETE FROM " + _dbUser + "_InfoTable WHERE Name = \'" + name + "\'");
+            
+            String tableName = JDBCProfileStore.getTableName(_dbUser, "Infotable");
+            
+			System.err.println("DELETE FROM " + tableName + " WHERE Name = \'" + name + "\'");
+			statement.executeUpdate("DELETE FROM " + tableName + " WHERE Name = \'" + name + "\'");
 		}
 		catch (Exception exception)
 		{

Modified: labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/JDBCResources01Impls/JDBCInfoTableImpl02.java
===================================================================
--- labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/JDBCResources01Impls/JDBCInfoTableImpl02.java	2009-03-18 16:01:20 UTC (rev 25710)
+++ labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/JDBCResources01Impls/JDBCInfoTableImpl02.java	2009-03-18 16:30:25 UTC (rev 25711)
@@ -33,6 +33,7 @@
 
 import org.jboss.jbossts.qa.JDBCResources01.*;
 import org.jboss.jbossts.qa.Utils.OTS;
+import org.jboss.jbossts.qa.Utils.JDBCProfileStore;
 import org.omg.CORBA.StringHolder;
 import org.omg.CosTransactions.Status;
 
@@ -155,9 +156,11 @@
 			{
 				statement.setQueryTimeout(_databaseTimeout);
 			}
+            
+            String tableName = JDBCProfileStore.getTableName(_databaseUser, "Infotable");
 
-			System.err.println("INSERT INTO " + _databaseUser + "_InfoTable VALUES(\'" + name + "\', \'" + value + "\')");
-			statement.executeUpdate("INSERT INTO " + _databaseUser + "_InfoTable VALUES(\'" + name + "\', \'" + value + "\')");
+			System.err.println("INSERT INTO " + tableName + " VALUES(\'" + name + "\', \'" + value + "\')");
+			statement.executeUpdate("INSERT INTO " + tableName + " VALUES(\'" + name + "\', \'" + value + "\')");
 
 		}
 		catch (Exception exception)
@@ -250,8 +253,10 @@
 				statement.setQueryTimeout(_databaseTimeout);
 			}
 
-			System.err.println("UPDATE " + _databaseUser + "_InfoTable SET Value = \'" + value + "\' WHERE Name = \'" + name + "\'");
-			statement.executeUpdate("UPDATE " + _databaseUser + "_InfoTable SET Value = \'" + value + "\' WHERE Name = \'" + name + "\'");
+            String tableName = JDBCProfileStore.getTableName(_databaseUser, "Infotable");
+            
+			System.err.println("UPDATE " + tableName + " SET Value = \'" + value + "\' WHERE Name = \'" + name + "\'");
+			statement.executeUpdate("UPDATE " + tableName + " SET Value = \'" + value + "\' WHERE Name = \'" + name + "\'");
 
 		}
 		catch (Exception exception)
@@ -345,8 +350,10 @@
 				statement.setQueryTimeout(_databaseTimeout);
 			}
 
-			System.err.println("SELECT Value FROM " + _databaseUser + "_InfoTable WHERE Name = \'" + name + "\'");
-			resultSet = statement.executeQuery("SELECT Value FROM " + _databaseUser + "_InfoTable WHERE Name = \'" + name + "\'");
+            String tableName = JDBCProfileStore.getTableName(_databaseUser, "Infotable");
+            
+			System.err.println("SELECT Value FROM " + tableName + " WHERE Name = \'" + name + "\'");
+			resultSet = statement.executeQuery("SELECT Value FROM " + tableName + " WHERE Name = \'" + name + "\'");
 
 			if (!resultSet.next())
 			{
@@ -460,8 +467,10 @@
 				statement.setQueryTimeout(_databaseTimeout);
 			}
 
-			System.err.println("DELETE FROM " + _databaseUser + "_InfoTable WHERE Name = \'" + name + "\'");
-			statement.executeUpdate("DELETE FROM " + _databaseUser + "_InfoTable WHERE Name = \'" + name + "\'");
+            String tableName = JDBCProfileStore.getTableName(_databaseUser, "Infotable");
+            
+			System.err.println("DELETE FROM " + tableName + " WHERE Name = \'" + name + "\'");
+			statement.executeUpdate("DELETE FROM " + tableName + " WHERE Name = \'" + name + "\'");
 
 		}
 		catch (Exception exception)

Modified: labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/JDBCResources01Setups/Setup01.java
===================================================================
--- labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/JDBCResources01Setups/Setup01.java	2009-03-18 16:01:20 UTC (rev 25710)
+++ labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/JDBCResources01Setups/Setup01.java	2009-03-18 16:30:25 UTC (rev 25711)
@@ -86,11 +86,13 @@
 			}
 
 			Statement statement = connection.createStatement();
+            
+            String tableName = JDBCProfileStore.getTableName(databaseUser, "Infotable");
 
 			try
 			{
-				System.err.println("DROP TABLE " + databaseUser + "_InfoTable");
-				statement.executeUpdate("DROP TABLE " + databaseUser + "_InfoTable");
+				System.err.println("DROP TABLE " + tableName);
+				statement.executeUpdate("DROP TABLE " + tableName);
 			}
 			catch (java.sql.SQLException s)
 			{
@@ -102,8 +104,8 @@
 					System.err.println("SQL state is: <" + s.getSQLState() + ">");
 				}
 			}
-			System.err.println("CREATE TABLE " + databaseUser + "_InfoTable (Name VARCHAR(64), Value VARCHAR(64))");
-			statement.executeUpdate("CREATE TABLE " + databaseUser + "_InfoTable (Name VARCHAR(64), Value VARCHAR(64))");
+			System.err.println("CREATE TABLE " + tableName+" (Name VARCHAR(64), Value VARCHAR(64))");
+			statement.executeUpdate("CREATE TABLE " + tableName+" (Name VARCHAR(64), Value VARCHAR(64))");
 
 			statement.close();
 			connection.close();

Modified: labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/JDBCResources01Setups/Setup02.java
===================================================================
--- labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/JDBCResources01Setups/Setup02.java	2009-03-18 16:01:20 UTC (rev 25710)
+++ labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/JDBCResources01Setups/Setup02.java	2009-03-18 16:30:25 UTC (rev 25711)
@@ -91,10 +91,12 @@
 
 			Statement statement = connection.createStatement();
 
+            String tableName = JDBCProfileStore.getTableName(databaseUser, "Infotable");
+            
 			try
 			{
-				System.err.println("DROP TABLE " + databaseUser + "_InfoTable");
-				statement.executeUpdate("DROP TABLE " + databaseUser + "_InfoTable");
+				System.err.println("DROP TABLE " + tableName);
+				statement.executeUpdate("DROP TABLE " + tableName);
 			}
 			catch (java.sql.SQLException s)
 			{
@@ -107,22 +109,22 @@
 					passed = false;
 				}
 			}
-			System.err.println("CREATE TABLE " + databaseUser + "_InfoTable (Name VARCHAR(64), Value VARCHAR(64))");
-			statement.executeUpdate("CREATE TABLE " + databaseUser + "_InfoTable (Name VARCHAR(64), Value VARCHAR(64))");
+			System.err.println("CREATE TABLE " + tableName+" (Name VARCHAR(64), Value VARCHAR(64))");
+			statement.executeUpdate("CREATE TABLE " + tableName + " (Name VARCHAR(64), Value VARCHAR(64))");
 
 			// Create an Index for the table just created. Microsoft SQL requires an index for Row Locking.
-			System.err.println("CREATE UNIQUE INDEX " + databaseUser + "_IT_Ind " +
-					"ON " + databaseUser + "_InfoTable (Name) ");
-			statement.executeUpdate("CREATE UNIQUE INDEX " + databaseUser + "_IT_Ind " +
-					"ON " + databaseUser + "_InfoTable (Name) ");
+			System.err.println("CREATE UNIQUE INDEX " + tableName+"_idx " +
+					"ON " + tableName + " (Name) ");
+			statement.executeUpdate("CREATE UNIQUE INDEX " + tableName + "_idx " +
+					"ON " + tableName + " (Name) ");
 
             // sybase uses coarse grained locking by default and XA tx branches appear to be loose coupled i.e. do not share locks.
             // Unlike MSSQL, the presence of an index is not enough to cause the db to use row level locking. We need to configure
             // it explicitly instead. Without this the tests that use more than one server i.e. db conn/branch may block.
             if(useSybaseLockingHack) {
                 // force use of row level locking
-                System.err.println("configuring sybase row level locking: ALTER TABLE " + databaseUser + "_InfoTable lock datarows");
-                statement.executeUpdate("ALTER TABLE " + databaseUser + "_InfoTable lock datarows");
+                System.err.println("configuring sybase row level locking: ALTER TABLE " + tableName+" lock datarows");
+                statement.executeUpdate("ALTER TABLE " + tableName+" lock datarows");
             }
 
 			for (int index = 0; index < 10; index++)
@@ -130,8 +132,8 @@
 				String name = "Name_" + index;
 				String value = "Value_" + index;
 
-				System.err.println("INSERT INTO " + databaseUser + "_InfoTable VALUES(\'" + name + "\', \'" + value + "\')");
-				statement.executeUpdate("INSERT INTO " + databaseUser + "_InfoTable VALUES(\'" + name + "\', \'" + value + "\')");
+				System.err.println("INSERT INTO " + tableName+" VALUES(\'" + name + "\', \'" + value + "\')");
+				statement.executeUpdate("INSERT INTO " + tableName + " VALUES(\'" + name + "\', \'" + value + "\')");
 			}
 
 			statement.close();

Modified: labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/JDBCResources02Cleanups/Cleanup01.java
===================================================================
--- labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/JDBCResources02Cleanups/Cleanup01.java	2009-03-18 16:01:20 UTC (rev 25710)
+++ labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/JDBCResources02Cleanups/Cleanup01.java	2009-03-18 16:30:25 UTC (rev 25711)
@@ -85,14 +85,16 @@
 				connection = DriverManager.getConnection(databaseURL, databaseUser, databasePassword);
 			}
 
+            String tableName = JDBCProfileStore.getTableName(databaseUser, "Infotable");
+            
 			while (trying)
 			{
 				try
 				{
 					Statement statement = connection.createStatement();
 
-					System.err.println("DROP TABLE " + databaseUser + "_InfoTable");
-					statement.executeUpdate("DROP TABLE " + databaseUser + "_InfoTable");
+					System.err.println("DROP TABLE " + tableName);
+					statement.executeUpdate("DROP TABLE " + tableName);
 
 					statement.close();
 					connection.close();

Modified: labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/JDBCResources02Impls/JDBCInfoTableImpl01.java
===================================================================
--- labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/JDBCResources02Impls/JDBCInfoTableImpl01.java	2009-03-18 16:01:20 UTC (rev 25710)
+++ labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/JDBCResources02Impls/JDBCInfoTableImpl01.java	2009-03-18 16:30:25 UTC (rev 25711)
@@ -33,6 +33,7 @@
 
 import org.jboss.jbossts.qa.JDBCResources02.*;
 import org.jboss.jbossts.qa.Utils.OTS;
+import org.jboss.jbossts.qa.Utils.JDBCProfileStore;
 import org.omg.CORBA.StringHolder;
 import org.omg.CosTransactions.Control;
 
@@ -109,8 +110,10 @@
 					statement.setQueryTimeout(_databaseTimeout);
 				}
 
-				System.err.println("INSERT INTO " + _dbUser + "_InfoTable VALUES(\'" + name + "\', \'" + value + "\')");
-				statement.executeUpdate("INSERT INTO " + _dbUser + "_InfoTable VALUES(\'" + name + "\', \'" + value + "\')");
+                String tableName = JDBCProfileStore.getTableName(_dbUser, "Infotable");
+                
+				System.err.println("INSERT INTO " + tableName+" VALUES(\'" + name + "\', \'" + value + "\')");
+				statement.executeUpdate("INSERT INTO " + tableName + " VALUES(\'" + name + "\', \'" + value + "\')");
 			}
 			catch (Exception exception)
 			{
@@ -183,8 +186,10 @@
 					statement.setQueryTimeout(_databaseTimeout);
 				}
 
-				System.err.println("UPDATE " + _dbUser + "_InfoTable SET Value = \'" + value + "\' WHERE Name = \'" + name + "\'");
-				statement.executeUpdate("UPDATE " + _dbUser + "_InfoTable SET Value = \'" + value + "\' WHERE Name = \'" + name + "\'");
+                String tableName = JDBCProfileStore.getTableName(_dbUser, "Infotable");
+                
+				System.err.println("UPDATE " + tableName + " SET Value = \'" + value + "\' WHERE Name = \'" + name + "\'");
+				statement.executeUpdate("UPDATE " + tableName + " SET Value = \'" + value + "\' WHERE Name = \'" + name + "\'");
 			}
 			catch (Exception exception)
 			{
@@ -258,8 +263,10 @@
 					statement.setQueryTimeout(_databaseTimeout);
 				}
 
-				System.err.println("SELECT Value FROM " + _dbUser + "_InfoTable WHERE Name = \'" + name + "\'");
-				resultSet = statement.executeQuery("SELECT Value FROM " + _dbUser + "_InfoTable WHERE Name = \'" + name + "\'");
+                String tableName = JDBCProfileStore.getTableName(_dbUser, "Infotable");
+                
+				System.err.println("SELECT Value FROM " + tableName + " WHERE Name = \'" + name + "\'");
+				resultSet = statement.executeQuery("SELECT Value FROM " + tableName + " WHERE Name = \'" + name + "\'");
 				resultSet.next();
 				value.value = resultSet.getString("Value");
 				if (resultSet.next())
@@ -350,8 +357,10 @@
 					statement.setQueryTimeout(_databaseTimeout);
 				}
 
-				System.err.println("DELETE FROM " + _dbUser + "_InfoTable WHERE Name = \'" + name + "\'");
-				statement.executeUpdate("DELETE FROM " + _dbUser + "_InfoTable WHERE Name = \'" + name + "\'");
+                String tableName = JDBCProfileStore.getTableName(_dbUser, "Infotable");
+                
+				System.err.println("DELETE FROM " + tableName + " WHERE Name = \'" + name + "\'");
+				statement.executeUpdate("DELETE FROM " + tableName + " WHERE Name = \'" + name + "\'");
 			}
 			catch (Exception exception)
 			{

Modified: labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/JDBCResources02Impls/JDBCInfoTableImpl02.java
===================================================================
--- labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/JDBCResources02Impls/JDBCInfoTableImpl02.java	2009-03-18 16:01:20 UTC (rev 25710)
+++ labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/JDBCResources02Impls/JDBCInfoTableImpl02.java	2009-03-18 16:30:25 UTC (rev 25711)
@@ -33,6 +33,7 @@
 
 import org.jboss.jbossts.qa.JDBCResources02.*;
 import org.jboss.jbossts.qa.Utils.OTS;
+import org.jboss.jbossts.qa.Utils.JDBCProfileStore;
 import org.omg.CORBA.StringHolder;
 import org.omg.CosTransactions.Control;
 import org.omg.CosTransactions.Status;
@@ -134,8 +135,10 @@
 					statement.setQueryTimeout(_databaseTimeout);
 				}
 
-				System.err.println("INSERT INTO " + _databaseUser + "_InfoTable VALUES(\'" + name + "\', \'" + value + "\')");
-				statement.executeUpdate("INSERT INTO " + _databaseUser + "_InfoTable VALUES(\'" + name + "\', \'" + value + "\')");
+                String tableName = JDBCProfileStore.getTableName(_databaseUser, "Infotable");
+                
+				System.err.println("INSERT INTO " + tableName + " VALUES(\'" + name + "\', \'" + value + "\')");
+				statement.executeUpdate("INSERT INTO " + tableName + " VALUES(\'" + name + "\', \'" + value + "\')");
 			}
 			catch (Exception exception)
 			{
@@ -259,8 +262,10 @@
 					statement.setQueryTimeout(_databaseTimeout);
 				}
 
-				System.err.println("UPDATE " + _databaseUser + "_InfoTable SET Value = \'" + value + "\' WHERE Name = \'" + name + "\'");
-				statement.executeUpdate("UPDATE " + _databaseUser + "_InfoTable SET Value = \'" + value + "\' WHERE Name = \'" + name + "\'");
+                String tableName = JDBCProfileStore.getTableName(_databaseUser, "Infotable");
+                
+				System.err.println("UPDATE " + tableName + " SET Value = \'" + value + "\' WHERE Name = \'" + name + "\'");
+				statement.executeUpdate("UPDATE " + tableName + " SET Value = \'" + value + "\' WHERE Name = \'" + name + "\'");
 			}
 			catch (Exception exception)
 			{
@@ -386,8 +391,10 @@
 					statement.setQueryTimeout(_databaseTimeout);
 				}
 
-				System.err.println("SELECT Value FROM " + _databaseUser + "_InfoTable WHERE Name = \'" + name + "\'");
-				resultSet = statement.executeQuery("SELECT Value FROM " + _databaseUser + "_InfoTable WHERE Name = \'" + name + "\'");
+                String tableName = JDBCProfileStore.getTableName(_databaseUser, "Infotable");
+                
+				System.err.println("SELECT Value FROM " + tableName + " WHERE Name = \'" + name + "\'");
+				resultSet = statement.executeQuery("SELECT Value FROM " + tableName + " WHERE Name = \'" + name + "\'");
 				resultSet.next();
 				value.value = resultSet.getString("Value");
 				if (resultSet.next())
@@ -530,8 +537,10 @@
 					statement.setQueryTimeout(_databaseTimeout);
 				}
 
-				System.err.println("DELETE FROM " + _databaseUser + "_InfoTable WHERE Name = \'" + name + "\'");
-				statement.executeUpdate("DELETE FROM " + _databaseUser + "_InfoTable WHERE Name = \'" + name + "\'");
+                String tableName = JDBCProfileStore.getTableName(_databaseUser, "Infotable");
+                
+				System.err.println("DELETE FROM " + tableName + " WHERE Name = \'" + name + "\'");
+				statement.executeUpdate("DELETE FROM " + tableName + " WHERE Name = \'" + name + "\'");
 			}
 			catch (Exception exception)
 			{

Modified: labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/JDBCResources02Setups/Setup01.java
===================================================================
--- labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/JDBCResources02Setups/Setup01.java	2009-03-18 16:01:20 UTC (rev 25710)
+++ labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/JDBCResources02Setups/Setup01.java	2009-03-18 16:30:25 UTC (rev 25711)
@@ -85,10 +85,12 @@
 
 			Statement statement = connection.createStatement();
 
+            String tableName = JDBCProfileStore.getTableName(databaseUser, "Infotable");
+            
 			try
 			{
-				System.err.println("DROP TABLE " + databaseUser + "_InfoTable");
-				statement.executeUpdate("DROP TABLE " + databaseUser + "_InfoTable");
+				System.err.println("DROP TABLE " + tableName);
+				statement.executeUpdate("DROP TABLE " + tableName);
 			}
 			catch (java.sql.SQLException s)
 			{
@@ -100,8 +102,8 @@
 					System.err.println("SQL state is: <" + s.getSQLState() + ">");
 				}
 			}
-			System.err.println("CREATE TABLE " + databaseUser + "_InfoTable (Name VARCHAR(64), Value VARCHAR(64))");
-			statement.executeUpdate("CREATE TABLE " + databaseUser + "_InfoTable (Name VARCHAR(64), Value VARCHAR(64))");
+			System.err.println("CREATE TABLE " + tableName + " (Name VARCHAR(64), Value VARCHAR(64))");
+			statement.executeUpdate("CREATE TABLE " + tableName + " (Name VARCHAR(64), Value VARCHAR(64))");
 
 			statement.close();
 			connection.close();

Modified: labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/JDBCResources02Setups/Setup02.java
===================================================================
--- labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/JDBCResources02Setups/Setup02.java	2009-03-18 16:01:20 UTC (rev 25710)
+++ labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/JDBCResources02Setups/Setup02.java	2009-03-18 16:30:25 UTC (rev 25711)
@@ -91,10 +91,12 @@
 
 			Statement statement = connection.createStatement();
 
+            String tableName = JDBCProfileStore.getTableName(databaseUser, "Infotable");
+            
 			try
 			{
-				System.err.println("DROP TABLE " + databaseUser + "_InfoTable");
-				statement.executeUpdate("DROP TABLE " + databaseUser + "_InfoTable");
+				System.err.println("DROP TABLE " + tableName);
+				statement.executeUpdate("DROP TABLE " + tableName);
 			}
 			catch (java.sql.SQLException s)
 			{
@@ -106,22 +108,22 @@
 					System.err.println("SQL state is: <" + s.getSQLState() + ">");
 				}
 			}
-			System.err.println("CREATE TABLE " + databaseUser + "_InfoTable (Name VARCHAR(64), Value VARCHAR(64))");
-			statement.executeUpdate("CREATE TABLE " + databaseUser + "_InfoTable (Name VARCHAR(64), Value VARCHAR(64))");
+			System.err.println("CREATE TABLE " + tableName + " (Name VARCHAR(64), Value VARCHAR(64))");
+			statement.executeUpdate("CREATE TABLE " + tableName + " (Name VARCHAR(64), Value VARCHAR(64))");
 
 			// Create an Index for the table just created. Microsoft SQL requires an index for Row Locking.
-			System.err.println("CREATE UNIQUE INDEX " + databaseUser + "_IT_Ind " +
-					"ON " + databaseUser + "_InfoTable (Name) ");
-			statement.executeUpdate("CREATE UNIQUE INDEX " + databaseUser + "_IT_Ind " +
-					"ON " + databaseUser + "_InfoTable (Name) ");
+			System.err.println("CREATE UNIQUE INDEX " + tableName + "_idx " +
+					"ON " + tableName + " (Name) ");
+			statement.executeUpdate("CREATE UNIQUE INDEX " + tableName + "_idx " +
+					"ON " + tableName + " (Name) ");
 
             // sybase uses coarse grained locking by default and XA tx branches appear to be loose coupled i.e. do not share locks.
             // Unlike MSSQL, the presence of an index is not enough to cause the db to use row level locking. We need to configure
             // it explicitly instead. Without this the tests that use more than one server i.e. db conn/branch may block.
             if(useSybaseLockingHack) {
                 // force use of row level locking
-                System.err.println("configuring sybase row level locking: ALTER TABLE " + databaseUser + "_InfoTable lock datarows");
-                statement.executeUpdate("ALTER TABLE " + databaseUser + "_InfoTable lock datarows");
+                System.err.println("configuring sybase row level locking: ALTER TABLE " + tableName + " lock datarows");
+                statement.executeUpdate("ALTER TABLE " + tableName + " lock datarows");
             }
 
             for (int index = 0; index < 10; index++)
@@ -129,8 +131,8 @@
 				String name = "Name_" + index;
 				String value = "Value_" + index;
 
-				System.err.println("INSERT INTO " + databaseUser + "_InfoTable VALUES(\'" + name + "\', \'" + value + "\')");
-				statement.executeUpdate("INSERT INTO " + databaseUser + "_InfoTable VALUES(\'" + name + "\', \'" + value + "\')");
+				System.err.println("INSERT INTO " + tableName + " VALUES(\'" + name + "\', \'" + value + "\')");
+				statement.executeUpdate("INSERT INTO " + tableName + " VALUES(\'" + name + "\', \'" + value + "\')");
 			}
 
 			statement.close();

Modified: labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/Utils/JDBCProfileStore.java
===================================================================
--- labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/Utils/JDBCProfileStore.java	2009-03-18 16:01:20 UTC (rev 25710)
+++ labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/Utils/JDBCProfileStore.java	2009-03-18 16:30:25 UTC (rev 25711)
@@ -32,6 +32,7 @@
 import java.io.File;
 import java.io.FileInputStream;
 import java.util.Properties;
+import java.net.UnknownHostException;
 
 public class JDBCProfileStore
 {
@@ -142,6 +143,26 @@
 		return Integer.parseInt(loadedvalue);
 	}
 
+    public static String getTableName(String username, String suffix) throws UnknownHostException {
+        // read JBTM- before messing with this function.
+        // previously this would have been: username + "_" + suffix as in "DROP TABLE " + databaseUser + "_InfoTable");
+        String value = username+"_"+getLocalHostNameForTables()+"_"+suffix;
+        // in addition to the problems with the valid characters, there are issues with the max length.
+        // for oracle it's 30, but we stick a 4 char suffix on indexes, so the table name should not be more than 26
+        // in certain cases this may mean we wind up with non-uniq names, which is a pain.
+        if(value.length() > 26) {
+            value = value.substring(0, 26);
+        }
+        return value;
+    }
+    
+    private static String getLocalHostNameForTables() throws UnknownHostException { 
+        String hostName = java.net.InetAddress.getLocalHost().getHostName();
+        hostName = stripHostName(hostName); // strip to local portion, force lower case.
+        hostName = hostName.replace("-", "_"); // some db's don't like hyphens in identifiers
+        return hostName;
+    }
+    
 	private static void loadProfile()
 			throws Exception
 	{
@@ -156,13 +177,22 @@
 			}
 
 			_profile = new Properties();
+            
+            File file = new File(baseDir + File.separator + stripHostName(hostName) + File.separator + "JDBCProfiles");
+            
+            if(!file.exists()) {
+                // no host specific profile, fallback to a default one
+                file = new File(baseDir + File.separator + "default" + File.separator + "JDBCProfiles");
+            }
 
-			FileInputStream profileFileInputStream = new FileInputStream(baseDir + File.separator + stripHostName(hostName) + File.separator + "JDBCProfiles");
+			FileInputStream profileFileInputStream = new FileInputStream(file);
 			_profile.load(profileFileInputStream);
 			profileFileInputStream.close();
 		}
 	}
+    
 
+
 	private static String stripHostName(String hostName)
 	{
 		hostName = hostName.toLowerCase();




More information about the jboss-svn-commits mailing list