[hibernate-commits] Hibernate SVN: r11042 - trunk/HibernateExt/ejb/src/java/org/hibernate/ejb/packaging.

hibernate-commits at lists.jboss.org hibernate-commits at lists.jboss.org
Mon Jan 15 15:50:21 EST 2007


Author: bill.burke at jboss.com
Date: 2007-01-15 15:50:19 -0500 (Mon, 15 Jan 2007)
New Revision: 11042

Modified:
   trunk/HibernateExt/ejb/src/java/org/hibernate/ejb/packaging/PersistenceXmlLoader.java
Log:
allow for passing in of default TransactionType

Modified: trunk/HibernateExt/ejb/src/java/org/hibernate/ejb/packaging/PersistenceXmlLoader.java
===================================================================
--- trunk/HibernateExt/ejb/src/java/org/hibernate/ejb/packaging/PersistenceXmlLoader.java	2007-01-15 15:41:01 UTC (rev 11041)
+++ trunk/HibernateExt/ejb/src/java/org/hibernate/ejb/packaging/PersistenceXmlLoader.java	2007-01-15 20:50:19 UTC (rev 11042)
@@ -68,8 +68,12 @@
 		return doc;
 	}
 
-	public static List<PersistenceMetadata> deploy(URL url, Map overrides, EntityResolver resolver) throws Exception {
+   public static List<PersistenceMetadata> deploy(URL url, Map overrides, EntityResolver resolver) throws Exception {
+      return deploy(url, overrides, resolver, PersistenceUnitTransactionType.RESOURCE_LOCAL);
+   }
 
+
+   public static List<PersistenceMetadata> deploy(URL url, Map overrides, EntityResolver resolver, PersistenceUnitTransactionType defaultTransactionType) throws Exception {
 		Document doc = loadURL( url, resolver );
 		Element top = doc.getDocumentElement();
 		NodeList children = top.getChildNodes();
@@ -79,7 +83,7 @@
 				Element element = (Element) children.item( i );
 				String tag = element.getTagName();
 				if ( tag.equals( "persistence-unit" ) ) {
-					PersistenceMetadata metadata = parsePersistenceUnit( element );
+					PersistenceMetadata metadata = parsePersistenceUnit( element, defaultTransactionType);
 					//override properties of metadata if needed
 					String provider = (String) overrides.get( HibernatePersistence.PROVIDER );
 					if ( provider != null ) {
@@ -107,7 +111,7 @@
 		return units;
 	}
 
-	private static PersistenceMetadata parsePersistenceUnit(Element top)
+	private static PersistenceMetadata parsePersistenceUnit(Element top, PersistenceUnitTransactionType defaultTransactionType)
 			throws Exception {
 		PersistenceMetadata metadata = new PersistenceMetadata();
 		String puName = top.getAttribute( "name" );
@@ -117,7 +121,7 @@
 		}
 		PersistenceUnitTransactionType transactionType = getTransactionType( top.getAttribute( "transaction-type" ) );
 		//parsing a persistence.xml means we are in a JavaSE environment
-		transactionType = transactionType != null ? transactionType : PersistenceUnitTransactionType.RESOURCE_LOCAL;
+		transactionType = transactionType != null ? transactionType : defaultTransactionType;
 		metadata.setTransactionType( transactionType );
 		NodeList children = top.getChildNodes();
 		for ( int i = 0; i < children.getLength() ; i++ ) {




More information about the hibernate-commits mailing list