[jbpm-commits] JBoss JBPM SVN: r4799 - in jbpm3/branches/jbpm-3.2.5.SP/modules: core/src/test/java/org/jbpm/scenarios and 9 other directories.

do-not-reply at jboss.org do-not-reply at jboss.org
Tue May 12 14:04:53 EDT 2009


Author: alex.guizar at jboss.com
Date: 2009-05-12 14:04:52 -0400 (Tue, 12 May 2009)
New Revision: 4799

Added:
   jbpm3/branches/jbpm-3.2.5.SP/modules/examples/src/test/resources/taskinstance/CustomTaskInstance.hbm.xml
Modified:
   jbpm3/branches/jbpm-3.2.5.SP/modules/core/src/test/java/org/jbpm/graph/exe/SuspendAndResumeDbTest.java
   jbpm3/branches/jbpm-3.2.5.SP/modules/core/src/test/java/org/jbpm/scenarios/AsyncTimerAndSubProcessDbTest.java
   jbpm3/branches/jbpm-3.2.5.SP/modules/core/src/test/java/org/jbpm/taskmgmt/exe/TaskAssignmentDbTest.java
   jbpm3/branches/jbpm-3.2.5.SP/modules/examples/src/test/java/org/jbpm/examples/assignment/RulesAssignmentTest.java
   jbpm3/branches/jbpm-3.2.5.SP/modules/examples/src/test/java/org/jbpm/examples/businesstrip/BusinessTripRequestTest.java
   jbpm3/branches/jbpm-3.2.5.SP/modules/examples/src/test/java/org/jbpm/examples/raise/RaiseRequestTest.java
   jbpm3/branches/jbpm-3.2.5.SP/modules/examples/src/test/java/org/jbpm/examples/rulesaction/RulesActionTest.java
   jbpm3/branches/jbpm-3.2.5.SP/modules/examples/src/test/java/org/jbpm/examples/taskinstance/CustomTaskInstanceTest.java
   jbpm3/branches/jbpm-3.2.5.SP/modules/examples/src/test/java/org/jbpm/examples/websale/WebsaleTest.java
   jbpm3/branches/jbpm-3.2.5.SP/modules/examples/src/test/resources/hibernate.extra.hbm.xml
   jbpm3/branches/jbpm-3.2.5.SP/modules/examples/src/test/resources/taskinstance/jbpm.cfg.xml
Log:
[JBPM-1812] merge r3708 from trunk

Modified: jbpm3/branches/jbpm-3.2.5.SP/modules/core/src/test/java/org/jbpm/graph/exe/SuspendAndResumeDbTest.java
===================================================================
--- jbpm3/branches/jbpm-3.2.5.SP/modules/core/src/test/java/org/jbpm/graph/exe/SuspendAndResumeDbTest.java	2009-05-12 16:49:32 UTC (rev 4798)
+++ jbpm3/branches/jbpm-3.2.5.SP/modules/core/src/test/java/org/jbpm/graph/exe/SuspendAndResumeDbTest.java	2009-05-12 18:04:52 UTC (rev 4799)
@@ -30,131 +30,112 @@
 import org.jbpm.taskmgmt.exe.TaskMgmtInstance;
 
 public class SuspendAndResumeDbTest extends AbstractDbTestCase {
-  
+
   public void testSuspend() {
-    ProcessDefinition processDefinition = ProcessDefinition.parseXmlString(
-      "<process-definition name='suspendable process'>" +
-      "  <start-state>" +
-      "    <transition to='so something usefull' />" +
-      "  </start-state>" +
-      "  <task-node name='so something usefull'>" +
-      "    <timer duedate='20 minutes' transition='timer expired' />" +
-      "    <task name='be silent'>" +
-      "      <assignment actor-id='manager' />" +
-      "    </task>" +
-      "    <transition name='timer expired' to='error state' />" +
-      "  </task-node>" +
-      "  <state name='error state' />" +
-      "</process-definition>"
-    );
-    graphSession.saveProcessDefinition(processDefinition);
-    try
-    {
-      newTransaction();
-      
-      processDefinition = graphSession.findLatestProcessDefinition("suspendable process");
-      ProcessInstance processInstance = new ProcessInstance(processDefinition);
+    ProcessDefinition processDefinition = ProcessDefinition.parseXmlString("<process-definition name='suspendable process'>"
+        + "  <start-state>"
+        + "    <transition to='so something usefull' />"
+        + "  </start-state>"
+        + "  <task-node name='so something usefull'>"
+        + "    <timer duedate='20 minutes' transition='timer expired' />"
+        + "    <task name='be silent'>"
+        + "      <assignment actor-id='manager' />"
+        + "    </task>"
+        + "    <transition name='timer expired' to='error state' />"
+        + "  </task-node>"
+        + "  <state name='error state' />"
+        + "</process-definition>");
+    jbpmContext.deployProcessDefinition(processDefinition);
+
+    newTransaction();
+    try {
+      ProcessInstance processInstance = jbpmContext.newProcessInstance("suspendable process");
       processInstance.signal();
       jbpmContext.save(processInstance);
-      
+
       newTransaction();
-      
-      List tasks = taskMgmtSession.findTaskInstances("manager");
+      List tasks = jbpmContext.getTaskList("manager");
       assertNotNull(tasks);
       assertEquals(1, tasks.size());
-      
+
       assertEquals(1, getNbrOfJobsAvailable());
-      
-      processInstance = graphSession.loadProcessInstance(processInstance.getId());
-      processInstance.suspend();
 
+      processInstance = jbpmContext.loadProcessInstance(processInstance.getId());
+      processInstance.suspend();
       jbpmContext.save(processInstance);
-      
-      newTransaction();
 
-      tasks = taskMgmtSession.findTaskInstances("manager");
+      newTransaction();
+      tasks = jbpmContext.getTaskList("manager");
       assertNotNull(tasks);
       assertEquals(0, tasks.size());
 
       assertNull(jobSession.getFirstAcquirableJob(null));
     }
-    finally
-    {
-      jbpmContext.getGraphSession().deleteProcessDefinition(processDefinition.getId());
+    finally {
+      graphSession.deleteProcessDefinition(processDefinition.getId());
     }
-    
   }
 
   public void testResume() {
-    ProcessDefinition processDefinition = ProcessDefinition.parseXmlString(
-      "<process-definition name='suspendable process'>" +
-      "  <start-state>" +
-      "    <transition to='so something usefull' />" +
-      "  </start-state>" +
-      "  <task-node name='so something usefull'>" +
-      "    <timer duedate='20 minutes' transition='timer expired' />" +
-      "    <task name='completedTask'>" +
-      "      <assignment actor-id='manager' />" +
-      "    </task>" +
-      "    <task name='notCompletedTask'>" +
-      "      <assignment actor-id='manager' />" +
-      "    </task>" +
-      "    <transition name='timer expired' to='error state' />" +
-      "  </task-node>" +
-      "  <state name='error state' />" +
-      "</process-definition>"
-    );
-    graphSession.saveProcessDefinition(processDefinition);
-    try
-    {
-      newTransaction();
-      
-      processDefinition = graphSession.findLatestProcessDefinition("suspendable process");
-      ProcessInstance processInstance = new ProcessInstance(processDefinition);
+    ProcessDefinition processDefinition = ProcessDefinition.parseXmlString("<process-definition name='suspendable process'>"
+        + "  <start-state>"
+        + "    <transition to='so something usefull' />"
+        + "  </start-state>"
+        + "  <task-node name='so something usefull'>"
+        + "    <timer duedate='20 minutes' transition='timer expired' />"
+        + "    <task name='completedTask'>"
+        + "      <assignment actor-id='manager' />"
+        + "    </task>"
+        + "    <task name='notCompletedTask'>"
+        + "      <assignment actor-id='manager' />"
+        + "    </task>"
+        + "    <transition name='timer expired' to='error state' />"
+        + "  </task-node>"
+        + "  <state name='error state' />"
+        + "</process-definition>");
+    jbpmContext.deployProcessDefinition(processDefinition);
+
+    newTransaction();
+    try {
+      ProcessInstance processInstance = jbpmContext.newProcessInstance("suspendable process");
       processInstance.signal();
+
       TaskInstance completedTask = findTask(processInstance, "completedTask");
       assertTrue(completedTask.isOpen());
       completedTask.end();
       assertFalse(completedTask.isOpen());
       jbpmContext.save(processInstance);
-      
+
       newTransaction();
-      
-      processInstance = graphSession.loadProcessInstance(processInstance.getId());
+      processInstance = jbpmContext.loadProcessInstance(processInstance.getId());
       completedTask = findTask(processInstance, "completedTask");
       assertFalse(completedTask.isOpen());
       processInstance.suspend();
       jbpmContext.save(processInstance);
-      
-      newTransaction();
 
-      processInstance = graphSession.loadProcessInstance(processInstance.getId());
+      newTransaction();
+      processInstance = jbpmContext.loadProcessInstance(processInstance.getId());
       processInstance.resume();
       jbpmContext.save(processInstance);
 
       newTransaction();
-
-      processInstance = graphSession.loadProcessInstance(processInstance.getId());
+      processInstance = jbpmContext.loadProcessInstance(processInstance.getId());
       completedTask = findTask(processInstance, "completedTask");
       assertFalse(completedTask.isOpen());
 
-      List tasks = taskMgmtSession.findTaskInstances("manager");
-      assertNotNull(tasks);
+      List tasks = jbpmContext.getTaskList("manager");
       assertEquals(1, tasks.size());
 
       assertEquals(1, getNbrOfJobsAvailable());
     }
-    finally
-    {
-      jbpmContext.getGraphSession().deleteProcessDefinition(processDefinition.getId());
+    finally {
+      graphSession.deleteProcessDefinition(processDefinition.getId());
     }
-    
   }
 
   private TaskInstance findTask(ProcessInstance processInstance, String taskName) {
     TaskMgmtInstance tmi = processInstance.getTaskMgmtInstance();
-    Iterator iter = tmi.getTaskInstances().iterator();
-    while (iter.hasNext()) {
+    for (Iterator iter = tmi.getTaskInstances().iterator(); iter.hasNext();) {
       TaskInstance taskInstance = (TaskInstance) iter.next();
       if (taskName.equals(taskInstance.getName())) {
         return taskInstance;

Modified: jbpm3/branches/jbpm-3.2.5.SP/modules/core/src/test/java/org/jbpm/scenarios/AsyncTimerAndSubProcessDbTest.java
===================================================================
--- jbpm3/branches/jbpm-3.2.5.SP/modules/core/src/test/java/org/jbpm/scenarios/AsyncTimerAndSubProcessDbTest.java	2009-05-12 16:49:32 UTC (rev 4798)
+++ jbpm3/branches/jbpm-3.2.5.SP/modules/core/src/test/java/org/jbpm/scenarios/AsyncTimerAndSubProcessDbTest.java	2009-05-12 18:04:52 UTC (rev 4799)
@@ -13,7 +13,8 @@
 
 public class AsyncTimerAndSubProcessDbTest extends AbstractDbTestCase {
 
-  public static class ToTimedDecisionHandler implements DecisionHandler {
+  public static class TimedDecisionHandler implements DecisionHandler {
+
     private static final long serialVersionUID = 1L;
 
     public String decide(ExecutionContext executionContext) throws Exception {
@@ -27,7 +28,9 @@
         + "    <transition to='decision'/>"
         + "  </start-state>"
         + "  <decision name='decision'>"
-        + "    <handler class='org.jbpm.scenarios.AsyncTimerAndSubProcessDbTest$ToTimedDecisionHandler' />"
+        + "    <handler class='"
+        + TimedDecisionHandler.class.getName()
+        + "' />"
         + "    <transition name='default' to='task' />"
         + "  </decision>"
         + "  <task-node name='task'>"
@@ -42,14 +45,16 @@
         + "  <end-state name='end' />"
         + "</process-definition>");
     jbpmContext.deployProcessDefinition(subDefinition);
+
     newTransaction();
-
     ProcessDefinition superDefinition = ProcessDefinition.parseXmlString("<process-definition name='super'>"
         + "  <start-state name='start'>"
         + "    <transition to='decision'/>"
         + "  </start-state>"
         + "  <decision name='decision'>"
-        + "    <handler class='org.jbpm.scenarios.AsyncTimerAndSubProcessDbTest$ToTimedDecisionHandler' />"
+        + "    <handler class='"
+        + TimedDecisionHandler.class.getName()
+        + "' />"
         + "    <transition name='default' to='timed' />"
         + "  </decision>"
         + "  <state name='timed'>"
@@ -71,8 +76,8 @@
         + "  <end-state name='end' />"
         + "</process-definition>");
     jbpmContext.deployProcessDefinition(superDefinition);
+
     newTransaction();
-
     try {
       ProcessInstance superInstance = jbpmContext.newProcessInstanceForUpdate("super");
       ContextInstance superContext = superInstance.getContextInstance();
@@ -85,7 +90,7 @@
       superInstance = jbpmContext.loadProcessInstance(superInstance.getId());
       assertEquals("subprocess", superInstance.getRootToken().getNode().getName());
 
-      List taskInstances = taskMgmtSession.findTaskInstances("victim");
+      List taskInstances = jbpmContext.getTaskList("victim");
       assertEquals(1, taskInstances.size());
       TaskInstance taskInstance = (TaskInstance) taskInstances.get(0);
       taskInstance.setVariable("a", "value a updated");
@@ -95,8 +100,8 @@
       jbpmContext.save(taskInstance);
       long taskInstanceId = taskInstance.getId();
       long tokenId = taskInstance.getToken().getId();
+
       newTransaction();
-
       taskInstance = jbpmContext.loadTaskInstance(taskInstanceId);
       assertEquals("value a updated", taskInstance.getVariable("a"));
       assertEquals("value b updated", taskInstance.getVariable("b"));
@@ -107,8 +112,8 @@
       assertEquals("value b updated", subContextInstance.getVariable("b"));
     }
     finally {
-      jbpmContext.getGraphSession().deleteProcessDefinition(superDefinition.getId());
-      jbpmContext.getGraphSession().deleteProcessDefinition(subDefinition.getId());
+      graphSession.deleteProcessDefinition(superDefinition.getId());
+      graphSession.deleteProcessDefinition(subDefinition.getId());
     }
   }
 }

Modified: jbpm3/branches/jbpm-3.2.5.SP/modules/core/src/test/java/org/jbpm/taskmgmt/exe/TaskAssignmentDbTest.java
===================================================================
--- jbpm3/branches/jbpm-3.2.5.SP/modules/core/src/test/java/org/jbpm/taskmgmt/exe/TaskAssignmentDbTest.java	2009-05-12 16:49:32 UTC (rev 4798)
+++ jbpm3/branches/jbpm-3.2.5.SP/modules/core/src/test/java/org/jbpm/taskmgmt/exe/TaskAssignmentDbTest.java	2009-05-12 18:04:52 UTC (rev 4799)
@@ -22,13 +22,9 @@
 package org.jbpm.taskmgmt.exe;
 
 import java.util.Arrays;
-import java.util.HashSet;
 import java.util.Iterator;
 import java.util.List;
-import java.util.Set;
 
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
 import org.jbpm.db.AbstractDbTestCase;
 import org.jbpm.graph.def.ProcessDefinition;
 import org.jbpm.graph.exe.ExecutionContext;
@@ -36,109 +32,88 @@
 import org.jbpm.taskmgmt.def.AssignmentHandler;
 
 public class TaskAssignmentDbTest extends AbstractDbTestCase {
-  
-  public static class JohnAssignmentHandler implements AssignmentHandler {
-    private static final long serialVersionUID = 1L;
-    public void assign(Assignable assignable, ExecutionContext executionContext) throws Exception {
-      assignable.setActorId("john");
-    }
-  }
 
   public void testPersonalTasklist() {
-    ProcessDefinition processDefinition = ProcessDefinition.parseXmlString(
-      "<process-definition>" +
-      "  <start-state>" +
-      "    <transition to='work' />" +
-      "  </start-state>" +
-      "  <task-node name='work'>" +
-      "    <task name='feed the chickens'>" +
-      "      <assignment class='org.jbpm.taskmgmt.exe.TaskAssignmentDbTest$JohnAssignmentHandler' />" +
-      "    </task>" +
-      "    <task name='walk the dog'>" +
-      "      <assignment class='org.jbpm.taskmgmt.exe.TaskAssignmentDbTest$JohnAssignmentHandler' />" +
-      "    </task>" +
-      "    <task name='play with wife'>" +
-      "      <assignment class='org.jbpm.taskmgmt.exe.TaskAssignmentDbTest$JohnAssignmentHandler' />" +
-      "    </task>" +
-      "  </task-node>" +
-      "</process-definition>"
-    );
-    graphSession.saveProcessDefinition(processDefinition);
-    try
-    {
+    ProcessDefinition processDefinition = ProcessDefinition.parseXmlString("<process-definition name='personal'>"
+        + "  <start-state>"
+        + "    <transition to='work' />"
+        + "  </start-state>"
+        + "  <task-node name='work'>"
+        + "    <task name='feed the chickens'>"
+        + "      <assignment actor-id='john' />"
+        + "    </task>"
+        + "    <task name='walk the dog'>"
+        + "      <assignment actor-id='john' />"
+        + "    </task>"
+        + "    <task name='play with wife'>"
+        + "      <assignment actor-id='john' />"
+        + "    </task>"
+        + "  </task-node>"
+        + "</process-definition>");
+    jbpmContext.deployProcessDefinition(processDefinition);
+
+    newTransaction();
+    try {
       ProcessInstance processInstance = new ProcessInstance(processDefinition);
       processInstance.signal();
       jbpmContext.save(processInstance);
-      
+
       newTransaction();
-      
-      List taskInstances = taskMgmtSession.findTaskInstances("john");
+      List taskInstances = jbpmContext.getTaskList("john");
       assertNotNull(taskInstances);
       assertEquals(3, taskInstances.size());
-      
-      Set expectedTaskNames = new HashSet(Arrays.asList(new String[]{"feed the chickens", "walk the dog", "play with wife"}));
-      Set retrievedTaskNames = new HashSet();
-      Iterator iter = taskInstances.iterator();
-      while (iter.hasNext()) {
-        TaskInstance taskInstance = (TaskInstance) iter.next();
-        
-        log.debug("task instance definition: "+taskInstance.getTask().getProcessDefinition());
-        log.debug("task instance taskmgmt definition: "+taskInstance.getTask().getTaskMgmtDefinition().getProcessDefinition());
 
-        retrievedTaskNames.add(taskInstance.getName());
+      List taskNames = Arrays.asList(new String[] { "feed the chickens", "walk the dog", "play with wife" });
+      for (Iterator i = taskInstances.iterator(); i.hasNext();) {
+        TaskInstance taskInstance = (TaskInstance) i.next();
+        assert taskNames.contains(taskInstance.getName()) : taskInstance.getName();
       }
-      assertEquals(expectedTaskNames, retrievedTaskNames);
     }
-    finally
-    {
-      jbpmContext.getGraphSession().deleteProcessDefinition(processDefinition.getId());
+    finally {
+      graphSession.deleteProcessDefinition(processDefinition.getId());
     }
-    
   }
 
   public static class PoolAssignmentHandler implements AssignmentHandler {
+
     private static final long serialVersionUID = 1L;
+
     public void assign(Assignable assignable, ExecutionContext executionContext) throws Exception {
-      assignable.setPooledActors(new String[]{"john", "joe", "homer"});
+      assignable.setPooledActors(new String[] { "john", "joe", "homer" });
     }
   }
 
   public void testPooledTasklist() {
-    ProcessDefinition processDefinition = ProcessDefinition.parseXmlString(
-      "<process-definition>" +
-      "  <start-state>" +
-      "    <transition to='work' />" +
-      "  </start-state>" +
-      "  <task-node name='work'>" +
-      "    <task name='feed the chickens'>" +
-      "      <assignment class='org.jbpm.taskmgmt.exe.TaskAssignmentDbTest$PoolAssignmentHandler' />" +
-      "    </task>" +
-      "  </task-node>" +
-      "</process-definition>"
-    );
-    graphSession.saveProcessDefinition(processDefinition);
-    try
-    {
+    ProcessDefinition processDefinition = ProcessDefinition.parseXmlString("<process-definition name='pool'>"
+        + "  <start-state>"
+        + "    <transition to='work' />"
+        + "  </start-state>"
+        + "  <task-node name='work'>"
+        + "    <task name='feed the chickens'>"
+        + "      <assignment pooled-actors='john' />"
+        + "    </task>"
+        + "  </task-node>"
+        + "</process-definition>");
+    jbpmContext.deployProcessDefinition(processDefinition);
+
+    newTransaction();
+    try {
       ProcessInstance processInstance = new ProcessInstance(processDefinition);
       processInstance.signal();
       jbpmContext.save(processInstance);
-      
+
       newTransaction();
-      
       List taskInstances = taskMgmtSession.findPooledTaskInstances("john");
       assertNotNull(taskInstances);
       assertEquals(1, taskInstances.size());
+
       TaskInstance taskInstance = (TaskInstance) taskInstances.get(0);
       assertEquals("feed the chickens", taskInstance.getName());
       assertNull(taskInstance.getActorId());
     }
-    finally
-    {
-      jbpmContext.getGraphSession().deleteProcessDefinition(processDefinition.getId());
+    finally {
+      graphSession.deleteProcessDefinition(processDefinition.getId());
     }
-    
   }
-  
-  private static final Log log = LogFactory.getLog(TaskAssignmentDbTest.class);
-  
+
 }

Modified: jbpm3/branches/jbpm-3.2.5.SP/modules/examples/src/test/java/org/jbpm/examples/assignment/RulesAssignmentTest.java
===================================================================
--- jbpm3/branches/jbpm-3.2.5.SP/modules/examples/src/test/java/org/jbpm/examples/assignment/RulesAssignmentTest.java	2009-05-12 16:49:32 UTC (rev 4798)
+++ jbpm3/branches/jbpm-3.2.5.SP/modules/examples/src/test/java/org/jbpm/examples/assignment/RulesAssignmentTest.java	2009-05-12 18:04:52 UTC (rev 4799)
@@ -21,147 +21,114 @@
  */
 package org.jbpm.examples.assignment;
 
-import java.util.Date;
-import java.util.Iterator;
 import java.util.List;
 
-import junit.framework.TestCase;
-
-import org.jbpm.JbpmConfiguration;
-import org.jbpm.JbpmContext;
 import org.jbpm.context.exe.ContextInstance;
+import org.jbpm.db.AbstractDbTestCase;
 import org.jbpm.graph.def.ProcessDefinition;
 import org.jbpm.graph.exe.ProcessInstance;
-import org.jbpm.graph.exe.Token;
 import org.jbpm.identity.Entity;
+import org.jbpm.identity.Membership;
 import org.jbpm.identity.hibernate.IdentitySession;
 import org.jbpm.identity.xml.IdentityXmlParser;
-import org.jbpm.persistence.db.DbPersistenceServiceFactory;
-import org.jbpm.svc.Services;
 import org.jbpm.taskmgmt.exe.TaskInstance;
 
 /**
  * This example shows how to invoke JBoss Rules from an AssignmentHandler.
  */
-public class RulesAssignmentTest extends TestCase {
+public class RulesAssignmentTest extends AbstractDbTestCase {
 
-  JbpmConfiguration jbpmConfiguration = JbpmConfiguration.getInstance();
+  private long processDefinitionId;
+  private Entity[] entities;
 
-  DbPersistenceServiceFactory dbPersistenceServiceFactory = (DbPersistenceServiceFactory) jbpmConfiguration.getServiceFactory(Services.SERVICENAME_PERSISTENCE);
-
-  JbpmContext jbpmContext;
-  long processInstanceId;
-
-  public void setUp() {
-    dbPersistenceServiceFactory.createSchema();
-
+  protected void setUp() throws Exception {
+    super.setUp();
     loadIdentities();
     deployProcess();
-    jbpmContext = jbpmConfiguration.createJbpmContext();
   }
 
-  protected void tearDown() {
-    jbpmContext.close();
-    dbPersistenceServiceFactory.dropSchema();
-    jbpmContext = null;
+  protected void tearDown() throws Exception {
+    graphSession.deleteProcessDefinition(processDefinitionId);
+    deleteIdentities();
+    super.tearDown();
   }
 
-  public void deployProcess() {
-    JbpmContext jbpmContext = jbpmConfiguration.createJbpmContext();
-    try {
-      ProcessDefinition processDefinition = ProcessDefinition.parseXmlResource("assignment/processdefinition.xml");
-      jbpmContext.deployProcessDefinition(processDefinition);
-    }
-    finally {
-      jbpmContext.close();
-    }
+  protected String getJbpmTestConfig() {
+    return null; // use default configuration
   }
 
-  public void loadIdentities() {
-    JbpmContext jbpmContext = jbpmConfiguration.createJbpmContext();
-    try {
-      Entity[] entities = IdentityXmlParser.parseEntitiesResource("assignment/identity.db.xml");
-      IdentitySession identitySession = new IdentitySession(jbpmContext.getSession());
-      for (int i = 0; i < entities.length; i++) {
-        identitySession.saveEntity(entities[i]);
-      }
+  void deployProcess() {
+    ProcessDefinition processDefinition = ProcessDefinition.parseXmlResource("assignment/processdefinition.xml");
+    jbpmContext.deployProcessDefinition(processDefinition);
+    processDefinitionId = processDefinition.getId();
+  }
+
+  void loadIdentities() {
+    IdentitySession identitySession = new IdentitySession(jbpmContext.getSession());
+    entities = IdentityXmlParser.parseEntitiesResource("assignment/identity.db.xml");
+    for (int i = 0; i < entities.length; i++) {
+      Entity entity = entities[i];
+      if (entity instanceof Membership) continue;
+      identitySession.saveEntity(entity);
     }
-    finally {
-      jbpmContext.close();
-    }
   }
 
-  public void newTransaction() {
-    jbpmContext.close();
-    jbpmContext = jbpmConfiguration.createJbpmContext();
+  void deleteIdentities() {
+    for (int i = 0; i < entities.length; i++) {
+      Entity entity = entities[i];
+      if (entity instanceof Membership) continue;
+      session.delete(entity);
+    }
   }
 
   public void testRulesAssignment() {
     // start process
     newTransaction();
-    processInstanceId = createNewProcessInstance();
+    long processInstanceId = createNewProcessInstance();
+    assertFalse("ProcessInstanceId is 0", processInstanceId == 0);
 
     // perform task
     newTransaction();
     long taskInstanceId = acquireTask("tom");
+    assertFalse("TaskInstanceId is 0", taskInstanceId == 0);
 
     newTransaction();
     completeTask(taskInstanceId);
 
     newTransaction();
     TaskInstance taskInstance = jbpmContext.loadTaskInstance(taskInstanceId);
-    Date end = taskInstance.getEnd();
-    assertNotNull(end);
+    assertTrue("TaskInstance has not ended", taskInstance.hasEnded());
 
     // complete process
     newTransaction();
-    ProcessInstance processInstance = getProcessInstance(processInstanceId);
-    Date processEnd = processInstance.getEnd();
-    assertNotNull(processEnd);
-
+    ProcessInstance processInstance = jbpmContext.loadProcessInstance(processInstanceId);
+    assertTrue("ProcessInstance has not ended", processInstance.hasEnded());
   }
 
-  public long createNewProcessInstance() {
+  long createNewProcessInstance() {
     String processDefinitionName = "RulesAssignment";
     ProcessInstance processInstance = jbpmContext.newProcessInstanceForUpdate(processDefinitionName);
-    long id = processInstance.getId();
+
     ContextInstance contextInstance = processInstance.getContextInstance();
     contextInstance.setVariable("processDefinitionName", processDefinitionName);
-    Order order = new Order(300);
-    contextInstance.setVariable("order", order);
-    Token token = processInstance.getRootToken();
-    token.signal();
-    return id;
+    contextInstance.setVariable("order", new Order(300));
+
+    processInstance.signal();
+    return processInstance.getId();
   }
 
-  public long acquireTask(String actorId) {
-    List tasklist = getTaskList(actorId);
-    Iterator taskIterator = tasklist.iterator();
+  long acquireTask(String actorId) {
+    List taskList = jbpmContext.getTaskList(actorId);
+    assertEquals(1, taskList.size());
 
-    TaskInstance taskInstance = null;
-    long taskInstanceId = 0;
-    while (taskIterator.hasNext()) {
-      taskInstance = (TaskInstance) taskIterator.next();
-
-      taskInstanceId = taskInstance.getId();
-      taskInstance.start();
-    }
-    return taskInstanceId;
+    TaskInstance taskInstance = (TaskInstance) taskList.get(0);
+    taskInstance.start();
+    return taskInstance.getId();
   }
 
-  public void completeTask(long taskInstanceId) {
+  void completeTask(long taskInstanceId) {
     TaskInstance taskInstance = jbpmContext.getTaskInstance(taskInstanceId);
     taskInstance.end();
   }
 
-  public List getTaskList(String actorId) {
-    newTransaction();
-    return jbpmContext.getTaskList(actorId);
-  }
-
-  public ProcessInstance getProcessInstance(long processInstanceId) {
-    ProcessInstance processInstance = (ProcessInstance) jbpmContext.loadProcessInstanceForUpdate(processInstanceId);
-    return processInstance;
-  }
-
 }

Modified: jbpm3/branches/jbpm-3.2.5.SP/modules/examples/src/test/java/org/jbpm/examples/businesstrip/BusinessTripRequestTest.java
===================================================================
--- jbpm3/branches/jbpm-3.2.5.SP/modules/examples/src/test/java/org/jbpm/examples/businesstrip/BusinessTripRequestTest.java	2009-05-12 16:49:32 UTC (rev 4798)
+++ jbpm3/branches/jbpm-3.2.5.SP/modules/examples/src/test/java/org/jbpm/examples/businesstrip/BusinessTripRequestTest.java	2009-05-12 18:04:52 UTC (rev 4799)
@@ -4,68 +4,39 @@
 import java.util.List;
 import java.util.Map;
 
-import junit.framework.TestCase;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-
-import org.jbpm.JbpmConfiguration;
-import org.jbpm.JbpmContext;
 import org.jbpm.context.exe.ContextInstance;
+import org.jbpm.db.AbstractDbTestCase;
 import org.jbpm.graph.def.ProcessDefinition;
 import org.jbpm.graph.exe.ProcessInstance;
-import org.jbpm.persistence.db.DbPersistenceServiceFactory;
-import org.jbpm.svc.Services;
 import org.jbpm.taskmgmt.exe.TaskInstance;
 import org.jbpm.taskmgmt.exe.TaskMgmtInstance;
 
-public class BusinessTripRequestTest extends TestCase {
+public class BusinessTripRequestTest extends AbstractDbTestCase {
 
-  Log log = LogFactory.getLog(this.getClass());
+  private long processDefinitionId;
 
-  JbpmConfiguration jbpmConfiguration = JbpmConfiguration.getInstance();
-  DbPersistenceServiceFactory dbPersistenceServiceFactory = (DbPersistenceServiceFactory) jbpmConfiguration.getServiceFactory(Services.SERVICENAME_PERSISTENCE);
-
-  JbpmContext jbpmContext;
-
-  ProcessInstance processInstance;
-  ContextInstance contextInstance;
-  TaskMgmtInstance taskMgmtInstance;
-  long processInstanceId = -1;
-
-  public void setUp() {
-    dbPersistenceServiceFactory.createSchema();
+  protected void setUp() throws Exception {
+    super.setUp();
     deployProcess();
-    jbpmContext = jbpmConfiguration.createJbpmContext();
   }
 
-  public void tearDown() {
-    jbpmContext.close();
-    dbPersistenceServiceFactory.dropSchema();
-    jbpmContext = null;
+  protected void tearDown() throws Exception {
+    graphSession.deleteProcessDefinition(processDefinitionId);
+    super.tearDown();
   }
 
-  private void newTransaction() {
-    jbpmContext.close();
-    jbpmContext = jbpmConfiguration.createJbpmContext();
+  protected String getJbpmTestConfig() {
+    return null; // use default configuration
   }
 
-  private void deployProcess() {
-    JbpmContext jbpmContext = jbpmConfiguration.createJbpmContext();
-    try {
-      ProcessDefinition processDefinition = ProcessDefinition.parseXmlResource("businesstrip/processdefinition.xml");
-      jbpmContext.deployProcessDefinition(processDefinition);
-    }
-    finally {
-      jbpmContext.close();
-    }
+  void deployProcess() {
+    ProcessDefinition processDefinition = ProcessDefinition.parseXmlResource("businesstrip/processdefinition.xml");
+    jbpmContext.deployProcessDefinition(processDefinition);
+    processDefinitionId = processDefinition.getId();
   }
 
-  private TaskInstance createNewProcessInstance() {
-    processInstance = jbpmContext.newProcessInstanceForUpdate("business trip request");
-    processInstanceId = processInstance.getId();
-    contextInstance = processInstance.getContextInstance();
-    taskMgmtInstance = processInstance.getTaskMgmtInstance();
+  TaskInstance createNewProcessInstance() {
+    ProcessInstance processInstance = jbpmContext.newProcessInstanceForUpdate("business trip request");
     return processInstance.getTaskMgmtInstance().createStartTaskInstance();
   }
 
@@ -73,6 +44,8 @@
     TaskInstance taskInstance = createNewProcessInstance();
     assertEquals("submit business trip request", taskInstance.getName());
     assertEquals(0, taskInstance.getVariables().size());
+
+    newTransaction();
   }
 
   public void testSubmitRaiseRequestTask() {
@@ -82,21 +55,24 @@
     Map taskVariables = new HashMap();
 
     taskVariables.put("purpose", "Conference in MIT");
-    taskVariables.put("description",
-        "This conference is mainly to highlight to impact of ESB technologies on the current industries");
+    taskVariables.put("description", "Highlight the impact of ESB technologies");
     taskVariables.put("allocated budget", "3000");
     taskVariables.put("start date", "8/12/2009");
     taskVariables.put("end date", "8/21/2009");
     taskInstance.addVariables(taskVariables);
     taskInstance.end();
 
+    newTransaction();
+    ProcessInstance processInstance = jbpmContext.loadProcessInstance(taskInstance.getProcessInstance()
+        .getId());
+    ContextInstance contextInstance = processInstance.getContextInstance();
     assertEquals("Conference in MIT", contextInstance.getVariable("purpose"));
-    assertEquals(
-        "This conference is mainly to highlight to impact of ESB technologies on the current industries",
-        contextInstance.getVariable("description"));
+    assertEquals("Highlight the impact of ESB technologies", contextInstance.getVariable("description"));
     assertEquals("3000", contextInstance.getVariable("allocated budget"));
     assertEquals("8/12/2009", contextInstance.getVariable("start date"));
     assertEquals("8/21/2009", contextInstance.getVariable("end date"));
+
+    TaskMgmtInstance taskMgmtInstance = processInstance.getTaskMgmtInstance();
     assertEquals("employee", taskMgmtInstance.getSwimlaneInstance("employee").getActorId());
   }
 
@@ -107,21 +83,17 @@
 
     Map taskVariables = new HashMap();
     taskVariables.put("purpose", "Conference in MIT");
-    taskVariables.put("description",
-        "This conference is mainly to highlight to impact of ESB technologies on the current industries");
+    taskVariables.put("description", "Highlight the impact of ESB technologies");
     taskVariables.put("allocated budget", "3000");
     taskVariables.put("start date", "8/12/2009");
     taskVariables.put("end date", "8/21/2009");
 
     taskInstance.addVariables(taskVariables);
     taskInstance.end();
-    jbpmContext.save(processInstance);
-    processInstanceId = processInstance.getId();
 
     // Manager rejects the raise request
     newTransaction();
-
-    List managerTasksList = jbpmContext.getTaskMgmtSession().findTaskInstances("manager");
+    List managerTasksList = jbpmContext.getTaskList("manager");
     assertEquals(1, managerTasksList.size());
 
     TaskInstance managerTask = (TaskInstance) managerTasksList.get(0);
@@ -137,21 +109,18 @@
 
     Map taskVariables = new HashMap();
     taskVariables.put("purpose", "Conference in MIT");
-    taskVariables.put("description",
-        "This conference is mainly to highlight to impact of ESB technologies on the current industries");
-    taskVariables.put("allocated budget", new Long(3000));
+    taskVariables.put("description", "Highlight the impact of ESB technologies");
+    taskVariables.put("allocated budget", "3000");
     taskVariables.put("start date", "8/12/2009");
     taskVariables.put("end date", "8/21/2009");
     taskVariables.put("country", "USA");
     taskVariables.put("city", "Kansas");
     taskInstance.addVariables(taskVariables);
     taskInstance.end();
-    jbpmContext.save(processInstance);
-    processInstanceId = processInstance.getId();
 
     // Manager rejects the raise request
     newTransaction();
-    List managerTasksList = jbpmContext.getTaskMgmtSession().findTaskInstances("manager");
+    List managerTasksList = jbpmContext.getTaskList("manager");
     assertEquals(1, managerTasksList.size());
 
     TaskInstance managerTask = (TaskInstance) managerTasksList.get(0);
@@ -161,7 +130,7 @@
     jbpmContext.save(managerTask);
 
     newTransaction();
-    List accountantTasksList = jbpmContext.getTaskMgmtSession().findTaskInstances("accountant");
+    List accountantTasksList = jbpmContext.getTaskList("accountant");
     assertEquals(1, accountantTasksList.size());
     TaskInstance accountantTask = (TaskInstance) accountantTasksList.get(0);
     accountantTask.end();

Modified: jbpm3/branches/jbpm-3.2.5.SP/modules/examples/src/test/java/org/jbpm/examples/raise/RaiseRequestTest.java
===================================================================
--- jbpm3/branches/jbpm-3.2.5.SP/modules/examples/src/test/java/org/jbpm/examples/raise/RaiseRequestTest.java	2009-05-12 16:49:32 UTC (rev 4798)
+++ jbpm3/branches/jbpm-3.2.5.SP/modules/examples/src/test/java/org/jbpm/examples/raise/RaiseRequestTest.java	2009-05-12 18:04:52 UTC (rev 4799)
@@ -4,68 +4,39 @@
 import java.util.List;
 import java.util.Map;
 
-import junit.framework.TestCase;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-
-import org.jbpm.JbpmConfiguration;
-import org.jbpm.JbpmContext;
 import org.jbpm.context.exe.ContextInstance;
+import org.jbpm.db.AbstractDbTestCase;
 import org.jbpm.graph.def.ProcessDefinition;
 import org.jbpm.graph.exe.ProcessInstance;
-import org.jbpm.persistence.db.DbPersistenceServiceFactory;
-import org.jbpm.svc.Services;
 import org.jbpm.taskmgmt.exe.TaskInstance;
 import org.jbpm.taskmgmt.exe.TaskMgmtInstance;
 
-public class RaiseRequestTest extends TestCase {
+public class RaiseRequestTest extends AbstractDbTestCase {
 
-  Log log = LogFactory.getLog(this.getClass());
+  private long processDefinitionId;
 
-  JbpmConfiguration jbpmConfiguration = JbpmConfiguration.getInstance();
-  DbPersistenceServiceFactory dbPersistenceServiceFactory = (DbPersistenceServiceFactory) jbpmConfiguration.getServiceFactory(Services.SERVICENAME_PERSISTENCE);
-
-  JbpmContext jbpmContext;
-
-  ProcessInstance processInstance = null;
-  ContextInstance contextInstance = null;
-  TaskMgmtInstance taskMgmtInstance = null;
-  long processInstanceId = -1;
-
-  public void setUp() {
-    dbPersistenceServiceFactory.createSchema();
+  protected void setUp() throws Exception {
+    super.setUp();
     deployProcess();
-    jbpmContext = jbpmConfiguration.createJbpmContext();
   }
 
-  public void tearDown() {
-    jbpmContext.close();
-    dbPersistenceServiceFactory.dropSchema();
-    jbpmContext = null;
+  protected void tearDown() throws Exception {
+    graphSession.deleteProcessDefinition(processDefinitionId);
+    super.tearDown();
   }
 
-  private void newTransaction() {
-    jbpmContext.close();
-    jbpmContext = jbpmConfiguration.createJbpmContext();
+  protected String getJbpmTestConfig() {
+    return null; // use default configuration
   }
 
-  private void deployProcess() {
-    JbpmContext jbpmContext = jbpmConfiguration.createJbpmContext();
-    try {
-      ProcessDefinition processDefinition = ProcessDefinition.parseXmlResource("raise/processdefinition.xml");
-      jbpmContext.deployProcessDefinition(processDefinition);
-    }
-    finally {
-      jbpmContext.close();
-    }
+  void deployProcess() {
+    ProcessDefinition processDefinition = ProcessDefinition.parseXmlResource("raise/processdefinition.xml");
+    jbpmContext.deployProcessDefinition(processDefinition);
+    processDefinitionId = processDefinition.getId();
   }
 
-  private TaskInstance createNewProcessInstance() {
-    processInstance = jbpmContext.newProcessInstanceForUpdate("raise request");
-    processInstanceId = processInstance.getId();
-    contextInstance = processInstance.getContextInstance();
-    taskMgmtInstance = processInstance.getTaskMgmtInstance();
+  TaskInstance createNewProcessInstance() {
+    ProcessInstance processInstance = jbpmContext.newProcessInstanceForUpdate("raise request");
     return processInstance.getTaskMgmtInstance().createStartTaskInstance();
   }
 
@@ -73,6 +44,8 @@
     TaskInstance taskInstance = createNewProcessInstance();
     assertEquals("submit raise request", taskInstance.getName());
     assertEquals(0, taskInstance.getVariables().size());
+
+    newTransaction();
   }
 
   public void testSubmitRaiseRequestTask() {
@@ -86,8 +59,14 @@
     taskInstance.addVariables(taskVariables);
     taskInstance.end();
 
+    newTransaction();
+    ProcessInstance processInstance = jbpmContext.loadProcessInstance(taskInstance.getProcessInstance()
+        .getId());
+    ContextInstance contextInstance = processInstance.getContextInstance();
     assertEquals("I need to buy a jet", contextInstance.getVariable("reason"));
     assertEquals("600", contextInstance.getVariable("amount"));
+
+    TaskMgmtInstance taskMgmtInstance = processInstance.getTaskMgmtInstance();
     assertEquals("employee", taskMgmtInstance.getSwimlaneInstance("employee").getActorId());
   }
 
@@ -98,16 +77,15 @@
     taskVariables.put("amount", "600");
     taskInstance.addVariables(taskVariables);
     taskInstance.end();
-    jbpmContext.save(processInstance);
-    newTransaction();
 
-    List managerTasks = jbpmContext.getTaskMgmtSession().findTaskInstances("manager");
+    newTransaction();
+    List managerTasks = jbpmContext.getTaskList("manager");
     assertEquals(1, managerTasks.size());
 
     TaskInstance managerTask = (TaskInstance) managerTasks.get(0);
     managerTask.end("reject");
 
-    List foTasks = jbpmContext.getTaskMgmtSession().findTaskInstances("fo");
+    List foTasks = jbpmContext.getTaskList("fo");
     assertEquals(0, foTasks.size());
   }
 
@@ -118,17 +96,16 @@
     taskVariables.put("amount", "600");
     taskInstance.addVariables(taskVariables);
     taskInstance.end();
-    jbpmContext.save(processInstance);
-    newTransaction();
 
-    List managerTasks = jbpmContext.getTaskMgmtSession().findTaskInstances("manager");
+    newTransaction();
+    List managerTasks = jbpmContext.getTaskList("manager");
     assertEquals(1, managerTasks.size());
     TaskInstance managerTask = (TaskInstance) managerTasks.get(0);
     managerTask.start();
     managerTask.end("accept");
 
     newTransaction();
-    List foTasks = jbpmContext.getTaskMgmtSession().findTaskInstances("fo");
+    List foTasks = jbpmContext.getTaskList("fo");
     assertEquals(1, foTasks.size());
 
     TaskInstance foTask = (TaskInstance) foTasks.get(0);
@@ -136,7 +113,7 @@
     foTask.addComment("Justify two consecutive raises");
     foTask.end("reject");
 
-    managerTasks = jbpmContext.getTaskMgmtSession().findTaskInstances("manager");
+    managerTasks = jbpmContext.getTaskList("manager");
     assertEquals(0, managerTasks.size());
   }
 
@@ -147,17 +124,16 @@
     taskVariables.put("amount", "600");
     taskInstance.addVariables(taskVariables);
     taskInstance.end();
-    jbpmContext.save(processInstance);
-    newTransaction();
 
-    List managerTasks = jbpmContext.getTaskMgmtSession().findTaskInstances("manager");
+    newTransaction();
+    List managerTasks = jbpmContext.getTaskList("manager");
     assertEquals(1, managerTasks.size());
     TaskInstance managerTask = (TaskInstance) managerTasks.get(0);
     managerTask.start();
     managerTask.end("accept");
 
     newTransaction();
-    List foTasks = jbpmContext.getTaskMgmtSession().findTaskInstances("fo");
+    List foTasks = jbpmContext.getTaskList("fo");
     assertEquals(1, foTasks.size());
 
     TaskInstance foTask = (TaskInstance) foTasks.get(0);
@@ -166,7 +142,7 @@
     foTask.end("accept");
 
     newTransaction();
-    List accountantTasks = jbpmContext.getTaskMgmtSession().findTaskInstances("accountant");
+    List accountantTasks = jbpmContext.getTaskList("accountant");
     assertEquals(1, accountantTasks.size());
 
     TaskInstance accountantTask = (TaskInstance) accountantTasks.get(0);
@@ -182,17 +158,16 @@
     taskVariables.put("amount", "600");
     taskInstance.addVariables(taskVariables);
     taskInstance.end();
-    jbpmContext.save(processInstance);
-    newTransaction();
 
-    List managerTasks = jbpmContext.getTaskMgmtSession().findTaskInstances("manager");
+    newTransaction();
+    List managerTasks = jbpmContext.getTaskList("manager");
     assertEquals(1, managerTasks.size());
     TaskInstance managerTask = (TaskInstance) managerTasks.get(0);
     managerTask.start();
     managerTask.end("accept");
 
     newTransaction();
-    List foTasks = jbpmContext.getTaskMgmtSession().findTaskInstances("fo");
+    List foTasks = jbpmContext.getTaskList("fo");
     assertEquals(1, foTasks.size());
 
     TaskInstance foTask = (TaskInstance) foTasks.get(0);
@@ -201,7 +176,7 @@
     foTask.end("more justification required");
 
     newTransaction();
-    managerTasks = jbpmContext.getTaskMgmtSession().findTaskInstances("manager");
+    managerTasks = jbpmContext.getTaskList("manager");
     assertEquals(1, managerTasks.size());
 
     managerTask = (TaskInstance) managerTasks.get(0);
@@ -210,7 +185,7 @@
     managerTask.end("accept");
 
     newTransaction();
-    foTasks = jbpmContext.getTaskMgmtSession().findTaskInstances("fo");
+    foTasks = jbpmContext.getTaskList("fo");
     assertEquals(1, foTasks.size());
 
     foTask = (TaskInstance) foTasks.get(0);
@@ -219,7 +194,7 @@
     foTask.end("accept");
 
     newTransaction();
-    List accountantTasks = jbpmContext.getTaskMgmtSession().findTaskInstances("accountant");
+    List accountantTasks = jbpmContext.getTaskList("accountant");
     assertEquals(1, accountantTasks.size());
 
     TaskInstance accountantTask = (TaskInstance) accountantTasks.get(0);

Modified: jbpm3/branches/jbpm-3.2.5.SP/modules/examples/src/test/java/org/jbpm/examples/rulesaction/RulesActionTest.java
===================================================================
--- jbpm3/branches/jbpm-3.2.5.SP/modules/examples/src/test/java/org/jbpm/examples/rulesaction/RulesActionTest.java	2009-05-12 16:49:32 UTC (rev 4798)
+++ jbpm3/branches/jbpm-3.2.5.SP/modules/examples/src/test/java/org/jbpm/examples/rulesaction/RulesActionTest.java	2009-05-12 18:04:52 UTC (rev 4799)
@@ -21,93 +21,65 @@
  */
 package org.jbpm.examples.rulesaction;
 
-import java.util.Date;
-
-import junit.framework.TestCase;
-
-import org.jbpm.JbpmConfiguration;
-import org.jbpm.JbpmContext;
 import org.jbpm.context.exe.ContextInstance;
+import org.jbpm.db.AbstractDbTestCase;
 import org.jbpm.graph.def.ProcessDefinition;
 import org.jbpm.graph.exe.ProcessInstance;
-import org.jbpm.graph.exe.Token;
-import org.jbpm.persistence.db.DbPersistenceServiceFactory;
-import org.jbpm.svc.Services;
 
 /**
  * This example shows how to invoke JBoss Drools from an ActionHandler.
  */
-public class RulesActionTest extends TestCase {
+public class RulesActionTest extends AbstractDbTestCase {
 
-  JbpmConfiguration jbpmConfiguration = JbpmConfiguration.getInstance();
+  private long processDefinitionId;
 
-  DbPersistenceServiceFactory dbPersistenceServiceFactory = (DbPersistenceServiceFactory) jbpmConfiguration.getServiceFactory(Services.SERVICENAME_PERSISTENCE);
-
-  JbpmContext jbpmContext;
-  long processInstanceId;
-
-  public void setUp() {
-    dbPersistenceServiceFactory.createSchema();
+  protected void setUp() throws Exception {
+    super.setUp();
     deployProcess();
-    jbpmContext = jbpmConfiguration.createJbpmContext();
   }
 
-  public void tearDown() {
-    jbpmContext.close();
-    dbPersistenceServiceFactory.dropSchema();
-    jbpmContext = null;
+  protected void tearDown() throws Exception {
+    graphSession.deleteProcessDefinition(processDefinitionId);
+    super.tearDown();
   }
 
-  public void newTransaction() {
-    jbpmContext.close();
-    jbpmContext = jbpmConfiguration.createJbpmContext();
+  protected String getJbpmTestConfig() {
+    return null; // use default configuration
   }
 
-  public void deployProcess() {
-    JbpmContext jbpmContext = jbpmConfiguration.createJbpmContext();
-    try {
-      ProcessDefinition processDefinition = ProcessDefinition.parseXmlResource("rulesaction/processdefinition.xml");
-      jbpmContext.deployProcessDefinition(processDefinition);
-    }
-    finally {
-      jbpmContext.close();
-    }
+  void deployProcess() {
+    ProcessDefinition processDefinition = ProcessDefinition.parseXmlResource("rulesaction/processdefinition.xml");
+    jbpmContext.deployProcessDefinition(processDefinition);
+    processDefinitionId = processDefinition.getId();
   }
 
   public void testRulesAssignment() {
     // start process
     newTransaction();
-    processInstanceId = createNewProcessInstance();
+    long processInstanceId = createNewProcessInstance();
+    assertFalse("ProcessInstanceId is 0", processInstanceId == 0);
 
     newTransaction();
-    ProcessInstance processInstance = getProcessInstance(processInstanceId);
+    ProcessInstance processInstance = jbpmContext.loadProcessInstance(processInstanceId);
+    assertTrue("ProcessInstance has not ended", processInstance.hasEnded());
 
-    assertNotNull(processInstance);
-
-    Date processEnd = processInstance.getEnd();
-    assertNotNull(processEnd);
     String shipper = (String) processInstance.getContextInstance().getVariable("shipper");
-    assertEquals("shipper is FEDX", shipper, "FEDX");
-
+    assertEquals("FEDX", shipper);
   }
 
-  public long createNewProcessInstance() {
+  long createNewProcessInstance() {
     String processDefinitionName = "RulesAction";
     ProcessInstance processInstance = jbpmContext.newProcessInstanceForUpdate(processDefinitionName);
-    long id = processInstance.getId();
+
     ContextInstance contextInstance = processInstance.getContextInstance();
     contextInstance.setVariable("processDefinitionName", processDefinitionName);
+
     Order order = new Order(300);
     Customer customer = new Customer("Fred", new Integer(5), new Integer(25), new Long(100000));
     contextInstance.setVariable("order", order);
     contextInstance.setVariable("customer", customer);
-    Token token = processInstance.getRootToken();
-    token.signal();
-    return id;
-  }
 
-  public ProcessInstance getProcessInstance(long processInstanceId) {
-    ProcessInstance processInstance = (ProcessInstance) jbpmContext.loadProcessInstanceForUpdate(processInstanceId);
-    return processInstance;
+    processInstance.signal();
+    return processInstance.getId();
   }
 }

Modified: jbpm3/branches/jbpm-3.2.5.SP/modules/examples/src/test/java/org/jbpm/examples/taskinstance/CustomTaskInstanceTest.java
===================================================================
--- jbpm3/branches/jbpm-3.2.5.SP/modules/examples/src/test/java/org/jbpm/examples/taskinstance/CustomTaskInstanceTest.java	2009-05-12 16:49:32 UTC (rev 4798)
+++ jbpm3/branches/jbpm-3.2.5.SP/modules/examples/src/test/java/org/jbpm/examples/taskinstance/CustomTaskInstanceTest.java	2009-05-12 18:04:52 UTC (rev 4799)
@@ -21,24 +21,16 @@
  */
 package org.jbpm.examples.taskinstance;
 
-import java.util.Date;
 import java.util.Iterator;
 import java.util.List;
 
-import junit.framework.TestCase;
-
-import org.hibernate.Query;
-import org.hibernate.Session;
-
+import org.hibernate.cfg.Configuration;
+import org.hibernate.criterion.Restrictions;
 import org.jbpm.JbpmConfiguration;
-import org.jbpm.JbpmContext;
 import org.jbpm.context.exe.ContextInstance;
+import org.jbpm.db.AbstractDbTestCase;
 import org.jbpm.graph.def.ProcessDefinition;
 import org.jbpm.graph.exe.ProcessInstance;
-import org.jbpm.graph.exe.Token;
-import org.jbpm.identity.Entity;
-import org.jbpm.identity.hibernate.IdentitySession;
-import org.jbpm.identity.xml.IdentityXmlParser;
 import org.jbpm.persistence.db.DbPersistenceServiceFactory;
 import org.jbpm.svc.Services;
 import org.jbpm.taskmgmt.exe.TaskInstance;
@@ -46,76 +38,42 @@
 /**
  * This example shows how to extend the TaskInstance by adding a custom property.
  */
-public class CustomTaskInstanceTest extends TestCase {
+public class CustomTaskInstanceTest extends AbstractDbTestCase {
 
-  JbpmConfiguration jbpmConfiguration = null;
-  // JbpmConfiguration.getInstance();
+  private long processDefinitionId;
 
-  DbPersistenceServiceFactory dbPersistenceServiceFactory;
-
-  JbpmContext jbpmContext;
-
-  Session s;
-
-  ProcessInstance processInstance = null;
-
-  ContextInstance contextInstance = null;
-
-  public void setUp() {
-
-    // the jbpm.cfg.xml file is modified to add the CustomTaskInstanceFactory
-    // so we will read in the file from the config directory of this example
-    jbpmConfiguration = JbpmConfiguration.parseResource("taskinstance/jbpm.cfg.xml");
-
-    dbPersistenceServiceFactory = (DbPersistenceServiceFactory) jbpmConfiguration.getServiceFactory(Services.SERVICENAME_PERSISTENCE);
-
-    // the CustomTaskInstance mapping file reference
-    // <mapping resource="org/jbpm/taskinstance/CustomTaskInstance.hbm.xml"/>
-    // has been added to to the bottom of the hibernate.cfg.xml file in the config directory
-
-    // now create the schema
-    // this is also a step that typically would be performed as an independent step
-    // using the jbpm schema created from the jbpm mapping files
-
-    dbPersistenceServiceFactory.createSchema();
+  protected void setUp() throws Exception {
+    super.setUp();
     deployProcess();
-    jbpmContext = jbpmConfiguration.createJbpmContext();
   }
 
-  public void tearDown() {
-    jbpmContext.close();
-    dbPersistenceServiceFactory.dropSchema();
-    jbpmContext = null;
+  protected void tearDown() throws Exception {
+    graphSession.deleteProcessDefinition(processDefinitionId);
+    super.tearDown();
+    jbpmConfiguration.close();
   }
 
-  public void newTransaction() {
-    jbpmContext.close();
-    jbpmContext = jbpmConfiguration.createJbpmContext();
-  }
+  protected JbpmConfiguration getJbpmConfiguration() {
+    if (jbpmConfiguration == null) {
+      // the jbpm.cfg.xml file is modified to add the CustomTaskInstanceFactory
+      // so we will read in the file from the config directory of this example
+      jbpmConfiguration = JbpmConfiguration.parseResource("taskinstance/jbpm.cfg.xml");
+      DbPersistenceServiceFactory factory = (DbPersistenceServiceFactory) jbpmConfiguration.getServiceFactory(Services.SERVICENAME_PERSISTENCE);
 
-  public void deployProcess() {
-    jbpmContext = jbpmConfiguration.createJbpmContext();
-    try {
-      ProcessDefinition processDefinition = ProcessDefinition.parseXmlResource("taskinstance/processdefinition.xml");
-      jbpmContext.deployProcessDefinition(processDefinition);
+      Configuration configuration = factory.getConfiguration();
+      configuration.addResource("taskinstance/CustomTaskInstance.hbm.xml");
+
+      // TODO https://jira.jboss.org/jira/browse/JBPM-1812
+      // JbpmSchema jbpmSchema = new JbpmSchema(configuration);
+      // jbpmSchema.updateTable("JBPM_TASKINSTANCE");
     }
-    finally {
-      jbpmContext.close();
-    }
+    return jbpmConfiguration;
   }
 
-  public void loadIdentities() {
-    jbpmContext = jbpmConfiguration.createJbpmContext();
-    try {
-      Entity[] entities = IdentityXmlParser.parseEntitiesResource("identity.db.xml");
-      IdentitySession identitySession = new IdentitySession(jbpmContext.getSession());
-      for (int i = 0; i < entities.length; i++) {
-        identitySession.saveEntity(entities[i]);
-      }
-    }
-    finally {
-      jbpmContext.close();
-    }
+  void deployProcess() {
+    ProcessDefinition processDefinition = ProcessDefinition.parseXmlResource("taskinstance/processdefinition.xml");
+    jbpmContext.deployProcessDefinition(processDefinition);
+    processDefinitionId = processDefinition.getId();
   }
 
   public void testCustomTaskInstance() {
@@ -134,39 +92,31 @@
 
     newTransaction();
     TaskInstance taskInstance = jbpmContext.loadTaskInstance(taskInstanceId);
-    Date end = taskInstance.getEnd();
-    assertNotNull(end);
+    assertTrue("TaskInstance has not ended", taskInstance.hasEnded());
 
     // check process is completed
     newTransaction();
-    Date processEnd = null;
-    processInstance = jbpmContext.getProcessInstance(processInstanceId);
-    processEnd = processInstance.getEnd();
-    assertNotNull(processEnd);
+    ProcessInstance processInstance = jbpmContext.getProcessInstance(processInstanceId);
+    assertTrue("ProcessInstance has not ended", processInstance.hasEnded());
   }
 
-  public long createNewProcessInstance() {
+  long createNewProcessInstance() {
     String processDefinitionName = "CustomTaskInstance";
-    processInstance = jbpmContext.newProcessInstanceForUpdate(processDefinitionName);
-    long processInstanceId = processInstance.getId();
-    contextInstance = processInstance.getContextInstance();
+    ProcessInstance processInstance = jbpmContext.newProcessInstanceForUpdate(processDefinitionName);
+
+    ContextInstance contextInstance = processInstance.getContextInstance();
     contextInstance.setVariable("processDefinitionName", processDefinitionName);
     contextInstance.setVariable("customId", "abc");
-    Token token = processInstance.getRootToken();
-    token.signal();
-    return processInstanceId;
 
+    processInstance.signal();
+    return processInstance.getId();
   }
 
-  public long acquireTask() {
-
-    List tasklist = findPooledTaskListByCustomId("reviewers", "abc");
-    Iterator taskIterator = tasklist.iterator();
-
-    CustomTaskInstance taskInstance = null;
+  long acquireTask() {
+    List taskList = findPooledTaskListByCustomId("reviewers", "abc");
     long taskInstanceId = 0;
-    while (taskIterator.hasNext()) {
-      taskInstance = (CustomTaskInstance) taskIterator.next();
+    for (Iterator i = taskList.iterator(); i.hasNext();) {
+      CustomTaskInstance taskInstance = (CustomTaskInstance) i.next();
       taskInstanceId = taskInstance.getId();
       taskInstance.start();
       taskInstance.setActorId("tom");
@@ -176,30 +126,22 @@
     return taskInstanceId;
   }
 
-  public void completeTask(long taskInstanceId) {
-    s = jbpmContext.getSession();
-    CustomTaskInstance taskInstance = (CustomTaskInstance) s.load(CustomTaskInstance.class,
-        new Long(taskInstanceId));
-
+  void completeTask(long taskInstanceId) {
+    CustomTaskInstance taskInstance = (CustomTaskInstance) jbpmContext.getSession()
+        .load(CustomTaskInstance.class, new Long(taskInstanceId));
     taskInstance.end();
-
   }
 
-  private static final String findPooledTaskInstancesByCustomId = "select distinct ti "
-      + "from "
-      + CustomTaskInstance.class.getName()
-      + " ti "
-      + "  join ti.pooledActors pooledActor where pooledActor.actorId = :pooledActorId and ti.actorId is null and ti.end is null "
-      + "  and ti.isCancelled = false and ti.customId = :customId";
-
-  public List findPooledTaskListByCustomId(String actorId, String customId) {
-    List taskList = null;
-    s = jbpmContext.getSession();
-    Query query = s.createQuery(findPooledTaskInstancesByCustomId);
-    query.setString("pooledActorId", actorId);
-    query.setString("customId", customId);
-    taskList = query.list();
-    return taskList;
+  List findPooledTaskListByCustomId(String actorId, String customId) {
+    return jbpmContext.getSession()
+        .createCriteria(CustomTaskInstance.class)
+        .add(Restrictions.isNull("actorId"))
+        .add(Restrictions.isNull("end"))
+        .add(Restrictions.eq("isCancelled", Boolean.FALSE))
+        .add(Restrictions.eq("customId", customId))
+        .createCriteria("pooledActors")
+        .add(Restrictions.eq("actorId", actorId))
+        .list();
   }
 
 }

Modified: jbpm3/branches/jbpm-3.2.5.SP/modules/examples/src/test/java/org/jbpm/examples/websale/WebsaleTest.java
===================================================================
--- jbpm3/branches/jbpm-3.2.5.SP/modules/examples/src/test/java/org/jbpm/examples/websale/WebsaleTest.java	2009-05-12 16:49:32 UTC (rev 4798)
+++ jbpm3/branches/jbpm-3.2.5.SP/modules/examples/src/test/java/org/jbpm/examples/websale/WebsaleTest.java	2009-05-12 18:04:52 UTC (rev 4799)
@@ -25,110 +25,51 @@
 import java.util.List;
 import java.util.Map;
 
-import junit.framework.TestCase;
-
-import org.jbpm.JbpmConfiguration;
-import org.jbpm.JbpmContext;
 import org.jbpm.context.exe.ContextInstance;
+import org.jbpm.db.AbstractDbTestCase;
 import org.jbpm.graph.def.ProcessDefinition;
 import org.jbpm.graph.exe.ProcessInstance;
-import org.jbpm.identity.Entity;
-import org.jbpm.identity.hibernate.IdentitySession;
-import org.jbpm.identity.xml.IdentityXmlParser;
-import org.jbpm.persistence.db.DbPersistenceServiceFactory;
-import org.jbpm.svc.Services;
 import org.jbpm.taskmgmt.exe.TaskInstance;
 import org.jbpm.taskmgmt.exe.TaskMgmtInstance;
 
-public class WebsaleTest extends TestCase
-{
-  JbpmConfiguration jbpmConfiguration = JbpmConfiguration.getInstance();
-  DbPersistenceServiceFactory dbPersistenceServiceFactory = (DbPersistenceServiceFactory)jbpmConfiguration.getServiceFactory(Services.SERVICENAME_PERSISTENCE);
+public class WebsaleTest extends AbstractDbTestCase {
 
-  JbpmContext jbpmContext;
+  private long processDefinitionId;
 
-  ProcessInstance processInstance;
-  ContextInstance contextInstance;
-  TaskMgmtInstance taskMgmtInstance;
-  long processInstanceId = -1;
-
-  public void setUp()
-  {
-    dbPersistenceServiceFactory.createSchema();
+  protected void setUp() throws Exception {
+    super.setUp();
     deployProcess();
-    jbpmContext = jbpmConfiguration.createJbpmContext();
   }
 
-  public void tearDown()
-  {
-    jbpmContext.close();
-    dbPersistenceServiceFactory.dropSchema();
-    jbpmContext = null;
+  protected void tearDown() throws Exception {
+    graphSession.deleteProcessDefinition(processDefinitionId);
+    super.tearDown();
   }
 
-  public void newTransaction()
-  {
-    jbpmContext.close();
-    jbpmContext = jbpmConfiguration.createJbpmContext();
+  protected String getJbpmTestConfig() {
+    return null; // use default configuration
   }
 
-  public void deployProcess()
-  {
-    JbpmContext jbpmContext = jbpmConfiguration.createJbpmContext();
-    try
-    {
-      ProcessDefinition processDefinition = ProcessDefinition.parseXmlResource("websale/jpdl/processdefinition.xml");
-      jbpmContext.deployProcessDefinition(processDefinition);
-    }
-    finally
-    {
-      jbpmContext.close();
-    }
+  void deployProcess() {
+    ProcessDefinition processDefinition = ProcessDefinition.parseXmlResource("websale/jpdl/processdefinition.xml");
+    jbpmContext.deployProcessDefinition(processDefinition);
+    processDefinitionId = processDefinition.getId();
   }
 
-  public void loadIdentities()
-  {
-    JbpmContext jbpmContext = jbpmConfiguration.createJbpmContext();
-    try
-    {
-      Entity[] entities = IdentityXmlParser.parseEntitiesResource("assignment/identity.db.xml");
-      IdentitySession identitySession = new IdentitySession(jbpmContext.getSession());
-      for (int i = 0; i < entities.length; i++)
-      {
-        identitySession.saveEntity(entities[i]);
-      }
-    }
-    finally
-    {
-      jbpmContext.close();
-    }
-  }
-
-  public TaskInstance createNewProcessInstance()
-  {
-    processInstance = jbpmContext.newProcessInstanceForUpdate("websale");
-    processInstanceId = processInstance.getId();
-    contextInstance = processInstance.getContextInstance();
-    taskMgmtInstance = processInstance.getTaskMgmtInstance();
+  TaskInstance createNewProcessInstance() {
+    ProcessInstance processInstance = jbpmContext.newProcessInstanceForUpdate("websale");
     return processInstance.getTaskMgmtInstance().createStartTaskInstance();
   }
 
-  public void reloadProcessInstance()
-  {
-    processInstance = jbpmContext.loadProcessInstanceForUpdate(processInstanceId);
-    contextInstance = processInstance.getContextInstance();
-    taskMgmtInstance = processInstance.getTaskMgmtInstance();
-  }
-
-  public void testWebSaleOrderTaskParameters()
-  {
+  public void testWebSaleOrderTaskParameters() {
     TaskInstance taskInstance = createNewProcessInstance();
     assertEquals("Create new web sale order", taskInstance.getName());
     assertEquals(0, taskInstance.getVariables().size());
+
+    newTransaction();
   }
 
-  public void testPerformWebSaleOrderTask()
-  {
+  public void testPerformWebSaleOrderTask() {
     jbpmContext.setActorId("user");
     // create a task to start the websale process
     TaskInstance taskInstance = createNewProcessInstance();
@@ -141,28 +82,31 @@
     taskInstance.addVariables(taskVariables);
     taskInstance.end();
 
+    newTransaction();
+    ProcessInstance processInstance = jbpmContext.loadProcessInstance(taskInstance.getProcessInstance()
+        .getId());
+    ContextInstance contextInstance = processInstance.getContextInstance();
     assertEquals("cookies", contextInstance.getVariable("item"));
     assertEquals("lots of them", contextInstance.getVariable("quantity"));
     assertEquals("46 Main St.", contextInstance.getVariable("address"));
+
+    TaskMgmtInstance taskMgmtInstance = processInstance.getTaskMgmtInstance();
     assertEquals("user", taskMgmtInstance.getSwimlaneInstance("buyer").getActorId());
   }
 
-  public void testEvaluateAssignment()
-  {
+  public void testEvaluateAssignment() {
     jbpmContext.setActorId("user");
+
     // create a task to start the websale process
     TaskInstance taskInstance = createNewProcessInstance();
     taskInstance.setVariable("item", "cookies");
     taskInstance.end();
-    jbpmContext.save(processInstance);
-    processInstanceId = processInstance.getId();
 
     newTransaction();
-
-    List sampleManagersTasks = jbpmContext.getTaskMgmtSession().findTaskInstances("manager");
+    List sampleManagersTasks = jbpmContext.getTaskList("manager");
     assertEquals(1, sampleManagersTasks.size());
 
-    TaskInstance evaluateTaskInstance = (TaskInstance)sampleManagersTasks.get(0);
+    TaskInstance evaluateTaskInstance = (TaskInstance) sampleManagersTasks.get(0);
     assertEquals("manager", evaluateTaskInstance.getActorId());
     assertEquals("Evaluate web order", evaluateTaskInstance.getName());
     assertNotNull(evaluateTaskInstance.getToken());
@@ -171,24 +115,19 @@
     assertNull(evaluateTaskInstance.getEnd());
   }
 
-  public void testEvaluateOk()
-  {
+  public void testEvaluateOk() {
     TaskInstance taskInstance = createNewProcessInstance();
     taskInstance.end();
-    jbpmContext.save(processInstance);
 
     newTransaction();
-
-    TaskInstance evaluateTaskInstance = (TaskInstance)jbpmContext.getTaskMgmtSession().findTaskInstances("manager").get(0);
+    TaskInstance evaluateTaskInstance = (TaskInstance) jbpmContext.getTaskList("manager").get(0);
     evaluateTaskInstance.end("OK");
-    jbpmContext.save(evaluateTaskInstance);
 
     newTransaction();
-
-    List sampleShippersTasks = jbpmContext.getTaskMgmtSession().findTaskInstances("shipper");
+    List sampleShippersTasks = jbpmContext.getTaskList("shipper");
     assertEquals(1, sampleShippersTasks.size());
 
-    TaskInstance waitForMoneyTaskInstance = (TaskInstance)sampleShippersTasks.get(0);
+    TaskInstance waitForMoneyTaskInstance = (TaskInstance) sampleShippersTasks.get(0);
     assertEquals("shipper", waitForMoneyTaskInstance.getActorId());
     assertEquals("Wait for money", waitForMoneyTaskInstance.getName());
     assertNotNull(waitForMoneyTaskInstance.getToken());
@@ -197,63 +136,57 @@
     assertNull(waitForMoneyTaskInstance.getEnd());
   }
 
-  public void testUnwritableVariableException()
-  {
+  public void testUnwritableVariableException() {
     testEvaluateAssignment();
+
     newTransaction();
-    List sampleManagersTasks = jbpmContext.getTaskMgmtSession().findTaskInstances("manager");
-    TaskInstance evaluateTaskInstance = (TaskInstance)sampleManagersTasks.get(0);
+    List sampleManagersTasks = jbpmContext.getTaskList("manager");
+    TaskInstance evaluateTaskInstance = (TaskInstance) sampleManagersTasks.get(0);
     evaluateTaskInstance.end();
 
     newTransaction();
-
-    processInstance = jbpmContext.getGraphSession().loadProcessInstance(processInstanceId);
-    contextInstance = processInstance.getContextInstance();
+    ProcessInstance processInstance = jbpmContext.getGraphSession()
+        .loadProcessInstance(evaluateTaskInstance.getProcessInstance().getId());
+    ContextInstance contextInstance = processInstance.getContextInstance();
     // so the cookies should still be in the item process variable.
     assertEquals("cookies", contextInstance.getVariable("item"));
   }
 
-  public void testEvaluateNok()
-  {
+  public void testEvaluateNok() {
     testEvaluateAssignment();
-    newTransaction();
 
-    List sampleManagersTasks = jbpmContext.getTaskMgmtSession().findTaskInstances("manager");
-    TaskInstance evaluateTaskInstance = (TaskInstance)sampleManagersTasks.get(0);
+    newTransaction();
+    List sampleManagersTasks = jbpmContext.getTaskList("manager");
+    TaskInstance evaluateTaskInstance = (TaskInstance) sampleManagersTasks.get(0);
     evaluateTaskInstance.setVariable("comment", "wtf");
     evaluateTaskInstance.end("More info needed");
     jbpmContext.save(evaluateTaskInstance);
 
     newTransaction();
-
-    List sampleUserTasks = jbpmContext.getTaskMgmtSession().findTaskInstances("user");
+    List sampleUserTasks = jbpmContext.getTaskList("user");
     assertEquals(1, sampleUserTasks.size());
-    TaskInstance fixWebOrderDataTaskInstance = (TaskInstance)sampleUserTasks.get(0);
+    TaskInstance fixWebOrderDataTaskInstance = (TaskInstance) sampleUserTasks.get(0);
     assertEquals("user", fixWebOrderDataTaskInstance.getActorId());
     assertEquals("wtf", fixWebOrderDataTaskInstance.getVariable("comment"));
   }
 
-  public void testMoreInfoNeeded()
-  {
+  public void testMoreInfoNeeded() {
     jbpmContext.setActorId("user");
 
     // create a task to start the websale process
     TaskInstance taskInstance = createNewProcessInstance();
     taskInstance.end();
-    jbpmContext.save(processInstance);
 
     newTransaction();
-
-    TaskInstance evaluateTaskInstance = (TaskInstance)jbpmContext.getTaskMgmtSession().findTaskInstances("manager").get(0);
+    TaskInstance evaluateTaskInstance = (TaskInstance) jbpmContext.getTaskList("manager").get(0);
     evaluateTaskInstance.end("More info needed");
     jbpmContext.save(evaluateTaskInstance);
 
     newTransaction();
-
-    List sampleUserTasks = jbpmContext.getTaskMgmtSession().findTaskInstances("user");
+    List sampleUserTasks = jbpmContext.getTaskList("user");
     assertEquals(1, sampleUserTasks.size());
 
-    TaskInstance fixWebOrderDataTaskInstance = (TaskInstance)sampleUserTasks.get(0);
+    TaskInstance fixWebOrderDataTaskInstance = (TaskInstance) sampleUserTasks.get(0);
     assertEquals("user", fixWebOrderDataTaskInstance.getActorId());
     assertEquals("Fix web order data", fixWebOrderDataTaskInstance.getName());
     assertNotNull(fixWebOrderDataTaskInstance.getToken());

Modified: jbpm3/branches/jbpm-3.2.5.SP/modules/examples/src/test/resources/hibernate.extra.hbm.xml
===================================================================
--- jbpm3/branches/jbpm-3.2.5.SP/modules/examples/src/test/resources/hibernate.extra.hbm.xml	2009-05-12 16:49:32 UTC (rev 4798)
+++ jbpm3/branches/jbpm-3.2.5.SP/modules/examples/src/test/resources/hibernate.extra.hbm.xml	2009-05-12 18:04:52 UTC (rev 4799)
@@ -1,5 +1,4 @@
 <?xml version="1.0"?>
-
 <!DOCTYPE hibernate-mapping PUBLIC
       "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
       "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
@@ -9,11 +8,5 @@
   <!-- ################################################## -->
   <!-- # Additional mappings defined per module go here # -->
   <!-- ################################################## -->
-   
-  <subclass name="org.jbpm.examples.taskinstance.CustomTaskInstance" 
-         extends="org.jbpm.taskmgmt.exe.TaskInstance"
-         discriminator-value="C">
-    	<property name="customId" column="CUSTOMID_" />
-  </subclass>
-  
+
 </hibernate-mapping>

Copied: jbpm3/branches/jbpm-3.2.5.SP/modules/examples/src/test/resources/taskinstance/CustomTaskInstance.hbm.xml (from rev 3708, jbpm3/trunk/modules/examples/src/test/resources/taskinstance/CustomTaskInstance.hbm.xml)
===================================================================
--- jbpm3/branches/jbpm-3.2.5.SP/modules/examples/src/test/resources/taskinstance/CustomTaskInstance.hbm.xml	                        (rev 0)
+++ jbpm3/branches/jbpm-3.2.5.SP/modules/examples/src/test/resources/taskinstance/CustomTaskInstance.hbm.xml	2009-05-12 18:04:52 UTC (rev 4799)
@@ -0,0 +1,13 @@
+<?xml version="1.0"?>
+<!DOCTYPE hibernate-mapping PUBLIC
+      "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
+      "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping>
+
+  <subclass name="org.jbpm.examples.taskinstance.CustomTaskInstance"
+    extends="org.jbpm.taskmgmt.exe.TaskInstance" discriminator-value="C">
+    <property name="customId" column="CUSTOMID_" />
+  </subclass>
+
+</hibernate-mapping>

Modified: jbpm3/branches/jbpm-3.2.5.SP/modules/examples/src/test/resources/taskinstance/jbpm.cfg.xml
===================================================================
--- jbpm3/branches/jbpm-3.2.5.SP/modules/examples/src/test/resources/taskinstance/jbpm.cfg.xml	2009-05-12 16:49:32 UTC (rev 4798)
+++ jbpm3/branches/jbpm-3.2.5.SP/modules/examples/src/test/resources/taskinstance/jbpm.cfg.xml	2009-05-12 18:04:52 UTC (rev 4799)
@@ -1,49 +1,3 @@
 <jbpm-configuration>
-
-  <!-- 
-    This configuration is used when there is no jbpm.cfg.xml file found in the 
-    root of the classpath.  It is a very basic configuration without persistence
-    and message services.  Only the authorization service installed.
-    You can parse and create processes, but when you try to use one of the 
-    unavailable services, you'll get an exception.
-  -->
-  
-  <jbpm-context>
-    <service name="persistence" factory="org.jbpm.persistence.db.DbPersistenceServiceFactory" />
-    <service name="tx" factory="org.jbpm.tx.TxServiceFactory" />
-    <service name="message" factory="org.jbpm.msg.db.DbMessageServiceFactory" />
-    <service name="scheduler" factory="org.jbpm.scheduler.db.DbSchedulerServiceFactory" />
-    <service name="logging" factory="org.jbpm.logging.db.DbLoggingServiceFactory" />
-    <service name="authentication" factory="org.jbpm.security.authentication.DefaultAuthenticationServiceFactory" />
-  </jbpm-context>
-
-  <!-- configuration property used by persistence service impl org.jbpm.persistence.db.DbPersistenceServiceFactory -->
-  <string name="resource.hibernate.cfg.xml" value="hibernate.cfg.xml" />
-
-  <!-- configuration resource files pointing to default configuration files in jbpm-{version}.jar -->
-  <string name="resource.business.calendar" value="org/jbpm/calendar/jbpm.business.calendar.properties" />
-  <string name="resource.default.modules" value="org/jbpm/graph/def/jbpm.default.modules.properties" />
-  <string name="resource.converter" value="org/jbpm/db/hibernate/jbpm.converter.properties" />
-  <string name="resource.action.types" value="org/jbpm/graph/action/action.types.xml" />
-  <string name="resource.node.types" value="org/jbpm/graph/node/node.types.xml" />
-  <string name="resource.parsers" value="org/jbpm/jpdl/par/jbpm.parsers.xml" />
-  <string name="resource.varmapping" value="org/jbpm/context/exe/jbpm.varmapping.xml" />
-  <string name="resource.mail.templates" value="jbpm.mail.templates.xml" />
-
-  <int    name="jbpm.byte.block.size" value="1024" singleton="true" />
-  <string name="jbpm.mail.smtp.host" value="localhost" />
-  <!-- bean name="jbpm.task.instance.factory" class="org.jbpm.taskmgmt.impl.DefaultTaskInstanceFactoryImpl" singleton="true" /-->
   <bean name="jbpm.task.instance.factory" class="org.jbpm.examples.taskinstance.CustomTaskInstanceFactoryImpl" singleton="true" />
-  <bean   name="jbpm.variable.resolver" class="org.jbpm.jpdl.el.impl.JbpmVariableResolver" singleton="true" />
-  <bean   name="jbpm.mail.address.resolver" class="org.jbpm.identity.mail.IdentityAddressResolver" singleton="true" />
-  
-  <bean name="jbpm.job.executor" class="org.jbpm.job.executor.JobExecutor">
-    <field name="jbpmConfiguration"><ref bean="jbpmConfiguration" /></field>
-    <field name="name"><string value="JbpmJobExector" /></field>
-    <field name="nbrOfThreads"><int value="1" /></field>
-    <field name="idleInterval"><int value="2500" /></field>
-    <field name="maxIdleInterval"><int value="3600000" /></field>
-    <field name="historyMaxSize"><int value="20" /></field>
-  </bean>
-
 </jbpm-configuration>




More information about the jbpm-commits mailing list