[hibernate-commits] Hibernate SVN: r14186 - in branches/Branch_3_2/HibernateExt/tools/src: java/org/hibernate/cfg/reveng/dialect and 5 other directories.

hibernate-commits at lists.jboss.org hibernate-commits at lists.jboss.org
Sun Nov 4 03:51:52 EST 2007


Author: max.andersen at jboss.com
Date: 2007-11-04 03:51:49 -0500 (Sun, 04 Nov 2007)
New Revision: 14186

Modified:
   branches/Branch_3_2/HibernateExt/tools/src/java/org/hibernate/cfg/reveng/JDBCReader.java
   branches/Branch_3_2/HibernateExt/tools/src/java/org/hibernate/cfg/reveng/ReverseEngineeringRuntimeInfo.java
   branches/Branch_3_2/HibernateExt/tools/src/java/org/hibernate/cfg/reveng/dialect/AbstractMetaDataDialect.java
   branches/Branch_3_2/HibernateExt/tools/src/java/org/hibernate/cfg/reveng/dialect/CachedMetaDataDialect.java
   branches/Branch_3_2/HibernateExt/tools/src/java/org/hibernate/cfg/reveng/dialect/H2MetaDataDialect.java
   branches/Branch_3_2/HibernateExt/tools/src/java/org/hibernate/cfg/reveng/dialect/MetaDataDialect.java
   branches/Branch_3_2/HibernateExt/tools/src/java/org/hibernate/cfg/reveng/dialect/MySQLMetaDataDialect.java
   branches/Branch_3_2/HibernateExt/tools/src/templates/pojo/Ejb3PropertyGetAnnotation.ftl
   branches/Branch_3_2/HibernateExt/tools/src/test/org/hibernate/tool/BaseTestCase.java
   branches/Branch_3_2/HibernateExt/tools/src/test/org/hibernate/tool/NonReflectiveTestCase.java
   branches/Branch_3_2/HibernateExt/tools/src/test/org/hibernate/tool/hbm2x/CachedMetaDataTest.java
   branches/Branch_3_2/HibernateExt/tools/src/test/org/hibernate/tool/hbm2x/Hbm2XAllTests.java
   branches/Branch_3_2/HibernateExt/tools/src/test/org/hibernate/tool/test/DriverMetaDataTest.java
   branches/Branch_3_2/HibernateExt/tools/src/test5.0/org/hibernate/tool/hbm2x/Hbm2JavaEjb3ForJDK50Test.java
Log:
Fix @JoinColumn

HBX-1002 pass runtimeinfo to metadatadialect



Modified: branches/Branch_3_2/HibernateExt/tools/src/java/org/hibernate/cfg/reveng/JDBCReader.java
===================================================================
--- branches/Branch_3_2/HibernateExt/tools/src/java/org/hibernate/cfg/reveng/JDBCReader.java	2007-11-04 08:49:09 UTC (rev 14185)
+++ branches/Branch_3_2/HibernateExt/tools/src/java/org/hibernate/cfg/reveng/JDBCReader.java	2007-11-04 08:51:49 UTC (rev 14186)
@@ -63,7 +63,7 @@
 	public List readDatabaseSchema(DatabaseCollector dbs, String catalog, String schema, ProgressListener progress) {
 		try {
 			ReverseEngineeringRuntimeInfo info = new ReverseEngineeringRuntimeInfo(provider, sec, dbs);
-			getMetaDataDialect().configure(info.getConnectionProvider(), info.getSQLExceptionConverter());
+			getMetaDataDialect().configure(info);
 			revengStrategy.configure(info);
 			
 			Set hasIndices = new HashSet();

Modified: branches/Branch_3_2/HibernateExt/tools/src/java/org/hibernate/cfg/reveng/ReverseEngineeringRuntimeInfo.java
===================================================================
--- branches/Branch_3_2/HibernateExt/tools/src/java/org/hibernate/cfg/reveng/ReverseEngineeringRuntimeInfo.java	2007-11-04 08:49:09 UTC (rev 14185)
+++ branches/Branch_3_2/HibernateExt/tools/src/java/org/hibernate/cfg/reveng/ReverseEngineeringRuntimeInfo.java	2007-11-04 08:51:49 UTC (rev 14186)
@@ -2,6 +2,7 @@
 
 import org.hibernate.connection.ConnectionProvider;
 import org.hibernate.exception.SQLExceptionConverter;
+import org.hibernate.mapping.Table;
 
 /**
  * Provides runtime-only information for reverse engineering process.
@@ -14,10 +15,16 @@
 
 	private final ConnectionProvider connectionProvider;
 	private final SQLExceptionConverter SQLExceptionConverter;
+	private final DatabaseCollector dbs;
 	
+	public static ReverseEngineeringRuntimeInfo createInstance(ConnectionProvider provider, SQLExceptionConverter sec, DatabaseCollector dbs) {
+		return new ReverseEngineeringRuntimeInfo(provider,sec,dbs);
+	}
+	
 	protected ReverseEngineeringRuntimeInfo(ConnectionProvider provider, SQLExceptionConverter sec, DatabaseCollector dbs) {
 		this.connectionProvider = provider;
-		this.SQLExceptionConverter = sec;	
+		this.SQLExceptionConverter = sec;
+		this.dbs = dbs;
 	}
 	
 	public ConnectionProvider getConnectionProvider() {
@@ -28,6 +35,24 @@
 		return SQLExceptionConverter;
 	}
 	
+	/** Shorthand for {@link getTable(String,String,String)} **/
+	public Table getTable(TableIdentifier ti) {
+		return dbs.getTable(ti.getSchema(), ti.getCatalog(), ti.getName());
+	}
 	
+	/**
+	 * Look up the table identified by the parameters in the currently found tables. 
+	 * Warning: The table might not be fully initialized yet.  
+	 * 
+	 * @param catalog
+	 * @param schema
+	 * @param name
+	 * @return Table if found in processd tables, null if not
+	 */
+	public Table getTable(String catalog, String schema, String name) {
+		return dbs.getTable(schema, catalog, name);				
+	}
+	
+	
 		
 }

Modified: branches/Branch_3_2/HibernateExt/tools/src/java/org/hibernate/cfg/reveng/dialect/AbstractMetaDataDialect.java
===================================================================
--- branches/Branch_3_2/HibernateExt/tools/src/java/org/hibernate/cfg/reveng/dialect/AbstractMetaDataDialect.java	2007-11-04 08:49:09 UTC (rev 14185)
+++ branches/Branch_3_2/HibernateExt/tools/src/java/org/hibernate/cfg/reveng/dialect/AbstractMetaDataDialect.java	2007-11-04 08:51:49 UTC (rev 14186)
@@ -13,6 +13,7 @@
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 import org.hibernate.cfg.JDBCBinderException;
+import org.hibernate.cfg.reveng.ReverseEngineeringRuntimeInfo;
 import org.hibernate.connection.ConnectionProvider;
 import org.hibernate.exception.SQLExceptionConverter;
 import org.hibernate.util.StringHelper;
@@ -27,25 +28,23 @@
 abstract public class AbstractMetaDataDialect implements MetaDataDialect {
 
 	protected final Log log = LogFactory.getLog(this.getClass());
-
-	private SQLExceptionConverter sec;
-	private ConnectionProvider provider;
 	
 	private Connection connection;
 	private DatabaseMetaData metaData;
 
+	private ReverseEngineeringRuntimeInfo info;
 
-	public void configure(ConnectionProvider provider, SQLExceptionConverter sec) {
-		this.provider = provider;
-		this.sec = sec;		
+
+	public void configure(ReverseEngineeringRuntimeInfo info) {
+		this.info = info;
+				
 	}
 	
-	
 	public void close() {
 		metaData = null;
 		if(connection != null) {
 			try {
-				provider.closeConnection(connection);				
+				info.getConnectionProvider().closeConnection(connection);				
 			}
 			catch (SQLException e) {
 				throw getSQLExceptionConverter().convert(e, "Problem while closing connection", null);
@@ -53,8 +52,7 @@
 				connection = null;
 			}
 		}
-		provider = null;
-		sec = null;
+		info = null;		
 	}
 	
 	protected DatabaseMetaData getMetaData() throws JDBCBinderException {
@@ -121,11 +119,15 @@
 
 	protected Connection getConnection() throws SQLException {
 		if(connection==null) {
-			connection = provider.getConnection();
+			connection = info.getConnectionProvider().getConnection();
 		}
 		return connection;
 	}
 	
+	public ReverseEngineeringRuntimeInfo getReverseEngineeringRuntimeInfo() {
+		return info;
+	}
+	
 	public void close(Iterator iterator) {
 		if(iterator instanceof ResultSetIterator) {
 			((ResultSetIterator)iterator).close();
@@ -133,7 +135,7 @@
 	}
 	
 	protected SQLExceptionConverter getSQLExceptionConverter() {
-		return sec;
+		return info.getSQLExceptionConverter();
 	}
 	
 	public boolean needQuote(String name) {

Modified: branches/Branch_3_2/HibernateExt/tools/src/java/org/hibernate/cfg/reveng/dialect/CachedMetaDataDialect.java
===================================================================
--- branches/Branch_3_2/HibernateExt/tools/src/java/org/hibernate/cfg/reveng/dialect/CachedMetaDataDialect.java	2007-11-04 08:49:09 UTC (rev 14185)
+++ branches/Branch_3_2/HibernateExt/tools/src/java/org/hibernate/cfg/reveng/dialect/CachedMetaDataDialect.java	2007-11-04 08:51:49 UTC (rev 14186)
@@ -6,6 +6,7 @@
 import java.util.List;
 import java.util.Map;
 
+import org.hibernate.cfg.reveng.ReverseEngineeringRuntimeInfo;
 import org.hibernate.connection.ConnectionProvider;
 import org.hibernate.exception.SQLExceptionConverter;
 
@@ -27,6 +28,10 @@
 		delegate.close();
 	}
 
+	public void configure(ReverseEngineeringRuntimeInfo info) {
+        delegate.configure(info);       
+    }
+	
 	public void close(Iterator iterator) {
 		if(iterator instanceof CachedIterator) {
 			CachedIterator ci = (CachedIterator) iterator;
@@ -38,9 +43,7 @@
 		delegate.close( iterator );
 	}
 
-	public void configure(ConnectionProvider provider, SQLExceptionConverter sec) {
-		delegate.configure( provider, sec );
-	}
+	
 
 	public Iterator getColumns(String catalog, String schema, String table, String column) {
 		StringKey sk = new StringKey(new String[] { catalog, schema, table, column });
@@ -201,5 +204,7 @@
 		}
 	}
 
+	
+
 		
 }

Modified: branches/Branch_3_2/HibernateExt/tools/src/java/org/hibernate/cfg/reveng/dialect/H2MetaDataDialect.java
===================================================================
--- branches/Branch_3_2/HibernateExt/tools/src/java/org/hibernate/cfg/reveng/dialect/H2MetaDataDialect.java	2007-11-04 08:49:09 UTC (rev 14185)
+++ branches/Branch_3_2/HibernateExt/tools/src/java/org/hibernate/cfg/reveng/dialect/H2MetaDataDialect.java	2007-11-04 08:51:49 UTC (rev 14186)
@@ -55,7 +55,7 @@
 				schema = caseForSearch( schema );
 				table = caseForSearch( table );
 				
-				log.debug("getTables(" + catalog + "." + schema + "." + table + ")");
+				log.debug("geSuggestedPrimaryKeyStrategyName(" + catalog + "." + schema + "." + table + ")");
 				
 				String sql =  "SELECT idx.TABLE_CATALOG TABLE_CAT, idx.TABLE_SCHEMA TABLE_SCHEM, idx.TABLE_NAME, idx.COLUMN_NAME, cols.COLUMN_DEFAULT COLUMN_DEFAULT FROM " +
 						"INFORMATION_SCHEMA.INDEXES idx, INFORMATION_SCHEMA.COLUMNS cols " +
@@ -95,7 +95,7 @@
 					}
 				};
 			} catch (SQLException e) {
-				throw getSQLExceptionConverter().convert(e, "Could not get list of tables from database. Probably a JDBC driver problem.", null);		         
+				throw getSQLExceptionConverter().convert(e, "Could not get list of suggested identity strategies from database. Probably a JDBC driver problem.", null);		         
 			} 		
 	}
 }

Modified: branches/Branch_3_2/HibernateExt/tools/src/java/org/hibernate/cfg/reveng/dialect/MetaDataDialect.java
===================================================================
--- branches/Branch_3_2/HibernateExt/tools/src/java/org/hibernate/cfg/reveng/dialect/MetaDataDialect.java	2007-11-04 08:49:09 UTC (rev 14185)
+++ branches/Branch_3_2/HibernateExt/tools/src/java/org/hibernate/cfg/reveng/dialect/MetaDataDialect.java	2007-11-04 08:51:49 UTC (rev 14186)
@@ -2,6 +2,7 @@
 
 import java.util.Iterator;
 
+import org.hibernate.cfg.reveng.ReverseEngineeringRuntimeInfo;
 import org.hibernate.connection.ConnectionProvider;
 import org.hibernate.exception.SQLExceptionConverter;
 
@@ -20,10 +21,9 @@
 
 	/**
 	 * Configure the metadatadialect. 
-	 * @param provider a connectionprovider. It is the responsibility of the metadatadialect to open/close any used connections via this provider.
-	 * @param sec sqlexceptionConverter, use to convert any possible SQLExceptionsConverter.
+	 * @param info a {@link ReverseEngineeringRuntimeInfo} to extract Connection and SQLExceptionConverter and other runtime info
 	 */
-	public void configure(ConnectionProvider provider, SQLExceptionConverter sec);
+	public void configure(ReverseEngineeringRuntimeInfo info);
 	
 	/** 
 	 * Return iterator over the tables that mathces catalog, schema and table
@@ -105,4 +105,6 @@
 	 * @return iterator with map elements that has "TABLE_NAME", "TABLE_SCHEMA", "TABLE_CAT", "HIBERNATE_STRATEGY" (null if no possible to determine strategy, otherwise return hibernate identifier strategy name/classname)
 	 */
 	public Iterator getSuggestedPrimaryKeyStrategyName(String catalog, String schema, String table);
+
+	
 }

Modified: branches/Branch_3_2/HibernateExt/tools/src/java/org/hibernate/cfg/reveng/dialect/MySQLMetaDataDialect.java
===================================================================
--- branches/Branch_3_2/HibernateExt/tools/src/java/org/hibernate/cfg/reveng/dialect/MySQLMetaDataDialect.java	2007-11-04 08:49:09 UTC (rev 14185)
+++ branches/Branch_3_2/HibernateExt/tools/src/java/org/hibernate/cfg/reveng/dialect/MySQLMetaDataDialect.java	2007-11-04 08:51:49 UTC (rev 14186)
@@ -20,7 +20,7 @@
 				schema = caseForSearch( schema );
 				table = caseForSearch( table );
 				
-				log.debug("getTables(" + catalog + "." + schema + "." + table + ")");
+				log.debug("geSuggestedPrimaryKeyStrategyName(" + catalog + "." + schema + "." + table + ")");
 				
 				sql = "show table status " + (schema==null?"":" from " + schema + " ") + (table==null?"":" like '" + table + "' ");
 				PreparedStatement statement = getConnection().prepareStatement( sql );

Modified: branches/Branch_3_2/HibernateExt/tools/src/templates/pojo/Ejb3PropertyGetAnnotation.ftl
===================================================================
--- branches/Branch_3_2/HibernateExt/tools/src/templates/pojo/Ejb3PropertyGetAnnotation.ftl	2007-11-04 08:49:09 UTC (rev 14185)
+++ branches/Branch_3_2/HibernateExt/tools/src/templates/pojo/Ejb3PropertyGetAnnotation.ftl	2007-11-04 08:51:49 UTC (rev 14186)
@@ -10,7 +10,7 @@
 <#--TODO support @OneToOne true and false-->    
 ${pojo.generateManyToOneAnnotation(property)}
 <#--TODO support optional and targetEntity-->    
-${pojo.generateJoinColumnsAnnotation(property)}
+${pojo.generateJoinColumnsAnnotation(property, cfg)}
 <#elseif c2h.isCollection(property)>
 ${pojo.generateCollectionAnnotation(property, cfg)}
 <#else>

Modified: branches/Branch_3_2/HibernateExt/tools/src/test/org/hibernate/tool/BaseTestCase.java
===================================================================
--- branches/Branch_3_2/HibernateExt/tools/src/test/org/hibernate/tool/BaseTestCase.java	2007-11-04 08:49:09 UTC (rev 14185)
+++ branches/Branch_3_2/HibernateExt/tools/src/test/org/hibernate/tool/BaseTestCase.java	2007-11-04 08:51:49 UTC (rev 14186)
@@ -4,9 +4,13 @@
 import java.io.FileWriter;
 import java.io.IOException;
 import java.io.PrintWriter;
+import java.net.URL;
+import java.net.URLClassLoader;
 import java.sql.Connection;
 import java.sql.SQLException;
+import java.util.ArrayList;
 import java.util.Iterator;
+import java.util.List;
 
 import junit.framework.ComparisonFailure;
 import junit.framework.TestCase;
@@ -18,12 +22,69 @@
 import org.dom4j.io.SAXReader;
 import org.hibernate.cfg.Configuration;
 import org.hibernate.cfg.Settings;
+import org.hibernate.cfg.reveng.DefaultDatabaseCollector;
+import org.hibernate.cfg.reveng.ReverseEngineeringRuntimeInfo;
 import org.hibernate.cfg.reveng.dialect.JDBCMetaDataDialect;
 import org.hibernate.dialect.Dialect;
 import org.hibernate.tool.test.TestHelper;
 
 public abstract class BaseTestCase extends TestCase {
 
+	protected static abstract class ExecuteContext {
+	
+		private final File sourceDir;
+		private final File outputDir;
+		private final List jars;
+		private URLClassLoader ucl;
+	
+		public ExecuteContext(File sourceDir, File outputDir, List jars) {
+			this.sourceDir = sourceDir;
+			this.outputDir = outputDir;
+			this.jars = jars;
+		}
+		
+		public void run() throws Exception {
+			
+			TestHelper.compile(
+					sourceDir, outputDir, TestHelper.visitAllFiles( sourceDir, new ArrayList() ), "1.5",
+					TestHelper.buildClasspath( jars )
+			);
+			URL[] urls = TestHelper.buildClasspathURLS(jars, outputDir);
+			
+			Thread currentThread = null;
+			ClassLoader contextClassLoader = null;
+			
+			try {
+			currentThread = Thread.currentThread();
+			contextClassLoader = currentThread.getContextClassLoader();
+			ucl = new URLClassLoader( urls, contextClassLoader ) {
+				
+				public Class loadClass(String name)
+						throws ClassNotFoundException {
+					// TODO Auto-generated method stub
+					return super.loadClass(name);
+				}
+				
+				
+			};
+			currentThread.setContextClassLoader( ucl );
+	
+			execute();
+			
+			} finally {
+				currentThread.setContextClassLoader( contextClassLoader );
+				TestHelper.deleteDir( outputDir );
+			}
+		}
+	
+		public URLClassLoader getUcl() {
+			return ucl;
+		}
+		
+		abstract protected void execute() throws Exception;
+		
+	}
+
 	protected static final Log SKIP_LOG = LogFactory.getLog("org.hibernate.tool.test.SKIPPED");
 	
 	private File outputdir;
@@ -87,7 +148,8 @@
 		con = testSettings.getConnectionProvider().getConnection();
 		
 		JDBCMetaDataDialect dialect = new JDBCMetaDataDialect();
-		dialect.configure( testSettings.getConnectionProvider(), testSettings.getSQLExceptionConverter() );
+		
+		dialect.configure( ReverseEngineeringRuntimeInfo.createInstance(testSettings.getConnectionProvider(), testSettings.getSQLExceptionConverter(), new DefaultDatabaseCollector()));
 		Iterator tables = dialect.getTables( testSettings.getDefaultCatalogName(), testSettings.getDefaultSchemaName(), null );
 		
 		assertHasNext( 0, tables );

Modified: branches/Branch_3_2/HibernateExt/tools/src/test/org/hibernate/tool/NonReflectiveTestCase.java
===================================================================
--- branches/Branch_3_2/HibernateExt/tools/src/test/org/hibernate/tool/NonReflectiveTestCase.java	2007-11-04 08:49:09 UTC (rev 14185)
+++ branches/Branch_3_2/HibernateExt/tools/src/test/org/hibernate/tool/NonReflectiveTestCase.java	2007-11-04 08:51:49 UTC (rev 14186)
@@ -1,6 +1,7 @@
 //$Id$
 package org.hibernate.tool;
 
+
 import org.hibernate.HibernateException;
 import org.hibernate.Interceptor;
 import org.hibernate.SessionFactory;

Modified: branches/Branch_3_2/HibernateExt/tools/src/test/org/hibernate/tool/hbm2x/CachedMetaDataTest.java
===================================================================
--- branches/Branch_3_2/HibernateExt/tools/src/test/org/hibernate/tool/hbm2x/CachedMetaDataTest.java	2007-11-04 08:49:09 UTC (rev 14185)
+++ branches/Branch_3_2/HibernateExt/tools/src/test/org/hibernate/tool/hbm2x/CachedMetaDataTest.java	2007-11-04 08:51:49 UTC (rev 14186)
@@ -13,6 +13,7 @@
 import org.hibernate.cfg.reveng.DefaultDatabaseCollector;
 import org.hibernate.cfg.reveng.DefaultReverseEngineeringStrategy;
 import org.hibernate.cfg.reveng.JDBCReader;
+import org.hibernate.cfg.reveng.ReverseEngineeringRuntimeInfo;
 import org.hibernate.cfg.reveng.dialect.CachedMetaDataDialect;
 import org.hibernate.cfg.reveng.dialect.MetaDataDialect;
 import org.hibernate.connection.ConnectionProvider;
@@ -49,10 +50,10 @@
 			delegate.close( iterator );
 		}
 
-		public void configure(ConnectionProvider provider, SQLExceptionConverter sec) {
-			delegate.configure( provider, sec );			
+		public void configure(ReverseEngineeringRuntimeInfo info) {
+			delegate.configure(info);			
 		}
-
+		
 		public Iterator getColumns(String catalog, String schema, String table, String column) {
 			if(failOnDelegateAccess) {
 				throw new IllegalStateException("delegate not accessible");

Modified: branches/Branch_3_2/HibernateExt/tools/src/test/org/hibernate/tool/hbm2x/Hbm2XAllTests.java
===================================================================
--- branches/Branch_3_2/HibernateExt/tools/src/test/org/hibernate/tool/hbm2x/Hbm2XAllTests.java	2007-11-04 08:49:09 UTC (rev 14185)
+++ branches/Branch_3_2/HibernateExt/tools/src/test/org/hibernate/tool/hbm2x/Hbm2XAllTests.java	2007-11-04 08:51:49 UTC (rev 14186)
@@ -1,5 +1,8 @@
 package org.hibernate.tool.hbm2x;
 
+import org.hibernate.tool.test.jdbc2cfg.identity.H2IdentityTest;
+import org.hibernate.tool.test.jdbc2cfg.identity.MySQLIdentityTest;
+
 import junit.framework.Test;
 import junit.framework.TestSuite;
 
@@ -28,8 +31,11 @@
 		suite.addTestSuite(Hbm2JavaEjb3Test.class);
 		suite.addTestSuite(XMLPrettyPrinterTest.class);
 		suite.addTestSuite(GenericExporterTest.class);
-		suite.addTestSuite(Hbm2JavaTest.class);
+		suite.addTestSuite(Hbm2JavaTest.class);		
 		//$JUnit-END$
+		
+		suite.addTestSuite(H2IdentityTest.class);
+		suite.addTestSuite(MySQLIdentityTest.class);
 		return suite;
 	}
 

Modified: branches/Branch_3_2/HibernateExt/tools/src/test/org/hibernate/tool/test/DriverMetaDataTest.java
===================================================================
--- branches/Branch_3_2/HibernateExt/tools/src/test/org/hibernate/tool/test/DriverMetaDataTest.java	2007-11-04 08:49:09 UTC (rev 14185)
+++ branches/Branch_3_2/HibernateExt/tools/src/test/org/hibernate/tool/test/DriverMetaDataTest.java	2007-11-04 08:51:49 UTC (rev 14186)
@@ -4,6 +4,8 @@
 import java.util.Map;
 
 import org.hibernate.cfg.Settings;
+import org.hibernate.cfg.reveng.DefaultDatabaseCollector;
+import org.hibernate.cfg.reveng.ReverseEngineeringRuntimeInfo;
 import org.hibernate.cfg.reveng.dialect.JDBCMetaDataDialect;
 import org.hibernate.cfg.reveng.dialect.MetaDataDialect;
 import org.hibernate.tool.JDBCMetaDataBinderTestCase;
@@ -39,7 +41,7 @@
 		
 		Settings settings = cfg.buildSettings();
 		
-		dialect.configure( settings.getConnectionProvider(), settings.getSQLExceptionConverter() );
+		dialect.configure( ReverseEngineeringRuntimeInfo.createInstance(settings.getConnectionProvider(), settings.getSQLExceptionConverter(), new DefaultDatabaseCollector()));
 		
 		Iterator tables = dialect.getTables( settings.getDefaultCatalogName(), settings.getDefaultSchemaName(), identifier("tab_master") ); 
 		
@@ -74,7 +76,7 @@
 		
 		Settings settings = cfg.buildSettings();
 		
-		dialect.configure( settings.getConnectionProvider(), settings.getSQLExceptionConverter() );
+		dialect.configure( ReverseEngineeringRuntimeInfo.createInstance(settings.getConnectionProvider(), settings.getSQLExceptionConverter(), new DefaultDatabaseCollector()));
 		
 		Iterator tables = dialect.getColumns( settings.getDefaultCatalogName(), settings.getDefaultSchemaName(), "test", null ); 
 		
@@ -94,7 +96,7 @@
 		
 		Settings settings = cfg.buildSettings();
 		
-		dialect.configure( settings.getConnectionProvider(), settings.getSQLExceptionConverter() );
+		dialect.configure( ReverseEngineeringRuntimeInfo.createInstance(settings.getConnectionProvider(), settings.getSQLExceptionConverter(), new DefaultDatabaseCollector()));
 		
 		Iterator tables = dialect.getTables( settings.getDefaultCatalogName(), settings.getDefaultSchemaName(), identifier( "TAB_MASTER"));
 		

Modified: branches/Branch_3_2/HibernateExt/tools/src/test5.0/org/hibernate/tool/hbm2x/Hbm2JavaEjb3ForJDK50Test.java
===================================================================
--- branches/Branch_3_2/HibernateExt/tools/src/test5.0/org/hibernate/tool/hbm2x/Hbm2JavaEjb3ForJDK50Test.java	2007-11-04 08:49:09 UTC (rev 14185)
+++ branches/Branch_3_2/HibernateExt/tools/src/test5.0/org/hibernate/tool/hbm2x/Hbm2JavaEjb3ForJDK50Test.java	2007-11-04 08:51:49 UTC (rev 14186)
@@ -205,61 +205,6 @@
 		}.run();
 	}
 
-	static abstract class ExecuteContext {
-	
-		private final File sourceDir;
-		private final File outputDir;
-		private final List jars;
-		private URLClassLoader ucl;
-
-		public ExecuteContext(File sourceDir, File outputDir, List jars) {
-			this.sourceDir = sourceDir;
-			this.outputDir = outputDir;
-			this.jars = jars;
-		}
-		
-		public void run() throws Exception {
-			
-			TestHelper.compile(
-					sourceDir, outputDir, TestHelper.visitAllFiles( sourceDir, new ArrayList() ), "1.5",
-					TestHelper.buildClasspath( jars )
-			);
-			URL[] urls = TestHelper.buildClasspathURLS(jars, outputDir);
-			
-			Thread currentThread = null;
-			ClassLoader contextClassLoader = null;
-			
-			try {
-			currentThread = Thread.currentThread();
-			contextClassLoader = currentThread.getContextClassLoader();
-			ucl = new URLClassLoader( urls, contextClassLoader ) {
-				
-				public Class loadClass(String name)
-						throws ClassNotFoundException {
-					// TODO Auto-generated method stub
-					return super.loadClass(name);
-				}
-				
-				
-			};
-			currentThread.setContextClassLoader( ucl );
-
-			execute();
-			
-			} finally {
-				currentThread.setContextClassLoader( contextClassLoader );
-				TestHelper.deleteDir( outputDir );
-			}
-		}
-
-		public URLClassLoader getUcl() {
-			return ucl;
-		}
-		
-		abstract protected void execute() throws Exception;
-		
-	}
-	
 	private void testGenerator(final String className) throws Exception {
 		
 		File file = new File( "ejb3compilable" );




More information about the hibernate-commits mailing list