[jbpm-commits] JBoss JBPM SVN: r3857 - in jbpm3/trunk/modules/core: src/main/java/org/jbpm/db and 3 other directories.

do-not-reply at jboss.org do-not-reply at jboss.org
Thu Feb 12 15:55:58 EST 2009


Author: alex.guizar at jboss.com
Date: 2009-02-12 15:55:57 -0500 (Thu, 12 Feb 2009)
New Revision: 3857

Modified:
   jbpm3/trunk/modules/core/pom.xml
   jbpm3/trunk/modules/core/src/main/java/org/jbpm/db/JobSession.java
   jbpm3/trunk/modules/core/src/main/java/org/jbpm/msg/db/DbMessageService.java
   jbpm3/trunk/modules/core/src/main/java/org/jbpm/scheduler/def/CreateTimerAction.java
   jbpm3/trunk/modules/core/src/test/java/org/jbpm/jbpm2036/JBPM2036Test.java
Log:
JBPM-2036: prevent duplicate of Timer.action entity from being saved unnecessarily;
include test case again

Modified: jbpm3/trunk/modules/core/pom.xml
===================================================================
--- jbpm3/trunk/modules/core/pom.xml	2009-02-12 19:51:55 UTC (rev 3856)
+++ jbpm3/trunk/modules/core/pom.xml	2009-02-12 20:55:57 UTC (rev 3857)
@@ -254,8 +254,6 @@
               <excludes>
                 <!-- [JBPM-1810] Fix clean, drop, create schema with JbpmSchema  -->
                 <exclude>org/jbpm/db/JbpmSchemaDbTest.java</exclude>
-                <!-- [JBPM-2036] StaleObjectStateException when repeating timer signals the token -->
-                <exclude>org/jbpm/jbpm2036/JBPM2036Test.java</exclude>
               </excludes>
             </configuration>
           </plugin>
@@ -283,8 +281,6 @@
               <excludes>
                 <!-- [JBPM-1810] Fix clean, drop, create schema with JbpmSchema  -->
                 <exclude>org/jbpm/db/JbpmSchemaDbTest.java</exclude>
-                <!-- [JBPM-2036] StaleObjectStateException when repeating timer signals the token -->
-                <exclude>org/jbpm/jbpm2036/JBPM2036Test.java</exclude>
               </excludes>
             </configuration>
           </plugin>
@@ -314,8 +310,6 @@
                 <exclude>org/jbpm/seam/JobExecutorCustomizationTest.java</exclude>
                 <!-- [JBPM-1810] Fix clean, drop, create schema with JbpmSchema  -->
                 <exclude>org/jbpm/db/JbpmSchemaDbTest.java</exclude>
-                <!-- [JBPM-2036] StaleObjectStateException when repeating timer signals the token -->
-                <exclude>org/jbpm/jbpm2036/JBPM2036Test.java</exclude>
               </excludes>
             </configuration>
           </plugin>
@@ -343,8 +337,6 @@
               <excludes>
                 <!-- [JBPM-1810] Fix clean, drop, create schema with JbpmSchema  -->
                 <exclude>org/jbpm/db/JbpmSchemaDbTest.java</exclude>
-                <!-- [JBPM-2036] StaleObjectStateException when repeating timer signals the token -->
-                <exclude>org/jbpm/jbpm2036/JBPM2036Test.java</exclude>
               </excludes>
             </configuration>
           </plugin>
@@ -372,8 +364,6 @@
               <excludes>
                 <!-- [JBPM-1810] Fix clean, drop, create schema with JbpmSchema  -->
                 <exclude>org/jbpm/db/JbpmSchemaDbTest.java</exclude>
-                <!-- [JBPM-2036] StaleObjectStateException when repeating timer signals the token -->
-                <exclude>org/jbpm/jbpm2036/JBPM2036Test.java</exclude>
               </excludes>
             </configuration>
           </plugin>

Modified: jbpm3/trunk/modules/core/src/main/java/org/jbpm/db/JobSession.java
===================================================================
--- jbpm3/trunk/modules/core/src/main/java/org/jbpm/db/JobSession.java	2009-02-12 19:51:55 UTC (rev 3856)
+++ jbpm3/trunk/modules/core/src/main/java/org/jbpm/db/JobSession.java	2009-02-12 20:55:57 UTC (rev 3857)
@@ -33,7 +33,6 @@
 import org.hibernate.Session;
 import org.hibernate.criterion.Restrictions;
 import org.jbpm.JbpmException;
-import org.jbpm.graph.def.Action;
 import org.jbpm.graph.exe.ProcessInstance;
 import org.jbpm.graph.exe.Token;
 import org.jbpm.job.Job;
@@ -114,15 +113,7 @@
 
   public void saveJob(Job job) {
     try {
-      if (job instanceof Timer) {
-        Timer timer = (Timer) job;
-        Action action = timer.getAction();
-        if (action != null && !session.contains(action)) {
-          log.debug("cascading save from " + timer + " to " + action);
-          session.save(action);
-        }
-      }
-      session.saveOrUpdate(job);
+      session.save(job);
     }
     catch (HibernateException e) {
       throw new JbpmException("could not save " + job, e);

Modified: jbpm3/trunk/modules/core/src/main/java/org/jbpm/msg/db/DbMessageService.java
===================================================================
--- jbpm3/trunk/modules/core/src/main/java/org/jbpm/msg/db/DbMessageService.java	2009-02-12 19:51:55 UTC (rev 3856)
+++ jbpm3/trunk/modules/core/src/main/java/org/jbpm/msg/db/DbMessageService.java	2009-02-12 20:55:57 UTC (rev 3857)
@@ -49,7 +49,7 @@
 
   public void send(Job job) {
     jobSession.saveJob(job);
-    log.debug("saved job["+job.getId()+", "+job.getClass().getName()+"]");
+    log.debug("saved "+job);
     hasProducedJobs = true;
   }
 

Modified: jbpm3/trunk/modules/core/src/main/java/org/jbpm/scheduler/def/CreateTimerAction.java
===================================================================
--- jbpm3/trunk/modules/core/src/main/java/org/jbpm/scheduler/def/CreateTimerAction.java	2009-02-12 19:51:55 UTC (rev 3856)
+++ jbpm3/trunk/modules/core/src/main/java/org/jbpm/scheduler/def/CreateTimerAction.java	2009-02-12 20:55:57 UTC (rev 3857)
@@ -113,7 +113,7 @@
       } else {
         durationString = dueDate;
       }
-      if (baseDate != null && (durationString == null || "".equals(durationString))) {
+      if (baseDate != null && (durationString == null || durationString.length() == 0)) {
         dueDateDate = baseDate;
       } else {
         duration = new Duration(durationString);

Modified: jbpm3/trunk/modules/core/src/test/java/org/jbpm/jbpm2036/JBPM2036Test.java
===================================================================
--- jbpm3/trunk/modules/core/src/test/java/org/jbpm/jbpm2036/JBPM2036Test.java	2009-02-12 19:51:55 UTC (rev 3856)
+++ jbpm3/trunk/modules/core/src/test/java/org/jbpm/jbpm2036/JBPM2036Test.java	2009-02-12 20:55:57 UTC (rev 3857)
@@ -17,27 +17,26 @@
 {
   public void testTimerAction()
   {
-    ProcessDefinition pd = getProcessDefinition();
-    jbpmContext.deployProcessDefinition(pd);
+    ProcessDefinition processDefinition = getProcessDefinition();
+    jbpmContext.deployProcessDefinition(processDefinition);
 
     newTransaction();
     try
     {
-      ProcessInstance pi = new ProcessInstance(pd);
-      pi.signal();
-      jbpmContext.save(pi);
+      ProcessInstance processInstance = new ProcessInstance(processDefinition);
+      processInstance.signal();
+      jbpmContext.save(processInstance);
 
       processJobs(30000);
 
-      long piId = pi.getId();
+      long piId = processInstance.getId();
       assertTrue("expected process instance " + piId + " to have ended",
           jbpmContext.loadProcessInstance(piId).hasEnded());
       assertEquals(1, TimerAction.getExecutionCount());
     }
     finally
     {
-      // TODO Timer -> Action -> Delegation cascade is broken somewhere
-      // graphSession.deleteProcessDefinition(pd.getId());
+      graphSession.deleteProcessDefinition(processDefinition.getId());
     }
   }
 




More information about the jbpm-commits mailing list