You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ode.apache.org by bo...@apache.org on 2007/01/17 20:56:11 UTC

svn commit: r497142 - in /incubator/ode/trunk: bpel-scheduler-quartz/src/main/java/org/apache/ode/bpel/scheduler/quartz/DataSourceConnectionProvider.java dao-hibernate/src/main/java/org/apache/ode/daohib/DataSourceConnectionProvider.java

Author: boisvert
Date: Wed Jan 17 11:56:10 2007
New Revision: 497142

URL: http://svn.apache.org/viewvc?view=rev&rev=497142
Log:
Allow override of connection isolation level via 'ode.connection.isolation' system property.
Useful for when the appserver is a little obtuse in its configurability.

Modified:
    incubator/ode/trunk/bpel-scheduler-quartz/src/main/java/org/apache/ode/bpel/scheduler/quartz/DataSourceConnectionProvider.java
    incubator/ode/trunk/dao-hibernate/src/main/java/org/apache/ode/daohib/DataSourceConnectionProvider.java

Modified: incubator/ode/trunk/bpel-scheduler-quartz/src/main/java/org/apache/ode/bpel/scheduler/quartz/DataSourceConnectionProvider.java
URL: http://svn.apache.org/viewvc/incubator/ode/trunk/bpel-scheduler-quartz/src/main/java/org/apache/ode/bpel/scheduler/quartz/DataSourceConnectionProvider.java?view=diff&rev=497142&r1=497141&r2=497142
==============================================================================
--- incubator/ode/trunk/bpel-scheduler-quartz/src/main/java/org/apache/ode/bpel/scheduler/quartz/DataSourceConnectionProvider.java (original)
+++ incubator/ode/trunk/bpel-scheduler-quartz/src/main/java/org/apache/ode/bpel/scheduler/quartz/DataSourceConnectionProvider.java Wed Jan 17 11:56:10 2007
@@ -28,13 +28,19 @@
 
 class DataSourceConnectionProvider implements ConnectionProvider {
   private DataSource _ds;
-  
+  private int _isolationLevel;
+
   DataSourceConnectionProvider(DataSource ds) {
     _ds = ds;
+    _isolationLevel = Integer.parseInt(System.getProperty("ode.connection.isolation", "0"));
   }
   
   public Connection getConnection() throws SQLException {
-    return _ds.getConnection();
+    Connection c = _ds.getConnection();
+    if (_isolationLevel != 0) {
+        c.setTransactionIsolation(_isolationLevel);
+    }
+    return c;
   }
 
   public void shutdown() throws SQLException {

Modified: incubator/ode/trunk/dao-hibernate/src/main/java/org/apache/ode/daohib/DataSourceConnectionProvider.java
URL: http://svn.apache.org/viewvc/incubator/ode/trunk/dao-hibernate/src/main/java/org/apache/ode/daohib/DataSourceConnectionProvider.java?view=diff&rev=497142&r1=497141&r2=497142
==============================================================================
--- incubator/ode/trunk/dao-hibernate/src/main/java/org/apache/ode/daohib/DataSourceConnectionProvider.java (original)
+++ incubator/ode/trunk/dao-hibernate/src/main/java/org/apache/ode/daohib/DataSourceConnectionProvider.java Wed Jan 17 11:56:10 2007
@@ -29,16 +29,22 @@
 public class DataSourceConnectionProvider implements ConnectionProvider {
 
   private Properties _props;
+  private int _isolationLevel;
   
   public DataSourceConnectionProvider() {
   }
   
   public void configure(Properties props) throws HibernateException {
     _props = props;
+    _isolationLevel = Integer.parseInt(System.getProperty("ode.connection.isolation", "0"));
   }
 
   public Connection getConnection() throws SQLException {
-    return SessionManager.getConnection(_props);
+    Connection c = SessionManager.getConnection(_props);
+    if (_isolationLevel != 0) {
+        c.setTransactionIsolation(_isolationLevel);
+    }
+    return c;
   }
 
   public void closeConnection(Connection arg0) throws SQLException {