[jbpm-commits] JBoss JBPM SVN: r6385 - in jbpm3/branches/jbpm-3.2-soa/modules/core/src: main/java/org/jbpm/db and 6 other directories.

do-not-reply at jboss.org do-not-reply at jboss.org
Mon May 31 23:21:16 EDT 2010


Author: alex.guizar at jboss.com
Date: 2010-05-31 23:21:15 -0400 (Mon, 31 May 2010)
New Revision: 6385

Modified:
   jbpm3/branches/jbpm-3.2-soa/modules/core/src/main/java/org/jbpm/ant/AntHelper.java
   jbpm3/branches/jbpm-3.2-soa/modules/core/src/main/java/org/jbpm/ant/DeployProcessTask.java
   jbpm3/branches/jbpm-3.2-soa/modules/core/src/main/java/org/jbpm/db/AbstractDbTestCase.java
   jbpm3/branches/jbpm-3.2-soa/modules/core/src/test/java/org/jbpm/command/ChangeProcessInstanceVersionCommandTest.java
   jbpm3/branches/jbpm-3.2-soa/modules/core/src/test/java/org/jbpm/jbpm1072/JBPM1072Test.java
   jbpm3/branches/jbpm-3.2-soa/modules/core/src/test/java/org/jbpm/jbpm1755/JBPM1755Test.java
   jbpm3/branches/jbpm-3.2-soa/modules/core/src/test/java/org/jbpm/jbpm1775/JBPM1775Test.java
   jbpm3/branches/jbpm-3.2-soa/modules/core/src/test/java/org/jbpm/jbpm522/JBPM522Test.java
   jbpm3/branches/jbpm-3.2-soa/modules/core/src/test/resources/org/jbpm/jbpm522/build.xml
Log:
SOA-2100: do not assume that test resources are unpacked
deprecate beginSessionTransaction and commitAndCloseSession

Modified: jbpm3/branches/jbpm-3.2-soa/modules/core/src/main/java/org/jbpm/ant/AntHelper.java
===================================================================
--- jbpm3/branches/jbpm-3.2-soa/modules/core/src/main/java/org/jbpm/ant/AntHelper.java	2010-05-31 19:40:03 UTC (rev 6384)
+++ jbpm3/branches/jbpm-3.2-soa/modules/core/src/main/java/org/jbpm/ant/AntHelper.java	2010-06-01 03:21:15 UTC (rev 6385)
@@ -37,8 +37,8 @@
  */
 public class AntHelper {
 
-  final static Map configurations = new HashMap();
-  final static Map jbpmConfigurations = new HashMap();
+  private static final Map configurations = new HashMap();
+  private static final Map jbpmConfigurations = new HashMap();
 
   private AntHelper() {
     // prevent instantiation
@@ -65,12 +65,10 @@
     if (jbpmConfiguration == null) {
       if (jbpmCfg == null) {
         jbpmConfiguration = JbpmConfiguration.getInstance();
-
       }
       else {
         jbpmConfiguration = JbpmConfiguration.getInstance(jbpmCfg);
       }
-
       jbpmConfigurations.put(jbpmCfg, jbpmConfiguration);
     }
     return jbpmConfiguration;

Modified: jbpm3/branches/jbpm-3.2-soa/modules/core/src/main/java/org/jbpm/ant/DeployProcessTask.java
===================================================================
--- jbpm3/branches/jbpm-3.2-soa/modules/core/src/main/java/org/jbpm/ant/DeployProcessTask.java	2010-05-31 19:40:03 UTC (rev 6384)
+++ jbpm3/branches/jbpm-3.2-soa/modules/core/src/main/java/org/jbpm/ant/DeployProcessTask.java	2010-06-01 03:21:15 UTC (rev 6385)
@@ -44,10 +44,10 @@
  */
 public class DeployProcessTask extends MatchingTask {
 
-	String jbpmCfg;
-	File process;
-	List fileSets = new ArrayList();
-	boolean failOnError = true;
+	private String jbpmCfg;
+	private File process;
+	private List fileSets = new ArrayList();
+	private boolean failOnError = true;
 
 	public void execute() throws BuildException {
 		// get the JbpmConfiguration

Modified: jbpm3/branches/jbpm-3.2-soa/modules/core/src/main/java/org/jbpm/db/AbstractDbTestCase.java
===================================================================
--- jbpm3/branches/jbpm-3.2-soa/modules/core/src/main/java/org/jbpm/db/AbstractDbTestCase.java	2010-05-31 19:40:03 UTC (rev 6384)
+++ jbpm3/branches/jbpm-3.2-soa/modules/core/src/main/java/org/jbpm/db/AbstractDbTestCase.java	2010-06-01 03:21:15 UTC (rev 6385)
@@ -65,7 +65,7 @@
 
   protected void setUp() throws Exception {
     super.setUp();
-    beginSessionTransaction();
+    createJbpmContext();
   }
 
   protected void runTest() throws Throwable {
@@ -81,7 +81,7 @@
 
   protected void tearDown() throws Exception {
     if (processDefinitionIds != null) deleteProcessDefinitions();
-    commitAndCloseSession();
+    closeJbpmContext();
     ensureCleanDatabase();
 
     super.tearDown();
@@ -128,19 +128,19 @@
     return persistenceServiceFactory.getConfiguration().getProperty(Environment.DIALECT);
   }
 
+  /** @deprecated call {@link #createJbpmContext()} instead */
   protected void beginSessionTransaction() {
     createJbpmContext();
-    initializeMembers();
   }
 
+  /** @deprecated call {@link #closeJbpmContext()} instead */
   protected void commitAndCloseSession() {
     closeJbpmContext();
-    resetMembers();
   }
 
   protected void newTransaction() {
-    commitAndCloseSession();
-    beginSessionTransaction();
+    closeJbpmContext();
+    createJbpmContext();
   }
 
   protected ProcessInstance saveAndReload(ProcessInstance pi) {
@@ -185,18 +185,21 @@
 
   protected JbpmConfiguration getJbpmConfiguration() {
     if (jbpmConfiguration == null) {
-      String jbpmTestConfiguration = getJbpmTestConfig();
-      jbpmConfiguration = JbpmConfiguration.getInstance(jbpmTestConfiguration);
+      String configurationResource = getJbpmTestConfig();
+      jbpmConfiguration = JbpmConfiguration.getInstance(configurationResource);
     }
     return jbpmConfiguration;
   }
 
   protected void createJbpmContext() {
     jbpmContext = getJbpmConfiguration().createJbpmContext();
+    initializeMembers();
   }
 
   protected void closeJbpmContext() {
     if (jbpmContext != null) {
+      resetMembers();
+
       jbpmContext.close();
       jbpmContext = null;
     }
@@ -260,12 +263,12 @@
       return getJobCount(session);
     }
     else {
-      beginSessionTransaction();
+      createJbpmContext();
       try {
         return getJobCount(session);
       }
       finally {
-        commitAndCloseSession();
+        closeJbpmContext();
       }
     }
   }
@@ -287,14 +290,14 @@
   }
 
   protected void processJobs(long maxWait) {
-    commitAndCloseSession();
+    closeJbpmContext();
     try {
       startJobExecutor();
       waitForJobs(maxWait);
     }
     finally {
       stopJobExecutor();
-      beginSessionTransaction();
+      createJbpmContext();
     }
   }
 

Modified: jbpm3/branches/jbpm-3.2-soa/modules/core/src/test/java/org/jbpm/command/ChangeProcessInstanceVersionCommandTest.java
===================================================================
--- jbpm3/branches/jbpm-3.2-soa/modules/core/src/test/java/org/jbpm/command/ChangeProcessInstanceVersionCommandTest.java	2010-05-31 19:40:03 UTC (rev 6384)
+++ jbpm3/branches/jbpm-3.2-soa/modules/core/src/test/java/org/jbpm/command/ChangeProcessInstanceVersionCommandTest.java	2010-06-01 03:21:15 UTC (rev 6385)
@@ -338,7 +338,6 @@
 
     assertEquals(pd2.getNode("end").getId(), pi1.getRootToken().getNode().getId());
     assertTrue(pi1.hasEnded());
-    closeJbpmContext();
   }
 
   /**

Modified: jbpm3/branches/jbpm-3.2-soa/modules/core/src/test/java/org/jbpm/jbpm1072/JBPM1072Test.java
===================================================================
--- jbpm3/branches/jbpm-3.2-soa/modules/core/src/test/java/org/jbpm/jbpm1072/JBPM1072Test.java	2010-05-31 19:40:03 UTC (rev 6384)
+++ jbpm3/branches/jbpm-3.2-soa/modules/core/src/test/java/org/jbpm/jbpm1072/JBPM1072Test.java	2010-06-01 03:21:15 UTC (rev 6385)
@@ -93,12 +93,12 @@
     processInstance.getContextInstance().setVariable("eventCallback", new EventCallback());
     processInstance.signal();
 
-    commitAndCloseSession();
+    closeJbpmContext();
     try {
       EventCallback.waitForEvent(Event.EVENTTYPE_PROCESS_END);
     }
     finally {
-      beginSessionTransaction();
+      createJbpmContext();
     }
 
     processInstance = jbpmContext.loadProcessInstance(processInstance.getId());

Modified: jbpm3/branches/jbpm-3.2-soa/modules/core/src/test/java/org/jbpm/jbpm1755/JBPM1755Test.java
===================================================================
--- jbpm3/branches/jbpm-3.2-soa/modules/core/src/test/java/org/jbpm/jbpm1755/JBPM1755Test.java	2010-05-31 19:40:03 UTC (rev 6384)
+++ jbpm3/branches/jbpm-3.2-soa/modules/core/src/test/java/org/jbpm/jbpm1755/JBPM1755Test.java	2010-06-01 03:21:15 UTC (rev 6385)
@@ -57,14 +57,14 @@
       jbpmContext.save(processInstance);
     }
 
-    commitAndCloseSession();
+    closeJbpmContext();
     try {
       startJobExecutor();
       EventCallback.waitForEvent(processInstanceCount, Event.EVENTTYPE_PROCESS_END);
     }
     finally {
       stopJobExecutor();
-      beginSessionTransaction();
+      createJbpmContext();
     }
 
     for (int i = 0; i < processInstanceCount; i++) {

Modified: jbpm3/branches/jbpm-3.2-soa/modules/core/src/test/java/org/jbpm/jbpm1775/JBPM1775Test.java
===================================================================
--- jbpm3/branches/jbpm-3.2-soa/modules/core/src/test/java/org/jbpm/jbpm1775/JBPM1775Test.java	2010-05-31 19:40:03 UTC (rev 6384)
+++ jbpm3/branches/jbpm-3.2-soa/modules/core/src/test/java/org/jbpm/jbpm1775/JBPM1775Test.java	2010-06-01 03:21:15 UTC (rev 6385)
@@ -66,12 +66,12 @@
       assertSame(IllegalStateException.class, e.getCause().getClass());
 
       try {
-        commitAndCloseSession();
+        closeJbpmContext();
       }
-      catch (JbpmPersistenceException je) {
+      catch (JbpmPersistenceException pe) {
         // discard failure to close normally
       }
-      beginSessionTransaction();
+      createJbpmContext();
     }
   }
 

Modified: jbpm3/branches/jbpm-3.2-soa/modules/core/src/test/java/org/jbpm/jbpm522/JBPM522Test.java
===================================================================
--- jbpm3/branches/jbpm-3.2-soa/modules/core/src/test/java/org/jbpm/jbpm522/JBPM522Test.java	2010-05-31 19:40:03 UTC (rev 6384)
+++ jbpm3/branches/jbpm-3.2-soa/modules/core/src/test/java/org/jbpm/jbpm522/JBPM522Test.java	2010-06-01 03:21:15 UTC (rev 6385)
@@ -22,13 +22,23 @@
 package org.jbpm.jbpm522;
 
 import java.io.ByteArrayOutputStream;
+import java.io.File;
+import java.io.FileOutputStream;
+import java.io.InputStream;
+import java.io.OutputStream;
 import java.io.PrintStream;
+import java.net.URL;
 import java.util.List;
 
+import junit.extensions.TestSetup;
+import junit.framework.Test;
+import junit.framework.TestSuite;
+
 import org.apache.tools.ant.Main;
 
 import org.jbpm.db.AbstractDbTestCase;
 import org.jbpm.graph.def.ProcessDefinition;
+import org.jbpm.util.IoUtil;
 
 /**
  * Failed attempts to deploy a process leave a process definition record
@@ -38,40 +48,85 @@
  */
 public class JBPM522Test extends AbstractDbTestCase {
 
+  private static String buildFilePath;
+
+  public static Test suite() {
+    return new TestSetup(new TestSuite(JBPM522Test.class)) {
+      private File temporaryBuildFile;
+
+      protected void setUp() throws Exception {
+        URL buildFileLocator = JBPM522Test.class.getResource("build.xml");
+        String protocol = buildFileLocator.getProtocol();
+
+        if ("file".equals(protocol)) {
+          buildFilePath = buildFileLocator.getPath();
+        }
+        else if ("jar".equals(protocol)) {
+          // copy to temporary file
+          InputStream buildFileStream = buildFileLocator.openStream();
+          try {
+            temporaryBuildFile = File.createTempFile("build", ".xml");
+
+            OutputStream temporaryFileStream = new FileOutputStream(temporaryBuildFile);
+            try {
+              IoUtil.transfer(buildFileStream, temporaryFileStream);
+            }
+            finally {
+              temporaryFileStream.close();
+            }
+          }
+          finally {
+            buildFileStream.close();
+          }
+          buildFilePath = temporaryBuildFile.getPath();
+        }
+        else {
+          throw new AssertionError(protocol);
+        }
+      }
+
+      protected void tearDown() throws Exception {
+        if (temporaryBuildFile != null) temporaryBuildFile.delete();
+      }
+    };
+  }
+
+  protected void setUp() throws Exception {
+    super.setUp();
+    runTarget(getName());
+  }
+
   public void testDeployProcess() {
-    runTarget("deploy.process");
     List processDefinitions = graphSession.findAllProcessDefinitionVersions("timerProcess");
     assertEquals(1, processDefinitions.size());
+
     ProcessDefinition processDefinition = (ProcessDefinition) processDefinitions.get(0);
     assertEquals("timerProcess", processDefinition.getName());
     graphSession.deleteProcessDefinition(processDefinition);
   }
 
   public void testDeployBadProcess() {
-    runTarget("deploy.bad.process");
-    List processDefinitions = graphSession
-        .findAllProcessDefinitionVersions("sequential process");
+    List processDefinitions = graphSession.findAllProcessDefinitionVersions("sequential process");
     assertEquals(0, processDefinitions.size());
   }
 
   public void testDeployProcesses() {
-    runTarget("deploy.processes");
-    List processDefinitions = graphSession
-        .findAllProcessDefinitionVersions("classLoadingProcess");
+    List processDefinitions = graphSession.findAllProcessDefinitionVersions("classLoadingProcess");
     assertEquals(1, processDefinitions.size());
+
     ProcessDefinition processDefinition = (ProcessDefinition) processDefinitions.get(0);
     assertEquals("classLoadingProcess", processDefinition.getName());
     graphSession.deleteProcessDefinition(processDefinition);
 
     processDefinitions = graphSession.findAllProcessDefinitionVersions("timerProcess");
     assertEquals(1, processDefinitions.size());
+
     processDefinition = (ProcessDefinition) processDefinitions.get(0);
     assertEquals("timerProcess", processDefinition.getName());
     graphSession.deleteProcessDefinition(processDefinition);
   }
 
-  public void testDeployProcessesIncludingBad() {
-    runTarget("deploy.processes.including.bad");
+  public void testDeployBadProcesses() {
     List processDefinitions = graphSession.findAllProcessDefinitionVersions("timerProcess");
     assertEquals(0, processDefinitions.size());
 
@@ -83,34 +138,32 @@
   }
 
   private void runTarget(String target) {
-    String[] args = { "-buildfile", JBPM522Test.class.getResource("build.xml").getPath(),
-        target };
+    PrintStream stdout = System.out;
+    PrintStream stderr = System.err;
 
-    PrintStream out = System.out;
-    PrintStream err = System.err;
+    ByteArrayOutputStream memout = new ByteArrayOutputStream();
+    PrintStream prnout = new PrintStream(memout);
 
-    final ByteArrayOutputStream baos = new ByteArrayOutputStream();
-    PrintStream tmp = new PrintStream(baos);
-
     try {
-      System.setOut(tmp);
-      System.setErr(tmp);
+      System.setOut(prnout);
+      System.setErr(prnout);
 
       Main antMain = new Main() {
         protected void exit(int exitCode) {
           // prevent ant from terminating the VM
         }
       };
-      antMain.startAnt(args, System.getProperties(), Thread
-          .currentThread()
-          .getContextClassLoader());
-
+      String[] args = {
+        "-buildfile", buildFilePath, target
+      };
+      antMain.startAnt(args, System.getProperties(), Thread.currentThread()
+        .getContextClassLoader());
     }
     finally {
-      System.setOut(out);
-      System.setErr(err);
+      System.setOut(stdout);
+      System.setErr(stderr);
 
-      log.info("\n" + new String(baos.toByteArray()));
+      log.info(new String(memout.toByteArray()));
     }
   }
 }

Modified: jbpm3/branches/jbpm-3.2-soa/modules/core/src/test/resources/org/jbpm/jbpm522/build.xml
===================================================================
--- jbpm3/branches/jbpm-3.2-soa/modules/core/src/test/resources/org/jbpm/jbpm522/build.xml	2010-05-31 19:40:03 UTC (rev 6384)
+++ jbpm3/branches/jbpm-3.2-soa/modules/core/src/test/resources/org/jbpm/jbpm522/build.xml	2010-06-01 03:21:15 UTC (rev 6385)
@@ -1,18 +1,18 @@
-<project name="deploy.process" default="deploy.process">
+<project name="jbpm522" default="testDeployProcess">
 
   <property name="process.dir" location="${ant.file}/.." />
   <taskdef name="deployprocess" classname="org.jbpm.ant.DeployProcessTask" />
 
-  <target name="deploy.process">
-    <deployprocess jbpmcfg="org/jbpm/db/jbpm.db.test.cfg.xml" process="${process.dir}/timerprocess.zip" />
+  <target name="testDeployProcess">
+    <deployprocess process="${process.dir}/timerprocess.zip" />
   </target>
 
-  <target name="deploy.bad.process">
-    <deployprocess jbpmcfg="org/jbpm/db/jbpm.db.test.cfg.xml" process="${process.dir}/badprocess.zip" />
+  <target name="testDeployBadProcess">
+    <deployprocess process="${process.dir}/badprocess.zip" />
   </target>
 
-  <target name="deploy.processes">
-    <deployprocess jbpmcfg="org/jbpm/db/jbpm.db.test.cfg.xml">
+  <target name="testDeployProcesses">
+    <deployprocess>
       <fileset dir="${process.dir}">
         <include name="timerprocess.zip"/>
         <include name="classloadingprocess.zip" />
@@ -20,8 +20,8 @@
     </deployprocess>
   </target>
 
-  <target name="deploy.processes.including.bad">
-    <deployprocess jbpmcfg="org/jbpm/db/jbpm.db.test.cfg.xml">
+  <target name="testDeployBadProcesses">
+    <deployprocess>
       <fileset dir="${process.dir}">
         <include name="timerprocess.zip"/>
         <include name="badprocess.zip"/>



More information about the jbpm-commits mailing list