[jbpm-commits] JBoss JBPM SVN: r3154 - in jbpm3/trunk/modules/integration: spec and 17 other directories.
do-not-reply at jboss.org
do-not-reply at jboss.org
Fri Nov 28 11:41:56 EST 2008
Author: thomas.diesler at jboss.com
Date: 2008-11-28 11:41:56 -0500 (Fri, 28 Nov 2008)
New Revision: 3154
Added:
jbpm3/trunk/modules/integration/spec/scripts/antrun-test-jars.xml
jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/
jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/client/
jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/deployment/
jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/jpdl32/
jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/model/
jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/model/EndEventImpl.java
jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/model/EventImpl.java
jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/model/ExclusiveGatewayImpl.java
jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/model/ExpressionImpl.java
jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/model/GatewayImpl.java
jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/model/NodeImpl.java
jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/model/ProcessDefinitionImpl.java
jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/model/ProcessImpl.java
jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/model/SequenceFlowImpl.java
jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/model/StartEventImpl.java
jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/model/TaskImpl.java
jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/model/WaitStateImpl.java
jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/model/builder/
jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/runtime/
jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/service/
jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/task/
jbpm3/trunk/modules/integration/spec/src/test/java/org/jbpm/test/integration/spec/
jbpm3/trunk/modules/integration/spec/src/test/java/org/jbpm/test/integration/spec/deployment/
jbpm3/trunk/modules/integration/spec/src/test/java/org/jbpm/test/integration/spec/deployment/DeploymentPARTest.java
jbpm3/trunk/modules/integration/spec/src/test/resources/deployment/fork-join-example/
jbpm3/trunk/modules/integration/spec/src/test/resources/deployment/fork-join-example/gpd.xml
jbpm3/trunk/modules/integration/spec/src/test/resources/deployment/fork-join-example/processdefinition.xml
jbpm3/trunk/modules/integration/spec/src/test/resources/deployment/fork-join-example/processimage.jpg
Removed:
jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/client/
jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/deployment/
jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/jpdl32/
jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/model/
jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/runtime/
jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/service/
jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/task/
jbpm3/trunk/modules/integration/spec/src/test/java/org/jbpm/test/integration/deployment/
jbpm3/trunk/modules/integration/spec/src/test/java/org/jbpm/test/integration/jpdl/
Modified:
jbpm3/trunk/modules/integration/jboss42/src/main/etc/jboss-beans.xml
jbpm3/trunk/modules/integration/jboss42/src/main/etc/par-deployer.xml
jbpm3/trunk/modules/integration/spec/pom.xml
jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/client/ProcessEngineImpl.java
jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/deployment/AbstractDeployment.java
jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/deployment/PARDeployment.java
jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/deployment/XMLDeployment.java
jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/jpdl32/DialectHandlerImpl.java
jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/model/builder/GatewayBuilderImpl.java
jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/model/builder/ProcessBuilderImpl.java
jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/runtime/ExpressionEvaluator.java
jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/runtime/NodeExecuteInterceptor.java
jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/runtime/NodeInterceptor.java
jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/runtime/RuntimeContext.java
jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/runtime/TokenAttachmentDelegate.java
jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/runtime/TokenImpl.java
jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/service/DeploymentServiceImpl.java
jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/service/DialectHandlerServiceImpl.java
jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/service/ExecutionServiceImpl.java
jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/service/IdentityServiceImpl.java
jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/service/MutableService.java
jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/service/NoopPersistenceServiceImpl.java
jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/service/ProcessBuilderServiceImpl.java
jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/service/ProcessDefinitionServiceImpl.java
jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/service/ProcessServiceImpl.java
jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/service/TaskServiceImpl.java
jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/task/TaskImpl.java
jbpm3/trunk/modules/integration/spec/src/main/resources/jbpm-cfg-beans.xml
jbpm3/trunk/modules/integration/spec/src/test/java/org/jbpm/test/integration/spec/deployment/DeploymentXMLTest.java
Log:
Refactor Spec Integration
Modified: jbpm3/trunk/modules/integration/jboss42/src/main/etc/jboss-beans.xml
===================================================================
--- jbpm3/trunk/modules/integration/jboss42/src/main/etc/jboss-beans.xml 2008-11-28 16:40:34 UTC (rev 3153)
+++ jbpm3/trunk/modules/integration/jboss42/src/main/etc/jboss-beans.xml 2008-11-28 16:41:56 UTC (rev 3154)
@@ -10,7 +10,7 @@
</bean>
<!-- The ProcessEngine -->
- <bean name="BPMProcessEngine" class="org.jbpm.integration.client.ProcessEngineImpl">
+ <bean name="BPMProcessEngine" class="org.jbpm.integration.spec.client.ProcessEngineImpl">
<property name="services">
<set elementClass="org.jboss.bpm.api.service.Service">
<inject bean="BPMDeploymentService"/>
@@ -26,19 +26,19 @@
</bean>
<!-- The PersistenceService -->
- <bean name="BPMPersistenceService" class="org.jbpm.integration.service.NoopPersistenceServiceImpl" />
+ <bean name="BPMPersistenceService" class="org.jbpm.integration.spec.service.NoopPersistenceServiceImpl" />
<!-- The ProcessService -->
- <bean name="BPMProcessService" class="org.jbpm.integration.service.ProcessServiceImpl">
+ <bean name="BPMProcessService" class="org.jbpm.integration.spec.service.ProcessServiceImpl">
<property name="interceptors">
<list elementClass="java.lang.String">
- <value>org.jbpm.integration.runtime.NodeExecuteInterceptor</value>
+ <value>org.jbpm.integration.spec.runtime.NodeExecuteInterceptor</value>
</list>
</property>
</bean>
<!-- The DialectHandlerService -->
- <bean name="BPMDialectHandlerService" class="org.jbpm.integration.service.DialectHandlerServiceImpl">
+ <bean name="BPMDialectHandlerService" class="org.jbpm.integration.spec.service.DialectHandlerServiceImpl">
<property name="dialectHandlers">
<map keyClass="java.net.URI" valueClass="org.jboss.bpm.api.service.DialectHandler">
<entry><key>urn:jbpm.jboss:api-0.1</key><value><inject bean="BPMDialectHandlerAPI10"/></value></entry>
@@ -47,14 +47,14 @@
</property>
</bean>
<bean name="BPMDialectHandlerAPI10" class="org.jboss.bpm.dialect.api10.DialectHandlerImpl" />
- <bean name="BPMDialectHandlerJPDL32" class="org.jbpm.integration.jpdl32.DialectHandlerImpl" />
+ <bean name="BPMDialectHandlerJPDL32" class="org.jbpm.integration.spec.jpdl32.DialectHandlerImpl" />
<!-- Other Services -->
- <bean name="BPMDeploymentService" class="org.jbpm.integration.service.DeploymentServiceImpl" />
- <bean name="BPMExecutionService" class="org.jbpm.integration.service.ExecutionServiceImpl" />
- <bean name="BPMIdentityService" class="org.jbpm.integration.service.IdentityServiceImpl" />
- <bean name="BPMProcessBuilderService" class="org.jbpm.integration.service.ProcessBuilderServiceImpl" />
- <bean name="BPMProcessDefinitionService" class="org.jbpm.integration.service.ProcessDefinitionServiceImpl" />
- <bean name="BPMTaskService" class="org.jbpm.integration.service.TaskServiceImpl" />
+ <bean name="BPMDeploymentService" class="org.jbpm.integration.spec.service.DeploymentServiceImpl" />
+ <bean name="BPMExecutionService" class="org.jbpm.integration.spec.service.ExecutionServiceImpl" />
+ <bean name="BPMIdentityService" class="org.jbpm.integration.spec.service.IdentityServiceImpl" />
+ <bean name="BPMProcessBuilderService" class="org.jbpm.integration.spec.service.ProcessBuilderServiceImpl" />
+ <bean name="BPMProcessDefinitionService" class="org.jbpm.integration.spec.service.ProcessDefinitionServiceImpl" />
+ <bean name="BPMTaskService" class="org.jbpm.integration.spec.service.TaskServiceImpl" />
</deployment>
Modified: jbpm3/trunk/modules/integration/jboss42/src/main/etc/par-deployer.xml
===================================================================
--- jbpm3/trunk/modules/integration/jboss42/src/main/etc/par-deployer.xml 2008-11-28 16:40:34 UTC (rev 3153)
+++ jbpm3/trunk/modules/integration/jboss42/src/main/etc/par-deployer.xml 2008-11-28 16:41:56 UTC (rev 3154)
@@ -4,7 +4,7 @@
$Id$
-->
<server>
- <mbean code="org.jbpm.integration.jboss42.PARSubDeployer"
+ <mbean code="org.jbpm.integration.spec.jboss42.PARSubDeployer"
name="jboss.deployer:service=PARDeployer">
</mbean>
</server>
\ No newline at end of file
Modified: jbpm3/trunk/modules/integration/spec/pom.xml
===================================================================
--- jbpm3/trunk/modules/integration/spec/pom.xml 2008-11-28 16:40:34 UTC (rev 3153)
+++ jbpm3/trunk/modules/integration/spec/pom.xml 2008-11-28 16:41:56 UTC (rev 3154)
@@ -114,6 +114,25 @@
</executions>
</plugin>
<plugin>
+ <artifactId>maven-antrun-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>build-test-jars</id>
+ <phase>test-compile</phase>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ <configuration>
+ <tasks>
+ <property name="tests.output.dir" value="${project.build.directory}" />
+ <property name="tests.resources.dir" value="${basedir}/src/test/resources" />
+ <ant antfile="scripts/antrun-test-jars.xml" target="build-test-jars" />
+ </tasks>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
<artifactId>maven-assembly-plugin</artifactId>
<executions>
<execution>
Added: jbpm3/trunk/modules/integration/spec/scripts/antrun-test-jars.xml
===================================================================
--- jbpm3/trunk/modules/integration/spec/scripts/antrun-test-jars.xml (rev 0)
+++ jbpm3/trunk/modules/integration/spec/scripts/antrun-test-jars.xml 2008-11-28 16:41:56 UTC (rev 3154)
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!-- ============================================================ -->
+<!-- JBoss, the OpenSource J2EE webOS -->
+<!-- Distributable under LGPL license. -->
+<!-- See terms of license at http://www.gnu.org. -->
+<!-- ============================================================ -->
+
+<!-- $Id$ -->
+
+<project>
+
+ <description>jBPM enterprise test archive builder</description>
+
+ <!-- ================================================================== -->
+ <!-- Building -->
+ <!-- ================================================================== -->
+
+ <target name="build-test-jars" description="Build the test deployments">
+
+ <mkdir dir="${tests.output.dir}/test-libs"/>
+
+ <!-- fork-join-example -->
+ <jar jarfile="${tests.output.dir}/test-libs/fork-join-example.par">
+ <fileset dir="${tests.resources.dir}/deployment/fork-join-example"/>
+ </jar>
+
+ <!-- Please add alphabetically -->
+
+ </target>
+
+</project>
Property changes on: jbpm3/trunk/modules/integration/spec/scripts/antrun-test-jars.xml
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Copied: jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/client (from rev 3150, jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/client)
Modified: jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/client/ProcessEngineImpl.java
===================================================================
--- jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/client/ProcessEngineImpl.java 2008-11-28 15:30:25 UTC (rev 3150)
+++ jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/client/ProcessEngineImpl.java 2008-11-28 16:41:56 UTC (rev 3154)
@@ -19,7 +19,7 @@
* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
*/
-package org.jbpm.integration.client;
+package org.jbpm.integration.spec.client;
//$Id$
@@ -28,7 +28,7 @@
import org.jboss.bpm.api.client.ProcessEngine;
import org.jboss.bpm.api.service.Service;
import org.jbpm.JbpmConfiguration;
-import org.jbpm.integration.service.MutableService;
+import org.jbpm.integration.spec.service.MutableService;
/**
* A process engine with public access
Copied: jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/deployment (from rev 3150, jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/deployment)
Modified: jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/deployment/AbstractDeployment.java
===================================================================
--- jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/deployment/AbstractDeployment.java 2008-11-28 15:30:25 UTC (rev 3150)
+++ jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/deployment/AbstractDeployment.java 2008-11-28 16:41:56 UTC (rev 3154)
@@ -19,7 +19,7 @@
* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
*/
-package org.jbpm.integration.deployment;
+package org.jbpm.integration.spec.deployment;
// $Id$
Modified: jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/deployment/PARDeployment.java
===================================================================
--- jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/deployment/PARDeployment.java 2008-11-28 15:30:25 UTC (rev 3150)
+++ jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/deployment/PARDeployment.java 2008-11-28 16:41:56 UTC (rev 3154)
@@ -19,11 +19,10 @@
* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
*/
-package org.jbpm.integration.deployment;
+package org.jbpm.integration.spec.deployment;
// $Id$
-import java.io.ByteArrayInputStream;
import java.io.IOException;
import java.net.URL;
import java.util.zip.ZipEntry;
@@ -49,15 +48,12 @@
public String getProcessDefinitionXML() throws IOException
{
- byte[] bytes = IoUtil.readBytes(pdURL.openStream());
- System.out.println(bytes.length);
-
- ZipInputStream zipInputStream = new ZipInputStream(new ByteArrayInputStream(bytes));
+ ZipInputStream zipInputStream = new ZipInputStream(pdURL.openStream());
ZipEntry zipEntry = zipInputStream.getNextEntry();
while (zipEntry != null)
{
String entryName = zipEntry.getName();
- bytes = IoUtil.readBytes(zipInputStream);
+ byte[] bytes = IoUtil.readBytes(zipInputStream);
if (bytes != null)
{
addAttachment(entryName, bytes);
Modified: jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/deployment/XMLDeployment.java
===================================================================
--- jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/deployment/XMLDeployment.java 2008-11-28 15:30:25 UTC (rev 3150)
+++ jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/deployment/XMLDeployment.java 2008-11-28 16:41:56 UTC (rev 3154)
@@ -19,7 +19,7 @@
* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
*/
-package org.jbpm.integration.deployment;
+package org.jbpm.integration.spec.deployment;
// $Id$
Copied: jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/jpdl32 (from rev 3150, jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/jpdl32)
Modified: jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/jpdl32/DialectHandlerImpl.java
===================================================================
--- jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/jpdl32/DialectHandlerImpl.java 2008-11-28 15:30:25 UTC (rev 3150)
+++ jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/jpdl32/DialectHandlerImpl.java 2008-11-28 16:41:56 UTC (rev 3154)
@@ -19,7 +19,7 @@
* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
*/
-package org.jbpm.integration.jpdl32;
+package org.jbpm.integration.spec.jpdl32;
// $Id$
@@ -33,7 +33,7 @@
import org.jboss.bpm.api.model.ProcessDefinition;
import org.jboss.bpm.api.service.AbstractDialectHandler;
import org.jboss.bpm.api.service.DialectHandler;
-import org.jbpm.integration.model.ProcessDefinitionImpl;
+import org.jbpm.integration.spec.model.ProcessDefinitionImpl;
/**
* A jPDL a {@link DialectHandler}
Copied: jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/model/EndEventImpl.java (from rev 3150, jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/model/EndEventImpl.java)
===================================================================
--- jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/model/EndEventImpl.java (rev 0)
+++ jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/model/EndEventImpl.java 2008-11-28 16:41:56 UTC (rev 3154)
@@ -0,0 +1,67 @@
+/*
+ * 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.jbpm.integration.spec.model;
+
+import org.jboss.bpm.api.NotImplementedException;
+import org.jboss.bpm.api.model.EndEvent;
+import org.jboss.bpm.api.model.ProcessDefinition;
+import org.jboss.bpm.api.model.SequenceFlow;
+import org.jbpm.graph.node.EndState;
+
+/**
+ * An integration wrapper
+ *
+ * @author thomas.diesler at jboss.com
+ * @since 15-Nov-2008
+ */
+public class EndEventImpl extends EventImpl implements EndEvent
+{
+ private static final long serialVersionUID = 1L;
+
+ public EndEventImpl(ProcessDefinition procDef, EndState oldEnd)
+ {
+ super(procDef, oldEnd);
+ }
+
+ //@Override
+ public EventDetailType getResultType()
+ {
+ return EventDetailType.None;
+ }
+
+ //@Override
+ public EventType getEventType()
+ {
+ return EventType.End;
+ }
+
+ //@Override
+ public SequenceFlow getInFlow()
+ {
+ throw new NotImplementedException();
+ }
+
+ public String toString()
+ {
+ return getEventType() + "Event[" + getName() + "," + getResultType() + "]";
+ }
+}
Copied: jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/model/EventImpl.java (from rev 3150, jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/model/EventImpl.java)
===================================================================
--- jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/model/EventImpl.java (rev 0)
+++ jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/model/EventImpl.java 2008-11-28 16:41:56 UTC (rev 3154)
@@ -0,0 +1,42 @@
+/*
+ * 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.jbpm.integration.spec.model;
+
+import org.jboss.bpm.api.model.Event;
+import org.jboss.bpm.api.model.ProcessDefinition;
+import org.jbpm.graph.def.Node;
+
+/**
+ * An integration wrapper
+ *
+ * @author thomas.diesler at jboss.com
+ * @since 15-Nov-2008
+ */
+public abstract class EventImpl extends NodeImpl implements Event
+{
+ private static final long serialVersionUID = 1L;
+
+ public EventImpl(ProcessDefinition procDef, Node oldNode)
+ {
+ super(procDef, oldNode);
+ }
+}
Copied: jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/model/ExclusiveGatewayImpl.java (from rev 3150, jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/model/ExclusiveGatewayImpl.java)
===================================================================
--- jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/model/ExclusiveGatewayImpl.java (rev 0)
+++ jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/model/ExclusiveGatewayImpl.java 2008-11-28 16:41:56 UTC (rev 3154)
@@ -0,0 +1,124 @@
+/*
+ * 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.jbpm.integration.spec.model;
+
+// $Id$
+
+import org.jboss.bpm.api.model.ExclusiveGateway;
+import org.jboss.bpm.api.model.Expression;
+import org.jboss.bpm.api.model.ProcessDefinition;
+import org.jboss.bpm.api.model.SequenceFlow;
+import org.jboss.bpm.api.model.SequenceFlow.ConditionType;
+import org.jboss.bpm.api.runtime.Token;
+import org.jbpm.graph.exe.ExecutionContext;
+import org.jbpm.graph.node.Decision;
+import org.jbpm.graph.node.DecisionHandler;
+import org.jbpm.instantiation.Delegation;
+import org.jbpm.integration.spec.runtime.ExpressionEvaluator;
+
+/**
+ * An integration wrapper
+ *
+ * @author thomas.diesler at jboss.com
+ * @since 15-Nov-2008
+ */
+public class ExclusiveGatewayImpl extends GatewayImpl implements ExclusiveGateway
+{
+ private static final long serialVersionUID = 1L;
+
+ public ExclusiveGatewayImpl(ProcessDefinition procDef, Decision oldDecision)
+ {
+ super(procDef, oldDecision);
+ ExclusiveGatewayDecisionHandler decisionHandler = new ExclusiveGatewayDecisionHandler();
+ oldDecision.setDecisionDelegation(new Delegation(decisionHandler));
+ }
+
+ //@Override
+ public GatewayType getGatewayType()
+ {
+ return GatewayType.Exclusive;
+ }
+
+ //@Override
+ public ExclusiveType getExclusiveType()
+ {
+ return ExclusiveType.Data;
+ }
+
+ class ExclusiveGatewayDecisionHandler implements DecisionHandler
+ {
+ private static final long serialVersionUID = 1L;
+
+ //@Override
+ public String decide(ExecutionContext executionContext) throws Exception
+ {
+ ProcessImpl procImpl = (ProcessImpl)getProcess();
+ Token token = procImpl.getRootToken();
+
+ SequenceFlow selectedGate = null;
+ for (SequenceFlow auxGate : getGates())
+ {
+ SequenceFlow seqFlow = auxGate;
+ if (seqFlow.getConditionType() == ConditionType.Expression)
+ {
+ Expression expr = seqFlow.getConditionExpression();
+ ExpressionEvaluator exprEvaluator = new ExpressionEvaluator(expr);
+ if ((Boolean)exprEvaluator.evaluateExpression(token))
+ {
+ selectedGate = auxGate;
+ break;
+ }
+ }
+ }
+
+ // Use to the default gate if there is one
+ if (selectedGate == null)
+ {
+ for (SequenceFlow auxGate : getGates())
+ {
+ SequenceFlow seqFlow = auxGate;
+ if (seqFlow.getConditionType() == ConditionType.Default)
+ {
+ selectedGate = auxGate;
+ break;
+ }
+ }
+ }
+
+ // Fallback to the single outgoing gate that is not conditional
+ if (selectedGate == null && getGates().size() == 1)
+ {
+ SequenceFlow auxGate = getGates().get(0);
+ SequenceFlow seqFlow = auxGate;
+ if (seqFlow.getConditionType() == ConditionType.None)
+ {
+ selectedGate = auxGate;
+ }
+ }
+
+ if (selectedGate == null)
+ throw new IllegalStateException("Cannot select applicable gate in: " + getOldNode());
+
+ return selectedGate.getTargetRef();
+ }
+ }
+}
Copied: jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/model/ExpressionImpl.java (from rev 3150, jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/model/ExpressionImpl.java)
===================================================================
--- jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/model/ExpressionImpl.java (rev 0)
+++ jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/model/ExpressionImpl.java 2008-11-28 16:41:56 UTC (rev 3154)
@@ -0,0 +1,67 @@
+/*
+ * 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.jbpm.integration.spec.model;
+
+//$Id$
+
+import org.jboss.bpm.api.model.Expression;
+
+/**
+ * An Expression, which is used in the definition of attributes for @{link StartEvent},
+ *
+ * @{link IntermediateEvent}, @{link Activity}, @{link ComplexGateway}, and @{link SequenceFlow}
+ *
+ * @author thomas.diesler at jboss.com
+ * @since 17-Nov-2008
+ */
+public class ExpressionImpl implements Expression
+{
+ // provide serial version UID
+ private static final long serialVersionUID = 1L;
+
+ private String body;
+ private ExpressionLanguage lang;
+
+ public ExpressionImpl(String body)
+ {
+ this.body = body;
+ this.lang = ExpressionLanguage.MVEL;
+ }
+
+ public ExpressionImpl(ExpressionLanguage lang, String body)
+ {
+ this.body = body;
+ this.lang = lang;
+ }
+
+ //@Override
+ public ExpressionLanguage getExpressionLanguage()
+ {
+ return lang;
+ }
+
+ //@Override
+ public String getExpressionBody()
+ {
+ return body;
+ }
+}
Copied: jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/model/GatewayImpl.java (from rev 3150, jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/model/GatewayImpl.java)
===================================================================
--- jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/model/GatewayImpl.java (rev 0)
+++ jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/model/GatewayImpl.java 2008-11-28 16:41:56 UTC (rev 3154)
@@ -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.jbpm.integration.spec.model;
+
+import java.util.List;
+
+import org.jboss.bpm.api.NotImplementedException;
+import org.jboss.bpm.api.model.Gateway;
+import org.jboss.bpm.api.model.ProcessDefinition;
+import org.jboss.bpm.api.model.SequenceFlow;
+import org.jbpm.graph.def.Node;
+
+/**
+ * An integration wrapper
+ *
+ * @author thomas.diesler at jboss.com
+ * @since 15-Nov-2008
+ */
+public abstract class GatewayImpl extends NodeImpl implements Gateway
+{
+ private static final long serialVersionUID = 1L;
+
+ public GatewayImpl(ProcessDefinition procDef, Node oldNode)
+ {
+ super(procDef, oldNode);
+ }
+
+ //@Override
+ public List<SequenceFlow> getGates()
+ {
+ return getOutFlows();
+ }
+
+ //@Override
+ public SequenceFlow getGateByName(String targetName)
+ {
+ throw new NotImplementedException();
+ }
+
+ //@Override
+ public SequenceFlow getDefaultGate()
+ {
+ throw new NotImplementedException();
+ }
+
+ public String toString()
+ {
+ return getGatewayType() + "Gateway[" + getName() + "]";
+ }
+}
Copied: jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/model/NodeImpl.java (from rev 3150, jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/model/NodeImpl.java)
===================================================================
--- jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/model/NodeImpl.java (rev 0)
+++ jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/model/NodeImpl.java 2008-11-28 16:41:56 UTC (rev 3154)
@@ -0,0 +1,118 @@
+/*
+ * 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.jbpm.integration.spec.model;
+
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.List;
+
+import javax.management.ObjectName;
+
+import org.jboss.bpm.api.Constants;
+import org.jboss.bpm.api.InvalidProcessException;
+import org.jboss.bpm.api.model.Node;
+import org.jboss.bpm.api.model.Process;
+import org.jboss.bpm.api.model.ProcessDefinition;
+import org.jboss.bpm.api.model.SequenceFlow;
+import org.jboss.bpm.api.model.builder.ObjectNameFactory;
+import org.jbpm.graph.def.Transition;
+
+/**
+ * An integration wrapper
+ *
+ * @author thomas.diesler at jboss.com
+ * @since 15-Nov-2008
+ */
+public class NodeImpl implements Node
+{
+ private static final long serialVersionUID = 1L;
+
+ private ProcessDefinition procDef;
+ private Process proc;
+
+ private org.jbpm.graph.def.Node oldNode;
+ private List<SequenceFlow> outFlows = new ArrayList<SequenceFlow>();
+
+ public NodeImpl(ProcessDefinition procDef, org.jbpm.graph.def.Node oldNode)
+ {
+ this.procDef = procDef;
+ this.oldNode = oldNode;
+ }
+
+ public ObjectName getKey()
+ {
+ long id = oldNode.getId();
+ return ObjectNameFactory.create(Constants.ID_DOMAIN + ":node=" + getName() + ",id=" + id);
+ }
+
+ public org.jbpm.graph.def.Node getOldNode()
+ {
+ return oldNode;
+ }
+
+ public String getName()
+ {
+ return oldNode.getName();
+ }
+
+ public ProcessDefinition getProcessDefinition()
+ {
+ return procDef;
+ }
+
+ public Process getProcess()
+ {
+ return proc;
+ }
+
+ public void setProcess(Process proc)
+ {
+ this.proc = proc;
+ }
+
+ public void addSequenceFlow(SequenceFlowImpl flow)
+ {
+ String targetRef = flow.getTargetRef();
+ NodeImpl targetNode = (NodeImpl)procDef.getNode(targetRef);
+ if (targetNode == null)
+ throw new InvalidProcessException("Cannot obtain target node: " + targetRef);
+
+ Transition trans = flow.getOldTransition();
+ if (oldNode.hasLeavingTransition(trans.getName()) == false)
+ {
+ oldNode.addLeavingTransition(trans);
+ targetNode.getOldNode().addArrivingTransition(trans);
+ }
+
+ outFlows.add(flow);
+ }
+
+ public List<SequenceFlow> getOutFlows()
+ {
+ return Collections.unmodifiableList(outFlows);
+ }
+
+ public String toString()
+ {
+ return oldNode.toString();
+ }
+}
Copied: jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/model/ProcessDefinitionImpl.java (from rev 3150, jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/model/ProcessDefinitionImpl.java)
===================================================================
--- jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/model/ProcessDefinitionImpl.java (rev 0)
+++ jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/model/ProcessDefinitionImpl.java 2008-11-28 16:41:56 UTC (rev 3154)
@@ -0,0 +1,224 @@
+/*
+ * 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.jbpm.integration.spec.model;
+
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.LinkedHashMap;
+import java.util.List;
+import java.util.Map;
+
+import javax.management.ObjectName;
+
+import org.jboss.bpm.api.Constants;
+import org.jboss.bpm.api.InvalidProcessException;
+import org.jboss.bpm.api.NotImplementedException;
+import org.jboss.bpm.api.client.ProcessEngine;
+import org.jboss.bpm.api.model.Node;
+import org.jboss.bpm.api.model.Process;
+import org.jboss.bpm.api.model.ProcessDefinition;
+import org.jboss.bpm.api.model.builder.ObjectNameFactory;
+import org.jbpm.graph.def.Transition;
+import org.jbpm.graph.node.EndState;
+import org.jbpm.graph.node.Fork;
+import org.jbpm.graph.node.Join;
+import org.jbpm.graph.node.StartState;
+import org.jbpm.graph.node.State;
+import org.jbpm.graph.node.TaskNode;
+
+/**
+ * An integration wrapper
+ *
+ * @author thomas.diesler at jboss.com
+ * @since 15-Nov-2008
+ */
+public class ProcessDefinitionImpl implements ProcessDefinition
+{
+ private static final long serialVersionUID = 1L;
+
+ private org.jbpm.graph.def.ProcessDefinition oldProcDef;
+ private ProcessEngine engine;
+ private Map<String, Node> nodes = new LinkedHashMap<String, Node>();
+
+ public ProcessDefinitionImpl(ProcessEngine engine, String name)
+ {
+ this(engine, new org.jbpm.graph.def.ProcessDefinition(name));
+ }
+
+ public ProcessDefinitionImpl(ProcessEngine engine, org.jbpm.graph.def.ProcessDefinition oldProcDef)
+ {
+ this.oldProcDef = oldProcDef;
+ this.engine = engine;
+
+ if (oldProcDef.getName() == null)
+ throw new InvalidProcessException("ProcessDefinition name cannot be null");
+
+ if (oldProcDef.getNodes() != null)
+ {
+ initializeNodes(oldProcDef);
+ initializeSequenceFlows(oldProcDef);
+ }
+ }
+
+ public org.jbpm.graph.def.ProcessDefinition getOldProcessDefinition()
+ {
+ return oldProcDef;
+ }
+
+ public ProcessEngine getProcessEngine()
+ {
+ return engine;
+ }
+
+ public ObjectName getKey()
+ {
+ long id = oldProcDef.getId();
+ String version = getVersion();
+
+ String keyStr = Constants.ID_DOMAIN + ":procdef=" + getName() + ",id=" + id;
+ if (version != null)
+ keyStr += ",version=" + version;
+
+ return ObjectNameFactory.create(keyStr);
+ }
+
+ public String getName()
+ {
+ return oldProcDef.getName();
+ }
+
+ public String getVersion()
+ {
+ int version = oldProcDef.getVersion();
+ return version > 0 ? String.valueOf(version) : null;
+ }
+
+ public Process newInstance()
+ {
+ ProcessImpl procImpl = new ProcessImpl(this);
+ for (Node node : getNodes())
+ {
+ NodeImpl nodeImpl = (NodeImpl)node;
+ nodeImpl.setProcess(procImpl);
+ }
+ return procImpl;
+ }
+
+ public void addNode(NodeImpl nodeImpl)
+ {
+ org.jbpm.graph.def.Node oldNode = nodeImpl.getOldNode();
+ oldProcDef.addNode(oldNode);
+ nodes.put(oldNode.getName(), nodeImpl);
+ }
+
+ public Node getNode(String name)
+ {
+ return nodes.get(name);
+ }
+
+ public List<Node> getNodes()
+ {
+ List<Node> nodeList = new ArrayList<Node>(nodes.values());
+ return Collections.unmodifiableList(nodeList);
+ }
+
+ @SuppressWarnings("unchecked")
+ public <T extends Node> T getNode(Class<T> clazz, String name)
+ {
+ for (Node node : getNodes(clazz))
+ {
+ if (node.getName().equals(name))
+ return (T)node;
+ }
+ return null;
+ }
+
+ @SuppressWarnings("unchecked")
+ public <T extends Node> List<T> getNodes(Class<T> clazz)
+ {
+ List<T> retNodes = new ArrayList<T>();
+ for (Node node : getNodes())
+ {
+ if (clazz.isAssignableFrom(node.getClass()))
+ retNodes.add((T)node);
+ }
+ return retNodes;
+ }
+
+ private void initializeNodes(org.jbpm.graph.def.ProcessDefinition oldProcDef)
+ {
+ for(org.jbpm.graph.def.Node oldNode : oldProcDef.getNodes())
+ {
+ NodeImpl nodeImpl;
+ if (oldNode instanceof StartState)
+ {
+ nodeImpl = new StartEventImpl(this, (StartState)oldNode);
+ }
+ else if (oldNode instanceof State)
+ {
+ nodeImpl = new WaitStateImpl(this, (State)oldNode);
+ }
+ else if (oldNode instanceof Fork)
+ {
+ nodeImpl = new ParallelGatewayImpl(this, (Fork)oldNode);
+ }
+ else if (oldNode instanceof Join)
+ {
+ nodeImpl = new ParallelGatewayImpl(this, (Join)oldNode);
+ }
+ else if (oldNode instanceof TaskNode)
+ {
+ nodeImpl = new UserTaskImpl(this, (TaskNode)oldNode);
+ }
+ else if (oldNode instanceof EndState)
+ {
+ nodeImpl = new EndEventImpl(this, (EndState)oldNode);
+ }
+ else
+ {
+ throw new NotImplementedException("Unsupported node type: " + oldNode);
+ }
+ nodes.put(oldNode.getName(), nodeImpl);
+ }
+ }
+
+ private void initializeSequenceFlows(org.jbpm.graph.def.ProcessDefinition oldProcDef)
+ {
+ for(org.jbpm.graph.def.Node oldNode : oldProcDef.getNodes())
+ {
+ NodeImpl nodeImpl = (NodeImpl)nodes.get(oldNode.getName());
+ if (oldNode.getLeavingTransitions() != null)
+ {
+ for (Transition trans : oldNode.getLeavingTransitions())
+ {
+ SequenceFlowImpl seqFlow = new SequenceFlowImpl(trans);
+ nodeImpl.addSequenceFlow(seqFlow);
+ }
+ }
+ }
+ }
+
+ public String toString()
+ {
+ return "ProcessDefinition[" + getKey() + "]";
+ }
+}
Copied: jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/model/ProcessImpl.java (from rev 3150, jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/model/ProcessImpl.java)
===================================================================
--- jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/model/ProcessImpl.java (rev 0)
+++ jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/model/ProcessImpl.java 2008-11-28 16:41:56 UTC (rev 3154)
@@ -0,0 +1,239 @@
+/*
+ * 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.jbpm.integration.spec.model;
+
+import java.util.Date;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+
+import javax.management.ObjectName;
+
+import org.jboss.bpm.api.Constants;
+import org.jboss.bpm.api.client.ProcessEngine;
+import org.jboss.bpm.api.model.Node;
+import org.jboss.bpm.api.model.Process;
+import org.jboss.bpm.api.model.ProcessDefinition;
+import org.jboss.bpm.api.model.builder.ObjectNameFactory;
+import org.jboss.bpm.api.runtime.Attachments;
+import org.jboss.bpm.api.runtime.Token;
+import org.jboss.bpm.api.runtime.Attachments.Key;
+import org.jboss.bpm.api.runtime.Token.TokenStatus;
+import org.jboss.bpm.api.service.ProcessService;
+import org.jbpm.graph.exe.ProcessInstance;
+import org.jbpm.integration.spec.runtime.TokenImpl;
+
+/**
+ * An integration wrapper
+ *
+ * @author thomas.diesler at jboss.com
+ * @since 15-Nov-2008
+ */
+public class ProcessImpl implements Process
+{
+ private static final long serialVersionUID = 1L;
+
+ private ProcessDefinitionImpl procDef;
+ private ProcessInstance oldProc;
+ private ProcessStatus status = ProcessStatus.None;
+
+ public ProcessImpl(ProcessDefinitionImpl procDef)
+ {
+ this.procDef = procDef;
+ this.oldProc = new ProcessInstance(procDef.getOldProcessDefinition());
+ }
+
+ // @Override
+ public ObjectName getKey()
+ {
+ long id = oldProc.getId();
+ return ObjectNameFactory.create(Constants.ID_DOMAIN + ":proc=" + getName() + ",id=" + id);
+ }
+
+ // @Override
+ public ProcessDefinition getProcessDefinition()
+ {
+ return procDef;
+ }
+
+ // @Override
+ public ProcessEngine getProcessEngine()
+ {
+ return procDef.getProcessEngine();
+ }
+
+ public ProcessInstance getOldProcessInstance()
+ {
+ return oldProc;
+ }
+
+ // @Override
+ public ProcessStatus getProcessStatus()
+ {
+ Token rootToken = getRootToken();
+ TokenStatus tokenStatus = rootToken != null ? rootToken.getTokenStatus() : null;
+
+ if (oldProc.isSuspended())
+ status = ProcessStatus.Suspended;
+
+ if (status == ProcessStatus.Active)
+ {
+ if (oldProc.hasEnded() || tokenStatus == TokenStatus.Destroyed)
+ status = ProcessStatus.Completed;
+ }
+ return status;
+ }
+
+ public void setProcessStatus(ProcessStatus status)
+ {
+ this.status = status;
+ }
+
+ // @Override
+ public String getName()
+ {
+ return procDef.getName();
+ }
+
+ public Date getEndDate()
+ {
+ return oldProc.getEnd();
+ }
+
+ public Date getStartDate()
+ {
+ return oldProc.getStart();
+ }
+
+ // @Override
+ public <T extends Node> T getNode(Class<T> clazz, String name)
+ {
+ return procDef.getNode(clazz, name);
+ }
+
+ // @Override
+ public Node getNode(String name)
+ {
+ return procDef.getNode(name);
+ }
+
+ // @Override
+ public List<Node> getNodes()
+ {
+ return procDef.getNodes();
+ }
+
+ // @Override
+ public <T extends Node> List<T> getNodes(Class<T> clazz)
+ {
+ return procDef.getNodes(clazz);
+ }
+
+ // @Override
+ public Token startProcess()
+ {
+ return startProcess(null);
+ }
+
+ // @Override
+ public Token startProcess(Attachments contextData)
+ {
+ // Register the Process
+ ProcessService procService = getProcessEngine().getService(ProcessService.class);
+ procService.registerProcess(this);
+
+ // Create the root token
+ Token token = new TokenImpl(this, oldProc.getRootToken());
+
+ // Initialize the context data
+ if (contextData != null)
+ {
+ Attachments tokenAtt = token.getAttachments();
+ for (Key key : contextData.getAttachmentKeys())
+ {
+ Object val = contextData.getAttachment(key.getClassPart(), key.getNamePart());
+ tokenAtt.addAttachment(key.getClassPart(), key.getNamePart(), val);
+ }
+ }
+
+ // Signal the root token
+ setProcessStatus(ProcessStatus.Active);
+ token.signal();
+
+ return token;
+ }
+
+ public Token getRootToken()
+ {
+ return new TokenImpl(this, oldProc.getRootToken());
+ }
+
+ public Set<Token> getTokens()
+ {
+ return getAllTokens(getRootToken());
+ }
+
+ public void suspend()
+ {
+ if (status != ProcessStatus.Active)
+ throw new IllegalStateException("Cannot suspend a process in state: " + status);
+
+ oldProc.suspend();
+ status = ProcessStatus.Suspended;
+ }
+
+ public void resume()
+ {
+ if (status != ProcessStatus.Suspended)
+ throw new IllegalStateException("Cannot resume a process in state: " + status);
+
+ oldProc.resume();
+ status = ProcessStatus.Active;
+ }
+
+ public void cancel()
+ {
+ if (status != ProcessStatus.Active && status != ProcessStatus.Suspended)
+ throw new IllegalStateException("Cannot cancel a process in state: " + status);
+
+ oldProc.setEnd(new Date());
+ oldProc.end();
+ status = ProcessStatus.Cancelled;
+ }
+
+ private Set<Token> getAllTokens(Token token)
+ {
+ Set<Token> tokens = new HashSet<Token>();
+ if (token != null)
+ {
+ tokens.add(token);
+ for (Token childToken : token.getChildTokens())
+ tokens.addAll(getAllTokens(childToken));
+ }
+ return tokens;
+ }
+
+ public String toString()
+ {
+ return "Process[" + getKey() + "]";
+ }
+}
Copied: jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/model/SequenceFlowImpl.java (from rev 3150, jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/model/SequenceFlowImpl.java)
===================================================================
--- jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/model/SequenceFlowImpl.java (rev 0)
+++ jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/model/SequenceFlowImpl.java 2008-11-28 16:41:56 UTC (rev 3154)
@@ -0,0 +1,96 @@
+/*
+ * 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.jbpm.integration.spec.model;
+
+import org.jboss.bpm.api.model.Expression;
+import org.jboss.bpm.api.model.SequenceFlow;
+import org.jboss.bpm.api.model.Expression.ExpressionLanguage;
+import org.jbpm.graph.def.Node;
+import org.jbpm.graph.def.Transition;
+
+/**
+ * An integration wrapper
+ *
+ * @author thomas.diesler at jboss.com
+ * @since 15-Nov-2008
+ */
+public class SequenceFlowImpl implements SequenceFlow
+{
+ private static final long serialVersionUID = 1L;
+
+ private Transition oldTrans;
+ private ConditionType condType = ConditionType.None;
+ private Expression expr;
+
+ public SequenceFlowImpl(Transition oldTrans)
+ {
+ this.oldTrans = oldTrans;
+ }
+
+ public SequenceFlowImpl(Transition oldTrans, ExpressionLanguage exprLang, String exprBody)
+ {
+ this.oldTrans = oldTrans;
+
+ if (exprLang != null && exprBody != null)
+ {
+ this.condType = ConditionType.Expression;
+ this.expr = new ExpressionImpl(exprLang, exprBody);
+ }
+ }
+
+ public Transition getOldTransition()
+ {
+ return oldTrans;
+ }
+
+ //@Override
+ public String getName()
+ {
+ return oldTrans.getName();
+ }
+
+ //@Override
+ public Expression getConditionExpression()
+ {
+ return expr;
+ }
+
+ //@Override
+ public ConditionType getConditionType()
+ {
+ return condType;
+ }
+
+ //@Override
+ public String getSourceRef()
+ {
+ Node from = oldTrans.getFrom();
+ return from != null ? from.getName() : null;
+ }
+
+ //@Override
+ public String getTargetRef()
+ {
+ Node to = oldTrans.getTo();
+ return to != null ? to.getName() : null;
+ }
+}
Copied: jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/model/StartEventImpl.java (from rev 3150, jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/model/StartEventImpl.java)
===================================================================
--- jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/model/StartEventImpl.java (rev 0)
+++ jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/model/StartEventImpl.java 2008-11-28 16:41:56 UTC (rev 3154)
@@ -0,0 +1,84 @@
+/*
+ * 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.jbpm.integration.spec.model;
+
+import java.util.List;
+
+import org.jboss.bpm.api.InvalidProcessException;
+import org.jboss.bpm.api.NotImplementedException;
+import org.jboss.bpm.api.model.ProcessDefinition;
+import org.jboss.bpm.api.model.SequenceFlow;
+import org.jboss.bpm.api.model.StartEvent;
+import org.jbpm.graph.def.Transition;
+import org.jbpm.graph.node.StartState;
+
+/**
+ * An integration wrapper
+ *
+ * @author thomas.diesler at jboss.com
+ * @since 15-Nov-2008
+ */
+public class StartEventImpl extends EventImpl implements StartEvent
+{
+ private static final long serialVersionUID = 1L;
+
+ private StartState oldStart;
+
+ public StartEventImpl(ProcessDefinition procDef, StartState oldStart)
+ {
+ super(procDef, oldStart);
+ this.oldStart = oldStart;
+
+ if (oldStart.getName() == null)
+ throw new InvalidProcessException("StartEvent name cannot be null");
+ }
+
+ //@Override
+ public EventDetailType getTriggerType()
+ {
+ return EventDetailType.None;
+ }
+
+ //@Override
+ public EventType getEventType()
+ {
+ return EventType.Start;
+ }
+
+ //@Override
+ public SequenceFlow getOutFlow()
+ {
+ List<Transition> leavingTransitions = oldStart.getLeavingTransitions();
+ if (leavingTransitions == null)
+ throw new IllegalStateException ("No leaving transitions on: " + oldStart);
+ if (leavingTransitions.size() > 1)
+ throw new NotImplementedException ("Multiple leaving transitions on: " + oldStart);
+
+ Transition to = leavingTransitions.get(0);
+ return new SequenceFlowImpl(to);
+ }
+
+ public String toString()
+ {
+ return getEventType() + "Event[" + getName() + "," + getTriggerType() + "]";
+ }
+}
Copied: jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/model/TaskImpl.java (from rev 3150, jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/model/TaskImpl.java)
===================================================================
--- jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/model/TaskImpl.java (rev 0)
+++ jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/model/TaskImpl.java 2008-11-28 16:41:56 UTC (rev 3154)
@@ -0,0 +1,87 @@
+/*
+ * 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.jbpm.integration.spec.model;
+
+import java.util.List;
+import java.util.Set;
+
+import org.jboss.bpm.api.NotImplementedException;
+import org.jboss.bpm.api.model.ProcessDefinition;
+import org.jboss.bpm.api.model.SequenceFlow;
+import org.jboss.bpm.api.model.Task;
+import org.jbpm.graph.def.Node;
+import org.jbpm.graph.def.Transition;
+
+/**
+ * An integration wrapper
+ *
+ * @author thomas.diesler at jboss.com
+ * @since 15-Nov-2008
+ */
+public class TaskImpl extends NodeImpl implements Task
+{
+ private static final long serialVersionUID = 1L;
+
+ public TaskImpl(ProcessDefinition procDef, org.jbpm.graph.def.Node oldNode)
+ {
+ super(procDef, oldNode);
+ }
+
+ //@Override
+ public TaskType getTaskType()
+ {
+ return TaskType.None;
+ }
+
+ //@Override
+ public SequenceFlow getInFlow()
+ {
+ Node oldNode = getOldNode();
+ Set<Transition> arrivingTransitions = oldNode.getArrivingTransitions();
+ if (arrivingTransitions == null)
+ throw new IllegalStateException("No leaving transitions on: " + oldNode);
+ if (arrivingTransitions.size() > 1)
+ throw new NotImplementedException("Multiple leaving transitions on: " + oldNode);
+
+ Transition from = arrivingTransitions.iterator().next();
+ return new SequenceFlowImpl(from);
+ }
+
+ //@Override
+ public SequenceFlow getOutFlow()
+ {
+ Node oldNode = getOldNode();
+ List<Transition> leavingTransitions = oldNode.getLeavingTransitions();
+ if (leavingTransitions == null)
+ throw new IllegalStateException("No leaving transitions on: " + oldNode);
+ if (leavingTransitions.size() > 1)
+ throw new NotImplementedException("Multiple leaving transitions on: " + oldNode);
+
+ Transition to = leavingTransitions.get(0);
+ return new SequenceFlowImpl(to);
+ }
+
+ public String toString()
+ {
+ return "Task[" + getTaskType() + "," + getName() + "]";
+ }
+}
Copied: jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/model/WaitStateImpl.java (from rev 3150, jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/model/WaitStateImpl.java)
===================================================================
--- jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/model/WaitStateImpl.java (rev 0)
+++ jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/model/WaitStateImpl.java 2008-11-28 16:41:56 UTC (rev 3154)
@@ -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.jbpm.integration.spec.model;
+
+import org.jboss.bpm.api.model.ProcessDefinition;
+import org.jboss.bpm.api.model.WaitState;
+import org.jbpm.graph.node.State;
+
+/**
+ * An integration wrapper
+ *
+ * @author thomas.diesler at jboss.com
+ * @since 15-Nov-2008
+ */
+public class WaitStateImpl extends TaskImpl implements WaitState
+{
+ private static final long serialVersionUID = 1L;
+
+ public WaitStateImpl(ProcessDefinition procDef, State oldState)
+ {
+ super(procDef, oldState);
+ }
+
+ //@Override
+ public TaskType getTaskType()
+ {
+ return TaskType.Wait;
+ }
+}
Copied: jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/model/builder (from rev 3150, jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/model/builder)
Modified: jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/model/builder/GatewayBuilderImpl.java
===================================================================
--- jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/model/builder/GatewayBuilderImpl.java 2008-11-28 15:30:25 UTC (rev 3150)
+++ jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/model/builder/GatewayBuilderImpl.java 2008-11-28 16:41:56 UTC (rev 3154)
@@ -19,7 +19,7 @@
* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
*/
-package org.jbpm.integration.model.builder;
+package org.jbpm.integration.spec.model.builder;
//$Id$
Modified: jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/model/builder/ProcessBuilderImpl.java
===================================================================
--- jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/model/builder/ProcessBuilderImpl.java 2008-11-28 15:30:25 UTC (rev 3150)
+++ jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/model/builder/ProcessBuilderImpl.java 2008-11-28 16:41:56 UTC (rev 3154)
@@ -19,7 +19,7 @@
* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
*/
-package org.jbpm.integration.model.builder;
+package org.jbpm.integration.spec.model.builder;
//$Id$
@@ -45,14 +45,14 @@
import org.jbpm.graph.node.EndState;
import org.jbpm.graph.node.StartState;
import org.jbpm.graph.node.State;
-import org.jbpm.integration.model.EndEventImpl;
-import org.jbpm.integration.model.ExclusiveGatewayImpl;
-import org.jbpm.integration.model.NodeImpl;
-import org.jbpm.integration.model.ProcessDefinitionImpl;
-import org.jbpm.integration.model.SequenceFlowImpl;
-import org.jbpm.integration.model.StartEventImpl;
-import org.jbpm.integration.model.TaskImpl;
-import org.jbpm.integration.model.WaitStateImpl;
+import org.jbpm.integration.spec.model.EndEventImpl;
+import org.jbpm.integration.spec.model.ExclusiveGatewayImpl;
+import org.jbpm.integration.spec.model.NodeImpl;
+import org.jbpm.integration.spec.model.ProcessDefinitionImpl;
+import org.jbpm.integration.spec.model.SequenceFlowImpl;
+import org.jbpm.integration.spec.model.StartEventImpl;
+import org.jbpm.integration.spec.model.TaskImpl;
+import org.jbpm.integration.spec.model.WaitStateImpl;
/**
* The ProcessBuilder can be used to dynamically build a {@link Process}.
Copied: jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/runtime (from rev 3150, jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/runtime)
Modified: jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/runtime/ExpressionEvaluator.java
===================================================================
--- jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/runtime/ExpressionEvaluator.java 2008-11-28 15:30:25 UTC (rev 3150)
+++ jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/runtime/ExpressionEvaluator.java 2008-11-28 16:41:56 UTC (rev 3154)
@@ -19,7 +19,7 @@
* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
*/
-package org.jbpm.integration.runtime;
+package org.jbpm.integration.spec.runtime;
//$Id$
Modified: jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/runtime/NodeExecuteInterceptor.java
===================================================================
--- jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/runtime/NodeExecuteInterceptor.java 2008-11-28 15:30:25 UTC (rev 3150)
+++ jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/runtime/NodeExecuteInterceptor.java 2008-11-28 16:41:56 UTC (rev 3154)
@@ -19,7 +19,7 @@
* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
*/
-package org.jbpm.integration.runtime;
+package org.jbpm.integration.spec.runtime;
//$Id$
Modified: jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/runtime/NodeInterceptor.java
===================================================================
--- jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/runtime/NodeInterceptor.java 2008-11-28 15:30:25 UTC (rev 3150)
+++ jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/runtime/NodeInterceptor.java 2008-11-28 16:41:56 UTC (rev 3154)
@@ -19,7 +19,7 @@
* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
*/
-package org.jbpm.integration.runtime;
+package org.jbpm.integration.spec.runtime;
//$Id$
Modified: jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/runtime/RuntimeContext.java
===================================================================
--- jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/runtime/RuntimeContext.java 2008-11-28 15:30:25 UTC (rev 3150)
+++ jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/runtime/RuntimeContext.java 2008-11-28 16:41:56 UTC (rev 3154)
@@ -19,7 +19,7 @@
* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
*/
-package org.jbpm.integration.runtime;
+package org.jbpm.integration.spec.runtime;
//$Id$
Modified: jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/runtime/TokenAttachmentDelegate.java
===================================================================
--- jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/runtime/TokenAttachmentDelegate.java 2008-11-28 15:30:25 UTC (rev 3150)
+++ jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/runtime/TokenAttachmentDelegate.java 2008-11-28 16:41:56 UTC (rev 3154)
@@ -19,7 +19,7 @@
* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
*/
-package org.jbpm.integration.runtime;
+package org.jbpm.integration.spec.runtime;
//$Id$
Modified: jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/runtime/TokenImpl.java
===================================================================
--- jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/runtime/TokenImpl.java 2008-11-28 15:30:25 UTC (rev 3150)
+++ jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/runtime/TokenImpl.java 2008-11-28 16:41:56 UTC (rev 3154)
@@ -19,7 +19,7 @@
* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
*/
-package org.jbpm.integration.runtime;
+package org.jbpm.integration.spec.runtime;
import java.util.Collection;
import java.util.HashSet;
@@ -39,7 +39,7 @@
import org.jboss.bpm.api.runtime.Attachments;
import org.jboss.bpm.api.runtime.Token;
import org.jbpm.context.exe.ContextInstance;
-import org.jbpm.integration.model.ProcessImpl;
+import org.jbpm.integration.spec.model.ProcessImpl;
/**
* An integration wrapper
Copied: jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/service (from rev 3150, jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/service)
Modified: jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/service/DeploymentServiceImpl.java
===================================================================
--- jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/service/DeploymentServiceImpl.java 2008-11-28 15:30:25 UTC (rev 3150)
+++ jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/service/DeploymentServiceImpl.java 2008-11-28 16:41:56 UTC (rev 3154)
@@ -19,7 +19,7 @@
* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
*/
-package org.jbpm.integration.service;
+package org.jbpm.integration.spec.service;
// $Id$
@@ -33,8 +33,8 @@
import org.jboss.bpm.api.model.ProcessDefinition;
import org.jboss.bpm.api.service.DeploymentService;
import org.jboss.bpm.api.service.ProcessDefinitionService;
-import org.jbpm.integration.deployment.PARDeployment;
-import org.jbpm.integration.deployment.XMLDeployment;
+import org.jbpm.integration.spec.deployment.PARDeployment;
+import org.jbpm.integration.spec.deployment.XMLDeployment;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
Modified: jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/service/DialectHandlerServiceImpl.java
===================================================================
--- jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/service/DialectHandlerServiceImpl.java 2008-11-28 15:30:25 UTC (rev 3150)
+++ jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/service/DialectHandlerServiceImpl.java 2008-11-28 16:41:56 UTC (rev 3154)
@@ -19,7 +19,7 @@
* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
*/
-package org.jbpm.integration.service;
+package org.jbpm.integration.spec.service;
// $Id$
Modified: jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/service/ExecutionServiceImpl.java
===================================================================
--- jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/service/ExecutionServiceImpl.java 2008-11-28 15:30:25 UTC (rev 3150)
+++ jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/service/ExecutionServiceImpl.java 2008-11-28 16:41:56 UTC (rev 3154)
@@ -19,7 +19,7 @@
* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
*/
-package org.jbpm.integration.service;
+package org.jbpm.integration.spec.service;
// $Id$
Modified: jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/service/IdentityServiceImpl.java
===================================================================
--- jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/service/IdentityServiceImpl.java 2008-11-28 15:30:25 UTC (rev 3150)
+++ jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/service/IdentityServiceImpl.java 2008-11-28 16:41:56 UTC (rev 3154)
@@ -19,7 +19,7 @@
* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
*/
-package org.jbpm.integration.service;
+package org.jbpm.integration.spec.service;
// $Id$
@@ -35,7 +35,7 @@
import org.jbpm.identity.Group;
import org.jbpm.identity.User;
import org.jbpm.identity.hibernate.IdentitySession;
-import org.jbpm.integration.client.ProcessEngineImpl;
+import org.jbpm.integration.spec.client.ProcessEngineImpl;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
Modified: jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/service/MutableService.java
===================================================================
--- jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/service/MutableService.java 2008-11-28 15:30:25 UTC (rev 3150)
+++ jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/service/MutableService.java 2008-11-28 16:41:56 UTC (rev 3154)
@@ -19,7 +19,7 @@
* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
*/
-package org.jbpm.integration.service;
+package org.jbpm.integration.spec.service;
// $Id$
Modified: jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/service/NoopPersistenceServiceImpl.java
===================================================================
--- jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/service/NoopPersistenceServiceImpl.java 2008-11-28 15:30:25 UTC (rev 3150)
+++ jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/service/NoopPersistenceServiceImpl.java 2008-11-28 16:41:56 UTC (rev 3154)
@@ -19,7 +19,7 @@
* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
*/
-package org.jbpm.integration.service;
+package org.jbpm.integration.spec.service;
// $Id$
Modified: jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/service/ProcessBuilderServiceImpl.java
===================================================================
--- jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/service/ProcessBuilderServiceImpl.java 2008-11-28 15:30:25 UTC (rev 3150)
+++ jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/service/ProcessBuilderServiceImpl.java 2008-11-28 16:41:56 UTC (rev 3154)
@@ -19,7 +19,7 @@
* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
*/
-package org.jbpm.integration.service;
+package org.jbpm.integration.spec.service;
// $Id$
@@ -27,7 +27,7 @@
import org.jboss.bpm.api.model.Process;
import org.jboss.bpm.api.model.builder.ProcessBuilder;
import org.jboss.bpm.api.service.ProcessBuilderService;
-import org.jbpm.integration.model.builder.ProcessBuilderImpl;
+import org.jbpm.integration.spec.model.builder.ProcessBuilderImpl;
/**
* The ProcessBuilder can be used to build a {@link Process} dynamically.
*
Modified: jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/service/ProcessDefinitionServiceImpl.java
===================================================================
--- jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/service/ProcessDefinitionServiceImpl.java 2008-11-28 15:30:25 UTC (rev 3150)
+++ jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/service/ProcessDefinitionServiceImpl.java 2008-11-28 16:41:56 UTC (rev 3154)
@@ -19,7 +19,7 @@
* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
*/
-package org.jbpm.integration.service;
+package org.jbpm.integration.spec.service;
// $Id$
@@ -36,8 +36,8 @@
import org.jboss.bpm.api.service.ProcessService;
import org.jbpm.JbpmConfiguration;
import org.jbpm.JbpmContext;
-import org.jbpm.integration.client.ProcessEngineImpl;
-import org.jbpm.integration.model.ProcessDefinitionImpl;
+import org.jbpm.integration.spec.client.ProcessEngineImpl;
+import org.jbpm.integration.spec.model.ProcessDefinitionImpl;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
Modified: jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/service/ProcessServiceImpl.java
===================================================================
--- jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/service/ProcessServiceImpl.java 2008-11-28 15:30:25 UTC (rev 3150)
+++ jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/service/ProcessServiceImpl.java 2008-11-28 16:41:56 UTC (rev 3154)
@@ -19,7 +19,7 @@
* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
*/
-package org.jbpm.integration.service;
+package org.jbpm.integration.spec.service;
// $Id$
@@ -41,9 +41,9 @@
import org.jboss.bpm.api.service.ProcessService;
import org.jbpm.JbpmConfiguration;
import org.jbpm.JbpmContext;
-import org.jbpm.integration.client.ProcessEngineImpl;
-import org.jbpm.integration.model.ProcessImpl;
-import org.jbpm.integration.runtime.NodeInterceptor;
+import org.jbpm.integration.spec.client.ProcessEngineImpl;
+import org.jbpm.integration.spec.model.ProcessImpl;
+import org.jbpm.integration.spec.runtime.NodeInterceptor;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
Modified: jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/service/TaskServiceImpl.java
===================================================================
--- jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/service/TaskServiceImpl.java 2008-11-28 15:30:25 UTC (rev 3150)
+++ jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/service/TaskServiceImpl.java 2008-11-28 16:41:56 UTC (rev 3154)
@@ -19,7 +19,7 @@
* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
*/
-package org.jbpm.integration.service;
+package org.jbpm.integration.spec.service;
// $Id$
@@ -33,8 +33,8 @@
import org.jboss.bpm.api.task.Task;
import org.jbpm.JbpmConfiguration;
import org.jbpm.JbpmContext;
-import org.jbpm.integration.client.ProcessEngineImpl;
-import org.jbpm.integration.task.TaskImpl;
+import org.jbpm.integration.spec.client.ProcessEngineImpl;
+import org.jbpm.integration.spec.task.TaskImpl;
import org.jbpm.taskmgmt.exe.TaskInstance;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
Copied: jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/task (from rev 3150, jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/task)
Modified: jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/task/TaskImpl.java
===================================================================
--- jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/task/TaskImpl.java 2008-11-28 15:30:25 UTC (rev 3150)
+++ jbpm3/trunk/modules/integration/spec/src/main/java/org/jbpm/integration/spec/task/TaskImpl.java 2008-11-28 16:41:56 UTC (rev 3154)
@@ -19,7 +19,7 @@
* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
*/
-package org.jbpm.integration.task;
+package org.jbpm.integration.spec.task;
// $Id$
@@ -33,7 +33,7 @@
import org.jboss.bpm.api.runtime.Token;
import org.jboss.bpm.api.service.ExecutionService;
import org.jboss.bpm.api.task.Task;
-import org.jbpm.integration.runtime.TokenImpl;
+import org.jbpm.integration.spec.runtime.TokenImpl;
import org.jbpm.taskmgmt.exe.PooledActor;
import org.jbpm.taskmgmt.exe.TaskInstance;
import org.slf4j.Logger;
Modified: jbpm3/trunk/modules/integration/spec/src/main/resources/jbpm-cfg-beans.xml
===================================================================
--- jbpm3/trunk/modules/integration/spec/src/main/resources/jbpm-cfg-beans.xml 2008-11-28 16:40:34 UTC (rev 3153)
+++ jbpm3/trunk/modules/integration/spec/src/main/resources/jbpm-cfg-beans.xml 2008-11-28 16:41:56 UTC (rev 3154)
@@ -10,7 +10,7 @@
</bean>
<!-- The ProcessEngine -->
- <bean name="BPMProcessEngine" class="org.jbpm.integration.client.ProcessEngineImpl">
+ <bean name="BPMProcessEngine" class="org.jbpm.integration.spec.client.ProcessEngineImpl">
<property name="services">
<set elementClass="org.jboss.bpm.api.service.Service">
<inject bean="BPMDeploymentService"/>
@@ -24,19 +24,19 @@
</bean>
<!-- The PersistenceService -->
- <bean name="BPMPersistenceService" class="org.jbpm.integration.service.NoopPersistenceServiceImpl" />
+ <bean name="BPMPersistenceService" class="org.jbpm.integration.spec.service.NoopPersistenceServiceImpl" />
<!-- The ProcessService -->
- <bean name="BPMProcessService" class="org.jbpm.integration.service.ProcessServiceImpl">
+ <bean name="BPMProcessService" class="org.jbpm.integration.spec.service.ProcessServiceImpl">
<property name="interceptors">
<list elementClass="java.lang.String">
- <value>org.jbpm.integration.runtime.NodeExecuteInterceptor</value>
+ <value>org.jbpm.integration.spec.runtime.NodeExecuteInterceptor</value>
</list>
</property>
</bean>
<!-- The DialectHandlerService -->
- <bean name="BPMDialectHandlerService" class="org.jbpm.integration.service.DialectHandlerServiceImpl">
+ <bean name="BPMDialectHandlerService" class="org.jbpm.integration.spec.service.DialectHandlerServiceImpl">
<property name="dialectHandlers">
<map keyClass="java.net.URI" valueClass="org.jboss.bpm.api.service.DialectHandler">
<entry><key>urn:jbpm.jboss:api-0.1</key><value><inject bean="BPMDialectHandlerAPI10"/></value></entry>
@@ -45,12 +45,12 @@
</property>
</bean>
<bean name="BPMDialectHandlerAPI10" class="org.jboss.bpm.dialect.api10.DialectHandlerImpl" />
- <bean name="BPMDialectHandlerJPDL32" class="org.jbpm.integration.jpdl32.DialectHandlerImpl" />
+ <bean name="BPMDialectHandlerJPDL32" class="org.jbpm.integration.spec.jpdl32.DialectHandlerImpl" />
<!-- Other Services -->
- <bean name="BPMDeploymentService" class="org.jbpm.integration.service.DeploymentServiceImpl" />
- <bean name="BPMIdentityService" class="org.jbpm.integration.service.IdentityServiceImpl" />
- <bean name="BPMProcessBuilderService" class="org.jbpm.integration.service.ProcessBuilderServiceImpl" />
- <bean name="BPMProcessDefinitionService" class="org.jbpm.integration.service.ProcessDefinitionServiceImpl" />
+ <bean name="BPMDeploymentService" class="org.jbpm.integration.spec.service.DeploymentServiceImpl" />
+ <bean name="BPMIdentityService" class="org.jbpm.integration.spec.service.IdentityServiceImpl" />
+ <bean name="BPMProcessBuilderService" class="org.jbpm.integration.spec.service.ProcessBuilderServiceImpl" />
+ <bean name="BPMProcessDefinitionService" class="org.jbpm.integration.spec.service.ProcessDefinitionServiceImpl" />
</deployment>
Copied: jbpm3/trunk/modules/integration/spec/src/test/java/org/jbpm/test/integration/spec/deployment (from rev 3150, jbpm3/trunk/modules/integration/spec/src/test/java/org/jbpm/test/integration/deployment)
Added: jbpm3/trunk/modules/integration/spec/src/test/java/org/jbpm/test/integration/spec/deployment/DeploymentPARTest.java
===================================================================
--- jbpm3/trunk/modules/integration/spec/src/test/java/org/jbpm/test/integration/spec/deployment/DeploymentPARTest.java (rev 0)
+++ jbpm3/trunk/modules/integration/spec/src/test/java/org/jbpm/test/integration/spec/deployment/DeploymentPARTest.java 2008-11-28 16:41:56 UTC (rev 3154)
@@ -0,0 +1,54 @@
+/*
+ * 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.jbpm.test.integration.spec.deployment;
+
+// $Id$
+
+import java.net.URL;
+
+import org.jboss.bpm.api.deployment.Deployment;
+import org.jboss.bpm.api.model.ProcessDefinition;
+import org.jboss.bpm.api.service.DeploymentService;
+import org.jboss.bpm.api.test.APITestCase;
+
+/**
+ * Test simple PAR deployment
+ *
+ * @author thomas.diesler at jboss.com
+ * @since 24-Nov-2008
+ */
+public class DeploymentPARTest extends APITestCase
+{
+ public void testSimplePARDeploy() throws Exception
+ {
+ URL parURL = getTestArchiveURL("fork-join-example.par");
+
+ DeploymentService depService = getProcessEngine().getService(DeploymentService.class);
+ Deployment dep = depService.createDeployment(parURL);
+
+ ProcessDefinition procDef = depService.deploy(dep);
+ assertNotNull("ProcDef not null", procDef);
+
+ // Undeploy the process
+ assertTrue("Undeploy successful", depService.undeploy(dep));
+ }
+}
Property changes on: jbpm3/trunk/modules/integration/spec/src/test/java/org/jbpm/test/integration/spec/deployment/DeploymentPARTest.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Modified: jbpm3/trunk/modules/integration/spec/src/test/java/org/jbpm/test/integration/spec/deployment/DeploymentXMLTest.java
===================================================================
--- jbpm3/trunk/modules/integration/spec/src/test/java/org/jbpm/test/integration/deployment/DeploymentXMLTest.java 2008-11-28 15:30:25 UTC (rev 3150)
+++ jbpm3/trunk/modules/integration/spec/src/test/java/org/jbpm/test/integration/spec/deployment/DeploymentXMLTest.java 2008-11-28 16:41:56 UTC (rev 3154)
@@ -19,7 +19,7 @@
* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
*/
-package org.jbpm.test.integration.deployment;
+package org.jbpm.test.integration.spec.deployment;
// $Id$
@@ -34,7 +34,7 @@
import org.jboss.bpm.api.test.APITestCase;
/**
- * Test simple jPDL process deployment
+ * Test simple XML deployment
*
* @author thomas.diesler at jboss.com
* @since 24-Nov-2008
Added: jbpm3/trunk/modules/integration/spec/src/test/resources/deployment/fork-join-example/gpd.xml
===================================================================
--- jbpm3/trunk/modules/integration/spec/src/test/resources/deployment/fork-join-example/gpd.xml (rev 0)
+++ jbpm3/trunk/modules/integration/spec/src/test/resources/deployment/fork-join-example/gpd.xml 2008-11-28 16:41:56 UTC (rev 3154)
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<root-container name="ForkJoinExample3" width="658" height="421">
+ <node name="start" x="150" y="25" width="140" height="40">
+ <edge>
+ <label x="5" y="-10" />
+ </edge>
+ </node>
+ <node name="fork1" x="96" y="95" width="252" height="24">
+ <edge>
+ <label x="5" y="-10" />
+ </edge>
+ <edge>
+ <label x="-92" y="-11" />
+ </edge>
+ </node>
+ <node name="Review Order" x="69" y="172" width="132" height="36">
+ <edge>
+ <label x="5" y="-10" />
+ </edge>
+ </node>
+ <node name="Prepare shipping" x="293" y="171" width="132" height="36">
+ <edge>
+ <label x="5" y="-10" />
+ </edge>
+ </node>
+ <node name="join1" x="118" y="256" width="252" height="24">
+ <edge>
+ <label x="5" y="-10" />
+ </edge>
+ </node>
+ <node name="Review results" x="183" y="299" width="132" height="36">
+ <edge>
+ <label x="5" y="-10" />
+ </edge>
+ </node>
+ <node name="Wrap up" x="367" y="320" width="132" height="36">
+ <edge>
+ <label x="5" y="-10" />
+ </edge>
+ </node>
+ <node name="end" x="176" y="359" width="140" height="40" />
+</root-container>
Property changes on: jbpm3/trunk/modules/integration/spec/src/test/resources/deployment/fork-join-example/gpd.xml
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: jbpm3/trunk/modules/integration/spec/src/test/resources/deployment/fork-join-example/processdefinition.xml
===================================================================
--- jbpm3/trunk/modules/integration/spec/src/test/resources/deployment/fork-join-example/processdefinition.xml (rev 0)
+++ jbpm3/trunk/modules/integration/spec/src/test/resources/deployment/fork-join-example/processdefinition.xml 2008-11-28 16:41:56 UTC (rev 3154)
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<process-definition xmlns="urn:jbpm.org:jpdl-3.2" name="ForkJoinExample3">
+ <start-state name="start">
+ <transition to="fork1"></transition>
+ </start-state>
+ <fork name="fork1">
+ <transition to="Prepare shipping" name="to Prepare shipping"></transition>
+ <transition to="Review Order" name="to Review Order"></transition>
+ </fork>
+
+ <task-node name="Review Order">
+ <task name="Do review order">
+ <assignment pooled-actors="sales"></assignment>
+ </task>
+ <transition to="join1" name="done with review order"></transition>
+ </task-node>
+
+ <task-node name="Prepare shipping">
+ <task name="Do prepare shipping">
+ <assignment pooled-actors="sales,hr"></assignment>
+ </task>
+ <transition to="join1" name="done with prepare shipping"></transition>
+ </task-node>
+
+ <join name="join1">
+ <transition to="Review results"></transition>
+ </join>
+
+ <task-node name="Review results">
+ <task name="Review previous steps">
+ <assignment pooled-actors="user"></assignment>
+ </task>
+ <transition to="Wrap up" name="review ok"></transition>
+ </task-node>
+
+ <task-node name="Wrap up">
+ <task name="Wrap up">
+ <assignment actor-id="fred"></assignment>
+ </task>
+ <transition to="end" name="finish this one"></transition>
+ </task-node>
+
+ <end-state name="end"></end-state>
+</process-definition>
\ No newline at end of file
Property changes on: jbpm3/trunk/modules/integration/spec/src/test/resources/deployment/fork-join-example/processdefinition.xml
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Added: jbpm3/trunk/modules/integration/spec/src/test/resources/deployment/fork-join-example/processimage.jpg
===================================================================
(Binary files differ)
Property changes on: jbpm3/trunk/modules/integration/spec/src/test/resources/deployment/fork-join-example/processimage.jpg
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
More information about the jbpm-commits
mailing list