[jbpm-commits] JBoss JBPM SVN: r2281 - in projects/jbpm-spec/trunk: modules/api/src/main/java/org/jboss/bpm/client and 5 other directories.
do-not-reply at jboss.org
do-not-reply at jboss.org
Thu Sep 18 15:11:01 EDT 2008
Author: thomas.diesler at jboss.com
Date: 2008-09-18 15:11:01 -0400 (Thu, 18 Sep 2008)
New Revision: 2281
Added:
projects/jbpm-spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/NoneTask.java
projects/jbpm-spec/trunk/modules/cts/src/test/java/org/jboss/bpm/cts/model/process/InvalidProcessTest.java
projects/jbpm-spec/trunk/modules/cts/src/test/java/org/jboss/bpm/cts/model/process/ProcessMarshallerTest.java
projects/jbpm-spec/trunk/modules/cts/src/test/java/org/jboss/bpm/cts/model/process/ProcessStorageTest.java
projects/jbpm-spec/trunk/modules/cts/src/test/java/org/jboss/bpm/cts/model/process/ProcessTest.java
Removed:
projects/jbpm-spec/trunk/modules/cts/src/test/java/org/jboss/bpm/cts/model/process/ProcessIntegrityTest.java
Modified:
projects/jbpm-spec/trunk/modules/api/src/main/java/org/jboss/bpm/client/PersistenceService.java
projects/jbpm-spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/SequenceFlow.java
projects/jbpm-spec/trunk/modules/ri/pom.xml
projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/client/HibernatePersistenceService.java
projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/client/ProcessManagerImpl.java
projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/AbstractElementImpl.java
projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/ActivityImpl.java
projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/EndEventImpl.java
projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/FlowImpl.java
projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/FlowObjectImpl.java
projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/GatewayImpl.java
projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/IntermediateEventImpl.java
projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/NoneTaskImpl.java
projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/ProcessImpl.java
projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/SequenceFlowImpl.java
projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/StartEventImpl.java
projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/SubProcessImpl.java
projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/SupportingElementImpl.java
projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/TaskImpl.java
projects/jbpm-spec/trunk/pom.xml
Log:
More Persistence
Modified: projects/jbpm-spec/trunk/modules/api/src/main/java/org/jboss/bpm/client/PersistenceService.java
===================================================================
--- projects/jbpm-spec/trunk/modules/api/src/main/java/org/jboss/bpm/client/PersistenceService.java 2008-09-18 13:56:28 UTC (rev 2280)
+++ projects/jbpm-spec/trunk/modules/api/src/main/java/org/jboss/bpm/client/PersistenceService.java 2008-09-18 19:11:01 UTC (rev 2281)
@@ -35,7 +35,7 @@
*/
public interface PersistenceService
{
- void saveProcess(Process proc);
+ ObjectName saveProcess(Process proc);
Process loadProcess(ObjectName procID);
Added: projects/jbpm-spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/NoneTask.java
===================================================================
--- projects/jbpm-spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/NoneTask.java (rev 0)
+++ projects/jbpm-spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/NoneTask.java 2008-09-18 19:11:01 UTC (rev 2281)
@@ -0,0 +1,35 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.model;
+
+//$Id$
+
+
+/**
+ * Task that corresponds to the TaskType.None
+ *
+ * @author thomas.diesler at jboss.com
+ * @since 08-Jul-2008
+ */
+public interface NoneTask extends Task
+{
+}
\ No newline at end of file
Property changes on: projects/jbpm-spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/NoneTask.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Modified: projects/jbpm-spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/SequenceFlow.java
===================================================================
--- projects/jbpm-spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/SequenceFlow.java 2008-09-18 13:56:28 UTC (rev 2280)
+++ projects/jbpm-spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/SequenceFlow.java 2008-09-18 19:11:01 UTC (rev 2281)
@@ -23,8 +23,9 @@
-//$Id$
+//$Id: $
+
/**
* A Sequence Flow is used to show the order that activities will be performed in a Process. Each Flow has only one
* source and only one target. The source and target must be from the set of the following Flow Objects: Events (Start,
Copied: projects/jbpm-spec/trunk/modules/cts/src/test/java/org/jboss/bpm/cts/model/process/InvalidProcessTest.java (from rev 2278, projects/jbpm-spec/trunk/modules/cts/src/test/java/org/jboss/bpm/cts/model/process/ProcessIntegrityTest.java)
===================================================================
--- projects/jbpm-spec/trunk/modules/cts/src/test/java/org/jboss/bpm/cts/model/process/InvalidProcessTest.java (rev 0)
+++ projects/jbpm-spec/trunk/modules/cts/src/test/java/org/jboss/bpm/cts/model/process/InvalidProcessTest.java 2008-09-18 19:11:01 UTC (rev 2281)
@@ -0,0 +1,69 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.cts.model.process;
+
+// $Id$
+
+import org.jboss.bpm.InvalidProcessException;
+import org.jboss.bpm.model.ProcessBuilder;
+import org.jboss.bpm.model.ProcessBuilderFactory;
+import org.jboss.bpm.test.DefaultEngineTestCase;
+
+/**
+ * Test the intergety of various process definitions
+ *
+ * @author thomas.diesler at jboss.com
+ * @since 08-Jul-2008
+ */
+public class InvalidProcessTest extends DefaultEngineTestCase
+{
+ public void testNoStartEvent() throws Exception
+ {
+ try
+ {
+ // Create a Process through the ProcessBuilder
+ ProcessBuilder builder = ProcessBuilderFactory.newInstance().newProcessBuilder();
+ builder.addProcess("NoStartState").addTask("taskA").addSequenceFlow("end").addEndEvent("end").getProcess();
+ fail("InvalidProcessException expected");
+ }
+ catch (InvalidProcessException ex)
+ {
+ assertTrue("Unexpected message: " + ex.getMessage(), ex.getMessage().indexOf("start event") > 0);
+ }
+ }
+
+ public void testNoEndEvent() throws Exception
+ {
+ try
+ {
+ // Create a Process through the ProcessBuilder
+ ProcessBuilder builder = ProcessBuilderFactory.newInstance().newProcessBuilder();
+ builder.addProcess("NoEndState").addStartEvent("Start").addSequenceFlow("taskA").addTask("taskA").addSequenceFlow("end").
+ addTask("end").getProcess();
+ fail("InvalidProcessException expected");
+ }
+ catch (InvalidProcessException ex)
+ {
+ assertTrue("Unexpected message: " + ex.getMessage(), ex.getMessage().indexOf("end event") > 0);
+ }
+ }
+}
Deleted: projects/jbpm-spec/trunk/modules/cts/src/test/java/org/jboss/bpm/cts/model/process/ProcessIntegrityTest.java
===================================================================
--- projects/jbpm-spec/trunk/modules/cts/src/test/java/org/jboss/bpm/cts/model/process/ProcessIntegrityTest.java 2008-09-18 13:56:28 UTC (rev 2280)
+++ projects/jbpm-spec/trunk/modules/cts/src/test/java/org/jboss/bpm/cts/model/process/ProcessIntegrityTest.java 2008-09-18 19:11:01 UTC (rev 2281)
@@ -1,69 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2005, JBoss Inc., and individual contributors as indicated
- * by the @authors tag. See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.bpm.cts.model.process;
-
-// $Id$
-
-import org.jboss.bpm.InvalidProcessException;
-import org.jboss.bpm.model.ProcessBuilder;
-import org.jboss.bpm.model.ProcessBuilderFactory;
-import org.jboss.bpm.test.DefaultEngineTestCase;
-
-/**
- * Test the intergety of various process definitions
- *
- * @author thomas.diesler at jboss.com
- * @since 08-Jul-2008
- */
-public class ProcessIntegrityTest extends DefaultEngineTestCase
-{
- public void testNoStartEvent() throws Exception
- {
- try
- {
- // Create a Process through the ProcessBuilder
- ProcessBuilder builder = ProcessBuilderFactory.newInstance().newProcessBuilder();
- builder.addProcess("NoStartState").addTask("taskA").addSequenceFlow("end").addEndEvent("end").getProcess();
- fail("InvalidProcessException expected");
- }
- catch (InvalidProcessException ex)
- {
- assertTrue("Unexpected message: " + ex.getMessage(), ex.getMessage().indexOf("start event") > 0);
- }
- }
-
- public void testNoEndEvent() throws Exception
- {
- try
- {
- // Create a Process through the ProcessBuilder
- ProcessBuilder builder = ProcessBuilderFactory.newInstance().newProcessBuilder();
- builder.addProcess("NoEndState").addStartEvent("Start").addSequenceFlow("taskA").addTask("taskA").addSequenceFlow("end").
- addTask("end").getProcess();
- fail("InvalidProcessException expected");
- }
- catch (InvalidProcessException ex)
- {
- assertTrue("Unexpected message: " + ex.getMessage(), ex.getMessage().indexOf("end event") > 0);
- }
- }
-}
Added: projects/jbpm-spec/trunk/modules/cts/src/test/java/org/jboss/bpm/cts/model/process/ProcessMarshallerTest.java
===================================================================
--- projects/jbpm-spec/trunk/modules/cts/src/test/java/org/jboss/bpm/cts/model/process/ProcessMarshallerTest.java (rev 0)
+++ projects/jbpm-spec/trunk/modules/cts/src/test/java/org/jboss/bpm/cts/model/process/ProcessMarshallerTest.java 2008-09-18 19:11:01 UTC (rev 2281)
@@ -0,0 +1,49 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.cts.model.process;
+
+// $Id$
+
+import java.io.IOException;
+
+import org.jboss.bpm.client.ProcessManager;
+import org.jboss.bpm.model.Process;
+
+/**
+ * Test Process integrity.
+ *
+ * @author thomas.diesler at jboss.com
+ * @since 18-Sep-2008
+ */
+public class ProcessMarshallerTest extends ProcessTest
+{
+ protected Process getSimpleProcess() throws IOException
+ {
+ // Marshall the process to a string
+ Process proc = super.getSimpleProcess();
+ String procXML = marshallProcess(proc);
+
+ // Recreate the process from the marshalled process
+ ProcessManager procManager = ProcessManager.locateProcessManager();
+ return procManager.createProcess(procXML);
+ }
+}
Property changes on: projects/jbpm-spec/trunk/modules/cts/src/test/java/org/jboss/bpm/cts/model/process/ProcessMarshallerTest.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: projects/jbpm-spec/trunk/modules/cts/src/test/java/org/jboss/bpm/cts/model/process/ProcessStorageTest.java
===================================================================
--- projects/jbpm-spec/trunk/modules/cts/src/test/java/org/jboss/bpm/cts/model/process/ProcessStorageTest.java (rev 0)
+++ projects/jbpm-spec/trunk/modules/cts/src/test/java/org/jboss/bpm/cts/model/process/ProcessStorageTest.java 2008-09-18 19:11:01 UTC (rev 2281)
@@ -0,0 +1,48 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.cts.model.process;
+
+// $Id$
+
+import java.io.IOException;
+
+import javax.management.ObjectName;
+
+import org.jboss.bpm.client.ProcessManager;
+import org.jboss.bpm.model.Process;
+
+/**
+ * Test Process integrity.
+ *
+ * @author thomas.diesler at jboss.com
+ * @since 18-Sep-2008
+ */
+public class ProcessStorageTest extends ProcessTest
+{
+ protected Process getSimpleProcess() throws IOException
+ {
+ // Save and reload the process
+ ProcessManager pm = ProcessManager.locateProcessManager();
+ ObjectName procID = pm.saveProcess(super.getSimpleProcess());
+ return pm.loadProcess(procID);
+ }
+}
Property changes on: projects/jbpm-spec/trunk/modules/cts/src/test/java/org/jboss/bpm/cts/model/process/ProcessStorageTest.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: projects/jbpm-spec/trunk/modules/cts/src/test/java/org/jboss/bpm/cts/model/process/ProcessTest.java
===================================================================
--- projects/jbpm-spec/trunk/modules/cts/src/test/java/org/jboss/bpm/cts/model/process/ProcessTest.java (rev 0)
+++ projects/jbpm-spec/trunk/modules/cts/src/test/java/org/jboss/bpm/cts/model/process/ProcessTest.java 2008-09-18 19:11:01 UTC (rev 2281)
@@ -0,0 +1,90 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.cts.model.process;
+
+// $Id$
+
+import java.io.IOException;
+import java.util.List;
+
+import org.jboss.bpm.model.EndEvent;
+import org.jboss.bpm.model.NoneTask;
+import org.jboss.bpm.model.Process;
+import org.jboss.bpm.model.ProcessBuilder;
+import org.jboss.bpm.model.ProcessBuilderFactory;
+import org.jboss.bpm.model.SequenceFlow;
+import org.jboss.bpm.model.StartEvent;
+import org.jboss.bpm.model.Task;
+import org.jboss.bpm.model.Process.ProcessStatus;
+import org.jboss.bpm.test.DefaultEngineTestCase;
+
+/**
+ * Test Process integrity.
+ *
+ * @author thomas.diesler at jboss.com
+ * @since 18-Sep-2008
+ */
+public class ProcessTest extends DefaultEngineTestCase
+{
+ public void testSimpleProcess() throws Exception
+ {
+ Process proc = getSimpleProcess();
+ assertEquals("SimpleProcess", proc.getName());
+ assertEquals(ProcessStatus.Ready, proc.getProcessStatus());
+
+ List<StartEvent> startEvents = proc.getFlowObjects(StartEvent.class);
+ assertEquals("One StartEvent", 1, startEvents.size());
+ StartEvent startEvent = startEvents.get(0);
+
+ List<Task> tasks = proc.getFlowObjects(Task.class);
+ assertEquals("One Task", 1, tasks.size());
+ NoneTask task = (NoneTask)tasks.get(0);
+
+ List<EndEvent> endEvents = proc.getFlowObjects(EndEvent.class);
+ assertEquals("One EndEvent", 1, endEvents.size());
+ EndEvent endEvent = endEvents.get(0);
+
+ assertEquals("StartEvent name", "Start", startEvent.getName());
+ assertSame("Same Process", proc, startEvent.getProcess());
+ SequenceFlow outFlow = startEvent.getOutFlow();
+ assertNotNull("StartEvent outFlow", outFlow);
+ assertEquals("OutFlow target", "Task", outFlow.getTargetName());
+
+ assertEquals("Task name", "Task", task.getName());
+ assertSame("Same Process", proc, task.getProcess());
+ outFlow = task.getOutFlow();
+ assertNotNull("Task outFlow", outFlow);
+ assertEquals("OutFlow target", "End", outFlow.getTargetName());
+
+ assertEquals("EndEvent name", "End", endEvent.getName());
+ assertSame("Same Process", proc, endEvent.getProcess());
+ }
+
+ protected Process getSimpleProcess() throws IOException
+ {
+ ProcessBuilder procBuilder = ProcessBuilderFactory.newInstance().newProcessBuilder();
+ procBuilder.addProcess("SimpleProcess").addStartEvent("Start").addSequenceFlow("Task");
+ procBuilder.addTask("Task").addSequenceFlow("End").addEndEvent("End");
+ Process proc = procBuilder.getProcess();
+ return proc;
+ }
+}
Property changes on: projects/jbpm-spec/trunk/modules/cts/src/test/java/org/jboss/bpm/cts/model/process/ProcessTest.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Modified: projects/jbpm-spec/trunk/modules/ri/pom.xml
===================================================================
--- projects/jbpm-spec/trunk/modules/ri/pom.xml 2008-09-18 13:56:28 UTC (rev 2280)
+++ projects/jbpm-spec/trunk/modules/ri/pom.xml 2008-09-18 19:11:01 UTC (rev 2281)
@@ -29,46 +29,8 @@
<!-- Properties -->
<properties>
- <hibernate.version>3.2.6.ga</hibernate.version>
- <hibernate.annotations.version>3.3.1.GA</hibernate.annotations.version>
- <hibernate.validator.version>3.0.0.ga</hibernate.validator.version>
- <hsqldb.version>1.8.0.7</hsqldb.version>
- <mysql.connector.version>5.1.6</mysql.connector.version>
</properties>
- <!-- DependencyManagement -->
- <dependencyManagement>
- <dependencies>
- <dependency>
- <groupId>hsqldb</groupId>
- <artifactId>hsqldb</artifactId>
- <version>${hsqldb.version}</version>
- </dependency>
- <dependency>
- <groupId>org.hibernate</groupId>
- <artifactId>hibernate</artifactId>
- <version>${hibernate.version}</version>
- </dependency>
- <dependency>
- <groupId>org.hibernate</groupId>
- <artifactId>hibernate-annotations</artifactId>
- <version>${hibernate.annotations.version}</version>
- </dependency>
- <dependency>
- <groupId>org.hibernate</groupId>
- <artifactId>hibernate-validator</artifactId>
- <version>${hibernate.validator.version}</version>
- </dependency>
-
- <!-- Database Driver Versions -->
- <dependency>
- <groupId>mysql</groupId>
- <artifactId>mysql-connector-java</artifactId>
- <version>${mysql.connector.version}</version>
- </dependency>
- </dependencies>
- </dependencyManagement>
-
<!-- Dependencies -->
<dependencies>
<dependency>
@@ -97,71 +59,6 @@
<!-- Profiles -->
<profiles>
-
- <!--
- Name: no-database
- Descr: Setup the default database
- -->
- <profile>
- <id>no-database</id>
- <activation>
- <property>
- <name>!database</name>
- </property>
- </activation>
- <properties>
- <database>hsqldb</database>
- </properties>
- <dependencies>
- <dependency>
- <groupId>hsqldb</groupId>
- <artifactId>hsqldb</artifactId>
- <scope>test</scope>
- </dependency>
- </dependencies>
- </profile>
-
- <!--
- Name: hsqldb
- Descr: Hypersonic Database Setup
- -->
- <profile>
- <id>hsqldb</id>
- <activation>
- <property>
- <name>database</name>
- <value>hsqldb</value>
- </property>
- </activation>
- <dependencies>
- <dependency>
- <groupId>hsqldb</groupId>
- <artifactId>hsqldb</artifactId>
- <scope>test</scope>
- </dependency>
- </dependencies>
- </profile>
-
- <!--
- Name: mysql
- Descr: MySQL Database Setup
- -->
- <profile>
- <id>mysql</id>
- <activation>
- <property>
- <name>database</name>
- <value>mysql</value>
- </property>
- </activation>
- <dependencies>
- <dependency>
- <groupId>mysql</groupId>
- <artifactId>mysql-connector-java</artifactId>
- <scope>test</scope>
- </dependency>
- </dependencies>
- </profile>
-
</profiles>
+
</project>
\ No newline at end of file
Modified: projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/client/HibernatePersistenceService.java
===================================================================
--- projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/client/HibernatePersistenceService.java 2008-09-18 13:56:28 UTC (rev 2280)
+++ projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/client/HibernatePersistenceService.java 2008-09-18 19:11:01 UTC (rev 2281)
@@ -35,10 +35,13 @@
import org.jboss.bpm.client.PersistenceService;
import org.jboss.bpm.model.Process;
import org.jboss.bpm.ri.model.impl.AbstractElementImpl;
+import org.jboss.bpm.ri.model.impl.ActivityImpl;
import org.jboss.bpm.ri.model.impl.EndEventImpl;
+import org.jboss.bpm.ri.model.impl.FlowImpl;
import org.jboss.bpm.ri.model.impl.FlowObjectImpl;
import org.jboss.bpm.ri.model.impl.NoneTaskImpl;
import org.jboss.bpm.ri.model.impl.ProcessImpl;
+import org.jboss.bpm.ri.model.impl.SequenceFlowImpl;
import org.jboss.bpm.ri.model.impl.StartEventImpl;
/**
@@ -57,7 +60,7 @@
this.hibernateConfig = hibernateConfig;
}
- public void saveProcess(Process proc)
+ public ObjectName saveProcess(Process proc)
{
Session session = getSessionFactory().openSession();
Transaction tx = session.beginTransaction();
@@ -70,6 +73,7 @@
{
session.close();
}
+ return proc.getID();
}
public Process loadProcess(ObjectName procID)
@@ -123,10 +127,13 @@
{
AnnotationConfiguration anConfig = new AnnotationConfiguration();
anConfig.addAnnotatedClass(AbstractElementImpl.class);
+ anConfig.addAnnotatedClass(ActivityImpl.class);
anConfig.addAnnotatedClass(EndEventImpl.class);
+ anConfig.addAnnotatedClass(FlowImpl.class);
anConfig.addAnnotatedClass(FlowObjectImpl.class);
anConfig.addAnnotatedClass(NoneTaskImpl.class);
anConfig.addAnnotatedClass(ProcessImpl.class);
+ anConfig.addAnnotatedClass(SequenceFlowImpl.class);
anConfig.addAnnotatedClass(StartEventImpl.class);
sessionFactory = anConfig.configure(hibernateConfig).buildSessionFactory();
}
Modified: projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/client/ProcessManagerImpl.java
===================================================================
--- projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/client/ProcessManagerImpl.java 2008-09-18 13:56:28 UTC (rev 2280)
+++ projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/client/ProcessManagerImpl.java 2008-09-18 19:11:01 UTC (rev 2281)
@@ -93,10 +93,10 @@
super.unregisterProcess(procImpl.getID());
}
- public void saveProcess(Process proc)
+ public ObjectName saveProcess(Process proc)
{
assertPersistenceService();
- persistenceService.saveProcess(proc);
+ return persistenceService.saveProcess(proc);
}
public Process loadProcess(ObjectName procID)
Modified: projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/AbstractElementImpl.java
===================================================================
--- projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/AbstractElementImpl.java 2008-09-18 13:56:28 UTC (rev 2280)
+++ projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/AbstractElementImpl.java 2008-09-18 19:11:01 UTC (rev 2281)
@@ -44,21 +44,20 @@
{
// provide serial version UID
private static final long serialVersionUID = 1L;
-
+
// The cached ID
protected transient ObjectName id;
// The persistent key
private transient String key;
-
- public AbstractElementImpl()
- {
- this.key = new UID().toString();
- }
@Id
@Column(name = "id")
public String getKey()
{
+ if (key == null)
+ {
+ key = new UID().toString();
+ }
return key;
}
@@ -72,7 +71,7 @@
*/
@Transient
public abstract ObjectName getID();
-
+
/**
* Called when the process is created
*/
Modified: projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/ActivityImpl.java
===================================================================
--- projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/ActivityImpl.java 2008-09-18 13:56:28 UTC (rev 2280)
+++ projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/ActivityImpl.java 2008-09-18 19:11:01 UTC (rev 2281)
@@ -27,6 +27,11 @@
import java.util.Collections;
import java.util.List;
+import javax.persistence.CascadeType;
+import javax.persistence.FetchType;
+import javax.persistence.JoinColumn;
+import javax.persistence.MappedSuperclass;
+import javax.persistence.OneToOne;
import javax.persistence.Transient;
import org.apache.commons.logging.Log;
@@ -55,6 +60,7 @@
* @author thomas.diesler at jboss.com
* @since 08-Jul-2008
*/
+ at MappedSuperclass
public abstract class ActivityImpl extends FlowObjectImpl implements Activity, MutablePropertySupport,
SingleInFlowSetterSupport, SingleOutFlowSetterSupport
{
@@ -192,7 +198,8 @@
this.inFlow = inFlow;
}
- @Transient
+ @OneToOne(cascade = CascadeType.ALL, fetch= FetchType.EAGER, targetEntity = SequenceFlowImpl.class)
+ @JoinColumn
public SequenceFlow getOutFlow()
{
return outFlow;
@@ -259,9 +266,7 @@
return inputSet;
}
- /**
- * Select the active outputSet
- */
+ @Transient
protected OutputSet getActiveOutputSet()
{
OutputSet outputSet = null;
Modified: projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/EndEventImpl.java
===================================================================
--- projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/EndEventImpl.java 2008-09-18 13:56:28 UTC (rev 2280)
+++ projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/EndEventImpl.java 2008-09-18 19:11:01 UTC (rev 2281)
@@ -48,7 +48,6 @@
import org.jboss.bpm.runtime.SignalHandler;
import org.jboss.bpm.runtime.Token;
import org.jboss.bpm.runtime.TokenExecutor;
-import org.jboss.util.id.UID;
/**
* As the name implies, the End Event indicates where a Process will end.
@@ -88,7 +87,7 @@
if (id == null)
{
StringBuilder str = new StringBuilder(Constants.ID_DOMAIN + ":");
- str.append("type=EndEvent,name=" + getName() + ",id=" + new UID());
+ str.append("type=EndEvent,name=" + getName() + ",id=" + getKey());
id = ObjectNameFactory.create(str.toString());
}
return id;
Modified: projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/FlowImpl.java
===================================================================
--- projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/FlowImpl.java 2008-09-18 13:56:28 UTC (rev 2280)
+++ projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/FlowImpl.java 2008-09-18 19:11:01 UTC (rev 2281)
@@ -23,6 +23,9 @@
//$Id$
+import javax.persistence.MappedSuperclass;
+import javax.persistence.Transient;
+
import org.jboss.bpm.model.ConnectingObject;
import org.jboss.bpm.model.FlowObject;
@@ -33,6 +36,7 @@
* @author thomas.diesler at jboss.com
* @since 08-Jul-2008
*/
+ at MappedSuperclass
public abstract class FlowImpl extends SupportingElementImpl implements ConnectingObject
{
// provide serial version UID
@@ -66,6 +70,7 @@
this.name = name;
}
+ @Transient
public FlowObject getSourceRef()
{
return source;
@@ -76,6 +81,7 @@
this.source = source;
}
+ @Transient
public FlowObject getTargetRef()
{
return target;
@@ -90,4 +96,10 @@
{
return targetName;
}
+
+ // Persistence method
+ protected void setTargetName(String targetName)
+ {
+ this.targetName = targetName;
+ }
}
\ No newline at end of file
Modified: projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/FlowObjectImpl.java
===================================================================
--- projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/FlowObjectImpl.java 2008-09-18 13:56:28 UTC (rev 2280)
+++ projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/FlowObjectImpl.java 2008-09-18 19:11:01 UTC (rev 2281)
@@ -25,8 +25,11 @@
import java.util.Collections;
import java.util.List;
+import javax.persistence.Entity;
+import javax.persistence.Inheritance;
+import javax.persistence.InheritanceType;
import javax.persistence.ManyToOne;
-import javax.persistence.MappedSuperclass;
+import javax.persistence.Table;
import javax.persistence.Transient;
import org.jboss.bpm.InvalidProcessException;
@@ -56,7 +59,9 @@
* @author thomas.diesler at jboss.com
* @since 08-Jul-2008
*/
- at MappedSuperclass
+ at Entity
+ at Table(name = "JBPM_FLOW_OBJECT")
+ at Inheritance (strategy = InheritanceType.JOINED)
public abstract class FlowObjectImpl extends GraphicalElementImpl implements FlowObject, HandlerSetterSupport
{
// provide serial version UID
@@ -79,13 +84,18 @@
{
}
- //@ManyToOne(targetEntity = ProcessImpl.class)
- @Transient
+ @ManyToOne(targetEntity = ProcessImpl.class)
public Process getProcess()
{
return proc;
}
+ // Persistence method
+ protected void setProcess(Process proc)
+ {
+ this.proc = proc;
+ }
+
public String getName()
{
return name;
@@ -233,8 +243,10 @@
protected void create(Process proc)
{
super.create(proc);
- this.proc = proc;
+ // Set the associated process
+ setProcess(proc);
+
// Check required name
if (name == null)
throw new InvalidProcessException("Name is required for: " + this);
Modified: projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/GatewayImpl.java
===================================================================
--- projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/GatewayImpl.java 2008-09-18 13:56:28 UTC (rev 2280)
+++ projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/GatewayImpl.java 2008-09-18 19:11:01 UTC (rev 2281)
@@ -43,7 +43,6 @@
import org.jboss.bpm.runtime.ExecutionHandler;
import org.jboss.bpm.runtime.SignalHandler;
import org.jboss.bpm.runtime.Token;
-import org.jboss.util.id.UID;
/**
* Gateways are modelling elements that are used to control how Sequence Flow interact as they converge and diverge
@@ -77,7 +76,7 @@
if (id == null)
{
StringBuilder str = new StringBuilder(Constants.ID_DOMAIN + ":");
- str.append("type=" + getGatewayType() + "Gateway,name=" + getName() + ",id=" + new UID());
+ str.append("type=" + getGatewayType() + "Gateway,name=" + getName() + ",id=" + getKey());
id = ObjectNameFactory.create(str.toString());
}
return id;
Modified: projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/IntermediateEventImpl.java
===================================================================
--- projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/IntermediateEventImpl.java 2008-09-18 13:56:28 UTC (rev 2280)
+++ projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/IntermediateEventImpl.java 2008-09-18 19:11:01 UTC (rev 2281)
@@ -40,7 +40,6 @@
import org.jboss.bpm.runtime.SignalHandler;
import org.jboss.bpm.runtime.Token;
import org.jboss.bpm.runtime.TokenExecutor;
-import org.jboss.util.id.UID;
/**
* An Intermediate Event is an Event that occurs after a Process has been started. It will affect the Flow of the Process, but will not start or (directly) terminate
@@ -70,7 +69,7 @@
if (id == null)
{
StringBuilder str = new StringBuilder(Constants.ID_DOMAIN + ":");
- str.append("type=IntermediateEvent,name=" + getName() + ",id=" + new UID());
+ str.append("type=IntermediateEvent,name=" + getName() + ",id=" + getKey());
id = ObjectNameFactory.create(str.toString());
}
return id;
Modified: projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/NoneTaskImpl.java
===================================================================
--- projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/NoneTaskImpl.java 2008-09-18 13:56:28 UTC (rev 2280)
+++ projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/NoneTaskImpl.java 2008-09-18 19:11:01 UTC (rev 2281)
@@ -27,6 +27,8 @@
import javax.persistence.Table;
import javax.persistence.Transient;
+import org.jboss.bpm.model.NoneTask;
+
/**
* Task that corresponds to the TaskType.None
*
@@ -35,7 +37,7 @@
*/
@Entity
@Table(name = "JBPM_NONE_TASK")
-public class NoneTaskImpl extends TaskImpl
+public class NoneTaskImpl extends TaskImpl implements NoneTask
{
// provide serial version UID
private static final long serialVersionUID = 1L;
Modified: projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/ProcessImpl.java
===================================================================
--- projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/ProcessImpl.java 2008-09-18 13:56:28 UTC (rev 2280)
+++ projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/ProcessImpl.java 2008-09-18 19:11:01 UTC (rev 2281)
@@ -34,6 +34,8 @@
import javax.management.ObjectName;
import javax.persistence.CascadeType;
import javax.persistence.Entity;
+import javax.persistence.EnumType;
+import javax.persistence.Enumerated;
import javax.persistence.FetchType;
import javax.persistence.OneToMany;
import javax.persistence.Table;
@@ -268,8 +270,7 @@
return em.waitForEnd(this, timeout);
}
- //@OneToMany(cascade = { CascadeType.ALL }, fetch = FetchType.EAGER, mappedBy = "process", targetEntity = FlowObjectImpl.class)
- @Transient
+ @OneToMany(cascade = { CascadeType.ALL }, fetch = FetchType.EAGER, mappedBy = "process", targetEntity = FlowObjectImpl.class)
public List<FlowObject> getFlowObjects()
{
if (status == ProcessStatus.None)
@@ -278,6 +279,12 @@
return Collections.unmodifiableList(flowObjects);
}
+ // Persistence method
+ protected void setFlowObjects(List<FlowObject> flowObjects)
+ {
+ this.flowObjects = flowObjects;
+ }
+
public FlowObject getFlowObject(String name)
{
if (name == null)
@@ -307,6 +314,7 @@
return retFlowObjects;
}
+ @Enumerated(EnumType.STRING)
public synchronized ProcessStatus getProcessStatus()
{
return status;
Modified: projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/SequenceFlowImpl.java
===================================================================
--- projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/SequenceFlowImpl.java 2008-09-18 13:56:28 UTC (rev 2280)
+++ projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/SequenceFlowImpl.java 2008-09-18 19:11:01 UTC (rev 2281)
@@ -24,15 +24,18 @@
//$Id$
import javax.persistence.Entity;
+import javax.persistence.EnumType;
+import javax.persistence.Enumerated;
import javax.persistence.Table;
+import javax.persistence.Transient;
import org.jboss.bpm.model.Expression;
import org.jboss.bpm.model.FlowObject;
import org.jboss.bpm.model.SequenceFlow;
/**
- * A Sequence Flow is a solid graphical line that is used to show the order that Activities will be performed in a Process.
- * Each Flow has only one source and only one target.
+ * A Sequence Flow is a solid graphical line that is used to show the order that Activities will be performed in a
+ * Process. Each Flow has only one source and only one target.
*
* @author thomas.diesler at jboss.com
* @since 08-Jul-2008
@@ -43,10 +46,10 @@
{
// provide serial version UID
private static final long serialVersionUID = 1L;
-
+
private ConditionType conditionType = ConditionType.None;
private Expression conditionExpression;
-
+
public SequenceFlowImpl(String targetName)
{
super(targetName);
@@ -64,29 +67,37 @@
{
}
+ @Enumerated(EnumType.STRING)
public ConditionType getConditionType()
{
return conditionType;
}
-
+
+ // Persistent method
+ protected void setConditionType(ConditionType conditionType)
+ {
+ this.conditionType = conditionType;
+ }
+
+ @Transient
public Expression getConditionExpression()
{
return conditionExpression;
}
-
+
public String toString()
{
FlowObject sourceRef = getSourceRef();
FlowObject targetRef = getTargetRef();
-
+
String srcName = null;
if (sourceRef != null)
srcName = (sourceRef.getName() != null ? sourceRef.getName() : sourceRef.getID().getCanonicalName());
-
+
String tarName = null;
if (targetRef != null)
tarName = (targetRef.getName() != null ? targetRef.getName() : targetRef.getID().getCanonicalName());
-
+
return "SequenceFlow[" + srcName + "->" + tarName + "]";
}
}
\ No newline at end of file
Modified: projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/StartEventImpl.java
===================================================================
--- projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/StartEventImpl.java 2008-09-18 13:56:28 UTC (rev 2280)
+++ projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/StartEventImpl.java 2008-09-18 19:11:01 UTC (rev 2281)
@@ -28,7 +28,11 @@
import java.util.List;
import javax.management.ObjectName;
+import javax.persistence.CascadeType;
import javax.persistence.Entity;
+import javax.persistence.FetchType;
+import javax.persistence.JoinColumn;
+import javax.persistence.OneToOne;
import javax.persistence.Table;
import javax.persistence.Transient;
@@ -50,7 +54,6 @@
import org.jboss.bpm.runtime.SignalHandler;
import org.jboss.bpm.runtime.Token;
import org.jboss.bpm.runtime.TokenExecutor;
-import org.jboss.util.id.UID;
/**
* A Start Event indicates where a particular Process will start. In terms of Sequence Flow, the Start Event starts the
@@ -90,7 +93,7 @@
if (id == null)
{
StringBuilder str = new StringBuilder(Constants.ID_DOMAIN + ":");
- str.append("type=StartEvent,name=" + getName() + ",id=" + new UID());
+ str.append("type=StartEvent,name=" + getName() + ",id=" + getKey());
id = ObjectNameFactory.create(str.toString());
}
return id;
@@ -107,7 +110,8 @@
triggers.add(eventDetail);
}
- @Transient
+ @OneToOne(cascade = CascadeType.ALL, fetch= FetchType.EAGER, targetEntity = SequenceFlowImpl.class)
+ @JoinColumn
public SequenceFlow getOutFlow()
{
return outFlow;
Modified: projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/SubProcessImpl.java
===================================================================
--- projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/SubProcessImpl.java 2008-09-18 13:56:28 UTC (rev 2280)
+++ projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/SubProcessImpl.java 2008-09-18 19:11:01 UTC (rev 2281)
@@ -32,7 +32,6 @@
import org.jboss.bpm.ri.model.spec.SubProcess;
import org.jboss.bpm.runtime.SignalHandler;
import org.jboss.bpm.runtime.Token;
-import org.jboss.util.id.UID;
/**
* A Sub-Process is Process that is included within another Process.
@@ -61,7 +60,7 @@
if (id == null)
{
StringBuilder str = new StringBuilder(Constants.ID_DOMAIN + ":");
- str.append("type=SubProcess,name=" + getName() + ",id=" + new UID());
+ str.append("type=SubProcess,name=" + getName() + ",id=" + getKey());
id = ObjectNameFactory.create(str.toString());
}
return id;
Modified: projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/SupportingElementImpl.java
===================================================================
--- projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/SupportingElementImpl.java 2008-09-18 13:56:28 UTC (rev 2280)
+++ projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/SupportingElementImpl.java 2008-09-18 19:11:01 UTC (rev 2281)
@@ -29,11 +29,10 @@
import org.jboss.bpm.model.Constants;
import org.jboss.bpm.model.ObjectNameFactory;
import org.jboss.bpm.model.SupportingElement;
-import org.jboss.util.id.UID;
/**
* A supporting element
- *
+ *
* @author thomas.diesler at jboss.com
* @since 08-Jul-2008
*/
@@ -41,7 +40,7 @@
{
// provide serial version UID
private static final long serialVersionUID = 1L;
-
+
@Override
@Transient
public ObjectName getID()
@@ -49,7 +48,7 @@
if (id == null)
{
StringBuilder str = new StringBuilder(Constants.ID_DOMAIN + ":");
- str.append("type=SupportingElement,id=" + new UID());
+ str.append("type=SupportingElement,id=" + getKey());
id = ObjectNameFactory.create(str.toString());
}
return id;
Modified: projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/TaskImpl.java
===================================================================
--- projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/TaskImpl.java 2008-09-18 13:56:28 UTC (rev 2280)
+++ projects/jbpm-spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/TaskImpl.java 2008-09-18 19:11:01 UTC (rev 2281)
@@ -31,7 +31,6 @@
import org.jboss.bpm.model.Task;
import org.jboss.bpm.runtime.SignalHandler;
import org.jboss.bpm.runtime.Token;
-import org.jboss.util.id.UID;
//$Id$
@@ -74,7 +73,7 @@
if (id == null)
{
StringBuilder str = new StringBuilder(Constants.ID_DOMAIN + ":");
- str.append("type=" + getTaskType() + "Task,name=" + getName() + ",id=" + new UID());
+ str.append("type=" + getTaskType() + "Task,name=" + getName() + ",id=" + getKey());
id = ObjectNameFactory.create(str.toString());
}
return id;
Modified: projects/jbpm-spec/trunk/pom.xml
===================================================================
--- projects/jbpm-spec/trunk/pom.xml 2008-09-18 13:56:28 UTC (rev 2280)
+++ projects/jbpm-spec/trunk/pom.xml 2008-09-18 19:11:01 UTC (rev 2281)
@@ -38,6 +38,11 @@
<properties>
<commons.logging.version>1.1.1</commons.logging.version>
<google.gwt.version>1.4.61</google.gwt.version>
+ <hibernate.version>3.2.6.ga</hibernate.version>
+ <hibernate.annotations.version>3.3.1.GA</hibernate.annotations.version>
+ <hibernate.validator.version>3.0.0.ga</hibernate.validator.version>
+ <hsqldb.version>1.8.0.7</hsqldb.version>
+ <mysql.connector.version>5.1.6</mysql.connector.version>
<jaxb.ri.version>2.1.7</jaxb.ri.version>
<javax.servlet.version>2.5</javax.servlet.version>
<jboss.microcontainer.version>2.0.0.Beta15</jboss.microcontainer.version>
@@ -106,6 +111,21 @@
<version>${commons.logging.version}</version>
</dependency>
<dependency>
+ <groupId>org.hibernate</groupId>
+ <artifactId>hibernate</artifactId>
+ <version>${hibernate.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.hibernate</groupId>
+ <artifactId>hibernate-annotations</artifactId>
+ <version>${hibernate.annotations.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.hibernate</groupId>
+ <artifactId>hibernate-validator</artifactId>
+ <version>${hibernate.validator.version}</version>
+ </dependency>
+ <dependency>
<groupId>org.jboss.microcontainer</groupId>
<artifactId>jboss-kernel</artifactId>
<version>${jboss.microcontainer.version}</version>
@@ -120,6 +140,18 @@
<artifactId>servlet-api</artifactId>
<version>${javax.servlet.version}</version>
</dependency>
+
+ <!-- Database Driver Versions -->
+ <dependency>
+ <groupId>hsqldb</groupId>
+ <artifactId>hsqldb</artifactId>
+ <version>${hsqldb.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>mysql</groupId>
+ <artifactId>mysql-connector-java</artifactId>
+ <version>${mysql.connector.version}</version>
+ </dependency>
</dependencies>
</dependencyManagement>
@@ -203,6 +235,71 @@
<!-- Profiles -->
<profiles>
+ <!--
+ Name: no-database
+ Descr: Setup the default database
+ -->
+ <profile>
+ <id>no-database</id>
+ <activation>
+ <property>
+ <name>!database</name>
+ </property>
+ </activation>
+ <properties>
+ <database>hsqldb</database>
+ </properties>
+ <dependencies>
+ <dependency>
+ <groupId>hsqldb</groupId>
+ <artifactId>hsqldb</artifactId>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
+ </profile>
+
+ <!--
+ Name: hsqldb
+ Descr: Hypersonic Database Setup
+ -->
+ <profile>
+ <id>hsqldb</id>
+ <activation>
+ <property>
+ <name>database</name>
+ <value>hsqldb</value>
+ </property>
+ </activation>
+ <dependencies>
+ <dependency>
+ <groupId>hsqldb</groupId>
+ <artifactId>hsqldb</artifactId>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
+ </profile>
+
+ <!--
+ Name: mysql
+ Descr: MySQL Database Setup
+ -->
+ <profile>
+ <id>mysql</id>
+ <activation>
+ <property>
+ <name>database</name>
+ <value>mysql</value>
+ </property>
+ </activation>
+ <dependencies>
+ <dependency>
+ <groupId>mysql</groupId>
+ <artifactId>mysql-connector-java</artifactId>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
+ </profile>
+
<!--
Name: skiptests
Desc: Skips the tests
More information about the jbpm-commits
mailing list