You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ode.apache.org by ms...@apache.org on 2007/01/02 21:45:59 UTC

svn commit: r491931 - in /incubator/ode/trunk/bpel-test/src: main/java/org/apache/ode/test/scheduler/TestScheduler.java test/java/org/apache/ode/test/BPELTest.java

Author: mszefler
Date: Tue Jan  2 12:45:58 2007
New Revision: 491931

URL: http://svn.apache.org/viewvc?view=rev&rev=491931
Log:
rollback.

Modified:
    incubator/ode/trunk/bpel-test/src/main/java/org/apache/ode/test/scheduler/TestScheduler.java
    incubator/ode/trunk/bpel-test/src/test/java/org/apache/ode/test/BPELTest.java

Modified: incubator/ode/trunk/bpel-test/src/main/java/org/apache/ode/test/scheduler/TestScheduler.java
URL: http://svn.apache.org/viewvc/incubator/ode/trunk/bpel-test/src/main/java/org/apache/ode/test/scheduler/TestScheduler.java?view=diff&rev=491931&r1=491930&r2=491931
==============================================================================
--- incubator/ode/trunk/bpel-test/src/main/java/org/apache/ode/test/scheduler/TestScheduler.java (original)
+++ incubator/ode/trunk/bpel-test/src/main/java/org/apache/ode/test/scheduler/TestScheduler.java Tue Jan  2 12:45:58 2007
@@ -31,13 +31,12 @@
 import org.apache.ode.bpel.iapi.Scheduler.Synchronizer;
 
 public class TestScheduler implements Scheduler {
-    ThreadLocal<List<Scheduler.Synchronizer>> _synchros = 
-        new ThreadLocal<List<Scheduler.Synchronizer>>() {
-            @Override
-            protected List<Synchronizer> initialValue() {
-                return new ArrayList<Synchronizer>();
-            }
-        
+    ThreadLocal<List<Scheduler.Synchronizer>> _synchros = new ThreadLocal<List<Scheduler.Synchronizer>>() {
+        @Override
+        protected List<Synchronizer> initialValue() {
+            return new ArrayList<Synchronizer>();
+        }
+
     };
 
     public String schedulePersistedJob(Map<String, Object> arg0, Date arg1) throws ContextException {
@@ -74,11 +73,11 @@
     public void registerSynchronizer(Synchronizer synch) throws ContextException {
         _synchros.get().add(synch);
     }
-    
-    public void begin(){
+
+    public void begin() {
         _synchros.get().clear();
     }
-    
+
     public void commit() {
         for (Synchronizer s : _synchros.get())
             try {
@@ -90,8 +89,21 @@
                 s.afterCompletion(true);
             } catch (Throwable t) {
             }
-            
+
         _synchros.get().clear();
     }
-}
 
+    public void rollback() {
+        for (Synchronizer s : _synchros.get())
+            try {
+                s.beforeCompletion();
+            } catch (Throwable t) {
+            }
+        for (Synchronizer s : _synchros.get())
+            try {
+                s.afterCompletion(false);
+            } catch (Throwable t) {
+            }
+        _synchros.get().clear();
+    }
+}

Modified: incubator/ode/trunk/bpel-test/src/test/java/org/apache/ode/test/BPELTest.java
URL: http://svn.apache.org/viewvc/incubator/ode/trunk/bpel-test/src/test/java/org/apache/ode/test/BPELTest.java?view=diff&rev=491931&r1=491930&r2=491931
==============================================================================
--- incubator/ode/trunk/bpel-test/src/test/java/org/apache/ode/test/BPELTest.java (original)
+++ incubator/ode/trunk/bpel-test/src/test/java/org/apache/ode/test/BPELTest.java Tue Jan  2 12:45:58 2007
@@ -76,6 +76,11 @@
                     super.commit();
                     em.getTransaction().commit();
                 }
+                @Override
+                public void rollback() {
+                    super.rollback();
+                    em.getTransaction().rollback();
+                }
                 
             };
 		} else {
@@ -258,7 +263,7 @@
 				}
 			} catch ( Throwable e ) {
 				e.printStackTrace();
-				if ( em != null ) em.getTransaction().rollback();
+				scheduler.rollback();
 				throw e;
 			}
 			propsFileCnt++;