JBoss JBPM SVN: r1901 - in jbossbpm/spec/trunk/modules: api/src/main/java/org/jboss/bpm/runtime and 8 other directories.
by do-not-reply@jboss.org
Author: thomas.diesler(a)jboss.com
Date: 2008-08-15 08:40:19 -0400 (Fri, 15 Aug 2008)
New Revision: 1901
Added:
jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/runtime/internal/DelegatingExecutionContext.java
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/activity/
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/activity/ActivityPropertyMarshallerTest.java
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/activity/ActivityPropertyTest.java
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/process/ProcessPropertyMarshallerTest.java
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/process/ProcessPropertyTest.java
Modified:
jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/ActivityBuilder.java
jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/ProcessBuilder.java
jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/runtime/Attachments.java
jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/runtime/BasicAttachments.java
jbossbpm/spec/trunk/modules/dialects/api10/src/main/java/org/jboss/bpm/dialect/api10/ProcessMarshaller.java
jbossbpm/spec/trunk/modules/dialects/api10/src/main/java/org/jboss/bpm/dialect/api10/ProcessUnmarshaller.java
jbossbpm/spec/trunk/modules/dialects/api10/src/main/java/org/jboss/bpm/dialect/api10/model/JAXBActivity.java
jbossbpm/spec/trunk/modules/dialects/api10/src/main/java/org/jboss/bpm/dialect/api10/model/JAXBProcess.java
jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/client/internal/RunnableToken.java
jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/ActivityBuilderImpl.java
jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/ActivityImpl.java
jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/ProcessBuilderImpl.java
jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/SendTaskImpl.java
jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/runtime/internal/TokenImpl.java
Log:
Add Activity/Process properties
Modified: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/ActivityBuilder.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/ActivityBuilder.java 2008-08-15 10:47:27 UTC (rev 1900)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/ActivityBuilder.java 2008-08-15 12:40:19 UTC (rev 1901)
@@ -57,4 +57,9 @@
* Add an IORule {@link Expression}
*/
ActivityBuilder addIORule(String body, ExpressionLanguage lang);
+
+ /**
+ * Add an activity property
+ */
+ ActivityBuilder addProperty(String name, String value);
}
\ No newline at end of file
Modified: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/ProcessBuilder.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/ProcessBuilder.java 2008-08-15 10:47:27 UTC (rev 1900)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/ProcessBuilder.java 2008-08-15 12:40:19 UTC (rev 1901)
@@ -111,6 +111,11 @@
MessageBuilder addMessage(String name);
/**
+ * Add a process property
+ */
+ ProcessBuilder addProperty(String name, String value);
+
+ /**
* Add an {@link ExecutionHandler} with a given Class
*/
ProcessBuilder addExecutionHandler(Class<?> clazz);
Modified: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/runtime/Attachments.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/runtime/Attachments.java 2008-08-15 10:47:27 UTC (rev 1900)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/runtime/Attachments.java 2008-08-15 12:40:19 UTC (rev 1901)
@@ -43,7 +43,7 @@
<T> T addAttachment(Class<T> clazz, String name, Object value);
/** Add arbitrary attachment with name */
- <T> T addAttachment(String name, Object value);
+ Object addAttachment(String name, Object value);
/** Get an arbitrary attachment */
<T> T getAttachment(Class<T> clazz);
@@ -52,7 +52,7 @@
<T> T getAttachment(Class<T> clazz, String name);
/** Get an arbitrary attachment */
- <T> T getAttachment(String name);
+ Object getAttachment(String name);
/** Remove arbitrary attachments */
<T> T removeAttachment(Class<T> clazz);
@@ -61,7 +61,7 @@
<T> T removeAttachment(Class<T> clazz, String name);
/** Remove arbitrary attachments */
- <T> T removeAttachment(String name);
+ Object removeAttachment(String name);
/**
* A key for attachements
Modified: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/runtime/BasicAttachments.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/runtime/BasicAttachments.java 2008-08-15 10:47:27 UTC (rev 1900)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/runtime/BasicAttachments.java 2008-08-15 12:40:19 UTC (rev 1901)
@@ -75,10 +75,9 @@
return (T)attachments.get(new Key(clazz, name));
}
- @SuppressWarnings("unchecked")
- public <T> T getAttachment(String name)
+ public Object getAttachment(String name)
{
- return (T)attachments.get(new Key(null, name));
+ return attachments.get(new Key(null, name));
}
@SuppressWarnings("unchecked")
@@ -93,10 +92,9 @@
return (T)attachments.put(new Key(clazz, name), obj);
}
- @SuppressWarnings("unchecked")
- public <T> T addAttachment(String name, Object obj)
+ public Object addAttachment(String name, Object obj)
{
- return (T)attachments.put(new Key(null, name), obj);
+ return attachments.put(new Key(null, name), obj);
}
@SuppressWarnings("unchecked")
@@ -111,10 +109,9 @@
return (T)attachments.remove(new Key(clazz, name));
}
- @SuppressWarnings("unchecked")
- public <T> T removeAttachment(String name)
+ public Object removeAttachment(String name)
{
- return (T)attachments.remove(new Key(null, name));
+ return attachments.remove(new Key(null, name));
}
public String toString()
Modified: jbossbpm/spec/trunk/modules/dialects/api10/src/main/java/org/jboss/bpm/dialect/api10/ProcessMarshaller.java
===================================================================
--- jbossbpm/spec/trunk/modules/dialects/api10/src/main/java/org/jboss/bpm/dialect/api10/ProcessMarshaller.java 2008-08-15 10:47:27 UTC (rev 1900)
+++ jbossbpm/spec/trunk/modules/dialects/api10/src/main/java/org/jboss/bpm/dialect/api10/ProcessMarshaller.java 2008-08-15 12:40:19 UTC (rev 1901)
@@ -117,6 +117,11 @@
JAXBMessage jaxbMsg = adaptMessage(jaxbProc, msg);
jaxbProc.getMessages().add(jaxbMsg);
}
+ for (Property prop : proc.getProperties())
+ {
+ JAXBProperty jaxbProp = getJaxbProperty(prop);
+ jaxbProc.getProperties().add(jaxbProp);
+ }
for (FlowObject fo : proc.getFlowObjects())
{
@@ -223,6 +228,11 @@
}
jaxb.getOutputSets().add(jaxbSet);
}
+ for (Property prop : task.getProperties())
+ {
+ JAXBProperty jaxbProp = getJaxbProperty(prop);
+ jaxb.getProperties().add(jaxbProp);
+ }
if (task instanceof ReceiveTask)
{
ReceiveTask recTask = (ReceiveTask)task;
@@ -285,15 +295,15 @@
{
JAXBMessageRef jaxbMsgRef = new JAXBMessageRef();
jaxbMsgRef.setNameRef(msgName);
-
+
String fromStr = getParticipant(msgRef.getFromRef());
if (fromStr != null && fromStr.equals(jaxbMsg.getFromRef()) == false)
jaxbMsgRef.setFromRef(fromStr);
-
+
String toStr = getParticipant(msgRef.getToRef());
if (toStr != null && toStr.equals(jaxbMsg.getToRef()) == false)
jaxbMsgRef.setToRef(toStr);
-
+
jaxb.setMessageRef(jaxbMsgRef);
}
else
Modified: jbossbpm/spec/trunk/modules/dialects/api10/src/main/java/org/jboss/bpm/dialect/api10/ProcessUnmarshaller.java
===================================================================
--- jbossbpm/spec/trunk/modules/dialects/api10/src/main/java/org/jboss/bpm/dialect/api10/ProcessUnmarshaller.java 2008-08-15 10:47:27 UTC (rev 1900)
+++ jbossbpm/spec/trunk/modules/dialects/api10/src/main/java/org/jboss/bpm/dialect/api10/ProcessUnmarshaller.java 2008-08-15 12:40:19 UTC (rev 1901)
@@ -108,6 +108,10 @@
MessageBuilder msgBuilder = procBuilder.addMessage(jaxb.getName());
adaptJAXBMessage(msgBuilder, jaxb);
}
+ for (JAXBProperty jaxbProp : jaxbProc.getProperties())
+ {
+ procBuilder.addProperty(jaxbProp.getName(), jaxbProp.getValue());
+ }
// Process FlowObjects
for (JAXBFlowObject jaxb : jaxbProc.getFlowObjects())
@@ -235,6 +239,10 @@
for (JAXBProperty jaxbProp : jaxbSet.getProperties())
taskBuilder.addPropertyOutput(jaxbProp.getName(), jaxbProp.getValue());
}
+ for (JAXBProperty jaxbProp : jaxb.getProperties())
+ {
+ taskBuilder.addProperty(jaxbProp.getName(), jaxbProp.getValue());
+ }
JAXBSupportingElement jaxbSE = jaxb.getMessageRef();
if (jaxbSE instanceof JAXBMessage)
{
Modified: jbossbpm/spec/trunk/modules/dialects/api10/src/main/java/org/jboss/bpm/dialect/api10/model/JAXBActivity.java
===================================================================
--- jbossbpm/spec/trunk/modules/dialects/api10/src/main/java/org/jboss/bpm/dialect/api10/model/JAXBActivity.java 2008-08-15 10:47:27 UTC (rev 1900)
+++ jbossbpm/spec/trunk/modules/dialects/api10/src/main/java/org/jboss/bpm/dialect/api10/model/JAXBActivity.java 2008-08-15 12:40:19 UTC (rev 1901)
@@ -23,7 +23,11 @@
//$Id$
+import java.util.ArrayList;
+import java.util.List;
+
import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlType;
@@ -39,7 +43,8 @@
public class JAXBActivity extends JAXBFlowObject
{
private String name;
-
+ private List<JAXBProperty> properties = new ArrayList<JAXBProperty>();
+
public String getName()
{
return name;
@@ -50,4 +55,10 @@
{
this.name = name;
}
+
+ @XmlElement(name = "property")
+ public List<JAXBProperty> getProperties()
+ {
+ return properties;
+ }
}
\ No newline at end of file
Modified: jbossbpm/spec/trunk/modules/dialects/api10/src/main/java/org/jboss/bpm/dialect/api10/model/JAXBProcess.java
===================================================================
--- jbossbpm/spec/trunk/modules/dialects/api10/src/main/java/org/jboss/bpm/dialect/api10/model/JAXBProcess.java 2008-08-15 10:47:27 UTC (rev 1900)
+++ jbossbpm/spec/trunk/modules/dialects/api10/src/main/java/org/jboss/bpm/dialect/api10/model/JAXBProcess.java 2008-08-15 12:40:19 UTC (rev 1901)
@@ -57,6 +57,8 @@
@XmlElement(name = "end", type = JAXBEndEvent.class) })
private List<JAXBFlowObject> flowObjects = new ArrayList<JAXBFlowObject>();
+ private List<JAXBProperty> properties = new ArrayList<JAXBProperty>();
+
public String getName()
{
return name;
@@ -104,4 +106,10 @@
}
return null;
}
+
+ @XmlElement(name = "property")
+ public List<JAXBProperty> getProperties()
+ {
+ return properties;
+ }
}
\ No newline at end of file
Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/client/internal/RunnableToken.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/client/internal/RunnableToken.java 2008-08-15 10:47:27 UTC (rev 1900)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/client/internal/RunnableToken.java 2008-08-15 12:40:19 UTC (rev 1901)
@@ -30,12 +30,14 @@
import org.jboss.bpm.model.Process.ProcessStatus;
import org.jboss.bpm.model.internal.FlowObjectImpl;
import org.jboss.bpm.model.internal.ProcessImpl;
+import org.jboss.bpm.runtime.ExecutionContext;
import org.jboss.bpm.runtime.FlowHandler;
import org.jboss.bpm.runtime.HandlerSupport;
import org.jboss.bpm.runtime.RuntimeProcess;
import org.jboss.bpm.runtime.SignalHandler;
import org.jboss.bpm.runtime.TokenExecutor;
import org.jboss.bpm.runtime.Token.TokenStatus;
+import org.jboss.bpm.runtime.internal.DelegatingExecutionContext;
import org.jboss.bpm.runtime.internal.TokenImpl;
/**
@@ -80,11 +82,11 @@
while (procStatus == ProcessStatus.Active && tokStatus == TokenStatus.Started)
{
flow = token.getFlow();
-
+
// Get the target and its handlers
- FlowObjectImpl target = (FlowObjectImpl)flow.getTargetRef();
- SignalHandler sigHandler = getSignalHandler(target);
- FlowHandler flowHandler = getFlowHandler(target);
+ FlowObjectImpl targetFlowObject = (FlowObjectImpl)flow.getTargetRef();
+ SignalHandler sigHandler = getSignalHandler(targetFlowObject);
+ FlowHandler flowHandler = getFlowHandler(targetFlowObject);
// Synchronize execution of the target and the flow handler
synchronized (rtProc)
@@ -93,15 +95,22 @@
{
// Execute the FlowObject
sigHandler.throwEnterSignal();
- target.execute(token);
-
+
+ // Set the current FlowObject in the ExecutionContext
+ ExecutionContext exContext = token.getExecutionContext();
+ DelegatingExecutionContext delCtx = (DelegatingExecutionContext)exContext;
+ delCtx.setCurrFlowObject(targetFlowObject);
+
+ // Execute the target FlowObject
+ targetFlowObject.execute(token);
+
// Transfer the token to the FlowHandler
flowHandler.execute(tokenExecutor, token);
}
- catch(RuntimeException rte)
+ catch (RuntimeException rte)
{
log.error("Process error", rte);
- target.reset();
+ targetFlowObject.reset();
throw rte;
}
finally
@@ -112,11 +121,11 @@
tokStatus = token.getTokenStatus();
procStatus = procImpl.getProcessStatus();
-
+
// Make sure the next flow is different from the previous one
ConnectingObject nextFlow = token.getFlow();
if (tokStatus == TokenStatus.Started && nextFlow == flow)
- throw new IllegalStateException("Flow handler did not move the token: " + target);
+ throw new IllegalStateException("Flow handler did not move the token: " + targetFlowObject);
}
}
catch (RuntimeException rte)
@@ -127,7 +136,7 @@
}
finally
{
-
+
token.setTokenStatus(TokenStatus.Destroyed);
// Notify the ExecutionManager when a token terminates
synchronized (procImpl)
Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/ActivityBuilderImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/ActivityBuilderImpl.java 2008-08-15 10:47:27 UTC (rev 1900)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/ActivityBuilderImpl.java 2008-08-15 12:40:19 UTC (rev 1901)
@@ -79,6 +79,13 @@
return this;
}
+ public ActivityBuilder addProperty(String name, String value)
+ {
+ Property prop = new PropertyImpl(name, new ExpressionImpl(value));
+ getActivity().addProperty(prop);
+ return this;
+ }
+
private ActivityImpl getActivity()
{
if (flowObject instanceof Activity == false)
Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/ActivityImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/ActivityImpl.java 2008-08-15 10:47:27 UTC (rev 1900)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/ActivityImpl.java 2008-08-15 12:40:19 UTC (rev 1901)
@@ -210,7 +210,7 @@
for (Property prop : auxSet.getProperties())
{
String name = prop.getName();
- String value = exContext.getAttachment(name);
+ String value = (String)exContext.getAttachment(name);
inputSet.addProperty(new PropertyImpl(name, new ExpressionImpl(value)));
}
break;
Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/ProcessBuilderImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/ProcessBuilderImpl.java 2008-08-15 10:47:27 UTC (rev 1900)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/ProcessBuilderImpl.java 2008-08-15 12:40:19 UTC (rev 1901)
@@ -32,6 +32,7 @@
import org.jboss.bpm.model.MessageBuilder;
import org.jboss.bpm.model.Process;
import org.jboss.bpm.model.ProcessBuilder;
+import org.jboss.bpm.model.Property;
import org.jboss.bpm.model.TaskBuilder;
import org.jboss.bpm.model.Gateway.GatewayType;
import org.jboss.bpm.model.Task.TaskType;
@@ -223,6 +224,13 @@
return msgBuilder;
}
+ public ProcessBuilder addProperty(String name, String value)
+ {
+ Property prop = new PropertyImpl(name, new ExpressionImpl(value));
+ proc.addProperty(prop);
+ return this;
+ }
+
public ProcessBuilder addExecutionHandler(Class<?> clazz)
{
return addHandler(clazz);
Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/SendTaskImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/SendTaskImpl.java 2008-08-15 10:47:27 UTC (rev 1900)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/SendTaskImpl.java 2008-08-15 12:40:19 UTC (rev 1901)
@@ -111,7 +111,7 @@
for (Property auxProp : messageRef.getProperties())
{
String key = auxProp.getName();
- String value = exContext.getAttachment(key);
+ String value = (String)exContext.getAttachment(key);
if (value == null)
throw new IllegalStateException("Cannot obtain property: " + key);
Added: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/runtime/internal/DelegatingExecutionContext.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/runtime/internal/DelegatingExecutionContext.java (rev 0)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/runtime/internal/DelegatingExecutionContext.java 2008-08-15 12:40:19 UTC (rev 1901)
@@ -0,0 +1,183 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.runtime.internal;
+
+//$Id$
+
+import java.util.ArrayList;
+import java.util.Collection;
+
+import org.jboss.bpm.model.Activity;
+import org.jboss.bpm.model.FlowObject;
+import org.jboss.bpm.model.Process;
+import org.jboss.bpm.model.Property;
+import org.jboss.bpm.runtime.Attachments;
+import org.jboss.bpm.runtime.BasicAttachments;
+import org.jboss.bpm.runtime.ExecutionContext;
+
+/**
+ * An ExecutionContext that delegates to the current {@link Activity} or {@link Process} for property rerieval.
+ *
+ * @author Thomas.Diesler(a)jboss.com
+ * @since 15-Aug-2008
+ */
+public class DelegatingExecutionContext implements ExecutionContext
+{
+ private Attachments att;
+ private FlowObject currFlowObject;
+
+ DelegatingExecutionContext(Attachments att)
+ {
+ this.att = new BasicAttachments(att);
+ }
+
+ public FlowObject getCurrFlowObject()
+ {
+ return currFlowObject;
+ }
+
+ public void setCurrFlowObject(FlowObject currFlowObject)
+ {
+ this.currFlowObject = currFlowObject;
+ }
+
+ public Object getAttachment(String name)
+ {
+ Object value = null;
+
+ if (currFlowObject != null)
+ {
+ Process proc = currFlowObject.getProcess();
+ String foName = currFlowObject.getName();
+ String procName = proc.getName();
+
+ String procPrefix = procName + ".";
+ String activityPrefix = procPrefix + foName + ".";
+
+ // Get activity property
+ if (currFlowObject instanceof Activity && name.startsWith(activityPrefix))
+ {
+ Activity activity = (Activity)currFlowObject;
+ String key = name.substring(activityPrefix.length());
+ Property prop = activity.getProperty(key);
+ if (prop != null)
+ {
+ value = prop.getValue().getExpressionBody();
+ }
+ }
+
+ // Get process property
+ else if (name.startsWith(procPrefix))
+ {
+ String key = name.substring(procPrefix.length());
+ Property prop = proc.getProperty(key);
+ if (prop != null)
+ {
+ value = prop.getValue().getExpressionBody();
+ }
+ }
+ }
+
+ // Fallback to execution context
+ if (value == null)
+ {
+ value = att.getAttachment(name);
+ }
+
+ return value;
+ }
+
+ public Collection<Key> getAttachmentKeys()
+ {
+ Collection<Key> keys = new ArrayList<Key>(att.getAttachmentKeys());
+
+ if (currFlowObject != null)
+ {
+ Process proc = currFlowObject.getProcess();
+ String foName = currFlowObject.getName();
+ String procName = proc.getName();
+
+ String procPrefix = procName + ".";
+ String activityPrefix = procPrefix + foName + ".";
+
+ // Add activity property keys
+ if (currFlowObject instanceof Activity)
+ {
+ Activity activity = (Activity)currFlowObject;
+ for (Property prop : activity.getProperties())
+ {
+ Key key = new Key(null, activityPrefix + prop.getName());
+ keys.add(key);
+ }
+ }
+
+ // Add process property keys
+ for (Property prop : proc.getProperties())
+ {
+ Key key = new Key(null, procPrefix + prop.getName());
+ keys.add(key);
+ }
+ }
+
+ return keys;
+ }
+
+ public <T> T getAttachment(Class<T> clazz)
+ {
+ return att.getAttachment(clazz);
+ }
+
+ public <T> T getAttachment(Class<T> clazz, String name)
+ {
+ return att.getAttachment(clazz, name);
+ }
+
+ public <T> T addAttachment(Class<T> clazz, Object value)
+ {
+ return att.addAttachment(clazz, value);
+ }
+
+ public <T> T addAttachment(Class<T> clazz, String name, Object value)
+ {
+ return att.addAttachment(clazz, name, value);
+ }
+
+ public Object addAttachment(String name, Object value)
+ {
+ return att.addAttachment(name, value);
+ }
+
+ public <T> T removeAttachment(Class<T> clazz)
+ {
+ return att.removeAttachment(clazz);
+ }
+
+ public <T> T removeAttachment(Class<T> clazz, String name)
+ {
+ return att.removeAttachment(clazz, name);
+ }
+
+ public Object removeAttachment(String name)
+ {
+ return att.removeAttachment(name);
+ }
+}
\ No newline at end of file
Property changes on: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/runtime/internal/DelegatingExecutionContext.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/runtime/internal/TokenImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/runtime/internal/TokenImpl.java 2008-08-15 10:47:27 UTC (rev 1900)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/runtime/internal/TokenImpl.java 2008-08-15 12:40:19 UTC (rev 1901)
@@ -28,7 +28,6 @@
import org.jboss.bpm.model.InputSet;
import org.jboss.bpm.model.OutputSet;
import org.jboss.bpm.runtime.Attachments;
-import org.jboss.bpm.runtime.BasicAttachments;
import org.jboss.bpm.runtime.ExecutionContext;
import org.jboss.bpm.runtime.Token;
import org.jboss.bpm.runtime.Attachments.Key;
@@ -60,7 +59,7 @@
*/
public TokenImpl(Attachments att)
{
- this.context = new InitialContext(att);
+ this.context = new DelegatingExecutionContext(att);
this.id = new UID().toString();
this.status = TokenStatus.Created;
}
@@ -147,12 +146,4 @@
FlowObject fo = (FlowObject)flow.getTargetRef();
return "[fo=" + fo + ",ctx=" + context + "]";
}
-
- static class InitialContext extends BasicAttachments implements ExecutionContext
- {
- InitialContext(Attachments att)
- {
- super(att);
- }
- }
}
\ No newline at end of file
Added: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/activity/ActivityPropertyMarshallerTest.java
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/activity/ActivityPropertyMarshallerTest.java (rev 0)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/activity/ActivityPropertyMarshallerTest.java 2008-08-15 12:40:19 UTC (rev 1901)
@@ -0,0 +1,57 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.cts.activity;
+
+// $Id$
+
+import java.io.StringWriter;
+
+import org.jboss.bpm.client.ProcessManager;
+import org.jboss.bpm.model.Process;
+
+/**
+ *
+ * An ActivityPropertyTest using the ProcessMarshaller
+ *
+ * @author thomas.diesler(a)jboss.com
+ * @since 15-Aug-2008
+ */
+public class ActivityPropertyMarshallerTest extends ActivityPropertyTest
+{
+ protected Process getProcess()
+ {
+ Process proc = super.getProcess();
+
+ // Marshall the process to a string
+ StringWriter strwr = new StringWriter();
+ marshallProcess(proc, strwr);
+ String procXML = strwr.toString();
+
+ System.out.println(procXML);
+
+ // Recreate the process from the marshalled process
+ ProcessManager procManager = ProcessManager.locateProcessManager();
+ proc = procManager.createProcess(procXML);
+
+ return proc;
+ }
+}
Property changes on: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/activity/ActivityPropertyMarshallerTest.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/activity/ActivityPropertyTest.java
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/activity/ActivityPropertyTest.java (rev 0)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/activity/ActivityPropertyTest.java 2008-08-15 12:40:19 UTC (rev 1901)
@@ -0,0 +1,86 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.cts.activity;
+
+// $Id$
+
+import java.util.Collection;
+
+import org.jboss.bpm.model.ActivityBuilder;
+import org.jboss.bpm.model.Process;
+import org.jboss.bpm.model.ProcessBuilder;
+import org.jboss.bpm.model.ProcessBuilderFactory;
+import org.jboss.bpm.runtime.ExecutionContext;
+import org.jboss.bpm.runtime.ExecutionHandler;
+import org.jboss.bpm.runtime.Token;
+import org.jboss.bpm.runtime.Attachments.Key;
+import org.jboss.bpm.test.DefaultEngineTestCase;
+
+/**
+ * Modeler-defined Properties MAY be added to an activity. These Properties are "local" to the activity. These
+ * Properties are only for use within the processing of the activity. The fully delineated name of these properties is
+ * "<process name>.<activity name>.<property name>" (e.g., "Add Customer.Review Credit.Status").
+ *
+ * https://jira.jboss.org/jira/browse/JBPM-1621
+ *
+ * @author thomas.diesler(a)jboss.com
+ * @since 15-Aug-2008
+ */
+public class ActivityPropertyTest extends DefaultEngineTestCase
+{
+ public void testActivityProperties() throws Exception
+ {
+ Process proc = getProcess();
+ proc.startProcess();
+ proc.waitForEnd();
+
+ assertEquals("bar", TaskA.attValue);
+
+ assertEquals(1, TaskA.attKeys.size());
+ Key key = TaskA.attKeys.iterator().next();
+ assertEquals("ActivityProperties.TaskA.foo", key.getNamePart());
+ }
+
+ protected Process getProcess()
+ {
+ ProcessBuilder procBuilder = ProcessBuilderFactory.newInstance().newProcessBuilder();
+ procBuilder.addProcess("ActivityProperties").addStartEvent("Start").addSequenceFlow("TaskA");
+ ActivityBuilder activityBuilder = procBuilder.addTask("TaskA").addExecutionHandler(TaskA.class);
+ activityBuilder.addProperty("foo", "bar");
+ procBuilder.addSequenceFlow("End").addEndEvent("End");
+ Process proc = procBuilder.getProcess();
+ return proc;
+ }
+
+ @SuppressWarnings("serial")
+ public static class TaskA implements ExecutionHandler
+ {
+ static Object attValue;
+ static Collection<Key> attKeys;
+ public void execute(Token token)
+ {
+ ExecutionContext exContext = token.getExecutionContext();
+ attValue = exContext.getAttachment("ActivityProperties.TaskA.foo");
+ attKeys = exContext.getAttachmentKeys();
+ }
+ }
+}
Property changes on: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/activity/ActivityPropertyTest.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/process/ProcessPropertyMarshallerTest.java
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/process/ProcessPropertyMarshallerTest.java (rev 0)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/process/ProcessPropertyMarshallerTest.java 2008-08-15 12:40:19 UTC (rev 1901)
@@ -0,0 +1,57 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.cts.process;
+
+// $Id$
+
+import java.io.StringWriter;
+
+import org.jboss.bpm.client.ProcessManager;
+import org.jboss.bpm.model.Process;
+
+/**
+ *
+ * An ProcessPropertyTest using the ProcessMarshaller
+ *
+ * @author thomas.diesler(a)jboss.com
+ * @since 15-Aug-2008
+ */
+public class ProcessPropertyMarshallerTest extends ProcessPropertyTest
+{
+ protected Process getProcess()
+ {
+ Process proc = super.getProcess();
+
+ // Marshall the process to a string
+ StringWriter strwr = new StringWriter();
+ marshallProcess(proc, strwr);
+ String procXML = strwr.toString();
+
+ System.out.println(procXML);
+
+ // Recreate the process from the marshalled process
+ ProcessManager procManager = ProcessManager.locateProcessManager();
+ proc = procManager.createProcess(procXML);
+
+ return proc;
+ }
+}
Property changes on: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/process/ProcessPropertyMarshallerTest.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/process/ProcessPropertyTest.java
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/process/ProcessPropertyTest.java (rev 0)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/process/ProcessPropertyTest.java 2008-08-15 12:40:19 UTC (rev 1901)
@@ -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.jboss.bpm.cts.process;
+
+// $Id$
+
+import java.util.Collection;
+
+import org.jboss.bpm.model.Process;
+import org.jboss.bpm.model.ProcessBuilder;
+import org.jboss.bpm.model.ProcessBuilderFactory;
+import org.jboss.bpm.runtime.ExecutionContext;
+import org.jboss.bpm.runtime.ExecutionHandler;
+import org.jboss.bpm.runtime.Token;
+import org.jboss.bpm.runtime.Attachments.Key;
+import org.jboss.bpm.test.DefaultEngineTestCase;
+
+/**
+ * Modeler-defined Properties MAY be added to a Process. These Properties are "local" to the Process. All Tasks,
+ * Sub-Process objects, and Sub-Processes that are embedded SHALL have access to these Properties. The fully delineated
+ * name of these properties are "<process name>.<property name>" (e.g., "Add Customer.Customer Name"). If a process is
+ * embedded within another Process, then the fully delineated name SHALL also be preceded by the Parent Process name for
+ * as many Parents there are until the top level Process.
+ *
+ * https://jira.jboss.org/jira/browse/JBPM-1392
+ *
+ * @author thomas.diesler(a)jboss.com
+ * @since 15-Aug-2008
+ */
+public class ProcessPropertyTest extends DefaultEngineTestCase
+{
+ public void testProcessProperties() throws Exception
+ {
+ Process proc = getProcess();
+ proc.startProcess();
+ proc.waitForEnd();
+
+ assertEquals("bar", TaskA.attValue);
+
+ assertEquals(1, TaskA.attKeys.size());
+ Key key = TaskA.attKeys.iterator().next();
+ assertEquals("ProcessProperties.foo", key.getNamePart());
+ }
+
+ protected Process getProcess()
+ {
+ ProcessBuilder procBuilder = ProcessBuilderFactory.newInstance().newProcessBuilder();
+ procBuilder.addProcess("ProcessProperties").addStartEvent("Start").addSequenceFlow("TaskA");
+ procBuilder.addProperty("foo", "bar").addTask("TaskA").addExecutionHandler(TaskA.class);
+ procBuilder.addSequenceFlow("End").addEndEvent("End");
+ Process proc = procBuilder.getProcess();
+ return proc;
+ }
+
+ @SuppressWarnings("serial")
+ public static class TaskA implements ExecutionHandler
+ {
+ static Object attValue;
+ static Collection<Key> attKeys;
+
+ public void execute(Token token)
+ {
+ ExecutionContext exContext = token.getExecutionContext();
+ attValue = exContext.getAttachment("ProcessProperties.foo");
+ attKeys = exContext.getAttachmentKeys();
+ }
+ }
+}
Property changes on: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/process/ProcessPropertyTest.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
17 years, 8 months
JBoss JBPM SVN: r1900 - in jbossbpm/spec/trunk/modules: ri/src/main/java/org/jboss/bpm/client/internal and 1 other directories.
by do-not-reply@jboss.org
Author: thomas.diesler(a)jboss.com
Date: 2008-08-15 06:47:27 -0400 (Fri, 15 Aug 2008)
New Revision: 1900
Modified:
jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/runtime/SignalHandler.java
jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/client/internal/RunnableToken.java
jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/EndEventImpl.java
jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/GatewayImpl.java
jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/IntermediateEventImpl.java
jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/StartEventImpl.java
jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/SubProcessImpl.java
jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/TaskImpl.java
Log:
Refactor SignalHandler
Modified: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/runtime/SignalHandler.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/runtime/SignalHandler.java 2008-08-15 10:09:45 UTC (rev 1899)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/runtime/SignalHandler.java 2008-08-15 10:47:27 UTC (rev 1900)
@@ -39,10 +39,10 @@
/**
* Get signal for enter
*/
- Signal getEnterSignal();
+ void throwEnterSignal();
/**
* Get signal for exit
*/
- Signal getExitSignal();
+ void throwExitSignal();
}
\ No newline at end of file
Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/client/internal/RunnableToken.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/client/internal/RunnableToken.java 2008-08-15 10:09:45 UTC (rev 1899)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/client/internal/RunnableToken.java 2008-08-15 10:47:27 UTC (rev 1900)
@@ -25,7 +25,6 @@
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
-import org.jboss.bpm.client.SignalManager;
import org.jboss.bpm.model.ConnectingObject;
import org.jboss.bpm.model.FlowObject;
import org.jboss.bpm.model.Process.ProcessStatus;
@@ -66,7 +65,6 @@
public void run()
{
- SignalManager signalManager = SignalManager.locateSignalManager();
TokenExecutor tokenExecutor = rtProc.getTokenExecutor();
ProcessImpl procImpl = (ProcessImpl)rtProc.getProcess();
@@ -94,7 +92,7 @@
try
{
// Execute the FlowObject
- signalManager.throwSignal(procImpl.getName(), sigHandler.getEnterSignal());
+ sigHandler.throwEnterSignal();
target.execute(token);
// Transfer the token to the FlowHandler
@@ -108,7 +106,7 @@
}
finally
{
- signalManager.throwSignal(procImpl.getName(), sigHandler.getExitSignal());
+ sigHandler.throwExitSignal();
}
}
Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/EndEventImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/EndEventImpl.java 2008-08-15 10:09:45 UTC (rev 1899)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/EndEventImpl.java 2008-08-15 10:47:27 UTC (rev 1900)
@@ -27,6 +27,7 @@
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
+import org.jboss.bpm.client.SignalManager;
import org.jboss.bpm.model.ConnectingObject;
import org.jboss.bpm.model.EndEvent;
import org.jboss.bpm.model.EventDetail;
@@ -101,14 +102,17 @@
{
handler = new SignalHandler()
{
- public Signal getEnterSignal()
+ SignalManager signalManager = SignalManager.locateSignalManager();
+ public void throwEnterSignal()
{
- return new Signal(getName(), Signal.SignalType.SYSTEM_END_EVENT_ENTER);
+ Signal signal = new Signal(getName(), Signal.SignalType.SYSTEM_END_EVENT_ENTER);
+ signalManager.throwSignal(getProcess().getName(), signal);
}
- public Signal getExitSignal()
+ public void throwExitSignal()
{
- return new Signal(getName(), Signal.SignalType.SYSTEM_END_EVENT_EXIT);
+ Signal signal = new Signal(getName(), Signal.SignalType.SYSTEM_END_EVENT_EXIT);
+ signalManager.throwSignal(getProcess().getName(), signal);
}
};
}
Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/GatewayImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/GatewayImpl.java 2008-08-15 10:09:45 UTC (rev 1899)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/GatewayImpl.java 2008-08-15 10:47:27 UTC (rev 1900)
@@ -29,13 +29,13 @@
import java.util.List;
import java.util.Map;
+import org.jboss.bpm.client.SignalManager;
import org.jboss.bpm.model.ConnectingObject;
import org.jboss.bpm.model.Gate;
import org.jboss.bpm.model.Gateway;
import org.jboss.bpm.model.SequenceFlow;
import org.jboss.bpm.model.Signal;
import org.jboss.bpm.model.SequenceFlow.ConditionType;
-import org.jboss.bpm.model.Signal.SignalType;
import org.jboss.bpm.runtime.ExecutionHandler;
import org.jboss.bpm.runtime.SignalHandler;
import org.jboss.bpm.runtime.Token;
@@ -148,14 +148,17 @@
{
handler = new SignalHandler()
{
- public Signal getEnterSignal()
+ SignalManager signalManager = SignalManager.locateSignalManager();
+ public void throwEnterSignal()
{
- return new Signal(getName(), SignalType.SYSTEM_GATEWAY_ENTER);
+ Signal signal = new Signal(getName(), Signal.SignalType.SYSTEM_GATEWAY_ENTER);
+ signalManager.throwSignal(getProcess().getName(), signal);
}
- public Signal getExitSignal()
+ public void throwExitSignal()
{
- return new Signal(getName(), SignalType.SYSTEM_GATEWAY_EXIT);
+ Signal signal = new Signal(getName(), Signal.SignalType.SYSTEM_GATEWAY_EXIT);
+ signalManager.throwSignal(getProcess().getName(), signal);
}
};
}
Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/IntermediateEventImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/IntermediateEventImpl.java 2008-08-15 10:09:45 UTC (rev 1899)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/IntermediateEventImpl.java 2008-08-15 10:47:27 UTC (rev 1900)
@@ -23,6 +23,7 @@
//$Id$
+import org.jboss.bpm.client.SignalManager;
import org.jboss.bpm.model.ConnectingObject;
import org.jboss.bpm.model.IntermediateEvent;
import org.jboss.bpm.model.Signal;
@@ -93,14 +94,17 @@
{
handler = new SignalHandler()
{
- public Signal getEnterSignal()
+ SignalManager signalManager = SignalManager.locateSignalManager();
+ public void throwEnterSignal()
{
- return new Signal(getName(), Signal.SignalType.SYSTEM_EVENT_ENTER);
+ Signal signal = new Signal(getName(), Signal.SignalType.SYSTEM_EVENT_ENTER);
+ signalManager.throwSignal(getProcess().getName(), signal);
}
- public Signal getExitSignal()
+ public void throwExitSignal()
{
- return new Signal(getName(), Signal.SignalType.SYSTEM_EVENT_EXIT);
+ Signal signal = new Signal(getName(), Signal.SignalType.SYSTEM_EVENT_EXIT);
+ signalManager.throwSignal(getProcess().getName(), signal);
}
};
}
Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/StartEventImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/StartEventImpl.java 2008-08-15 10:09:45 UTC (rev 1899)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/StartEventImpl.java 2008-08-15 10:47:27 UTC (rev 1900)
@@ -118,14 +118,17 @@
{
handler = new SignalHandler()
{
- public Signal getEnterSignal()
+ SignalManager signalManager = SignalManager.locateSignalManager();
+ public void throwEnterSignal()
{
- return new Signal("Start", Signal.SignalType.SYSTEM_START_EVENT_ENTER);
+ Signal signal = new Signal(getName(), Signal.SignalType.SYSTEM_START_EVENT_ENTER);
+ signalManager.throwSignal(getProcess().getName(), signal);
}
- public Signal getExitSignal()
+ public void throwExitSignal()
{
- return new Signal("Start", Signal.SignalType.SYSTEM_START_EVENT_EXIT);
+ Signal signal = new Signal(getName(), Signal.SignalType.SYSTEM_START_EVENT_EXIT);
+ signalManager.throwSignal(getProcess().getName(), signal);
}
};
}
Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/SubProcessImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/SubProcessImpl.java 2008-08-15 10:09:45 UTC (rev 1899)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/SubProcessImpl.java 2008-08-15 10:47:27 UTC (rev 1900)
@@ -23,6 +23,7 @@
//$Id$
+import org.jboss.bpm.client.SignalManager;
import org.jboss.bpm.model.Signal;
import org.jboss.bpm.model.SubProcess;
import org.jboss.bpm.runtime.SignalHandler;
@@ -53,14 +54,17 @@
{
handler = new SignalHandler()
{
- public Signal getEnterSignal()
+ SignalManager signalManager = SignalManager.locateSignalManager();
+ public void throwEnterSignal()
{
- return new Signal(getName(), Signal.SignalType.SYSTEM_SUB_PROCESS_ENTER);
+ Signal signal = new Signal(getName(), Signal.SignalType.SYSTEM_SUB_PROCESS_ENTER);
+ signalManager.throwSignal(getProcess().getName(), signal);
}
- public Signal getExitSignal()
+ public void throwExitSignal()
{
- return new Signal(getName(), Signal.SignalType.SYSTEM_SUB_PROCESS_EXIT);
+ Signal signal = new Signal(getName(), Signal.SignalType.SYSTEM_SUB_PROCESS_EXIT);
+ signalManager.throwSignal(getProcess().getName(), signal);
}
};
}
Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/TaskImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/TaskImpl.java 2008-08-15 10:09:45 UTC (rev 1899)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/TaskImpl.java 2008-08-15 10:47:27 UTC (rev 1900)
@@ -21,6 +21,7 @@
*/
package org.jboss.bpm.model.internal;
+import org.jboss.bpm.client.SignalManager;
import org.jboss.bpm.model.Message;
import org.jboss.bpm.model.Process;
import org.jboss.bpm.model.Property;
@@ -61,14 +62,17 @@
{
handler = new SignalHandler()
{
- public Signal getEnterSignal()
+ SignalManager signalManager = SignalManager.locateSignalManager();
+ public void throwEnterSignal()
{
- return new Signal(getName(), Signal.SignalType.SYSTEM_TASK_ENTER);
+ Signal signal = new Signal(getName(), Signal.SignalType.SYSTEM_TASK_ENTER);
+ signalManager.throwSignal(getProcess().getName(), signal);
}
- public Signal getExitSignal()
+ public void throwExitSignal()
{
- return new Signal(getName(), Signal.SignalType.SYSTEM_TASK_EXIT);
+ Signal signal = new Signal(getName(), Signal.SignalType.SYSTEM_TASK_EXIT);
+ signalManager.throwSignal(getProcess().getName(), signal);
}
};
}
17 years, 8 months
JBoss JBPM SVN: r1899 - in jbossbpm/spec/trunk/modules/testsuite/src/test: java/org/jboss/bpm/pattern/control/multichoice and 5 other directories.
by do-not-reply@jboss.org
Author: thomas.diesler(a)jboss.com
Date: 2008-08-15 06:09:45 -0400 (Fri, 15 Aug 2008)
New Revision: 1899
Added:
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/multichoice/
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/multichoice/MultiChoiceAPITest.java
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/multichoice/MultiChoiceMarshallerTest.java
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/multichoice/MultiChoiceTest.java
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/simplemerge/
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/simplemerge/SimpleMergeAPITest.java
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/simplemerge/SimpleMergeMarshallerTest.java
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/simplemerge/SimpleMergeTest.java
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/exclusivechoice/pattern-control-exclusive-choice-api10.xml
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/multichoice/
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/multichoice/pattern-control-multi-choice-api10.xml
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/multichoice/pattern-control-multi-choice.bpmn
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/multichoice/pattern-control-multi-choice.bpmn_diagram
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/multichoice/pattern-control-multi-choice.png
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/simplemerge/
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/simplemerge/pattern-control-simple-merge-api10.xml
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/simplemerge/pattern-control-simple-merge.bpmn
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/simplemerge/pattern-control-simple-merge.bpmn_diagram
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/simplemerge/pattern-control-simple-merge.png
Log:
Pattern SimpleMerge/MultiChoice - ok
Added: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/multichoice/MultiChoiceAPITest.java
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/multichoice/MultiChoiceAPITest.java (rev 0)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/multichoice/MultiChoiceAPITest.java 2008-08-15 10:09:45 UTC (rev 1899)
@@ -0,0 +1,48 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.pattern.control.multichoice;
+
+// $Id$
+
+import java.io.IOException;
+import java.net.URL;
+
+import org.jboss.bpm.client.ProcessManager;
+import org.jboss.bpm.model.Process;
+
+/**
+ * MultiChoiceTest using the API Descriptor
+ *
+ * @author thomas.diesler(a)jboss.com
+ * @since 06-Aug-2008
+ */
+public class MultiChoiceAPITest extends MultiChoiceTest
+{
+ @Override
+ public Process getProcess() throws IOException
+ {
+ URL jpdlURL = getResourceURL("pattern/control/multichoice/pattern-control-multi-choice-api10.xml");
+ ProcessManager pm = ProcessManager.locateProcessManager();
+ Process proc = pm.createProcess(jpdlURL);
+ return proc;
+ }
+}
\ No newline at end of file
Property changes on: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/multichoice/MultiChoiceAPITest.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/multichoice/MultiChoiceMarshallerTest.java
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/multichoice/MultiChoiceMarshallerTest.java (rev 0)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/multichoice/MultiChoiceMarshallerTest.java 2008-08-15 10:09:45 UTC (rev 1899)
@@ -0,0 +1,56 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.pattern.control.multichoice;
+
+// $Id$
+
+import java.io.IOException;
+import java.io.StringWriter;
+
+import org.jboss.bpm.client.ProcessManager;
+import org.jboss.bpm.model.Process;
+
+/**
+ * MultiChoiceTest using the ProcessMarshaller
+ *
+ * @author thomas.diesler(a)jboss.com
+ * @since 06-Aug-2008
+ */
+public class MultiChoiceMarshallerTest extends MultiChoiceTest
+{
+ @Override
+ public Process getProcess() throws IOException
+ {
+ Process proc = super.getProcess();
+
+ // Marshall the process to a string
+ StringWriter strwr = new StringWriter();
+ marshallProcess(proc, strwr);
+ String procXML = strwr.toString();
+
+ // Recreate the process from the marshalled process
+ ProcessManager procManager = ProcessManager.locateProcessManager();
+ proc = procManager.createProcess(procXML);
+
+ return proc;
+ }
+}
\ No newline at end of file
Property changes on: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/multichoice/MultiChoiceMarshallerTest.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/multichoice/MultiChoiceTest.java
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/multichoice/MultiChoiceTest.java (rev 0)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/multichoice/MultiChoiceTest.java 2008-08-15 10:09:45 UTC (rev 1899)
@@ -0,0 +1,86 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.pattern.control.multichoice;
+
+// $Id$
+
+import java.io.IOException;
+import java.util.List;
+
+import org.jboss.bpm.model.GatewayBuilder;
+import org.jboss.bpm.model.Process;
+import org.jboss.bpm.model.ProcessBuilder;
+import org.jboss.bpm.model.ProcessBuilderFactory;
+import org.jboss.bpm.model.Signal;
+import org.jboss.bpm.model.Expression.ExpressionLanguage;
+import org.jboss.bpm.model.Gateway.GatewayType;
+import org.jboss.bpm.runtime.BasicAttachments;
+import org.jboss.bpm.test.DefaultEngineTestCase;
+
+/**
+ * Inclusive gateway that has conditional outgoing sequence flows.
+ * One or more of them can be taken.
+ *
+ * @author thomas.diesler(a)jboss.com
+ * @since 06-Aug-2008
+ */
+public class MultiChoiceTest extends DefaultEngineTestCase
+{
+ public void testGateA() throws Exception
+ {
+ Process proc = getProcess();
+
+ BasicAttachments att = new BasicAttachments();
+ att.addAttachment("foo", "5");
+ proc.startProcess(att);
+ proc.waitForEnd();
+
+ List<Signal> endSignals = getSignals(Signal.SignalType.SYSTEM_END_EVENT_EXIT);
+ assertEquals(2, endSignals.size());
+ }
+
+ public void testGateB() throws Exception
+ {
+ Process proc = getProcess();
+
+ BasicAttachments att = new BasicAttachments();
+ att.addAttachment("foo", "15");
+ proc.startProcess(att);
+ proc.waitForEnd();
+
+ List<Signal> endSignals = getSignals(Signal.SignalType.SYSTEM_END_EVENT_EXIT);
+ assertEquals(1, endSignals.size());
+ assertEquals("EndB", endSignals.get(0).getFromRef());
+ }
+
+ public Process getProcess() throws IOException
+ {
+ ProcessBuilder procBuilder = ProcessBuilderFactory.newInstance().newProcessBuilder();
+ procBuilder.addProcess(getName()).addStartEvent("Start").addSequenceFlow("Split");
+ GatewayBuilder gatewayBuilder = procBuilder.addGateway("Split", GatewayType.Inclusive);
+ gatewayBuilder.addConditionalGate("EndA", ExpressionLanguage.MVEL, "foo < 10");
+ gatewayBuilder.addConditionalGate("EndB", ExpressionLanguage.MVEL, "foo < 20");
+ procBuilder.addEndEvent("EndA").addEndEvent("EndB");
+ Process proc = procBuilder.getProcess();
+ return proc;
+ }
+}
\ No newline at end of file
Property changes on: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/multichoice/MultiChoiceTest.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/simplemerge/SimpleMergeAPITest.java
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/simplemerge/SimpleMergeAPITest.java (rev 0)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/simplemerge/SimpleMergeAPITest.java 2008-08-15 10:09:45 UTC (rev 1899)
@@ -0,0 +1,48 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.pattern.control.simplemerge;
+
+// $Id$
+
+import java.io.IOException;
+import java.net.URL;
+
+import org.jboss.bpm.client.ProcessManager;
+import org.jboss.bpm.model.Process;
+
+/**
+ * InclusiveMergeTest using the API Descriptor
+ *
+ * @author thomas.diesler(a)jboss.com
+ * @since 06-Aug-2008
+ */
+public class SimpleMergeAPITest extends SimpleMergeTest
+{
+ @Override
+ public Process getProcess() throws IOException
+ {
+ URL jpdlURL = getResourceURL("pattern/control/simplemerge/pattern-control-simple-merge-api10.xml");
+ ProcessManager pm = ProcessManager.locateProcessManager();
+ Process proc = pm.createProcess(jpdlURL);
+ return proc;
+ }
+}
Property changes on: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/simplemerge/SimpleMergeAPITest.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/simplemerge/SimpleMergeMarshallerTest.java
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/simplemerge/SimpleMergeMarshallerTest.java (rev 0)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/simplemerge/SimpleMergeMarshallerTest.java 2008-08-15 10:09:45 UTC (rev 1899)
@@ -0,0 +1,56 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.pattern.control.simplemerge;
+
+// $Id$
+
+import java.io.IOException;
+import java.io.StringWriter;
+
+import org.jboss.bpm.client.ProcessManager;
+import org.jboss.bpm.model.Process;
+
+/**
+ * InclusiveMergeTest using the ProcessMarshaller
+ *
+ * @author thomas.diesler(a)jboss.com
+ * @since 06-Aug-2008
+ */
+public class SimpleMergeMarshallerTest extends SimpleMergeTest
+{
+ @Override
+ public Process getProcess() throws IOException
+ {
+ Process proc = super.getProcess();
+
+ // Marshall the process to a string
+ StringWriter strwr = new StringWriter();
+ marshallProcess(proc, strwr);
+ String procXML = strwr.toString();
+
+ // Recreate the process from the marshalled process
+ ProcessManager procManager = ProcessManager.locateProcessManager();
+ proc = procManager.createProcess(procXML);
+
+ return proc;
+ }
+}
Property changes on: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/simplemerge/SimpleMergeMarshallerTest.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/simplemerge/SimpleMergeTest.java
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/simplemerge/SimpleMergeTest.java (rev 0)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/simplemerge/SimpleMergeTest.java 2008-08-15 10:09:45 UTC (rev 1899)
@@ -0,0 +1,107 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.pattern.control.simplemerge;
+
+// $Id$
+
+import java.io.IOException;
+import java.util.List;
+
+import org.jboss.bpm.client.SignalListener;
+import org.jboss.bpm.client.SignalManager;
+import org.jboss.bpm.model.EventBuilder;
+import org.jboss.bpm.model.Process;
+import org.jboss.bpm.model.ProcessBuilder;
+import org.jboss.bpm.model.ProcessBuilderFactory;
+import org.jboss.bpm.model.Signal;
+import org.jboss.bpm.model.Gateway.GatewayType;
+import org.jboss.bpm.model.Signal.SignalType;
+import org.jboss.bpm.test.DefaultEngineTestCase;
+
+/**
+ * Inclusive gateway that has multiple incoming sequence flows.
+ * All tokens arriving from incoming sequence flows proceeds unconditionally along the outgoing sequence flow.
+ * The inclusive join is stateless.
+ *
+ * @author thomas.diesler(a)jboss.com
+ * @since 06-Aug-2008
+ */
+public class SimpleMergeTest extends DefaultEngineTestCase
+{
+ public void testSimpleMerge() throws Exception
+ {
+ Process proc = getProcess();
+ proc.startProcess();
+
+ // Add a signal listener that sends the other start trigger signal
+ SignalManager signalManager = SignalManager.locateSignalManager();
+ Signal startTrigger = new Signal(getName(), SignalType.SYSTEM_START_TRIGGER, "B");
+ signalManager.addSignalListener(proc.getName(), new MergeListener(proc.getName(), startTrigger));
+
+ // Send start trigger signals
+ signalManager.throwSignal(proc.getName(), new Signal(getName(), SignalType.SYSTEM_START_TRIGGER, "A"));
+
+ // Wait for the process to end
+ proc.waitForEnd();
+
+ List<Signal> endSignals = getSignals(Signal.SignalType.SYSTEM_END_EVENT_EXIT);
+ assertEquals(2, endSignals.size());
+ }
+
+ public Process getProcess() throws IOException
+ {
+ ProcessBuilder procBuilder = ProcessBuilderFactory.newInstance().newProcessBuilder();
+ EventBuilder eventBuilder = procBuilder.addProcess(getName()).addStartEvent("StartA");
+ eventBuilder.addSignalTrigger(SignalType.SYSTEM_START_TRIGGER, "A").addSequenceFlow("Merge");
+ eventBuilder = procBuilder.addStartEvent("StartB");
+ eventBuilder.addSignalTrigger(SignalType.SYSTEM_START_TRIGGER, "B").addSequenceFlow("Merge");
+ procBuilder.addGateway("Merge", GatewayType.Inclusive).addSequenceFlow("End");
+ procBuilder.addEndEvent("End");
+ Process proc = procBuilder.getProcess();
+ return proc;
+ }
+
+ class MergeListener implements SignalListener
+ {
+ private String fromRef;
+ private Signal nextSignal;
+
+ public MergeListener(String fromRef, Signal nextSignal)
+ {
+ this.fromRef = fromRef;
+ this.nextSignal = nextSignal;
+ }
+
+ public void catchSignal(Signal signal)
+ {
+ if (signal.getSignalType() == SignalType.SYSTEM_GATEWAY_ENTER)
+ {
+ if (nextSignal != null)
+ {
+ SignalManager signalManager = SignalManager.locateSignalManager();
+ signalManager.throwSignal(fromRef, nextSignal);
+ nextSignal = null;
+ }
+ }
+ }
+ }
+}
Property changes on: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/simplemerge/SimpleMergeTest.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/exclusivechoice/pattern-control-exclusive-choice-api10.xml
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/exclusivechoice/pattern-control-exclusive-choice-api10.xml (rev 0)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/exclusivechoice/pattern-control-exclusive-choice-api10.xml 2008-08-15 10:09:45 UTC (rev 1899)
@@ -0,0 +1,15 @@
+<ns2:process name="ExclusiveChoice" xmlns:ns2="urn:bpm.jboss:pdl-0.1">
+ <start name="Start">
+ <seqflow to="Split" />
+ </start>
+ <exclusive-gateway name="Split">
+ <seqflow conditionType="Expression" to="EndA">
+ <condition lang="MVEL">foo < 10</condition>
+ </seqflow>
+ <seqflow conditionType="Expression" to="EndB">
+ <condition lang="MVEL">foo > 10</condition>
+ </seqflow>
+ </exclusive-gateway>
+ <end name="EndA"/>
+ <end name="EndB"/>
+</ns2:process>
Property changes on: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/exclusivechoice/pattern-control-exclusive-choice-api10.xml
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/multichoice/pattern-control-multi-choice-api10.xml
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/multichoice/pattern-control-multi-choice-api10.xml (rev 0)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/multichoice/pattern-control-multi-choice-api10.xml 2008-08-15 10:09:45 UTC (rev 1899)
@@ -0,0 +1,15 @@
+<ns2:process name="MultiChoice" xmlns:ns2="urn:bpm.jboss:pdl-0.1">
+ <start name="Start">
+ <seqflow to="Split" />
+ </start>
+ <inclusive-gateway name="Split">
+ <seqflow conditionType="Expression" to="EndA">
+ <condition lang="MVEL">foo < 10</condition>
+ </seqflow>
+ <seqflow conditionType="Expression" to="EndB">
+ <condition lang="MVEL">foo < 20</condition>
+ </seqflow>
+ </inclusive-gateway>
+ <end name="EndA"/>
+ <end name="EndB"/>
+</ns2:process>
Property changes on: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/multichoice/pattern-control-multi-choice-api10.xml
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/multichoice/pattern-control-multi-choice.bpmn
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/multichoice/pattern-control-multi-choice.bpmn (rev 0)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/multichoice/pattern-control-multi-choice.bpmn 2008-08-15 10:09:45 UTC (rev 1899)
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<bpmn:BpmnDiagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:bpmn="http://stp.eclipse.org/bpmn" xmi:id="_Ce5-8GOIEd2mS_8SFTXMeQ" iD="_Ce0fYWOIEd2mS_8SFTXMeQ">
+ <pools xmi:type="bpmn:Pool" xmi:id="_ChQvYWOIEd2mS_8SFTXMeQ" iD="_ChQvYGOIEd2mS_8SFTXMeQ" name="Pool">
+ <vertices xmi:type="bpmn:Activity" xmi:id="_God1UWOIEd2mS_8SFTXMeQ" iD="_God1UGOIEd2mS_8SFTXMeQ" outgoingEdges="_aB8cYWOREd2mS_8SFTXMeQ" activityType="EventStartEmpty"/>
+ <vertices xmi:type="bpmn:Activity" xmi:id="_NheUgWOIEd2mS_8SFTXMeQ" iD="_NheUgGOIEd2mS_8SFTXMeQ" incomingEdges="_axitUWOREd2mS_8SFTXMeQ" name="EndA" activityType="EventEndEmpty"/>
+ <vertices xmi:type="bpmn:Activity" xmi:id="_Qpi4sWOIEd2mS_8SFTXMeQ" iD="_Qpi4sGOIEd2mS_8SFTXMeQ" incomingEdges="_bT8PwWOREd2mS_8SFTXMeQ" name="EndB " activityType="EventEndEmpty"/>
+ <vertices xmi:type="bpmn:Activity" xmi:id="_ZMKD4WOREd2mS_8SFTXMeQ" iD="_ZMKD4GOREd2mS_8SFTXMeQ" outgoingEdges="_axitUWOREd2mS_8SFTXMeQ _bT8PwWOREd2mS_8SFTXMeQ" incomingEdges="_aB8cYWOREd2mS_8SFTXMeQ" activityType="GatewayDataBasedInclusive"/>
+ <sequenceEdges xmi:type="bpmn:SequenceEdge" xmi:id="_aB8cYWOREd2mS_8SFTXMeQ" iD="_aB8cYGOREd2mS_8SFTXMeQ" source="_God1UWOIEd2mS_8SFTXMeQ" target="_ZMKD4WOREd2mS_8SFTXMeQ"/>
+ <sequenceEdges xmi:type="bpmn:SequenceEdge" xmi:id="_axitUWOREd2mS_8SFTXMeQ" iD="_axitUGOREd2mS_8SFTXMeQ" source="_ZMKD4WOREd2mS_8SFTXMeQ" target="_NheUgWOIEd2mS_8SFTXMeQ"/>
+ <sequenceEdges xmi:type="bpmn:SequenceEdge" xmi:id="_bT8PwWOREd2mS_8SFTXMeQ" iD="_bT8PwGOREd2mS_8SFTXMeQ" source="_ZMKD4WOREd2mS_8SFTXMeQ" target="_Qpi4sWOIEd2mS_8SFTXMeQ"/>
+ </pools>
+</bpmn:BpmnDiagram>
Added: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/multichoice/pattern-control-multi-choice.bpmn_diagram
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/multichoice/pattern-control-multi-choice.bpmn_diagram (rev 0)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/multichoice/pattern-control-multi-choice.bpmn_diagram 2008-08-15 10:09:45 UTC (rev 1899)
@@ -0,0 +1,93 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<notation:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:bpmn="http://stp.eclipse.org/bpmn" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.1/notation" xmi:id="_CgnPIGOIEd2mS_8SFTXMeQ" type="Bpmn" name="pattern-control-multi-choice.bpmn_diagram" measurementUnit="Pixel">
+ <children xmi:type="notation:Node" xmi:id="_CiuH8GOIEd2mS_8SFTXMeQ" type="1001">
+ <children xmi:type="notation:Node" xmi:id="_Ci_NsGOIEd2mS_8SFTXMeQ" type="4008"/>
+ <children xmi:type="notation:Node" xmi:id="_CjEGMGOIEd2mS_8SFTXMeQ" type="5001">
+ <children xmi:type="notation:Node" xmi:id="_GomYMGOIEd2mS_8SFTXMeQ" type="2001">
+ <children xmi:type="notation:Node" xmi:id="_GonmUGOIEd2mS_8SFTXMeQ" type="4001"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_GomYMWOIEd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_GomYMmOIEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:FillStyle" xmi:id="_Gom_QGOIEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_Gom_QWOIEd2mS_8SFTXMeQ" lineColor="0"/>
+ <element xmi:type="bpmn:Activity" href="pattern-control-multi-choice.bpmn#_God1UWOIEd2mS_8SFTXMeQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Gom_QmOIEd2mS_8SFTXMeQ" x="24" y="84"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_NhfioGOIEd2mS_8SFTXMeQ" type="2001">
+ <children xmi:type="notation:Node" xmi:id="_NhgJsGOIEd2mS_8SFTXMeQ" type="4001"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_NhfioWOIEd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_NhfiomOIEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:FillStyle" xmi:id="_Nhfio2OIEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_NhfipGOIEd2mS_8SFTXMeQ" lineColor="0"/>
+ <element xmi:type="bpmn:Activity" href="pattern-control-multi-choice.bpmn#_NheUgWOIEd2mS_8SFTXMeQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_NhfipWOIEd2mS_8SFTXMeQ" x="180" y="12" width="74"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_QpkG0GOIEd2mS_8SFTXMeQ" type="2001">
+ <children xmi:type="notation:Node" xmi:id="_Qpkt4GOIEd2mS_8SFTXMeQ" type="4001"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_QpkG0WOIEd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_QpkG0mOIEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:FillStyle" xmi:id="_QpkG02OIEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_QpkG1GOIEd2mS_8SFTXMeQ" lineColor="0"/>
+ <element xmi:type="bpmn:Activity" href="pattern-control-multi-choice.bpmn#_Qpi4sWOIEd2mS_8SFTXMeQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QpkG1WOIEd2mS_8SFTXMeQ" x="179" y="144"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_ZMLSAGOREd2mS_8SFTXMeQ" type="2001">
+ <children xmi:type="notation:Node" xmi:id="_ZML5EGOREd2mS_8SFTXMeQ" type="4001"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_ZMLSAWOREd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_ZMLSAmOREd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:FillStyle" xmi:id="_ZMLSA2OREd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_ZMLSBGOREd2mS_8SFTXMeQ" lineColor="0"/>
+ <element xmi:type="bpmn:Activity" href="pattern-control-multi-choice.bpmn#_ZMKD4WOREd2mS_8SFTXMeQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ZMLSBWOREd2mS_8SFTXMeQ" x="96" y="72"/>
+ </children>
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_CjEGMWOIEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_CjEGMmOIEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_CjEGM2OIEd2mS_8SFTXMeQ"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_CiuvAGOIEd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_CiuvAWOIEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:FillStyle" xmi:id="_CiuvAmOIEd2mS_8SFTXMeQ" fillColor="16771304"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_CiuvA2OIEd2mS_8SFTXMeQ" lineColor="11119017"/>
+ <element xmi:type="bpmn:Pool" href="pattern-control-multi-choice.bpmn#_ChQvYWOIEd2mS_8SFTXMeQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_CjFUUGOIEd2mS_8SFTXMeQ" x="16" y="16" width="393" height="225"/>
+ </children>
+ <styles xmi:type="notation:PageStyle" xmi:id="_CgnPIWOIEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:GuideStyle" xmi:id="_CgnPImOIEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_CgnPI2OIEd2mS_8SFTXMeQ"/>
+ <element xmi:type="bpmn:BpmnDiagram" href="pattern-control-multi-choice.bpmn#_Ce5-8GOIEd2mS_8SFTXMeQ"/>
+ <edges xmi:type="notation:Edge" xmi:id="_aB9qgGOREd2mS_8SFTXMeQ" type="3001" source="_GomYMGOIEd2mS_8SFTXMeQ" target="_ZMLSAGOREd2mS_8SFTXMeQ">
+ <children xmi:type="notation:Node" xmi:id="_aB-RkGOREd2mS_8SFTXMeQ" type="4012">
+ <styles xmi:type="notation:FillStyle" xmi:id="_aB-RkWOREd2mS_8SFTXMeQ" fillColor="16776959"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_aB-RkmOREd2mS_8SFTXMeQ" lineColor="16776959"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_aB-Rk2OREd2mS_8SFTXMeQ" y="40"/>
+ </children>
+ <styles xmi:type="notation:RoutingStyle" xmi:id="_aB9qgWOREd2mS_8SFTXMeQ" routing="Rectilinear" smoothness="Normal" closestDistance="true"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_aB9qgmOREd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_aB9qg2OREd2mS_8SFTXMeQ" lineColor="0"/>
+ <element xmi:type="bpmn:SequenceEdge" href="pattern-control-multi-choice.bpmn#_aB8cYWOREd2mS_8SFTXMeQ"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_aB9qhGOREd2mS_8SFTXMeQ" points="[15, -1, -67, 1]$[84, -25, 2, -23]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_axj7cGOREd2mS_8SFTXMeQ" type="3001" source="_ZMLSAGOREd2mS_8SFTXMeQ" target="_NhfioGOIEd2mS_8SFTXMeQ">
+ <children xmi:type="notation:Node" xmi:id="_axkigGOREd2mS_8SFTXMeQ" type="4012">
+ <styles xmi:type="notation:FillStyle" xmi:id="_axkigWOREd2mS_8SFTXMeQ" fillColor="16776959"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_axlJkGOREd2mS_8SFTXMeQ" lineColor="16776959"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_axlJkWOREd2mS_8SFTXMeQ" y="40"/>
+ </children>
+ <styles xmi:type="notation:RoutingStyle" xmi:id="_axj7cWOREd2mS_8SFTXMeQ" routing="Rectilinear" smoothness="Normal" closestDistance="true"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_axj7cmOREd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_axj7c2OREd2mS_8SFTXMeQ" lineColor="0"/>
+ <element xmi:type="bpmn:SequenceEdge" href="pattern-control-multi-choice.bpmn#_axitUWOREd2mS_8SFTXMeQ"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_axj7dGOREd2mS_8SFTXMeQ" points="[13, -12, -61, 58]$[89, -71, 15, -1]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_bT9d4GOREd2mS_8SFTXMeQ" type="3001" source="_ZMLSAGOREd2mS_8SFTXMeQ" target="_QpkG0GOIEd2mS_8SFTXMeQ">
+ <children xmi:type="notation:Node" xmi:id="_bT-E8GOREd2mS_8SFTXMeQ" type="4012">
+ <styles xmi:type="notation:FillStyle" xmi:id="_bT-E8WOREd2mS_8SFTXMeQ" fillColor="16776959"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_bT-E8mOREd2mS_8SFTXMeQ" lineColor="16776959"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_bT-E82OREd2mS_8SFTXMeQ" y="40"/>
+ </children>
+ <styles xmi:type="notation:RoutingStyle" xmi:id="_bT9d4WOREd2mS_8SFTXMeQ" routing="Rectilinear" smoothness="Normal" closestDistance="true"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_bT9d4mOREd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_bT9d42OREd2mS_8SFTXMeQ" lineColor="0"/>
+ <element xmi:type="bpmn:SequenceEdge" href="pattern-control-multi-choice.bpmn#_bT8PwWOREd2mS_8SFTXMeQ"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_bT9d5GOREd2mS_8SFTXMeQ" points="[12, 12, -62, -50]$[74, 77, 0, 15]"/>
+ </edges>
+</notation:Diagram>
Added: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/multichoice/pattern-control-multi-choice.png
===================================================================
(Binary files differ)
Property changes on: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/multichoice/pattern-control-multi-choice.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/simplemerge/pattern-control-simple-merge-api10.xml
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/simplemerge/pattern-control-simple-merge-api10.xml (rev 0)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/simplemerge/pattern-control-simple-merge-api10.xml 2008-08-15 10:09:45 UTC (rev 1899)
@@ -0,0 +1,22 @@
+<ns2:process name="SimpleMerge" xmlns:ns2="urn:bpm.jboss:pdl-0.1">
+ <start name="StartA">
+ <seqflow to="Merge" />
+ <signal-trigger>
+ <signal type="SYSTEM_START_TRIGGER">
+ <message>A</message>
+ </signal>
+ </signal-trigger>
+ </start>
+ <start name="StartB">
+ <seqflow to="Merge" />
+ <signal-trigger>
+ <signal type="SYSTEM_START_TRIGGER">
+ <message>B</message>
+ </signal>
+ </signal-trigger>
+ </start>
+ <inclusive-gateway name="Merge">
+ <seqflow to="End" />
+ </inclusive-gateway>
+ <end name="End" />
+</ns2:process>
\ No newline at end of file
Property changes on: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/simplemerge/pattern-control-simple-merge-api10.xml
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/simplemerge/pattern-control-simple-merge.bpmn
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/simplemerge/pattern-control-simple-merge.bpmn (rev 0)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/simplemerge/pattern-control-simple-merge.bpmn 2008-08-15 10:09:45 UTC (rev 1899)
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<bpmn:BpmnDiagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:bpmn="http://stp.eclipse.org/bpmn" xmi:id="_l8nUEWOQEd2mS_8SFTXMeQ" iD="_l8nUEGOQEd2mS_8SFTXMeQ">
+ <pools xmi:type="bpmn:Pool" xmi:id="_l8n7IWOQEd2mS_8SFTXMeQ" iD="_l8n7IGOQEd2mS_8SFTXMeQ" name="Pool">
+ <vertices xmi:type="bpmn:Activity" xmi:id="_qdNxcWOQEd2mS_8SFTXMeQ" iD="_qdNxcGOQEd2mS_8SFTXMeQ" outgoingEdges="_SIYfIWOREd2mS_8SFTXMeQ" name="StartA" activityType="EventStartSignal"/>
+ <vertices xmi:type="bpmn:Activity" xmi:id="_rWe7wWOQEd2mS_8SFTXMeQ" iD="_rWe7wGOQEd2mS_8SFTXMeQ" outgoingEdges="_Sr7REWOREd2mS_8SFTXMeQ" name="StartB" activityType="EventStartSignal"/>
+ <vertices xmi:type="bpmn:Activity" xmi:id="_tWoOkWOQEd2mS_8SFTXMeQ" iD="_tWoOkGOQEd2mS_8SFTXMeQ" incomingEdges="_UaiH8WOREd2mS_8SFTXMeQ" activityType="EventEndEmpty"/>
+ <vertices xmi:type="bpmn:Activity" xmi:id="_ReploWOREd2mS_8SFTXMeQ" iD="_ReploGOREd2mS_8SFTXMeQ" outgoingEdges="_UaiH8WOREd2mS_8SFTXMeQ" incomingEdges="_SIYfIWOREd2mS_8SFTXMeQ _Sr7REWOREd2mS_8SFTXMeQ" activityType="GatewayDataBasedInclusive"/>
+ <sequenceEdges xmi:type="bpmn:SequenceEdge" xmi:id="_SIYfIWOREd2mS_8SFTXMeQ" iD="_SIYfIGOREd2mS_8SFTXMeQ" source="_qdNxcWOQEd2mS_8SFTXMeQ" target="_ReploWOREd2mS_8SFTXMeQ"/>
+ <sequenceEdges xmi:type="bpmn:SequenceEdge" xmi:id="_Sr7REWOREd2mS_8SFTXMeQ" iD="_Sr7REGOREd2mS_8SFTXMeQ" source="_rWe7wWOQEd2mS_8SFTXMeQ" target="_ReploWOREd2mS_8SFTXMeQ"/>
+ <sequenceEdges xmi:type="bpmn:SequenceEdge" xmi:id="_UaiH8WOREd2mS_8SFTXMeQ" iD="_UaiH8GOREd2mS_8SFTXMeQ" source="_ReploWOREd2mS_8SFTXMeQ" target="_tWoOkWOQEd2mS_8SFTXMeQ"/>
+ </pools>
+</bpmn:BpmnDiagram>
Added: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/simplemerge/pattern-control-simple-merge.bpmn_diagram
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/simplemerge/pattern-control-simple-merge.bpmn_diagram (rev 0)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/simplemerge/pattern-control-simple-merge.bpmn_diagram 2008-08-15 10:09:45 UTC (rev 1899)
@@ -0,0 +1,93 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<notation:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:bpmn="http://stp.eclipse.org/bpmn" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.1/notation" xmi:id="_l8nUEmOQEd2mS_8SFTXMeQ" type="Bpmn" name="pattern-control-simple-merge.bpmn_diagram" measurementUnit="Pixel">
+ <children xmi:type="notation:Node" xmi:id="_l8pJQGOQEd2mS_8SFTXMeQ" type="1001">
+ <children xmi:type="notation:Node" xmi:id="_l8pwUGOQEd2mS_8SFTXMeQ" type="4008"/>
+ <children xmi:type="notation:Node" xmi:id="_l8qXYGOQEd2mS_8SFTXMeQ" type="5001">
+ <children xmi:type="notation:Node" xmi:id="_qdOYgGOQEd2mS_8SFTXMeQ" type="2001">
+ <children xmi:type="notation:Node" xmi:id="_qdO_kGOQEd2mS_8SFTXMeQ" type="4001"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_qdOYgWOQEd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_qdOYgmOQEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:FillStyle" xmi:id="_qdOYg2OQEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_qdOYhGOQEd2mS_8SFTXMeQ" lineColor="0"/>
+ <element xmi:type="bpmn:Activity" href="pattern-control-simple-merge.bpmn#_qdNxcWOQEd2mS_8SFTXMeQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_qdOYhWOQEd2mS_8SFTXMeQ" x="60" y="24"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_rWgJ4GOQEd2mS_8SFTXMeQ" type="2001">
+ <children xmi:type="notation:Node" xmi:id="_rWgw8GOQEd2mS_8SFTXMeQ" type="4001"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_rWgJ4WOQEd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_rWgJ4mOQEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:FillStyle" xmi:id="_rWgJ42OQEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_rWgJ5GOQEd2mS_8SFTXMeQ" lineColor="0"/>
+ <element xmi:type="bpmn:Activity" href="pattern-control-simple-merge.bpmn#_rWe7wWOQEd2mS_8SFTXMeQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_rWgJ5WOQEd2mS_8SFTXMeQ" x="60" y="144"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_tWpcsGOQEd2mS_8SFTXMeQ" type="2001">
+ <children xmi:type="notation:Node" xmi:id="_tWqDwGOQEd2mS_8SFTXMeQ" type="4001"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_tWpcsWOQEd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_tWpcsmOQEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:FillStyle" xmi:id="_tWpcs2OQEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_tWpctGOQEd2mS_8SFTXMeQ" lineColor="0"/>
+ <element xmi:type="bpmn:Activity" href="pattern-control-simple-merge.bpmn#_tWoOkWOQEd2mS_8SFTXMeQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_tWpctWOQEd2mS_8SFTXMeQ" x="228" y="96"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_ReqMsGOREd2mS_8SFTXMeQ" type="2001">
+ <children xmi:type="notation:Node" xmi:id="_ReqzwmOREd2mS_8SFTXMeQ" type="4001"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_ReqMsWOREd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_ReqMsmOREd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:FillStyle" xmi:id="_ReqMs2OREd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_ReqzwGOREd2mS_8SFTXMeQ" lineColor="0"/>
+ <element xmi:type="bpmn:Activity" href="pattern-control-simple-merge.bpmn#_ReploWOREd2mS_8SFTXMeQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ReqzwWOREd2mS_8SFTXMeQ" x="132" y="84"/>
+ </children>
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_l8qXYWOQEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_l8qXYmOQEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_l8qXY2OQEd2mS_8SFTXMeQ"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_l8pJQWOQEd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_l8pJQmOQEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:FillStyle" xmi:id="_l8pJQ2OQEd2mS_8SFTXMeQ" fillColor="16771304"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_l8pJRGOQEd2mS_8SFTXMeQ" lineColor="11119017"/>
+ <element xmi:type="bpmn:Pool" href="pattern-control-simple-merge.bpmn#_l8n7IWOQEd2mS_8SFTXMeQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_l8q-cGOQEd2mS_8SFTXMeQ" x="16" y="16" width="345" height="212"/>
+ </children>
+ <styles xmi:type="notation:PageStyle" xmi:id="_l8nUE2OQEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:GuideStyle" xmi:id="_l8nUFGOQEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_l8nUFWOQEd2mS_8SFTXMeQ"/>
+ <element xmi:type="bpmn:BpmnDiagram" href="pattern-control-simple-merge.bpmn#_l8nUEWOQEd2mS_8SFTXMeQ"/>
+ <edges xmi:type="notation:Edge" xmi:id="_SIZtQGOREd2mS_8SFTXMeQ" type="3001" source="_qdOYgGOQEd2mS_8SFTXMeQ" target="_ReqMsGOREd2mS_8SFTXMeQ">
+ <children xmi:type="notation:Node" xmi:id="_SIaUUGOREd2mS_8SFTXMeQ" type="4012">
+ <styles xmi:type="notation:FillStyle" xmi:id="_SIaUUWOREd2mS_8SFTXMeQ" fillColor="16776959"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_SIaUUmOREd2mS_8SFTXMeQ" lineColor="16776959"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_SIaUU2OREd2mS_8SFTXMeQ" y="-10"/>
+ </children>
+ <styles xmi:type="notation:RoutingStyle" xmi:id="_SIZtQWOREd2mS_8SFTXMeQ" routing="Rectilinear" smoothness="Normal" closestDistance="true"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_SIZtQmOREd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_SIZtQ2OREd2mS_8SFTXMeQ" lineColor="0"/>
+ <element xmi:type="bpmn:SequenceEdge" href="pattern-control-simple-merge.bpmn#_SIYfIWOREd2mS_8SFTXMeQ"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_SIZtRGOREd2mS_8SFTXMeQ" points="[15, 9, -74, -59]$[112, 66, 23, -2]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_Sr9GQGOREd2mS_8SFTXMeQ" type="3001" source="_rWgJ4GOQEd2mS_8SFTXMeQ" target="_ReqMsGOREd2mS_8SFTXMeQ">
+ <children xmi:type="notation:Node" xmi:id="_Sr9tUGOREd2mS_8SFTXMeQ" type="4012">
+ <styles xmi:type="notation:FillStyle" xmi:id="_Sr9tUWOREd2mS_8SFTXMeQ" fillColor="16776959"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_Sr9tUmOREd2mS_8SFTXMeQ" lineColor="16776959"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Sr9tU2OREd2mS_8SFTXMeQ" y="-10"/>
+ </children>
+ <styles xmi:type="notation:RoutingStyle" xmi:id="_Sr9GQWOREd2mS_8SFTXMeQ" routing="Rectilinear" smoothness="Normal" closestDistance="true"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_Sr9GQmOREd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_Sr9GQ2OREd2mS_8SFTXMeQ" lineColor="0"/>
+ <element xmi:type="bpmn:SequenceEdge" href="pattern-control-simple-merge.bpmn#_Sr7REWOREd2mS_8SFTXMeQ"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Sr9GRGOREd2mS_8SFTXMeQ" points="[15, -7, -74, 33]$[74, -30, -15, 10]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_UajWEGOREd2mS_8SFTXMeQ" type="3001" source="_ReqMsGOREd2mS_8SFTXMeQ" target="_tWpcsGOQEd2mS_8SFTXMeQ">
+ <children xmi:type="notation:Node" xmi:id="_Uaj9IGOREd2mS_8SFTXMeQ" type="4012">
+ <styles xmi:type="notation:FillStyle" xmi:id="_Uaj9IWOREd2mS_8SFTXMeQ" fillColor="16776959"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_Uaj9ImOREd2mS_8SFTXMeQ" lineColor="16776959"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Uaj9I2OREd2mS_8SFTXMeQ" y="-10"/>
+ </children>
+ <styles xmi:type="notation:RoutingStyle" xmi:id="_UajWEWOREd2mS_8SFTXMeQ" routing="Rectilinear" smoothness="Normal" closestDistance="true"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_UajWEmOREd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_UajWE2OREd2mS_8SFTXMeQ" lineColor="0"/>
+ <element xmi:type="bpmn:SequenceEdge" href="pattern-control-simple-merge.bpmn#_UaiH8WOREd2mS_8SFTXMeQ"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_UajWFGOREd2mS_8SFTXMeQ" points="[23, 2, -80, -2]$[118, 2, 15, -2]"/>
+ </edges>
+</notation:Diagram>
Added: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/simplemerge/pattern-control-simple-merge.png
===================================================================
(Binary files differ)
Property changes on: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/simplemerge/pattern-control-simple-merge.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
17 years, 8 months
JBoss JBPM SVN: r1898 - in jbossbpm/spec/trunk/modules/testsuite/src/test: java/org/jboss/bpm/pattern/control/exclusivechoice and 2 other directories.
by do-not-reply@jboss.org
Author: thomas.diesler(a)jboss.com
Date: 2008-08-15 05:09:11 -0400 (Fri, 15 Aug 2008)
New Revision: 1898
Added:
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/exclusivechoice/
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/exclusivechoice/ExclusiveChoiceAPITest.java
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/exclusivechoice/ExclusiveChoiceMarshallerTest.java
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/exclusivechoice/ExclusiveChoiceTest.java
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/exclusivechoice/
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/exclusivechoice/pattern-control-exclusive-choice.bpmn
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/exclusivechoice/pattern-control-exclusive-choice.bpmn_diagram
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/exclusivechoice/pattern-control-exclusive-choice.png
Log:
Pattern Exclusive Choice - ok
Added: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/exclusivechoice/ExclusiveChoiceAPITest.java
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/exclusivechoice/ExclusiveChoiceAPITest.java (rev 0)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/exclusivechoice/ExclusiveChoiceAPITest.java 2008-08-15 09:09:11 UTC (rev 1898)
@@ -0,0 +1,48 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.pattern.control.exclusivechoice;
+
+// $Id$
+
+import java.io.IOException;
+import java.net.URL;
+
+import org.jboss.bpm.client.ProcessManager;
+import org.jboss.bpm.model.Process;
+
+/**
+ * ExclusiveChoiceTest using the API Descriptor
+ *
+ * @author thomas.diesler(a)jboss.com
+ * @since 06-Aug-2008
+ */
+public class ExclusiveChoiceAPITest extends ExclusiveChoiceTest
+{
+ @Override
+ public Process getProcess() throws IOException
+ {
+ URL jpdlURL = getResourceURL("pattern/control/exclusivechoice/pattern-control-exclusive-choice-api10.xml");
+ ProcessManager pm = ProcessManager.locateProcessManager();
+ Process proc = pm.createProcess(jpdlURL);
+ return proc;
+ }
+}
Property changes on: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/exclusivechoice/ExclusiveChoiceAPITest.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/exclusivechoice/ExclusiveChoiceMarshallerTest.java
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/exclusivechoice/ExclusiveChoiceMarshallerTest.java (rev 0)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/exclusivechoice/ExclusiveChoiceMarshallerTest.java 2008-08-15 09:09:11 UTC (rev 1898)
@@ -0,0 +1,56 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.pattern.control.exclusivechoice;
+
+// $Id$
+
+import java.io.IOException;
+import java.io.StringWriter;
+
+import org.jboss.bpm.client.ProcessManager;
+import org.jboss.bpm.model.Process;
+
+/**
+ * ExclusiveChoiceTest using the ProcessMarshaller
+ *
+ * @author thomas.diesler(a)jboss.com
+ * @since 06-Aug-2008
+ */
+public class ExclusiveChoiceMarshallerTest extends ExclusiveChoiceTest
+{
+ @Override
+ public Process getProcess() throws IOException
+ {
+ Process proc = super.getProcess();
+
+ // Marshall the process to a string
+ StringWriter strwr = new StringWriter();
+ marshallProcess(proc, strwr);
+ String procXML = strwr.toString();
+
+ // Recreate the process from the marshalled process
+ ProcessManager procManager = ProcessManager.locateProcessManager();
+ proc = procManager.createProcess(procXML);
+
+ return proc;
+ }
+}
Property changes on: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/exclusivechoice/ExclusiveChoiceMarshallerTest.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/exclusivechoice/ExclusiveChoiceTest.java
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/exclusivechoice/ExclusiveChoiceTest.java (rev 0)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/exclusivechoice/ExclusiveChoiceTest.java 2008-08-15 09:09:11 UTC (rev 1898)
@@ -0,0 +1,105 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.pattern.control.exclusivechoice;
+
+// $Id$
+
+import java.io.IOException;
+import java.util.List;
+
+import org.jboss.bpm.model.GatewayBuilder;
+import org.jboss.bpm.model.Process;
+import org.jboss.bpm.model.ProcessBuilder;
+import org.jboss.bpm.model.ProcessBuilderFactory;
+import org.jboss.bpm.model.Signal;
+import org.jboss.bpm.model.Expression.ExpressionLanguage;
+import org.jboss.bpm.model.Gateway.GatewayType;
+import org.jboss.bpm.runtime.BasicAttachments;
+import org.jboss.bpm.test.DefaultEngineTestCase;
+
+/**
+ * Exclusive data-based gateway that has conditional outgoing sequence flows.
+ * Only one of the gates is taken. It is an error if no gate is applicable.
+ *
+ * @author thomas.diesler(a)jboss.com
+ * @since 06-Aug-2008
+ */
+public class ExclusiveChoiceTest extends DefaultEngineTestCase
+{
+ public void testGateA() throws Exception
+ {
+ Process proc = getProcess();
+
+ BasicAttachments att = new BasicAttachments();
+ att.addAttachment("foo", "5");
+ proc.startProcess(att);
+ proc.waitForEnd();
+
+ List<Signal> endSignals = getSignals(Signal.SignalType.SYSTEM_END_EVENT_EXIT);
+ assertEquals(1, endSignals.size());
+ assertEquals("EndA", endSignals.get(0).getFromRef());
+ }
+
+ public void testGateB() throws Exception
+ {
+ Process proc = getProcess();
+
+ BasicAttachments att = new BasicAttachments();
+ att.addAttachment("foo", "15");
+ proc.startProcess(att);
+ proc.waitForEnd();
+
+ List<Signal> endSignals = getSignals(Signal.SignalType.SYSTEM_END_EVENT_EXIT);
+ assertEquals(1, endSignals.size());
+ assertEquals("EndB", endSignals.get(0).getFromRef());
+ }
+
+ public void testInvalidGate() throws Exception
+ {
+ Process proc = getProcess();
+
+ BasicAttachments att = new BasicAttachments();
+ att.addAttachment("foo", "10");
+ proc.startProcess(att);
+ try
+ {
+ proc.waitForEnd();
+ fail("No gate defained for foo==10");
+ }
+ catch (RuntimeException rte)
+ {
+ // expected
+ }
+ }
+
+ public Process getProcess() throws IOException
+ {
+ ProcessBuilder procBuilder = ProcessBuilderFactory.newInstance().newProcessBuilder();
+ procBuilder.addProcess(getName()).addStartEvent("Start").addSequenceFlow("Split");
+ GatewayBuilder gatewayBuilder = procBuilder.addGateway("Split", GatewayType.Exclusive);
+ gatewayBuilder.addConditionalGate("EndA", ExpressionLanguage.MVEL, "foo < 10");
+ gatewayBuilder.addConditionalGate("EndB", ExpressionLanguage.MVEL, "foo > 10");
+ procBuilder.addEndEvent("EndA").addEndEvent("EndB");
+ Process proc = procBuilder.getProcess();
+ return proc;
+ }
+}
Property changes on: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/exclusivechoice/ExclusiveChoiceTest.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/exclusivechoice/pattern-control-exclusive-choice.bpmn
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/exclusivechoice/pattern-control-exclusive-choice.bpmn (rev 0)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/exclusivechoice/pattern-control-exclusive-choice.bpmn 2008-08-15 09:09:11 UTC (rev 1898)
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<bpmn:BpmnDiagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:bpmn="http://stp.eclipse.org/bpmn" xmi:id="_Ce5-8GOIEd2mS_8SFTXMeQ" iD="_Ce0fYWOIEd2mS_8SFTXMeQ">
+ <pools xmi:type="bpmn:Pool" xmi:id="_ChQvYWOIEd2mS_8SFTXMeQ" iD="_ChQvYGOIEd2mS_8SFTXMeQ" name="Pool">
+ <vertices xmi:type="bpmn:Activity" xmi:id="_God1UWOIEd2mS_8SFTXMeQ" iD="_God1UGOIEd2mS_8SFTXMeQ" outgoingEdges="_J85agWOIEd2mS_8SFTXMeQ" activityType="EventStartEmpty"/>
+ <vertices xmi:type="bpmn:Activity" xmi:id="_JC0-8WOIEd2mS_8SFTXMeQ" iD="_JC0-8GOIEd2mS_8SFTXMeQ" outgoingEdges="_O1xN8WOIEd2mS_8SFTXMeQ _SCzKoWOIEd2mS_8SFTXMeQ" incomingEdges="_J85agWOIEd2mS_8SFTXMeQ" activityType="GatewayDataBasedExclusive"/>
+ <vertices xmi:type="bpmn:Activity" xmi:id="_NheUgWOIEd2mS_8SFTXMeQ" iD="_NheUgGOIEd2mS_8SFTXMeQ" incomingEdges="_O1xN8WOIEd2mS_8SFTXMeQ" name="EndA" activityType="EventEndEmpty"/>
+ <vertices xmi:type="bpmn:Activity" xmi:id="_Qpi4sWOIEd2mS_8SFTXMeQ" iD="_Qpi4sGOIEd2mS_8SFTXMeQ" incomingEdges="_SCzKoWOIEd2mS_8SFTXMeQ" name="EndB " activityType="EventEndEmpty"/>
+ <sequenceEdges xmi:type="bpmn:SequenceEdge" xmi:id="_J85agWOIEd2mS_8SFTXMeQ" iD="_J85agGOIEd2mS_8SFTXMeQ" source="_God1UWOIEd2mS_8SFTXMeQ" target="_JC0-8WOIEd2mS_8SFTXMeQ"/>
+ <sequenceEdges xmi:type="bpmn:SequenceEdge" xmi:id="_O1xN8WOIEd2mS_8SFTXMeQ" iD="_O1xN8GOIEd2mS_8SFTXMeQ" source="_JC0-8WOIEd2mS_8SFTXMeQ" target="_NheUgWOIEd2mS_8SFTXMeQ"/>
+ <sequenceEdges xmi:type="bpmn:SequenceEdge" xmi:id="_SCzKoWOIEd2mS_8SFTXMeQ" iD="_SCzKoGOIEd2mS_8SFTXMeQ" source="_JC0-8WOIEd2mS_8SFTXMeQ" target="_Qpi4sWOIEd2mS_8SFTXMeQ"/>
+ </pools>
+</bpmn:BpmnDiagram>
Added: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/exclusivechoice/pattern-control-exclusive-choice.bpmn_diagram
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/exclusivechoice/pattern-control-exclusive-choice.bpmn_diagram (rev 0)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/exclusivechoice/pattern-control-exclusive-choice.bpmn_diagram 2008-08-15 09:09:11 UTC (rev 1898)
@@ -0,0 +1,93 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<notation:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:bpmn="http://stp.eclipse.org/bpmn" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.1/notation" xmi:id="_CgnPIGOIEd2mS_8SFTXMeQ" type="Bpmn" name="pattern-control-exclusive-choice.bpmn_diagram" measurementUnit="Pixel">
+ <children xmi:type="notation:Node" xmi:id="_CiuH8GOIEd2mS_8SFTXMeQ" type="1001">
+ <children xmi:type="notation:Node" xmi:id="_Ci_NsGOIEd2mS_8SFTXMeQ" type="4008"/>
+ <children xmi:type="notation:Node" xmi:id="_CjEGMGOIEd2mS_8SFTXMeQ" type="5001">
+ <children xmi:type="notation:Node" xmi:id="_GomYMGOIEd2mS_8SFTXMeQ" type="2001">
+ <children xmi:type="notation:Node" xmi:id="_GonmUGOIEd2mS_8SFTXMeQ" type="4001"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_GomYMWOIEd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_GomYMmOIEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:FillStyle" xmi:id="_Gom_QGOIEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_Gom_QWOIEd2mS_8SFTXMeQ" lineColor="0"/>
+ <element xmi:type="bpmn:Activity" href="pattern-control-exclusive-choice.bpmn#_God1UWOIEd2mS_8SFTXMeQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Gom_QmOIEd2mS_8SFTXMeQ" x="24" y="84"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_JC2NEGOIEd2mS_8SFTXMeQ" type="2001">
+ <children xmi:type="notation:Node" xmi:id="_JC20IGOIEd2mS_8SFTXMeQ" type="4001"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_JC2NEWOIEd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_JC2NEmOIEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:FillStyle" xmi:id="_JC2NE2OIEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_JC2NFGOIEd2mS_8SFTXMeQ" lineColor="0"/>
+ <element xmi:type="bpmn:Activity" href="pattern-control-exclusive-choice.bpmn#_JC0-8WOIEd2mS_8SFTXMeQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_JC2NFWOIEd2mS_8SFTXMeQ" x="96" y="72"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_NhfioGOIEd2mS_8SFTXMeQ" type="2001">
+ <children xmi:type="notation:Node" xmi:id="_NhgJsGOIEd2mS_8SFTXMeQ" type="4001"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_NhfioWOIEd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_NhfiomOIEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:FillStyle" xmi:id="_Nhfio2OIEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_NhfipGOIEd2mS_8SFTXMeQ" lineColor="0"/>
+ <element xmi:type="bpmn:Activity" href="pattern-control-exclusive-choice.bpmn#_NheUgWOIEd2mS_8SFTXMeQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_NhfipWOIEd2mS_8SFTXMeQ" x="180" y="12" width="74"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_QpkG0GOIEd2mS_8SFTXMeQ" type="2001">
+ <children xmi:type="notation:Node" xmi:id="_Qpkt4GOIEd2mS_8SFTXMeQ" type="4001"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_QpkG0WOIEd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_QpkG0mOIEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:FillStyle" xmi:id="_QpkG02OIEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_QpkG1GOIEd2mS_8SFTXMeQ" lineColor="0"/>
+ <element xmi:type="bpmn:Activity" href="pattern-control-exclusive-choice.bpmn#_Qpi4sWOIEd2mS_8SFTXMeQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QpkG1WOIEd2mS_8SFTXMeQ" x="179" y="144"/>
+ </children>
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_CjEGMWOIEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_CjEGMmOIEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_CjEGM2OIEd2mS_8SFTXMeQ"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_CiuvAGOIEd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_CiuvAWOIEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:FillStyle" xmi:id="_CiuvAmOIEd2mS_8SFTXMeQ" fillColor="16771304"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_CiuvA2OIEd2mS_8SFTXMeQ" lineColor="11119017"/>
+ <element xmi:type="bpmn:Pool" href="pattern-control-exclusive-choice.bpmn#_ChQvYWOIEd2mS_8SFTXMeQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_CjFUUGOIEd2mS_8SFTXMeQ" x="16" y="16" width="321" height="225"/>
+ </children>
+ <styles xmi:type="notation:PageStyle" xmi:id="_CgnPIWOIEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:GuideStyle" xmi:id="_CgnPImOIEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_CgnPI2OIEd2mS_8SFTXMeQ"/>
+ <element xmi:type="bpmn:BpmnDiagram" href="pattern-control-exclusive-choice.bpmn#_Ce5-8GOIEd2mS_8SFTXMeQ"/>
+ <edges xmi:type="notation:Edge" xmi:id="_J89r8GOIEd2mS_8SFTXMeQ" type="3001" source="_GomYMGOIEd2mS_8SFTXMeQ" target="_JC2NEGOIEd2mS_8SFTXMeQ">
+ <children xmi:type="notation:Node" xmi:id="_J9AIMGOIEd2mS_8SFTXMeQ" type="4012">
+ <styles xmi:type="notation:FillStyle" xmi:id="_J9AIMWOIEd2mS_8SFTXMeQ" fillColor="16776959"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_J9AIMmOIEd2mS_8SFTXMeQ" lineColor="16776959"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_J9AIM2OIEd2mS_8SFTXMeQ" y="-10"/>
+ </children>
+ <styles xmi:type="notation:RoutingStyle" xmi:id="_J89r8WOIEd2mS_8SFTXMeQ" routing="Rectilinear" smoothness="Normal" closestDistance="true"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_J89r8mOIEd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_J89r82OIEd2mS_8SFTXMeQ" lineColor="0"/>
+ <element xmi:type="bpmn:SequenceEdge" href="pattern-control-exclusive-choice.bpmn#_J85agWOIEd2mS_8SFTXMeQ"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_J89r9GOIEd2mS_8SFTXMeQ" points="[15, 0, -91, -10]$[92, -2, -14, -12]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_O1zDIGOIEd2mS_8SFTXMeQ" type="3001" source="_JC2NEGOIEd2mS_8SFTXMeQ" target="_NhfioGOIEd2mS_8SFTXMeQ">
+ <children xmi:type="notation:Node" xmi:id="_O1zqMGOIEd2mS_8SFTXMeQ" type="4012">
+ <styles xmi:type="notation:FillStyle" xmi:id="_O1zqMWOIEd2mS_8SFTXMeQ" fillColor="16776959"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_O10RQGOIEd2mS_8SFTXMeQ" lineColor="16776959"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_O10RQWOIEd2mS_8SFTXMeQ" y="-10"/>
+ </children>
+ <styles xmi:type="notation:RoutingStyle" xmi:id="_O1zDIWOIEd2mS_8SFTXMeQ" routing="Rectilinear" smoothness="Normal" closestDistance="true"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_O1zDImOIEd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_O1zDI2OIEd2mS_8SFTXMeQ" lineColor="0"/>
+ <element xmi:type="bpmn:SequenceEdge" href="pattern-control-exclusive-choice.bpmn#_O1xN8WOIEd2mS_8SFTXMeQ"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_O1zDJGOIEd2mS_8SFTXMeQ" points="[18, -7, -103, 38]$[136, -50, 15, -5]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_SC1m4GOIEd2mS_8SFTXMeQ" type="3001" source="_JC2NEGOIEd2mS_8SFTXMeQ" target="_QpkG0GOIEd2mS_8SFTXMeQ">
+ <children xmi:type="notation:Node" xmi:id="_SC2N8GOIEd2mS_8SFTXMeQ" type="4012">
+ <styles xmi:type="notation:FillStyle" xmi:id="_SC2N8WOIEd2mS_8SFTXMeQ" fillColor="16776959"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_SC2N8mOIEd2mS_8SFTXMeQ" lineColor="16776959"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_SC2N82OIEd2mS_8SFTXMeQ" y="-10"/>
+ </children>
+ <styles xmi:type="notation:RoutingStyle" xmi:id="_SC1m4WOIEd2mS_8SFTXMeQ" routing="Rectilinear" smoothness="Normal" closestDistance="true"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_SC1m4mOIEd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_SC1m42OIEd2mS_8SFTXMeQ" lineColor="0"/>
+ <element xmi:type="bpmn:SequenceEdge" href="pattern-control-exclusive-choice.bpmn#_SCzKoWOIEd2mS_8SFTXMeQ"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_SC1m5GOIEd2mS_8SFTXMeQ" points="[14, 10, -52, -31]$[51, 42, -15, 1]"/>
+ </edges>
+</notation:Diagram>
Added: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/exclusivechoice/pattern-control-exclusive-choice.png
===================================================================
(Binary files differ)
Property changes on: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/exclusivechoice/pattern-control-exclusive-choice.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
17 years, 8 months
JBoss JBPM SVN: r1897 - in jbossbpm/spec/trunk/modules/testsuite/src/test: java/org/jboss/bpm/pattern/control/sequence and 4 other directories.
by do-not-reply@jboss.org
Author: thomas.diesler(a)jboss.com
Date: 2008-08-15 04:46:48 -0400 (Fri, 15 Aug 2008)
New Revision: 1897
Added:
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/sequence/SequenceMarshallerTest.java
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/parallelsplit/pattern-control-parallel-split-api10.xml
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/parallelsplit/pattern-control-parallel-split.bpmn
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/parallelsplit/pattern-control-parallel-split.bpmn_diagram
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/parallelsplit/pattern-control-parallel-split.png
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/sequence/pattern-control-sequence-api10.xml
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/sequence/pattern-control-sequence.bpmn
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/sequence/pattern-control-sequence.bpmn_diagram
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/sequence/pattern-control-sequence.png
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/synchronization/pattern-control-synchronization-api10.xml
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/synchronization/pattern-control-synchronization.bpmn
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/synchronization/pattern-control-synchronization.bpmn_diagram
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/synchronization/pattern-control-synchronization.png
Removed:
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/sequence/SequenceProcBuilderTest.java
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/parallelsplit/parallel-split-api10.xml
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/parallelsplit/parallel-split.bpmn
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/parallelsplit/parallel-split.bpmn_diagram
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/parallelsplit/parallel-split.png
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/sequence/basic-sequence-api10.xml
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/sequence/basic-sequence.bpmn
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/sequence/basic-sequence.bpmn_diagram
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/sequence/basic-sequence.png
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/synchronization/synchronization-api10.xml
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/synchronization/synchronization.bpmn
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/synchronization/synchronization.bpmn_diagram
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/synchronization/synchronization.png
Modified:
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/parallelsplit/ParallelSplitAPITest.java
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/parallelsplit/ParallelSplitSTPTest.java
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/sequence/SequenceAPITest.java
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/sequence/SequenceSTPTest.java
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/sequence/SequenceTest.java
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/synchronization/SynchronizationAPITest.java
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/synchronization/SynchronizationTest.java
Log:
Pattern Synchronization - ok
Modified: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/parallelsplit/ParallelSplitAPITest.java
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/parallelsplit/ParallelSplitAPITest.java 2008-08-15 07:59:12 UTC (rev 1896)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/parallelsplit/ParallelSplitAPITest.java 2008-08-15 08:46:48 UTC (rev 1897)
@@ -40,7 +40,7 @@
@Override
public Process getProcess() throws IOException
{
- URL jpdlURL = getResourceURL("pattern/control/parallelsplit/parallel-split-api10.xml");
+ URL jpdlURL = getResourceURL("pattern/control/parallelsplit/pattern-control-parallel-split-api10.xml");
ProcessManager pm = ProcessManager.locateProcessManager();
Process proc = pm.createProcess(jpdlURL);
return proc;
Modified: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/parallelsplit/ParallelSplitSTPTest.java
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/parallelsplit/ParallelSplitSTPTest.java 2008-08-15 07:59:12 UTC (rev 1896)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/parallelsplit/ParallelSplitSTPTest.java 2008-08-15 08:46:48 UTC (rev 1897)
@@ -40,7 +40,7 @@
@Override
public Process getProcess() throws IOException
{
- URL jpdlURL = getResourceURL("pattern/control/parallelsplit/parallel-split.bpmn");
+ URL jpdlURL = getResourceURL("pattern/control/parallelsplit/pattern-control-parallel-split.bpmn");
ProcessManager pm = ProcessManager.locateProcessManager();
Process proc = pm.createProcess(jpdlURL);
return proc;
Modified: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/sequence/SequenceAPITest.java
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/sequence/SequenceAPITest.java 2008-08-15 07:59:12 UTC (rev 1896)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/sequence/SequenceAPITest.java 2008-08-15 08:46:48 UTC (rev 1897)
@@ -39,7 +39,7 @@
{
public Process getProcess() throws IOException
{
- URL jpdlURL = getResourceURL("pattern/control/sequence/basic-sequence-api10.xml");
+ URL jpdlURL = getResourceURL("pattern/control/sequence/pattern-control-sequence-api10.xml");
ProcessManager pm = ProcessManager.locateProcessManager();
Process proc = pm.createProcess(jpdlURL);
return proc;
Added: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/sequence/SequenceMarshallerTest.java
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/sequence/SequenceMarshallerTest.java (rev 0)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/sequence/SequenceMarshallerTest.java 2008-08-15 08:46:48 UTC (rev 1897)
@@ -0,0 +1,55 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.pattern.control.sequence;
+
+// $Id$
+
+import java.io.IOException;
+import java.io.StringWriter;
+
+import org.jboss.bpm.client.ProcessManager;
+import org.jboss.bpm.model.Process;
+
+/**
+ * Test the basic execution sequence
+ *
+ * @author thomas.diesler(a)jboss.com
+ * @since 03-Jul-2008
+ */
+public class SequenceMarshallerTest extends SequenceTest
+{
+ public Process getProcess() throws IOException
+ {
+ Process proc = super.getProcess();
+
+ // Marshall the process to a string
+ StringWriter strwr = new StringWriter();
+ marshallProcess(proc, strwr);
+ String procXML = strwr.toString();
+
+ // Recreate the process from the marshalled process
+ ProcessManager procManager = ProcessManager.locateProcessManager();
+ proc = procManager.createProcess(procXML);
+
+ return proc;
+ }
+}
Property changes on: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/sequence/SequenceMarshallerTest.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Deleted: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/sequence/SequenceProcBuilderTest.java
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/sequence/SequenceProcBuilderTest.java 2008-08-15 07:59:12 UTC (rev 1896)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/sequence/SequenceProcBuilderTest.java 2008-08-15 08:46:48 UTC (rev 1897)
@@ -1,46 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2005, JBoss Inc., and individual contributors as indicated
- * by the @authors tag. See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.bpm.pattern.control.sequence;
-
-// $Id$
-
-import org.jboss.bpm.model.Process;
-import org.jboss.bpm.model.ProcessBuilder;
-import org.jboss.bpm.model.ProcessBuilderFactory;
-
-/**
- * Test the basic execution sequence
- *
- * @author thomas.diesler(a)jboss.com
- * @since 03-Jul-2008
- */
-public class SequenceProcBuilderTest extends SequenceTest
-{
- public Process getProcess()
- {
- ProcessBuilder procBuilder = ProcessBuilderFactory.newInstance().newProcessBuilder();
- procBuilder.addProcess(getName()).addStartEvent("Start").addSequenceFlow("TaskA");
- procBuilder.addTask("TaskA").addSequenceFlow("End").addEndEvent("End");
- Process proc = procBuilder.getProcess();
- return proc;
- }
-}
Modified: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/sequence/SequenceSTPTest.java
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/sequence/SequenceSTPTest.java 2008-08-15 07:59:12 UTC (rev 1896)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/sequence/SequenceSTPTest.java 2008-08-15 08:46:48 UTC (rev 1897)
@@ -39,7 +39,7 @@
{
public Process getProcess() throws IOException
{
- URL jpdlURL = getResourceURL("pattern/control/sequence/basic-sequence.bpmn");
+ URL jpdlURL = getResourceURL("pattern/control/sequence/pattern-control-sequence.bpmn");
ProcessManager pm = ProcessManager.locateProcessManager();
Process proc = pm.createProcess(jpdlURL);
return proc;
Modified: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/sequence/SequenceTest.java
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/sequence/SequenceTest.java 2008-08-15 07:59:12 UTC (rev 1896)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/sequence/SequenceTest.java 2008-08-15 08:46:48 UTC (rev 1897)
@@ -27,7 +27,10 @@
import java.util.List;
import org.jboss.bpm.model.Process;
+import org.jboss.bpm.model.ProcessBuilder;
+import org.jboss.bpm.model.ProcessBuilderFactory;
import org.jboss.bpm.model.Signal;
+import org.jboss.bpm.model.Signal.SignalType;
import org.jboss.bpm.test.DefaultEngineTestCase;
/**
@@ -36,7 +39,7 @@
* @author thomas.diesler(a)jboss.com
* @since 03-Jul-2008
*/
-public abstract class SequenceTest extends DefaultEngineTestCase
+public class SequenceTest extends DefaultEngineTestCase
{
public void testSequence() throws Exception
{
@@ -47,15 +50,22 @@
// Validate received signals
List<Signal> signals = getSignals();
- assertEquals(Signal.SignalType.SYSTEM_PROCESS_ENTER, signals.get(0).getSignalType());
- assertEquals(Signal.SignalType.SYSTEM_START_EVENT_ENTER, signals.get(1).getSignalType());
- assertEquals(Signal.SignalType.SYSTEM_START_EVENT_EXIT, signals.get(2).getSignalType());
- assertEquals(Signal.SignalType.SYSTEM_TASK_ENTER, signals.get(3).getSignalType());
- assertEquals(Signal.SignalType.SYSTEM_TASK_EXIT, signals.get(4).getSignalType());
- assertEquals(Signal.SignalType.SYSTEM_END_EVENT_ENTER, signals.get(5).getSignalType());
- assertEquals(Signal.SignalType.SYSTEM_END_EVENT_EXIT, signals.get(6).getSignalType());
- assertEquals(Signal.SignalType.SYSTEM_PROCESS_EXIT, signals.get(7).getSignalType());
+ assertEquals(SignalType.SYSTEM_PROCESS_ENTER, signals.get(0).getSignalType());
+ assertEquals(SignalType.SYSTEM_START_EVENT_ENTER, signals.get(1).getSignalType());
+ assertEquals(SignalType.SYSTEM_START_EVENT_EXIT, signals.get(2).getSignalType());
+ assertEquals(SignalType.SYSTEM_TASK_ENTER, signals.get(3).getSignalType());
+ assertEquals(SignalType.SYSTEM_TASK_EXIT, signals.get(4).getSignalType());
+ assertEquals(SignalType.SYSTEM_END_EVENT_ENTER, signals.get(5).getSignalType());
+ assertEquals(SignalType.SYSTEM_END_EVENT_EXIT, signals.get(6).getSignalType());
+ assertEquals(SignalType.SYSTEM_PROCESS_EXIT, signals.get(7).getSignalType());
}
- public abstract Process getProcess() throws IOException;
+ public Process getProcess() throws IOException
+ {
+ ProcessBuilder procBuilder = ProcessBuilderFactory.newInstance().newProcessBuilder();
+ procBuilder.addProcess(getName()).addStartEvent("Start").addSequenceFlow("TaskA");
+ procBuilder.addTask("TaskA").addSequenceFlow("End").addEndEvent("End");
+ Process proc = procBuilder.getProcess();
+ return proc;
+ }
}
Modified: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/synchronization/SynchronizationAPITest.java
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/synchronization/SynchronizationAPITest.java 2008-08-15 07:59:12 UTC (rev 1896)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/synchronization/SynchronizationAPITest.java 2008-08-15 08:46:48 UTC (rev 1897)
@@ -41,7 +41,7 @@
@Override
public Process getProcess() throws IOException
{
- URL jpdlURL = getResourceURL("pattern/control/synchronization/synchronization-api10.xml");
+ URL jpdlURL = getResourceURL("pattern/control/synchronization/pattern-control-synchronization-api10.xml");
ProcessManager pm = ProcessManager.locateProcessManager();
Process proc = pm.createProcess(jpdlURL);
return proc;
Modified: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/synchronization/SynchronizationTest.java
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/synchronization/SynchronizationTest.java 2008-08-15 07:59:12 UTC (rev 1896)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/synchronization/SynchronizationTest.java 2008-08-15 08:46:48 UTC (rev 1897)
@@ -49,7 +49,7 @@
*/
public class SynchronizationTest extends DefaultEngineTestCase
{
- public void testParallelMerge() throws Exception
+ public void testSynchronization() throws Exception
{
Process proc = getProcess();
proc.startProcess();
@@ -69,7 +69,7 @@
assertEquals("TaskA:TaskB", TaskC.taskValue);
}
- public void testMergeTimeout() throws Exception
+ public void testSynchronizationTimeout() throws Exception
{
Process proc = getProcess();
proc.startProcess();
@@ -90,7 +90,7 @@
}
}
- public void testInvalidToken() throws Exception
+ public void testSynchronizationInvalidToken() throws Exception
{
Process proc = getProcess();
proc.startProcess();
Deleted: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/parallelsplit/parallel-split-api10.xml
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/parallelsplit/parallel-split-api10.xml 2008-08-15 07:59:12 UTC (rev 1896)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/parallelsplit/parallel-split-api10.xml 2008-08-15 08:46:48 UTC (rev 1897)
@@ -1,11 +0,0 @@
-<ns2:process name="testParallelSplit" xmlns:ns2="urn:bpm.jboss:pdl-0.1">
- <start name="Start">
- <seqflow to="Split" />
- </start>
- <parallel-gateway name="Split">
- <seqflow to="EndA" />
- <seqflow to="EndB" />
- </parallel-gateway>
- <end name="EndA" />
- <end name="EndB" />
-</ns2:process>
\ No newline at end of file
Deleted: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/parallelsplit/parallel-split.bpmn
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/parallelsplit/parallel-split.bpmn 2008-08-15 07:59:12 UTC (rev 1896)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/parallelsplit/parallel-split.bpmn 2008-08-15 08:46:48 UTC (rev 1897)
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<bpmn:BpmnDiagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:bpmn="http://stp.eclipse.org/bpmn" xmi:id="_rQi2YWOREd2mS_8SFTXMeQ" iD="_rQi2YGOREd2mS_8SFTXMeQ">
- <pools xmi:type="bpmn:Pool" xmi:id="_rQjddWOREd2mS_8SFTXMeQ" iD="_rQjddGOREd2mS_8SFTXMeQ" name="Pool">
- <vertices xmi:type="bpmn:Activity" xmi:id="_tKtdAWOREd2mS_8SFTXMeQ" iD="_tKtdAGOREd2mS_8SFTXMeQ" outgoingEdges="_yunKcWOREd2mS_8SFTXMeQ" activityType="EventStartEmpty"/>
- <vertices xmi:type="bpmn:Activity" xmi:id="_uJQI4WOREd2mS_8SFTXMeQ" iD="_uJQI4GOREd2mS_8SFTXMeQ" outgoingEdges="_wrzlMWOREd2mS_8SFTXMeQ _xTKgIWOREd2mS_8SFTXMeQ" incomingEdges="_yunKcWOREd2mS_8SFTXMeQ" activityType="GatewayParallel"/>
- <vertices xmi:type="bpmn:Activity" xmi:id="_vO_B4WOREd2mS_8SFTXMeQ" iD="_vO_B4GOREd2mS_8SFTXMeQ" incomingEdges="_wrzlMWOREd2mS_8SFTXMeQ" name="EndA" activityType="EventEndEmpty"/>
- <vertices xmi:type="bpmn:Activity" xmi:id="_vpvrQWOREd2mS_8SFTXMeQ" iD="_vpvrQGOREd2mS_8SFTXMeQ" incomingEdges="_xTKgIWOREd2mS_8SFTXMeQ" name="EndB " activityType="EventEndEmpty"/>
- <sequenceEdges xmi:type="bpmn:SequenceEdge" xmi:id="_wrzlMWOREd2mS_8SFTXMeQ" iD="_wrzlMGOREd2mS_8SFTXMeQ" source="_uJQI4WOREd2mS_8SFTXMeQ" target="_vO_B4WOREd2mS_8SFTXMeQ"/>
- <sequenceEdges xmi:type="bpmn:SequenceEdge" xmi:id="_xTKgIWOREd2mS_8SFTXMeQ" iD="_xTKgIGOREd2mS_8SFTXMeQ" source="_uJQI4WOREd2mS_8SFTXMeQ" target="_vpvrQWOREd2mS_8SFTXMeQ"/>
- <sequenceEdges xmi:type="bpmn:SequenceEdge" xmi:id="_yunKcWOREd2mS_8SFTXMeQ" iD="_yunKcGOREd2mS_8SFTXMeQ" source="_tKtdAWOREd2mS_8SFTXMeQ" target="_uJQI4WOREd2mS_8SFTXMeQ"/>
- </pools>
-</bpmn:BpmnDiagram>
Deleted: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/parallelsplit/parallel-split.bpmn_diagram
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/parallelsplit/parallel-split.bpmn_diagram 2008-08-15 07:59:12 UTC (rev 1896)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/parallelsplit/parallel-split.bpmn_diagram 2008-08-15 08:46:48 UTC (rev 1897)
@@ -1,93 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<notation:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:bpmn="http://stp.eclipse.org/bpmn" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.1/notation" xmi:id="_rQjdcGOREd2mS_8SFTXMeQ" type="Bpmn" name="parallel-split.bpmn_diagram" measurementUnit="Pixel">
- <children xmi:type="notation:Node" xmi:id="_rQkrkGOREd2mS_8SFTXMeQ" type="1001">
- <children xmi:type="notation:Node" xmi:id="_rQlSoGOREd2mS_8SFTXMeQ" type="4008"/>
- <children xmi:type="notation:Node" xmi:id="_rQlSoWOREd2mS_8SFTXMeQ" type="5001">
- <children xmi:type="notation:Node" xmi:id="_tKuEEGOREd2mS_8SFTXMeQ" type="2001">
- <children xmi:type="notation:Node" xmi:id="_tKurImOREd2mS_8SFTXMeQ" type="4001"/>
- <styles xmi:type="notation:FontStyle" xmi:id="_tKuEEWOREd2mS_8SFTXMeQ" fontName="Arial"/>
- <styles xmi:type="notation:DescriptionStyle" xmi:id="_tKuEEmOREd2mS_8SFTXMeQ"/>
- <styles xmi:type="notation:FillStyle" xmi:id="_tKuEE2OREd2mS_8SFTXMeQ"/>
- <styles xmi:type="notation:LineStyle" xmi:id="_tKurIGOREd2mS_8SFTXMeQ" lineColor="0"/>
- <element xmi:type="bpmn:Activity" href="parallel-split.bpmn#_tKtdAWOREd2mS_8SFTXMeQ"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_tKurIWOREd2mS_8SFTXMeQ" x="48" y="84"/>
- </children>
- <children xmi:type="notation:Node" xmi:id="_uJRXAGOREd2mS_8SFTXMeQ" type="2001">
- <children xmi:type="notation:Node" xmi:id="_uJR-EGOREd2mS_8SFTXMeQ" type="4001"/>
- <styles xmi:type="notation:FontStyle" xmi:id="_uJRXAWOREd2mS_8SFTXMeQ" fontName="Arial"/>
- <styles xmi:type="notation:DescriptionStyle" xmi:id="_uJRXAmOREd2mS_8SFTXMeQ"/>
- <styles xmi:type="notation:FillStyle" xmi:id="_uJRXA2OREd2mS_8SFTXMeQ"/>
- <styles xmi:type="notation:LineStyle" xmi:id="_uJRXBGOREd2mS_8SFTXMeQ" lineColor="0"/>
- <element xmi:type="bpmn:Activity" href="parallel-split.bpmn#_uJQI4WOREd2mS_8SFTXMeQ"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_uJRXBWOREd2mS_8SFTXMeQ" x="120" y="72"/>
- </children>
- <children xmi:type="notation:Node" xmi:id="_vO_o8GOREd2mS_8SFTXMeQ" type="2001">
- <children xmi:type="notation:Node" xmi:id="_vPAQAmOREd2mS_8SFTXMeQ" type="4001"/>
- <styles xmi:type="notation:FontStyle" xmi:id="_vO_o8WOREd2mS_8SFTXMeQ" fontName="Arial"/>
- <styles xmi:type="notation:DescriptionStyle" xmi:id="_vO_o8mOREd2mS_8SFTXMeQ"/>
- <styles xmi:type="notation:FillStyle" xmi:id="_vO_o82OREd2mS_8SFTXMeQ"/>
- <styles xmi:type="notation:LineStyle" xmi:id="_vPAQAGOREd2mS_8SFTXMeQ" lineColor="0"/>
- <element xmi:type="bpmn:Activity" href="parallel-split.bpmn#_vO_B4WOREd2mS_8SFTXMeQ"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_vPAQAWOREd2mS_8SFTXMeQ" x="216" y="24"/>
- </children>
- <children xmi:type="notation:Node" xmi:id="_vpw5YGOREd2mS_8SFTXMeQ" type="2001">
- <children xmi:type="notation:Node" xmi:id="_vpxgcGOREd2mS_8SFTXMeQ" type="4001"/>
- <styles xmi:type="notation:FontStyle" xmi:id="_vpw5YWOREd2mS_8SFTXMeQ" fontName="Arial"/>
- <styles xmi:type="notation:DescriptionStyle" xmi:id="_vpw5YmOREd2mS_8SFTXMeQ"/>
- <styles xmi:type="notation:FillStyle" xmi:id="_vpw5Y2OREd2mS_8SFTXMeQ"/>
- <styles xmi:type="notation:LineStyle" xmi:id="_vpw5ZGOREd2mS_8SFTXMeQ" lineColor="0"/>
- <element xmi:type="bpmn:Activity" href="parallel-split.bpmn#_vpvrQWOREd2mS_8SFTXMeQ"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_vpw5ZWOREd2mS_8SFTXMeQ" x="216" y="132"/>
- </children>
- <styles xmi:type="notation:DrawerStyle" xmi:id="_rQlSomOREd2mS_8SFTXMeQ"/>
- <styles xmi:type="notation:SortingStyle" xmi:id="_rQlSo2OREd2mS_8SFTXMeQ"/>
- <styles xmi:type="notation:FilteringStyle" xmi:id="_rQlSpGOREd2mS_8SFTXMeQ"/>
- </children>
- <styles xmi:type="notation:FontStyle" xmi:id="_rQkrkWOREd2mS_8SFTXMeQ" fontName="Arial"/>
- <styles xmi:type="notation:DescriptionStyle" xmi:id="_rQkrkmOREd2mS_8SFTXMeQ"/>
- <styles xmi:type="notation:FillStyle" xmi:id="_rQkrk2OREd2mS_8SFTXMeQ" fillColor="16771304"/>
- <styles xmi:type="notation:LineStyle" xmi:id="_rQkrlGOREd2mS_8SFTXMeQ" lineColor="11119017"/>
- <element xmi:type="bpmn:Pool" href="parallel-split.bpmn#_rQjddWOREd2mS_8SFTXMeQ"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_rQlSpWOREd2mS_8SFTXMeQ" x="16" y="16" width="369" height="200"/>
- </children>
- <styles xmi:type="notation:PageStyle" xmi:id="_rQjdcWOREd2mS_8SFTXMeQ"/>
- <styles xmi:type="notation:GuideStyle" xmi:id="_rQjdcmOREd2mS_8SFTXMeQ"/>
- <styles xmi:type="notation:DescriptionStyle" xmi:id="_rQjdc2OREd2mS_8SFTXMeQ"/>
- <element xmi:type="bpmn:BpmnDiagram" href="parallel-split.bpmn#_rQi2YWOREd2mS_8SFTXMeQ"/>
- <edges xmi:type="notation:Edge" xmi:id="_wr1aYGOREd2mS_8SFTXMeQ" type="3001" source="_uJRXAGOREd2mS_8SFTXMeQ" target="_vO_o8GOREd2mS_8SFTXMeQ">
- <children xmi:type="notation:Node" xmi:id="_wr2BcGOREd2mS_8SFTXMeQ" type="4012">
- <styles xmi:type="notation:FillStyle" xmi:id="_wr2BcWOREd2mS_8SFTXMeQ" fillColor="16776959"/>
- <styles xmi:type="notation:LineStyle" xmi:id="_wr2BcmOREd2mS_8SFTXMeQ" lineColor="16776959"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_wr2Bc2OREd2mS_8SFTXMeQ" y="-10"/>
- </children>
- <styles xmi:type="notation:RoutingStyle" xmi:id="_wr1aYWOREd2mS_8SFTXMeQ" routing="Rectilinear" smoothness="Normal" closestDistance="true"/>
- <styles xmi:type="notation:FontStyle" xmi:id="_wr1aYmOREd2mS_8SFTXMeQ" fontName="Arial"/>
- <styles xmi:type="notation:LineStyle" xmi:id="_wr1aY2OREd2mS_8SFTXMeQ" lineColor="0"/>
- <element xmi:type="bpmn:SequenceEdge" href="parallel-split.bpmn#_wrzlMWOREd2mS_8SFTXMeQ"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_wr1aZGOREd2mS_8SFTXMeQ" points="[17, -8, -124, 51]$[156, -68, 15, -9]"/>
- </edges>
- <edges xmi:type="notation:Edge" xmi:id="_xTMVUGOREd2mS_8SFTXMeQ" type="3001" source="_uJRXAGOREd2mS_8SFTXMeQ" target="_vpw5YGOREd2mS_8SFTXMeQ">
- <children xmi:type="notation:Node" xmi:id="_xTM8YGOREd2mS_8SFTXMeQ" type="4012">
- <styles xmi:type="notation:FillStyle" xmi:id="_xTM8YWOREd2mS_8SFTXMeQ" fillColor="16776959"/>
- <styles xmi:type="notation:LineStyle" xmi:id="_xTM8YmOREd2mS_8SFTXMeQ" lineColor="16776959"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_xTM8Y2OREd2mS_8SFTXMeQ" y="-10"/>
- </children>
- <styles xmi:type="notation:RoutingStyle" xmi:id="_xTMVUWOREd2mS_8SFTXMeQ" routing="Rectilinear" smoothness="Normal" closestDistance="true"/>
- <styles xmi:type="notation:FontStyle" xmi:id="_xTMVUmOREd2mS_8SFTXMeQ" fontName="Arial"/>
- <styles xmi:type="notation:LineStyle" xmi:id="_xTMVU2OREd2mS_8SFTXMeQ" lineColor="0"/>
- <element xmi:type="bpmn:SequenceEdge" href="parallel-split.bpmn#_xTKgIWOREd2mS_8SFTXMeQ"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_xTMVVGOREd2mS_8SFTXMeQ" points="[18, 6, -116, -44]$[149, 61, 15, 11]"/>
- </edges>
- <edges xmi:type="notation:Edge" xmi:id="_yuo_oGOREd2mS_8SFTXMeQ" type="3001" source="_tKuEEGOREd2mS_8SFTXMeQ" target="_uJRXAGOREd2mS_8SFTXMeQ">
- <children xmi:type="notation:Node" xmi:id="_yupmsGOREd2mS_8SFTXMeQ" type="4012">
- <styles xmi:type="notation:FillStyle" xmi:id="_yupmsWOREd2mS_8SFTXMeQ" fillColor="16776959"/>
- <styles xmi:type="notation:LineStyle" xmi:id="_yupmsmOREd2mS_8SFTXMeQ" lineColor="16776959"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_yupms2OREd2mS_8SFTXMeQ" y="-10"/>
- </children>
- <styles xmi:type="notation:RoutingStyle" xmi:id="_yuo_oWOREd2mS_8SFTXMeQ" routing="Rectilinear" smoothness="Normal" closestDistance="true"/>
- <styles xmi:type="notation:FontStyle" xmi:id="_yuo_omOREd2mS_8SFTXMeQ" fontName="Arial"/>
- <styles xmi:type="notation:LineStyle" xmi:id="_yuo_o2OREd2mS_8SFTXMeQ" lineColor="0"/>
- <element xmi:type="bpmn:SequenceEdge" href="parallel-split.bpmn#_yunKcWOREd2mS_8SFTXMeQ"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_yuo_pGOREd2mS_8SFTXMeQ" points="[15, -2, -84, 1]$[80, -10, -19, -7]"/>
- </edges>
-</notation:Diagram>
Deleted: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/parallelsplit/parallel-split.png
===================================================================
(Binary files differ)
Copied: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/parallelsplit/pattern-control-parallel-split-api10.xml (from rev 1895, jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/parallelsplit/parallel-split-api10.xml)
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/parallelsplit/pattern-control-parallel-split-api10.xml (rev 0)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/parallelsplit/pattern-control-parallel-split-api10.xml 2008-08-15 08:46:48 UTC (rev 1897)
@@ -0,0 +1,11 @@
+<ns2:process name="testParallelSplit" xmlns:ns2="urn:bpm.jboss:pdl-0.1">
+ <start name="Start">
+ <seqflow to="Split" />
+ </start>
+ <parallel-gateway name="Split">
+ <seqflow to="EndA" />
+ <seqflow to="EndB" />
+ </parallel-gateway>
+ <end name="EndA" />
+ <end name="EndB" />
+</ns2:process>
\ No newline at end of file
Copied: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/parallelsplit/pattern-control-parallel-split.bpmn (from rev 1895, jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/parallelsplit/parallel-split.bpmn)
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/parallelsplit/pattern-control-parallel-split.bpmn (rev 0)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/parallelsplit/pattern-control-parallel-split.bpmn 2008-08-15 08:46:48 UTC (rev 1897)
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<bpmn:BpmnDiagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:bpmn="http://stp.eclipse.org/bpmn" xmi:id="_rQi2YWOREd2mS_8SFTXMeQ" iD="_rQi2YGOREd2mS_8SFTXMeQ">
+ <pools xmi:type="bpmn:Pool" xmi:id="_rQjddWOREd2mS_8SFTXMeQ" iD="_rQjddGOREd2mS_8SFTXMeQ" name="Pool">
+ <vertices xmi:type="bpmn:Activity" xmi:id="_tKtdAWOREd2mS_8SFTXMeQ" iD="_tKtdAGOREd2mS_8SFTXMeQ" outgoingEdges="_yunKcWOREd2mS_8SFTXMeQ" activityType="EventStartEmpty"/>
+ <vertices xmi:type="bpmn:Activity" xmi:id="_uJQI4WOREd2mS_8SFTXMeQ" iD="_uJQI4GOREd2mS_8SFTXMeQ" outgoingEdges="_wrzlMWOREd2mS_8SFTXMeQ _xTKgIWOREd2mS_8SFTXMeQ" incomingEdges="_yunKcWOREd2mS_8SFTXMeQ" activityType="GatewayParallel"/>
+ <vertices xmi:type="bpmn:Activity" xmi:id="_vO_B4WOREd2mS_8SFTXMeQ" iD="_vO_B4GOREd2mS_8SFTXMeQ" incomingEdges="_wrzlMWOREd2mS_8SFTXMeQ" name="EndA" activityType="EventEndEmpty"/>
+ <vertices xmi:type="bpmn:Activity" xmi:id="_vpvrQWOREd2mS_8SFTXMeQ" iD="_vpvrQGOREd2mS_8SFTXMeQ" incomingEdges="_xTKgIWOREd2mS_8SFTXMeQ" name="EndB " activityType="EventEndEmpty"/>
+ <sequenceEdges xmi:type="bpmn:SequenceEdge" xmi:id="_wrzlMWOREd2mS_8SFTXMeQ" iD="_wrzlMGOREd2mS_8SFTXMeQ" source="_uJQI4WOREd2mS_8SFTXMeQ" target="_vO_B4WOREd2mS_8SFTXMeQ"/>
+ <sequenceEdges xmi:type="bpmn:SequenceEdge" xmi:id="_xTKgIWOREd2mS_8SFTXMeQ" iD="_xTKgIGOREd2mS_8SFTXMeQ" source="_uJQI4WOREd2mS_8SFTXMeQ" target="_vpvrQWOREd2mS_8SFTXMeQ"/>
+ <sequenceEdges xmi:type="bpmn:SequenceEdge" xmi:id="_yunKcWOREd2mS_8SFTXMeQ" iD="_yunKcGOREd2mS_8SFTXMeQ" source="_tKtdAWOREd2mS_8SFTXMeQ" target="_uJQI4WOREd2mS_8SFTXMeQ"/>
+ </pools>
+</bpmn:BpmnDiagram>
Copied: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/parallelsplit/pattern-control-parallel-split.bpmn_diagram (from rev 1895, jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/parallelsplit/parallel-split.bpmn_diagram)
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/parallelsplit/pattern-control-parallel-split.bpmn_diagram (rev 0)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/parallelsplit/pattern-control-parallel-split.bpmn_diagram 2008-08-15 08:46:48 UTC (rev 1897)
@@ -0,0 +1,93 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<notation:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:bpmn="http://stp.eclipse.org/bpmn" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.1/notation" xmi:id="_rQjdcGOREd2mS_8SFTXMeQ" type="Bpmn" name="pattern-control-parallel-split.bpmn_diagram" measurementUnit="Pixel">
+ <children xmi:type="notation:Node" xmi:id="_rQkrkGOREd2mS_8SFTXMeQ" type="1001">
+ <children xmi:type="notation:Node" xmi:id="_rQlSoGOREd2mS_8SFTXMeQ" type="4008"/>
+ <children xmi:type="notation:Node" xmi:id="_rQlSoWOREd2mS_8SFTXMeQ" type="5001">
+ <children xmi:type="notation:Node" xmi:id="_tKuEEGOREd2mS_8SFTXMeQ" type="2001">
+ <children xmi:type="notation:Node" xmi:id="_tKurImOREd2mS_8SFTXMeQ" type="4001"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_tKuEEWOREd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_tKuEEmOREd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:FillStyle" xmi:id="_tKuEE2OREd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_tKurIGOREd2mS_8SFTXMeQ" lineColor="0"/>
+ <element xmi:type="bpmn:Activity" href="pattern-control-parallel-split.bpmn#_tKtdAWOREd2mS_8SFTXMeQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_tKurIWOREd2mS_8SFTXMeQ" x="48" y="84"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_uJRXAGOREd2mS_8SFTXMeQ" type="2001">
+ <children xmi:type="notation:Node" xmi:id="_uJR-EGOREd2mS_8SFTXMeQ" type="4001"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_uJRXAWOREd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_uJRXAmOREd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:FillStyle" xmi:id="_uJRXA2OREd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_uJRXBGOREd2mS_8SFTXMeQ" lineColor="0"/>
+ <element xmi:type="bpmn:Activity" href="pattern-control-parallel-split.bpmn#_uJQI4WOREd2mS_8SFTXMeQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_uJRXBWOREd2mS_8SFTXMeQ" x="120" y="72"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_vO_o8GOREd2mS_8SFTXMeQ" type="2001">
+ <children xmi:type="notation:Node" xmi:id="_vPAQAmOREd2mS_8SFTXMeQ" type="4001"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_vO_o8WOREd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_vO_o8mOREd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:FillStyle" xmi:id="_vO_o82OREd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_vPAQAGOREd2mS_8SFTXMeQ" lineColor="0"/>
+ <element xmi:type="bpmn:Activity" href="pattern-control-parallel-split.bpmn#_vO_B4WOREd2mS_8SFTXMeQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_vPAQAWOREd2mS_8SFTXMeQ" x="216" y="24"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_vpw5YGOREd2mS_8SFTXMeQ" type="2001">
+ <children xmi:type="notation:Node" xmi:id="_vpxgcGOREd2mS_8SFTXMeQ" type="4001"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_vpw5YWOREd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_vpw5YmOREd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:FillStyle" xmi:id="_vpw5Y2OREd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_vpw5ZGOREd2mS_8SFTXMeQ" lineColor="0"/>
+ <element xmi:type="bpmn:Activity" href="pattern-control-parallel-split.bpmn#_vpvrQWOREd2mS_8SFTXMeQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_vpw5ZWOREd2mS_8SFTXMeQ" x="216" y="132"/>
+ </children>
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_rQlSomOREd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_rQlSo2OREd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_rQlSpGOREd2mS_8SFTXMeQ"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_rQkrkWOREd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_rQkrkmOREd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:FillStyle" xmi:id="_rQkrk2OREd2mS_8SFTXMeQ" fillColor="16771304"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_rQkrlGOREd2mS_8SFTXMeQ" lineColor="11119017"/>
+ <element xmi:type="bpmn:Pool" href="pattern-control-parallel-split.bpmn#_rQjddWOREd2mS_8SFTXMeQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_rQlSpWOREd2mS_8SFTXMeQ" x="16" y="16" width="369" height="200"/>
+ </children>
+ <styles xmi:type="notation:PageStyle" xmi:id="_rQjdcWOREd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:GuideStyle" xmi:id="_rQjdcmOREd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_rQjdc2OREd2mS_8SFTXMeQ"/>
+ <element xmi:type="bpmn:BpmnDiagram" href="pattern-control-parallel-split.bpmn#_rQi2YWOREd2mS_8SFTXMeQ"/>
+ <edges xmi:type="notation:Edge" xmi:id="_wr1aYGOREd2mS_8SFTXMeQ" type="3001" source="_uJRXAGOREd2mS_8SFTXMeQ" target="_vO_o8GOREd2mS_8SFTXMeQ">
+ <children xmi:type="notation:Node" xmi:id="_wr2BcGOREd2mS_8SFTXMeQ" type="4012">
+ <styles xmi:type="notation:FillStyle" xmi:id="_wr2BcWOREd2mS_8SFTXMeQ" fillColor="16776959"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_wr2BcmOREd2mS_8SFTXMeQ" lineColor="16776959"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_wr2Bc2OREd2mS_8SFTXMeQ" y="-10"/>
+ </children>
+ <styles xmi:type="notation:RoutingStyle" xmi:id="_wr1aYWOREd2mS_8SFTXMeQ" routing="Rectilinear" smoothness="Normal" closestDistance="true"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_wr1aYmOREd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_wr1aY2OREd2mS_8SFTXMeQ" lineColor="0"/>
+ <element xmi:type="bpmn:SequenceEdge" href="pattern-control-parallel-split.bpmn#_wrzlMWOREd2mS_8SFTXMeQ"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_wr1aZGOREd2mS_8SFTXMeQ" points="[17, -8, -124, 51]$[156, -68, 15, -9]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_xTMVUGOREd2mS_8SFTXMeQ" type="3001" source="_uJRXAGOREd2mS_8SFTXMeQ" target="_vpw5YGOREd2mS_8SFTXMeQ">
+ <children xmi:type="notation:Node" xmi:id="_xTM8YGOREd2mS_8SFTXMeQ" type="4012">
+ <styles xmi:type="notation:FillStyle" xmi:id="_xTM8YWOREd2mS_8SFTXMeQ" fillColor="16776959"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_xTM8YmOREd2mS_8SFTXMeQ" lineColor="16776959"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_xTM8Y2OREd2mS_8SFTXMeQ" y="-10"/>
+ </children>
+ <styles xmi:type="notation:RoutingStyle" xmi:id="_xTMVUWOREd2mS_8SFTXMeQ" routing="Rectilinear" smoothness="Normal" closestDistance="true"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_xTMVUmOREd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_xTMVU2OREd2mS_8SFTXMeQ" lineColor="0"/>
+ <element xmi:type="bpmn:SequenceEdge" href="pattern-control-parallel-split.bpmn#_xTKgIWOREd2mS_8SFTXMeQ"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_xTMVVGOREd2mS_8SFTXMeQ" points="[18, 6, -116, -44]$[149, 61, 15, 11]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_yuo_oGOREd2mS_8SFTXMeQ" type="3001" source="_tKuEEGOREd2mS_8SFTXMeQ" target="_uJRXAGOREd2mS_8SFTXMeQ">
+ <children xmi:type="notation:Node" xmi:id="_yupmsGOREd2mS_8SFTXMeQ" type="4012">
+ <styles xmi:type="notation:FillStyle" xmi:id="_yupmsWOREd2mS_8SFTXMeQ" fillColor="16776959"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_yupmsmOREd2mS_8SFTXMeQ" lineColor="16776959"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_yupms2OREd2mS_8SFTXMeQ" y="-10"/>
+ </children>
+ <styles xmi:type="notation:RoutingStyle" xmi:id="_yuo_oWOREd2mS_8SFTXMeQ" routing="Rectilinear" smoothness="Normal" closestDistance="true"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_yuo_omOREd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_yuo_o2OREd2mS_8SFTXMeQ" lineColor="0"/>
+ <element xmi:type="bpmn:SequenceEdge" href="pattern-control-parallel-split.bpmn#_yunKcWOREd2mS_8SFTXMeQ"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_yuo_pGOREd2mS_8SFTXMeQ" points="[15, -2, -84, 1]$[80, -10, -19, -7]"/>
+ </edges>
+</notation:Diagram>
Added: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/parallelsplit/pattern-control-parallel-split.png
===================================================================
(Binary files differ)
Property changes on: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/parallelsplit/pattern-control-parallel-split.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Deleted: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/sequence/basic-sequence-api10.xml
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/sequence/basic-sequence-api10.xml 2008-08-15 07:59:12 UTC (rev 1896)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/sequence/basic-sequence-api10.xml 2008-08-15 08:46:48 UTC (rev 1897)
@@ -1,9 +0,0 @@
-<ns2:process name="Sequence" xmlns:ns2="urn:bpm.jboss:pdl-0.1">
- <start>
- <seqflow to="TaskA" />
- </start>
- <task name="TaskA">
- <seqflow to="End" />
- </task>
- <end name="End" />
-</ns2:process>
\ No newline at end of file
Deleted: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/sequence/basic-sequence.bpmn
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/sequence/basic-sequence.bpmn 2008-08-15 07:59:12 UTC (rev 1896)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/sequence/basic-sequence.bpmn 2008-08-15 08:46:48 UTC (rev 1897)
@@ -1,10 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<bpmn:BpmnDiagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:bpmn="http://stp.eclipse.org/bpmn" xmi:id="_UstEIE3nEd2LNJlZf0NQOw" iD="_UspZwE3nEd2LNJlZf0NQOw">
- <pools xmi:type="bpmn:Pool" xmi:id="_Ut2ToE3nEd2LNJlZf0NQOw" iD="_Ut1skE3nEd2LNJlZf0NQOw" name="Pool">
- <vertices xmi:type="bpmn:Activity" xmi:id="_UuUNsU3nEd2LNJlZf0NQOw" iD="_UuUNsE3nEd2LNJlZf0NQOw" outgoingEdges="_c8S7wU3nEd2LNJlZf0NQOw" incomingEdges="_bWie4E3nEd2LNJlZf0NQOw" name="TaskA" activityType="Task"/>
- <vertices xmi:type="bpmn:Activity" xmi:id="_aeNvwE3nEd2LNJlZf0NQOw" iD="_aeNIsE3nEd2LNJlZf0NQOw" outgoingEdges="_bWie4E3nEd2LNJlZf0NQOw" activityType="EventStartEmpty"/>
- <vertices xmi:type="bpmn:Activity" xmi:id="_cUlbgU3nEd2LNJlZf0NQOw" iD="_cUlbgE3nEd2LNJlZf0NQOw" incomingEdges="_c8S7wU3nEd2LNJlZf0NQOw" name="End " activityType="EventEndEmpty"/>
- <sequenceEdges xmi:type="bpmn:SequenceEdge" xmi:id="_bWie4E3nEd2LNJlZf0NQOw" iD="_bWh30E3nEd2LNJlZf0NQOw" source="_aeNvwE3nEd2LNJlZf0NQOw" target="_UuUNsU3nEd2LNJlZf0NQOw"/>
- <sequenceEdges xmi:type="bpmn:SequenceEdge" xmi:id="_c8S7wU3nEd2LNJlZf0NQOw" iD="_c8S7wE3nEd2LNJlZf0NQOw" source="_UuUNsU3nEd2LNJlZf0NQOw" target="_cUlbgU3nEd2LNJlZf0NQOw"/>
- </pools>
-</bpmn:BpmnDiagram>
Deleted: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/sequence/basic-sequence.bpmn_diagram
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/sequence/basic-sequence.bpmn_diagram 2008-08-15 07:59:12 UTC (rev 1896)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/sequence/basic-sequence.bpmn_diagram 2008-08-15 08:46:48 UTC (rev 1897)
@@ -1,72 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<notation:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:bpmn="http://stp.eclipse.org/bpmn" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.1/notation" xmi:id="_UtiKkE3nEd2LNJlZf0NQOw" type="Bpmn" name="basic-sequence.bpmn_diagram" measurementUnit="Pixel">
- <children xmi:type="notation:Node" xmi:id="_Uufz4E3nEd2LNJlZf0NQOw" type="1001">
- <children xmi:type="notation:Node" xmi:id="_UuksYE3nEd2LNJlZf0NQOw" type="4008"/>
- <children xmi:type="notation:Node" xmi:id="_UunIoE3nEd2LNJlZf0NQOw" type="5001">
- <children xmi:type="notation:Node" xmi:id="_Uupk4E3nEd2LNJlZf0NQOw" type="2001">
- <children xmi:type="notation:Node" xmi:id="_UuqL8E3nEd2LNJlZf0NQOw" type="4001"/>
- <styles xmi:type="notation:FontStyle" xmi:id="_Uupk4U3nEd2LNJlZf0NQOw" fontName="Arial"/>
- <styles xmi:type="notation:DescriptionStyle" xmi:id="_Uupk4k3nEd2LNJlZf0NQOw"/>
- <styles xmi:type="notation:FillStyle" xmi:id="_Uupk403nEd2LNJlZf0NQOw"/>
- <styles xmi:type="notation:LineStyle" xmi:id="_Uupk5E3nEd2LNJlZf0NQOw" lineColor="0"/>
- <element xmi:type="bpmn:Activity" href="basic-sequence.bpmn#_UuUNsU3nEd2LNJlZf0NQOw"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_UuqL8U3nEd2LNJlZf0NQOw" x="84" y="28" width="111" height="61"/>
- </children>
- <children xmi:type="notation:Node" xmi:id="_aeUdcE3nEd2LNJlZf0NQOw" type="2001">
- <children xmi:type="notation:Node" xmi:id="_aeW5sE3nEd2LNJlZf0NQOw" type="4001"/>
- <styles xmi:type="notation:FontStyle" xmi:id="_aeVEgE3nEd2LNJlZf0NQOw" fontName="Arial"/>
- <styles xmi:type="notation:DescriptionStyle" xmi:id="_aeVEgU3nEd2LNJlZf0NQOw"/>
- <styles xmi:type="notation:FillStyle" xmi:id="_aeVEgk3nEd2LNJlZf0NQOw"/>
- <styles xmi:type="notation:LineStyle" xmi:id="_aeVEg03nEd2LNJlZf0NQOw" lineColor="0"/>
- <element xmi:type="bpmn:Activity" href="basic-sequence.bpmn#_aeNvwE3nEd2LNJlZf0NQOw"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_aeVEhE3nEd2LNJlZf0NQOw" x="12" y="40"/>
- </children>
- <children xmi:type="notation:Node" xmi:id="_cUmpoE3nEd2LNJlZf0NQOw" type="2001">
- <children xmi:type="notation:Node" xmi:id="_cUnQsE3nEd2LNJlZf0NQOw" type="4001"/>
- <styles xmi:type="notation:FontStyle" xmi:id="_cUmpoU3nEd2LNJlZf0NQOw" fontName="Arial"/>
- <styles xmi:type="notation:DescriptionStyle" xmi:id="_cUmpok3nEd2LNJlZf0NQOw"/>
- <styles xmi:type="notation:FillStyle" xmi:id="_cUmpo03nEd2LNJlZf0NQOw"/>
- <styles xmi:type="notation:LineStyle" xmi:id="_cUmppE3nEd2LNJlZf0NQOw" lineColor="0"/>
- <element xmi:type="bpmn:Activity" href="basic-sequence.bpmn#_cUlbgU3nEd2LNJlZf0NQOw"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cUmppU3nEd2LNJlZf0NQOw" x="240" y="40"/>
- </children>
- <styles xmi:type="notation:DrawerStyle" xmi:id="_UunvsE3nEd2LNJlZf0NQOw"/>
- <styles xmi:type="notation:SortingStyle" xmi:id="_UunvsU3nEd2LNJlZf0NQOw"/>
- <styles xmi:type="notation:FilteringStyle" xmi:id="_Uunvsk3nEd2LNJlZf0NQOw"/>
- </children>
- <styles xmi:type="notation:FontStyle" xmi:id="_Uufz4U3nEd2LNJlZf0NQOw" fontName="Arial"/>
- <styles xmi:type="notation:DescriptionStyle" xmi:id="_Uufz4k3nEd2LNJlZf0NQOw"/>
- <styles xmi:type="notation:FillStyle" xmi:id="_Uufz403nEd2LNJlZf0NQOw" fillColor="16771304"/>
- <styles xmi:type="notation:LineStyle" xmi:id="_Uufz5E3nEd2LNJlZf0NQOw" lineColor="11119017"/>
- <element xmi:type="bpmn:Pool" href="basic-sequence.bpmn#_Ut2ToE3nEd2LNJlZf0NQOw"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Uunvs03nEd2LNJlZf0NQOw" x="16" y="16" width="333" height="129"/>
- </children>
- <styles xmi:type="notation:PageStyle" xmi:id="_UtiKkU3nEd2LNJlZf0NQOw"/>
- <styles xmi:type="notation:GuideStyle" xmi:id="_UtiKkk3nEd2LNJlZf0NQOw"/>
- <styles xmi:type="notation:DescriptionStyle" xmi:id="_UtiKk03nEd2LNJlZf0NQOw"/>
- <element xmi:type="bpmn:BpmnDiagram" href="basic-sequence.bpmn#_UstEIE3nEd2LNJlZf0NQOw"/>
- <edges xmi:type="notation:Edge" xmi:id="_bWolgE3nEd2LNJlZf0NQOw" type="3001" source="_aeUdcE3nEd2LNJlZf0NQOw" target="_Uupk4E3nEd2LNJlZf0NQOw">
- <children xmi:type="notation:Node" xmi:id="_bWqasE3nEd2LNJlZf0NQOw" type="4012">
- <styles xmi:type="notation:FillStyle" xmi:id="_bWqasU3nEd2LNJlZf0NQOw" fillColor="16776959"/>
- <styles xmi:type="notation:LineStyle" xmi:id="_bWqask3nEd2LNJlZf0NQOw" lineColor="16776959"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_bWqas03nEd2LNJlZf0NQOw" y="-10"/>
- </children>
- <styles xmi:type="notation:RoutingStyle" xmi:id="_bWolgU3nEd2LNJlZf0NQOw" routing="Rectilinear" smoothness="Normal" closestDistance="true"/>
- <styles xmi:type="notation:FontStyle" xmi:id="_bWolgk3nEd2LNJlZf0NQOw" fontName="Arial"/>
- <styles xmi:type="notation:LineStyle" xmi:id="_bWolg03nEd2LNJlZf0NQOw" lineColor="0"/>
- <element xmi:type="bpmn:SequenceEdge" href="basic-sequence.bpmn#_bWie4E3nEd2LNJlZf0NQOw"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_bWolhE3nEd2LNJlZf0NQOw" points="[0, -15, -110, -16]$[57, -2, -53, -3]"/>
- </edges>
- <edges xmi:type="notation:Edge" xmi:id="_c8Uw8E3nEd2LNJlZf0NQOw" type="3001" source="_Uupk4E3nEd2LNJlZf0NQOw" target="_cUmpoE3nEd2LNJlZf0NQOw">
- <children xmi:type="notation:Node" xmi:id="_c8VYAE3nEd2LNJlZf0NQOw" type="4012">
- <styles xmi:type="notation:FillStyle" xmi:id="_c8VYAU3nEd2LNJlZf0NQOw" fillColor="16776959"/>
- <styles xmi:type="notation:LineStyle" xmi:id="_c8VYAk3nEd2LNJlZf0NQOw" lineColor="16776959"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_c8VYA03nEd2LNJlZf0NQOw" y="-10"/>
- </children>
- <styles xmi:type="notation:RoutingStyle" xmi:id="_c8Uw8U3nEd2LNJlZf0NQOw" routing="Rectilinear" smoothness="Normal" closestDistance="true"/>
- <styles xmi:type="notation:FontStyle" xmi:id="_c8Uw8k3nEd2LNJlZf0NQOw" fontName="Arial"/>
- <styles xmi:type="notation:LineStyle" xmi:id="_c8Uw803nEd2LNJlZf0NQOw" lineColor="0"/>
- <element xmi:type="bpmn:SequenceEdge" href="basic-sequence.bpmn#_c8S7wU3nEd2LNJlZf0NQOw"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_c8Uw9E3nEd2LNJlZf0NQOw" points="[54, -8, -64, -7]$[103, -2, -15, -1]"/>
- </edges>
-</notation:Diagram>
Deleted: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/sequence/basic-sequence.png
===================================================================
(Binary files differ)
Copied: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/sequence/pattern-control-sequence-api10.xml (from rev 1895, jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/sequence/basic-sequence-api10.xml)
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/sequence/pattern-control-sequence-api10.xml (rev 0)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/sequence/pattern-control-sequence-api10.xml 2008-08-15 08:46:48 UTC (rev 1897)
@@ -0,0 +1,9 @@
+<ns2:process name="Sequence" xmlns:ns2="urn:bpm.jboss:pdl-0.1">
+ <start>
+ <seqflow to="TaskA" />
+ </start>
+ <task name="TaskA">
+ <seqflow to="End" />
+ </task>
+ <end name="End" />
+</ns2:process>
\ No newline at end of file
Copied: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/sequence/pattern-control-sequence.bpmn (from rev 1895, jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/sequence/basic-sequence.bpmn)
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/sequence/pattern-control-sequence.bpmn (rev 0)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/sequence/pattern-control-sequence.bpmn 2008-08-15 08:46:48 UTC (rev 1897)
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<bpmn:BpmnDiagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:bpmn="http://stp.eclipse.org/bpmn" xmi:id="_UstEIE3nEd2LNJlZf0NQOw" iD="_UspZwE3nEd2LNJlZf0NQOw">
+ <pools xmi:type="bpmn:Pool" xmi:id="_Ut2ToE3nEd2LNJlZf0NQOw" iD="_Ut1skE3nEd2LNJlZf0NQOw" name="Pool">
+ <vertices xmi:type="bpmn:Activity" xmi:id="_UuUNsU3nEd2LNJlZf0NQOw" iD="_UuUNsE3nEd2LNJlZf0NQOw" outgoingEdges="_c8S7wU3nEd2LNJlZf0NQOw" incomingEdges="_bWie4E3nEd2LNJlZf0NQOw" name="TaskA" activityType="Task"/>
+ <vertices xmi:type="bpmn:Activity" xmi:id="_aeNvwE3nEd2LNJlZf0NQOw" iD="_aeNIsE3nEd2LNJlZf0NQOw" outgoingEdges="_bWie4E3nEd2LNJlZf0NQOw" activityType="EventStartEmpty"/>
+ <vertices xmi:type="bpmn:Activity" xmi:id="_cUlbgU3nEd2LNJlZf0NQOw" iD="_cUlbgE3nEd2LNJlZf0NQOw" incomingEdges="_c8S7wU3nEd2LNJlZf0NQOw" name="End " activityType="EventEndEmpty"/>
+ <sequenceEdges xmi:type="bpmn:SequenceEdge" xmi:id="_bWie4E3nEd2LNJlZf0NQOw" iD="_bWh30E3nEd2LNJlZf0NQOw" source="_aeNvwE3nEd2LNJlZf0NQOw" target="_UuUNsU3nEd2LNJlZf0NQOw"/>
+ <sequenceEdges xmi:type="bpmn:SequenceEdge" xmi:id="_c8S7wU3nEd2LNJlZf0NQOw" iD="_c8S7wE3nEd2LNJlZf0NQOw" source="_UuUNsU3nEd2LNJlZf0NQOw" target="_cUlbgU3nEd2LNJlZf0NQOw"/>
+ </pools>
+</bpmn:BpmnDiagram>
Copied: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/sequence/pattern-control-sequence.bpmn_diagram (from rev 1895, jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/sequence/basic-sequence.bpmn_diagram)
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/sequence/pattern-control-sequence.bpmn_diagram (rev 0)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/sequence/pattern-control-sequence.bpmn_diagram 2008-08-15 08:46:48 UTC (rev 1897)
@@ -0,0 +1,72 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<notation:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:bpmn="http://stp.eclipse.org/bpmn" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.1/notation" xmi:id="_UtiKkE3nEd2LNJlZf0NQOw" type="Bpmn" name="pattern-control-sequence.bpmn_diagram" measurementUnit="Pixel">
+ <children xmi:type="notation:Node" xmi:id="_Uufz4E3nEd2LNJlZf0NQOw" type="1001">
+ <children xmi:type="notation:Node" xmi:id="_UuksYE3nEd2LNJlZf0NQOw" type="4008"/>
+ <children xmi:type="notation:Node" xmi:id="_UunIoE3nEd2LNJlZf0NQOw" type="5001">
+ <children xmi:type="notation:Node" xmi:id="_Uupk4E3nEd2LNJlZf0NQOw" type="2001">
+ <children xmi:type="notation:Node" xmi:id="_UuqL8E3nEd2LNJlZf0NQOw" type="4001"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_Uupk4U3nEd2LNJlZf0NQOw" fontName="Arial"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_Uupk4k3nEd2LNJlZf0NQOw"/>
+ <styles xmi:type="notation:FillStyle" xmi:id="_Uupk403nEd2LNJlZf0NQOw"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_Uupk5E3nEd2LNJlZf0NQOw" lineColor="0"/>
+ <element xmi:type="bpmn:Activity" href="pattern-control-sequence.bpmn#_UuUNsU3nEd2LNJlZf0NQOw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_UuqL8U3nEd2LNJlZf0NQOw" x="84" y="28" width="111" height="61"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_aeUdcE3nEd2LNJlZf0NQOw" type="2001">
+ <children xmi:type="notation:Node" xmi:id="_aeW5sE3nEd2LNJlZf0NQOw" type="4001"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_aeVEgE3nEd2LNJlZf0NQOw" fontName="Arial"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_aeVEgU3nEd2LNJlZf0NQOw"/>
+ <styles xmi:type="notation:FillStyle" xmi:id="_aeVEgk3nEd2LNJlZf0NQOw"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_aeVEg03nEd2LNJlZf0NQOw" lineColor="0"/>
+ <element xmi:type="bpmn:Activity" href="pattern-control-sequence.bpmn#_aeNvwE3nEd2LNJlZf0NQOw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_aeVEhE3nEd2LNJlZf0NQOw" x="12" y="40"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_cUmpoE3nEd2LNJlZf0NQOw" type="2001">
+ <children xmi:type="notation:Node" xmi:id="_cUnQsE3nEd2LNJlZf0NQOw" type="4001"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_cUmpoU3nEd2LNJlZf0NQOw" fontName="Arial"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_cUmpok3nEd2LNJlZf0NQOw"/>
+ <styles xmi:type="notation:FillStyle" xmi:id="_cUmpo03nEd2LNJlZf0NQOw"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_cUmppE3nEd2LNJlZf0NQOw" lineColor="0"/>
+ <element xmi:type="bpmn:Activity" href="pattern-control-sequence.bpmn#_cUlbgU3nEd2LNJlZf0NQOw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cUmppU3nEd2LNJlZf0NQOw" x="240" y="40"/>
+ </children>
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_UunvsE3nEd2LNJlZf0NQOw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_UunvsU3nEd2LNJlZf0NQOw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Uunvsk3nEd2LNJlZf0NQOw"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_Uufz4U3nEd2LNJlZf0NQOw" fontName="Arial"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_Uufz4k3nEd2LNJlZf0NQOw"/>
+ <styles xmi:type="notation:FillStyle" xmi:id="_Uufz403nEd2LNJlZf0NQOw" fillColor="16771304"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_Uufz5E3nEd2LNJlZf0NQOw" lineColor="11119017"/>
+ <element xmi:type="bpmn:Pool" href="pattern-control-sequence.bpmn#_Ut2ToE3nEd2LNJlZf0NQOw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Uunvs03nEd2LNJlZf0NQOw" x="16" y="16" width="333" height="129"/>
+ </children>
+ <styles xmi:type="notation:PageStyle" xmi:id="_UtiKkU3nEd2LNJlZf0NQOw"/>
+ <styles xmi:type="notation:GuideStyle" xmi:id="_UtiKkk3nEd2LNJlZf0NQOw"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_UtiKk03nEd2LNJlZf0NQOw"/>
+ <element xmi:type="bpmn:BpmnDiagram" href="pattern-control-sequence.bpmn#_UstEIE3nEd2LNJlZf0NQOw"/>
+ <edges xmi:type="notation:Edge" xmi:id="_bWolgE3nEd2LNJlZf0NQOw" type="3001" source="_aeUdcE3nEd2LNJlZf0NQOw" target="_Uupk4E3nEd2LNJlZf0NQOw">
+ <children xmi:type="notation:Node" xmi:id="_bWqasE3nEd2LNJlZf0NQOw" type="4012">
+ <styles xmi:type="notation:FillStyle" xmi:id="_bWqasU3nEd2LNJlZf0NQOw" fillColor="16776959"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_bWqask3nEd2LNJlZf0NQOw" lineColor="16776959"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_bWqas03nEd2LNJlZf0NQOw" y="-10"/>
+ </children>
+ <styles xmi:type="notation:RoutingStyle" xmi:id="_bWolgU3nEd2LNJlZf0NQOw" routing="Rectilinear" smoothness="Normal" closestDistance="true"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_bWolgk3nEd2LNJlZf0NQOw" fontName="Arial"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_bWolg03nEd2LNJlZf0NQOw" lineColor="0"/>
+ <element xmi:type="bpmn:SequenceEdge" href="pattern-control-sequence.bpmn#_bWie4E3nEd2LNJlZf0NQOw"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_bWolhE3nEd2LNJlZf0NQOw" points="[0, -15, -110, -16]$[57, -2, -53, -3]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_c8Uw8E3nEd2LNJlZf0NQOw" type="3001" source="_Uupk4E3nEd2LNJlZf0NQOw" target="_cUmpoE3nEd2LNJlZf0NQOw">
+ <children xmi:type="notation:Node" xmi:id="_c8VYAE3nEd2LNJlZf0NQOw" type="4012">
+ <styles xmi:type="notation:FillStyle" xmi:id="_c8VYAU3nEd2LNJlZf0NQOw" fillColor="16776959"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_c8VYAk3nEd2LNJlZf0NQOw" lineColor="16776959"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_c8VYA03nEd2LNJlZf0NQOw" y="-10"/>
+ </children>
+ <styles xmi:type="notation:RoutingStyle" xmi:id="_c8Uw8U3nEd2LNJlZf0NQOw" routing="Rectilinear" smoothness="Normal" closestDistance="true"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_c8Uw8k3nEd2LNJlZf0NQOw" fontName="Arial"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_c8Uw803nEd2LNJlZf0NQOw" lineColor="0"/>
+ <element xmi:type="bpmn:SequenceEdge" href="pattern-control-sequence.bpmn#_c8S7wU3nEd2LNJlZf0NQOw"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_c8Uw9E3nEd2LNJlZf0NQOw" points="[54, -8, -64, -7]$[103, -2, -15, -1]"/>
+ </edges>
+</notation:Diagram>
Added: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/sequence/pattern-control-sequence.png
===================================================================
(Binary files differ)
Property changes on: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/sequence/pattern-control-sequence.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Copied: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/synchronization/pattern-control-synchronization-api10.xml (from rev 1895, jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/synchronization/synchronization-api10.xml)
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/synchronization/pattern-control-synchronization-api10.xml (rev 0)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/synchronization/pattern-control-synchronization-api10.xml 2008-08-15 08:46:48 UTC (rev 1897)
@@ -0,0 +1,34 @@
+<ns2:process name="pattern-control-synchronization" xmlns:ns2="urn:bpm.jboss:pdl-0.1">
+ <start name="StartA">
+ <seqflow to="TaskA" />
+ <signal-trigger>
+ <signal type="SYSTEM_START_TRIGGER">
+ <message>A</message>
+ </signal>
+ </signal-trigger>
+ </start>
+ <task taskType="None" name="TaskA">
+ <seqflow to="Merge" />
+ <execution-handler class="org.jboss.bpm.pattern.control.synchronization.SynchronizationTest$TaskA" />
+ </task>
+ <start name="StartB">
+ <seqflow to="TaskB" />
+ <signal-trigger>
+ <signal type="SYSTEM_START_TRIGGER">
+ <message>B</message>
+ </signal>
+ </signal-trigger>
+ </start>
+ <task taskType="None" name="TaskB">
+ <seqflow to="Merge" />
+ <execution-handler class="org.jboss.bpm.pattern.control.synchronization.SynchronizationTest$TaskB" />
+ </task>
+ <parallel-gateway name="Merge">
+ <seqflow to="TaskC" />
+ </parallel-gateway>
+ <task taskType="None" name="TaskC">
+ <seqflow to="End" />
+ <execution-handler class="org.jboss.bpm.pattern.control.synchronization.SynchronizationTest$TaskC" />
+ </task>
+ <end name="End" />
+</ns2:process>
\ No newline at end of file
Copied: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/synchronization/pattern-control-synchronization.bpmn (from rev 1895, jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/synchronization/synchronization.bpmn)
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/synchronization/pattern-control-synchronization.bpmn (rev 0)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/synchronization/pattern-control-synchronization.bpmn 2008-08-15 08:46:48 UTC (rev 1897)
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<bpmn:BpmnDiagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:bpmn="http://stp.eclipse.org/bpmn" xmi:id="_AXFyUWOSEd2mS_8SFTXMeQ" iD="_AXFyUGOSEd2mS_8SFTXMeQ">
+ <pools xmi:type="bpmn:Pool" xmi:id="_AXHAcWOSEd2mS_8SFTXMeQ" iD="_AXHAcGOSEd2mS_8SFTXMeQ" name="Pool">
+ <vertices xmi:type="bpmn:Activity" xmi:id="_EPuQwWOSEd2mS_8SFTXMeQ" iD="_EPuQwGOSEd2mS_8SFTXMeQ" outgoingEdges="_YRqagWo0Ed2rarCPPgIl8w" incomingEdges="_YxTj4Wo0Ed2rarCPPgIl8w _ZZSw8Wo0Ed2rarCPPgIl8w" activityType="GatewayParallel"/>
+ <vertices xmi:type="bpmn:Activity" xmi:id="_FY9wwWOSEd2mS_8SFTXMeQ" iD="_FY9wwGOSEd2mS_8SFTXMeQ" outgoingEdges="_YxTj4Wo0Ed2rarCPPgIl8w" name="StartA" activityType="EventStartSignal"/>
+ <vertices xmi:type="bpmn:Activity" xmi:id="_FobwIWOSEd2mS_8SFTXMeQ" iD="_FobwIGOSEd2mS_8SFTXMeQ" outgoingEdges="_ZZSw8Wo0Ed2rarCPPgIl8w" name="StartB" activityType="EventStartSignal"/>
+ <vertices xmi:type="bpmn:Activity" xmi:id="_LFtRIWOSEd2mS_8SFTXMeQ" iD="_LFtRIGOSEd2mS_8SFTXMeQ" incomingEdges="_YRqagWo0Ed2rarCPPgIl8w" activityType="EventEndEmpty"/>
+ <sequenceEdges xmi:type="bpmn:SequenceEdge" xmi:id="_YRqagWo0Ed2rarCPPgIl8w" iD="_YRqagGo0Ed2rarCPPgIl8w" source="_EPuQwWOSEd2mS_8SFTXMeQ" target="_LFtRIWOSEd2mS_8SFTXMeQ"/>
+ <sequenceEdges xmi:type="bpmn:SequenceEdge" xmi:id="_YxTj4Wo0Ed2rarCPPgIl8w" iD="_YxTj4Go0Ed2rarCPPgIl8w" source="_FY9wwWOSEd2mS_8SFTXMeQ" target="_EPuQwWOSEd2mS_8SFTXMeQ"/>
+ <sequenceEdges xmi:type="bpmn:SequenceEdge" xmi:id="_ZZSw8Wo0Ed2rarCPPgIl8w" iD="_ZZSw8Go0Ed2rarCPPgIl8w" source="_FobwIWOSEd2mS_8SFTXMeQ" target="_EPuQwWOSEd2mS_8SFTXMeQ"/>
+ </pools>
+</bpmn:BpmnDiagram>
Copied: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/synchronization/pattern-control-synchronization.bpmn_diagram (from rev 1895, jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/synchronization/synchronization.bpmn_diagram)
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/synchronization/pattern-control-synchronization.bpmn_diagram (rev 0)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/synchronization/pattern-control-synchronization.bpmn_diagram 2008-08-15 08:46:48 UTC (rev 1897)
@@ -0,0 +1,93 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<notation:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:bpmn="http://stp.eclipse.org/bpmn" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.1/notation" xmi:id="_AXGZYGOSEd2mS_8SFTXMeQ" type="Bpmn" name="pattern-control-synchronization.bpmn_diagram" measurementUnit="Pixel">
+ <children xmi:type="notation:Node" xmi:id="_AXIOkGOSEd2mS_8SFTXMeQ" type="1001">
+ <children xmi:type="notation:Node" xmi:id="_AXI1oGOSEd2mS_8SFTXMeQ" type="4008"/>
+ <children xmi:type="notation:Node" xmi:id="_AXI1oWOSEd2mS_8SFTXMeQ" type="5001">
+ <children xmi:type="notation:Node" xmi:id="_EPve4GOSEd2mS_8SFTXMeQ" type="2001">
+ <children xmi:type="notation:Node" xmi:id="_EPwF8GOSEd2mS_8SFTXMeQ" type="4001"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_EPve4WOSEd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_EPve4mOSEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:FillStyle" xmi:id="_EPve42OSEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_EPve5GOSEd2mS_8SFTXMeQ" lineColor="0"/>
+ <element xmi:type="bpmn:Activity" href="pattern-control-synchronization.bpmn#_EPuQwWOSEd2mS_8SFTXMeQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_EPve5WOSEd2mS_8SFTXMeQ" x="132" y="72"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_FY--4GOSEd2mS_8SFTXMeQ" type="2001">
+ <children xmi:type="notation:Node" xmi:id="_FY_l8GOSEd2mS_8SFTXMeQ" type="4001"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_FY--4WOSEd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_FY--4mOSEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:FillStyle" xmi:id="_FY--42OSEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_FY--5GOSEd2mS_8SFTXMeQ" lineColor="0"/>
+ <element xmi:type="bpmn:Activity" href="pattern-control-synchronization.bpmn#_FY9wwWOSEd2mS_8SFTXMeQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_FY--5WOSEd2mS_8SFTXMeQ" x="36" y="24" width="50"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_Foc-QGOSEd2mS_8SFTXMeQ" type="2001">
+ <children xmi:type="notation:Node" xmi:id="_FodlUGOSEd2mS_8SFTXMeQ" type="4001"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_Foc-QWOSEd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_Foc-QmOSEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:FillStyle" xmi:id="_Foc-Q2OSEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_Foc-RGOSEd2mS_8SFTXMeQ" lineColor="0"/>
+ <element xmi:type="bpmn:Activity" href="pattern-control-synchronization.bpmn#_FobwIWOSEd2mS_8SFTXMeQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Foc-RWOSEd2mS_8SFTXMeQ" x="36" y="144"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_LFt4MGOSEd2mS_8SFTXMeQ" type="2001">
+ <children xmi:type="notation:Node" xmi:id="_LFufRWOSEd2mS_8SFTXMeQ" type="4001"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_LFufQGOSEd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_LFufQWOSEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:FillStyle" xmi:id="_LFufQmOSEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_LFufQ2OSEd2mS_8SFTXMeQ" lineColor="0"/>
+ <element xmi:type="bpmn:Activity" href="pattern-control-synchronization.bpmn#_LFtRIWOSEd2mS_8SFTXMeQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LFufRGOSEd2mS_8SFTXMeQ" x="252" y="84"/>
+ </children>
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_AXI1omOSEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_AXI1o2OSEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_AXI1pGOSEd2mS_8SFTXMeQ"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_AXIOkWOSEd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_AXIOkmOSEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:FillStyle" xmi:id="_AXIOk2OSEd2mS_8SFTXMeQ" fillColor="16771304"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_AXIOlGOSEd2mS_8SFTXMeQ" lineColor="11119017"/>
+ <element xmi:type="bpmn:Pool" href="pattern-control-synchronization.bpmn#_AXHAcWOSEd2mS_8SFTXMeQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AXI1pWOSEd2mS_8SFTXMeQ" x="16" y="16" width="357" height="213"/>
+ </children>
+ <styles xmi:type="notation:PageStyle" xmi:id="_AXGZYWOSEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:GuideStyle" xmi:id="_AXGZYmOSEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_AXGZY2OSEd2mS_8SFTXMeQ"/>
+ <element xmi:type="bpmn:BpmnDiagram" href="pattern-control-synchronization.bpmn#_AXFyUWOSEd2mS_8SFTXMeQ"/>
+ <edges xmi:type="notation:Edge" xmi:id="_YRv6EGo0Ed2rarCPPgIl8w" type="3001" source="_EPve4GOSEd2mS_8SFTXMeQ" target="_LFt4MGOSEd2mS_8SFTXMeQ">
+ <children xmi:type="notation:Node" xmi:id="_YRzkcGo0Ed2rarCPPgIl8w" type="4012">
+ <styles xmi:type="notation:FillStyle" xmi:id="_YRzkcWo0Ed2rarCPPgIl8w" fillColor="16776959"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_YRzkcmo0Ed2rarCPPgIl8w" lineColor="16776959"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_YRzkc2o0Ed2rarCPPgIl8w" y="-10"/>
+ </children>
+ <styles xmi:type="notation:RoutingStyle" xmi:id="_YRv6EWo0Ed2rarCPPgIl8w" routing="Rectilinear" smoothness="Normal" closestDistance="true"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_YRv6Emo0Ed2rarCPPgIl8w" fontName="Arial"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_YRv6E2o0Ed2rarCPPgIl8w" lineColor="0"/>
+ <element xmi:type="bpmn:SequenceEdge" href="pattern-control-synchronization.bpmn#_YRqagWo0Ed2rarCPPgIl8w"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_YRv6FGo0Ed2rarCPPgIl8w" points="[24, 1, -218, -1]$[243, -13, 1, -15]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_YxWnMGo0Ed2rarCPPgIl8w" type="3001" source="_FY--4GOSEd2mS_8SFTXMeQ" target="_EPve4GOSEd2mS_8SFTXMeQ">
+ <children xmi:type="notation:Node" xmi:id="_YxXOQGo0Ed2rarCPPgIl8w" type="4012">
+ <styles xmi:type="notation:FillStyle" xmi:id="_YxXOQWo0Ed2rarCPPgIl8w" fillColor="16776959"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_YxXOQmo0Ed2rarCPPgIl8w" lineColor="16776959"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_YxXOQ2o0Ed2rarCPPgIl8w" y="-10"/>
+ </children>
+ <styles xmi:type="notation:RoutingStyle" xmi:id="_YxWnMWo0Ed2rarCPPgIl8w" routing="Rectilinear" smoothness="Normal" closestDistance="true"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_YxWnMmo0Ed2rarCPPgIl8w" fontName="Arial"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_YxWnM2o0Ed2rarCPPgIl8w" lineColor="0"/>
+ <element xmi:type="bpmn:SequenceEdge" href="pattern-control-synchronization.bpmn#_YxTj4Wo0Ed2rarCPPgIl8w"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_YxWnNGo0Ed2rarCPPgIl8w" points="[15, 2, -199, -56]$[222, 41, 8, -17]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_ZZT_EGo0Ed2rarCPPgIl8w" type="3001" source="_Foc-QGOSEd2mS_8SFTXMeQ" target="_EPve4GOSEd2mS_8SFTXMeQ">
+ <children xmi:type="notation:Node" xmi:id="_ZZUmIGo0Ed2rarCPPgIl8w" type="4012">
+ <styles xmi:type="notation:FillStyle" xmi:id="_ZZUmIWo0Ed2rarCPPgIl8w" fillColor="16776959"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_ZZUmImo0Ed2rarCPPgIl8w" lineColor="16776959"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_ZZUmI2o0Ed2rarCPPgIl8w" y="-10"/>
+ </children>
+ <styles xmi:type="notation:RoutingStyle" xmi:id="_ZZT_EWo0Ed2rarCPPgIl8w" routing="Rectilinear" smoothness="Normal" closestDistance="true"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_ZZT_Emo0Ed2rarCPPgIl8w" fontName="Arial"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_ZZT_E2o0Ed2rarCPPgIl8w" lineColor="0"/>
+ <element xmi:type="bpmn:SequenceEdge" href="pattern-control-synchronization.bpmn#_ZZSw8Wo0Ed2rarCPPgIl8w"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_ZZT_FGo0Ed2rarCPPgIl8w" points="[15, -5, -199, 57]$[198, -53, -16, 9]"/>
+ </edges>
+</notation:Diagram>
Added: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/synchronization/pattern-control-synchronization.png
===================================================================
(Binary files differ)
Property changes on: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/synchronization/pattern-control-synchronization.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Deleted: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/synchronization/synchronization-api10.xml
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/synchronization/synchronization-api10.xml 2008-08-15 07:59:12 UTC (rev 1896)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/synchronization/synchronization-api10.xml 2008-08-15 08:46:48 UTC (rev 1897)
@@ -1,34 +0,0 @@
-<ns2:process name="Synchronization" xmlns:ns2="urn:bpm.jboss:pdl-0.1">
- <start name="StartA">
- <seqflow to="TaskA" />
- <signal-trigger>
- <signal type="SYSTEM_START_TRIGGER">
- <message>A</message>
- </signal>
- </signal-trigger>
- </start>
- <task taskType="None" name="TaskA">
- <seqflow to="Merge" />
- <execution-handler class="org.jboss.bpm.pattern.control.synchronization.SynchronizationTest$TaskA" />
- </task>
- <start name="StartB">
- <seqflow to="TaskB" />
- <signal-trigger>
- <signal type="SYSTEM_START_TRIGGER">
- <message>B</message>
- </signal>
- </signal-trigger>
- </start>
- <task taskType="None" name="TaskB">
- <seqflow to="Merge" />
- <execution-handler class="org.jboss.bpm.pattern.control.synchronization.SynchronizationTest$TaskB" />
- </task>
- <parallel-gateway name="Merge">
- <seqflow to="TaskC" />
- </parallel-gateway>
- <task taskType="None" name="TaskC">
- <seqflow to="End" />
- <execution-handler class="org.jboss.bpm.pattern.control.synchronization.SynchronizationTest$TaskC" />
- </task>
- <end name="End" />
-</ns2:process>
\ No newline at end of file
Deleted: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/synchronization/synchronization.bpmn
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/synchronization/synchronization.bpmn 2008-08-15 07:59:12 UTC (rev 1896)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/synchronization/synchronization.bpmn 2008-08-15 08:46:48 UTC (rev 1897)
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<bpmn:BpmnDiagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:bpmn="http://stp.eclipse.org/bpmn" xmi:id="_AXFyUWOSEd2mS_8SFTXMeQ" iD="_AXFyUGOSEd2mS_8SFTXMeQ">
- <pools xmi:type="bpmn:Pool" xmi:id="_AXHAcWOSEd2mS_8SFTXMeQ" iD="_AXHAcGOSEd2mS_8SFTXMeQ" name="Pool">
- <vertices xmi:type="bpmn:Activity" xmi:id="_EPuQwWOSEd2mS_8SFTXMeQ" iD="_EPuQwGOSEd2mS_8SFTXMeQ" outgoingEdges="_YRqagWo0Ed2rarCPPgIl8w" incomingEdges="_YxTj4Wo0Ed2rarCPPgIl8w _ZZSw8Wo0Ed2rarCPPgIl8w" activityType="GatewayParallel"/>
- <vertices xmi:type="bpmn:Activity" xmi:id="_FY9wwWOSEd2mS_8SFTXMeQ" iD="_FY9wwGOSEd2mS_8SFTXMeQ" outgoingEdges="_YxTj4Wo0Ed2rarCPPgIl8w" name="StartA" activityType="EventStartSignal"/>
- <vertices xmi:type="bpmn:Activity" xmi:id="_FobwIWOSEd2mS_8SFTXMeQ" iD="_FobwIGOSEd2mS_8SFTXMeQ" outgoingEdges="_ZZSw8Wo0Ed2rarCPPgIl8w" name="StartB" activityType="EventStartSignal"/>
- <vertices xmi:type="bpmn:Activity" xmi:id="_LFtRIWOSEd2mS_8SFTXMeQ" iD="_LFtRIGOSEd2mS_8SFTXMeQ" incomingEdges="_YRqagWo0Ed2rarCPPgIl8w" activityType="EventEndEmpty"/>
- <sequenceEdges xmi:type="bpmn:SequenceEdge" xmi:id="_YRqagWo0Ed2rarCPPgIl8w" iD="_YRqagGo0Ed2rarCPPgIl8w" source="_EPuQwWOSEd2mS_8SFTXMeQ" target="_LFtRIWOSEd2mS_8SFTXMeQ"/>
- <sequenceEdges xmi:type="bpmn:SequenceEdge" xmi:id="_YxTj4Wo0Ed2rarCPPgIl8w" iD="_YxTj4Go0Ed2rarCPPgIl8w" source="_FY9wwWOSEd2mS_8SFTXMeQ" target="_EPuQwWOSEd2mS_8SFTXMeQ"/>
- <sequenceEdges xmi:type="bpmn:SequenceEdge" xmi:id="_ZZSw8Wo0Ed2rarCPPgIl8w" iD="_ZZSw8Go0Ed2rarCPPgIl8w" source="_FobwIWOSEd2mS_8SFTXMeQ" target="_EPuQwWOSEd2mS_8SFTXMeQ"/>
- </pools>
-</bpmn:BpmnDiagram>
Deleted: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/synchronization/synchronization.bpmn_diagram
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/synchronization/synchronization.bpmn_diagram 2008-08-15 07:59:12 UTC (rev 1896)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/synchronization/synchronization.bpmn_diagram 2008-08-15 08:46:48 UTC (rev 1897)
@@ -1,93 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<notation:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:bpmn="http://stp.eclipse.org/bpmn" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.1/notation" xmi:id="_AXGZYGOSEd2mS_8SFTXMeQ" type="Bpmn" name="synchronization.bpmn_diagram" measurementUnit="Pixel">
- <children xmi:type="notation:Node" xmi:id="_AXIOkGOSEd2mS_8SFTXMeQ" type="1001">
- <children xmi:type="notation:Node" xmi:id="_AXI1oGOSEd2mS_8SFTXMeQ" type="4008"/>
- <children xmi:type="notation:Node" xmi:id="_AXI1oWOSEd2mS_8SFTXMeQ" type="5001">
- <children xmi:type="notation:Node" xmi:id="_EPve4GOSEd2mS_8SFTXMeQ" type="2001">
- <children xmi:type="notation:Node" xmi:id="_EPwF8GOSEd2mS_8SFTXMeQ" type="4001"/>
- <styles xmi:type="notation:FontStyle" xmi:id="_EPve4WOSEd2mS_8SFTXMeQ" fontName="Arial"/>
- <styles xmi:type="notation:DescriptionStyle" xmi:id="_EPve4mOSEd2mS_8SFTXMeQ"/>
- <styles xmi:type="notation:FillStyle" xmi:id="_EPve42OSEd2mS_8SFTXMeQ"/>
- <styles xmi:type="notation:LineStyle" xmi:id="_EPve5GOSEd2mS_8SFTXMeQ" lineColor="0"/>
- <element xmi:type="bpmn:Activity" href="synchronization.bpmn#_EPuQwWOSEd2mS_8SFTXMeQ"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_EPve5WOSEd2mS_8SFTXMeQ" x="132" y="72"/>
- </children>
- <children xmi:type="notation:Node" xmi:id="_FY--4GOSEd2mS_8SFTXMeQ" type="2001">
- <children xmi:type="notation:Node" xmi:id="_FY_l8GOSEd2mS_8SFTXMeQ" type="4001"/>
- <styles xmi:type="notation:FontStyle" xmi:id="_FY--4WOSEd2mS_8SFTXMeQ" fontName="Arial"/>
- <styles xmi:type="notation:DescriptionStyle" xmi:id="_FY--4mOSEd2mS_8SFTXMeQ"/>
- <styles xmi:type="notation:FillStyle" xmi:id="_FY--42OSEd2mS_8SFTXMeQ"/>
- <styles xmi:type="notation:LineStyle" xmi:id="_FY--5GOSEd2mS_8SFTXMeQ" lineColor="0"/>
- <element xmi:type="bpmn:Activity" href="synchronization.bpmn#_FY9wwWOSEd2mS_8SFTXMeQ"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_FY--5WOSEd2mS_8SFTXMeQ" x="36" y="24" width="50"/>
- </children>
- <children xmi:type="notation:Node" xmi:id="_Foc-QGOSEd2mS_8SFTXMeQ" type="2001">
- <children xmi:type="notation:Node" xmi:id="_FodlUGOSEd2mS_8SFTXMeQ" type="4001"/>
- <styles xmi:type="notation:FontStyle" xmi:id="_Foc-QWOSEd2mS_8SFTXMeQ" fontName="Arial"/>
- <styles xmi:type="notation:DescriptionStyle" xmi:id="_Foc-QmOSEd2mS_8SFTXMeQ"/>
- <styles xmi:type="notation:FillStyle" xmi:id="_Foc-Q2OSEd2mS_8SFTXMeQ"/>
- <styles xmi:type="notation:LineStyle" xmi:id="_Foc-RGOSEd2mS_8SFTXMeQ" lineColor="0"/>
- <element xmi:type="bpmn:Activity" href="synchronization.bpmn#_FobwIWOSEd2mS_8SFTXMeQ"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Foc-RWOSEd2mS_8SFTXMeQ" x="36" y="144"/>
- </children>
- <children xmi:type="notation:Node" xmi:id="_LFt4MGOSEd2mS_8SFTXMeQ" type="2001">
- <children xmi:type="notation:Node" xmi:id="_LFufRWOSEd2mS_8SFTXMeQ" type="4001"/>
- <styles xmi:type="notation:FontStyle" xmi:id="_LFufQGOSEd2mS_8SFTXMeQ" fontName="Arial"/>
- <styles xmi:type="notation:DescriptionStyle" xmi:id="_LFufQWOSEd2mS_8SFTXMeQ"/>
- <styles xmi:type="notation:FillStyle" xmi:id="_LFufQmOSEd2mS_8SFTXMeQ"/>
- <styles xmi:type="notation:LineStyle" xmi:id="_LFufQ2OSEd2mS_8SFTXMeQ" lineColor="0"/>
- <element xmi:type="bpmn:Activity" href="synchronization.bpmn#_LFtRIWOSEd2mS_8SFTXMeQ"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LFufRGOSEd2mS_8SFTXMeQ" x="252" y="84"/>
- </children>
- <styles xmi:type="notation:DrawerStyle" xmi:id="_AXI1omOSEd2mS_8SFTXMeQ"/>
- <styles xmi:type="notation:SortingStyle" xmi:id="_AXI1o2OSEd2mS_8SFTXMeQ"/>
- <styles xmi:type="notation:FilteringStyle" xmi:id="_AXI1pGOSEd2mS_8SFTXMeQ"/>
- </children>
- <styles xmi:type="notation:FontStyle" xmi:id="_AXIOkWOSEd2mS_8SFTXMeQ" fontName="Arial"/>
- <styles xmi:type="notation:DescriptionStyle" xmi:id="_AXIOkmOSEd2mS_8SFTXMeQ"/>
- <styles xmi:type="notation:FillStyle" xmi:id="_AXIOk2OSEd2mS_8SFTXMeQ" fillColor="16771304"/>
- <styles xmi:type="notation:LineStyle" xmi:id="_AXIOlGOSEd2mS_8SFTXMeQ" lineColor="11119017"/>
- <element xmi:type="bpmn:Pool" href="synchronization.bpmn#_AXHAcWOSEd2mS_8SFTXMeQ"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AXI1pWOSEd2mS_8SFTXMeQ" x="16" y="16" width="357" height="213"/>
- </children>
- <styles xmi:type="notation:PageStyle" xmi:id="_AXGZYWOSEd2mS_8SFTXMeQ"/>
- <styles xmi:type="notation:GuideStyle" xmi:id="_AXGZYmOSEd2mS_8SFTXMeQ"/>
- <styles xmi:type="notation:DescriptionStyle" xmi:id="_AXGZY2OSEd2mS_8SFTXMeQ"/>
- <element xmi:type="bpmn:BpmnDiagram" href="synchronization.bpmn#_AXFyUWOSEd2mS_8SFTXMeQ"/>
- <edges xmi:type="notation:Edge" xmi:id="_YRv6EGo0Ed2rarCPPgIl8w" type="3001" source="_EPve4GOSEd2mS_8SFTXMeQ" target="_LFt4MGOSEd2mS_8SFTXMeQ">
- <children xmi:type="notation:Node" xmi:id="_YRzkcGo0Ed2rarCPPgIl8w" type="4012">
- <styles xmi:type="notation:FillStyle" xmi:id="_YRzkcWo0Ed2rarCPPgIl8w" fillColor="16776959"/>
- <styles xmi:type="notation:LineStyle" xmi:id="_YRzkcmo0Ed2rarCPPgIl8w" lineColor="16776959"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_YRzkc2o0Ed2rarCPPgIl8w" y="-10"/>
- </children>
- <styles xmi:type="notation:RoutingStyle" xmi:id="_YRv6EWo0Ed2rarCPPgIl8w" routing="Rectilinear" smoothness="Normal" closestDistance="true"/>
- <styles xmi:type="notation:FontStyle" xmi:id="_YRv6Emo0Ed2rarCPPgIl8w" fontName="Arial"/>
- <styles xmi:type="notation:LineStyle" xmi:id="_YRv6E2o0Ed2rarCPPgIl8w" lineColor="0"/>
- <element xmi:type="bpmn:SequenceEdge" href="synchronization.bpmn#_YRqagWo0Ed2rarCPPgIl8w"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_YRv6FGo0Ed2rarCPPgIl8w" points="[24, 1, -218, -1]$[243, -13, 1, -15]"/>
- </edges>
- <edges xmi:type="notation:Edge" xmi:id="_YxWnMGo0Ed2rarCPPgIl8w" type="3001" source="_FY--4GOSEd2mS_8SFTXMeQ" target="_EPve4GOSEd2mS_8SFTXMeQ">
- <children xmi:type="notation:Node" xmi:id="_YxXOQGo0Ed2rarCPPgIl8w" type="4012">
- <styles xmi:type="notation:FillStyle" xmi:id="_YxXOQWo0Ed2rarCPPgIl8w" fillColor="16776959"/>
- <styles xmi:type="notation:LineStyle" xmi:id="_YxXOQmo0Ed2rarCPPgIl8w" lineColor="16776959"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_YxXOQ2o0Ed2rarCPPgIl8w" y="-10"/>
- </children>
- <styles xmi:type="notation:RoutingStyle" xmi:id="_YxWnMWo0Ed2rarCPPgIl8w" routing="Rectilinear" smoothness="Normal" closestDistance="true"/>
- <styles xmi:type="notation:FontStyle" xmi:id="_YxWnMmo0Ed2rarCPPgIl8w" fontName="Arial"/>
- <styles xmi:type="notation:LineStyle" xmi:id="_YxWnM2o0Ed2rarCPPgIl8w" lineColor="0"/>
- <element xmi:type="bpmn:SequenceEdge" href="synchronization.bpmn#_YxTj4Wo0Ed2rarCPPgIl8w"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_YxWnNGo0Ed2rarCPPgIl8w" points="[15, 2, -199, -56]$[222, 41, 8, -17]"/>
- </edges>
- <edges xmi:type="notation:Edge" xmi:id="_ZZT_EGo0Ed2rarCPPgIl8w" type="3001" source="_Foc-QGOSEd2mS_8SFTXMeQ" target="_EPve4GOSEd2mS_8SFTXMeQ">
- <children xmi:type="notation:Node" xmi:id="_ZZUmIGo0Ed2rarCPPgIl8w" type="4012">
- <styles xmi:type="notation:FillStyle" xmi:id="_ZZUmIWo0Ed2rarCPPgIl8w" fillColor="16776959"/>
- <styles xmi:type="notation:LineStyle" xmi:id="_ZZUmImo0Ed2rarCPPgIl8w" lineColor="16776959"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_ZZUmI2o0Ed2rarCPPgIl8w" y="-10"/>
- </children>
- <styles xmi:type="notation:RoutingStyle" xmi:id="_ZZT_EWo0Ed2rarCPPgIl8w" routing="Rectilinear" smoothness="Normal" closestDistance="true"/>
- <styles xmi:type="notation:FontStyle" xmi:id="_ZZT_Emo0Ed2rarCPPgIl8w" fontName="Arial"/>
- <styles xmi:type="notation:LineStyle" xmi:id="_ZZT_E2o0Ed2rarCPPgIl8w" lineColor="0"/>
- <element xmi:type="bpmn:SequenceEdge" href="synchronization.bpmn#_ZZSw8Wo0Ed2rarCPPgIl8w"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_ZZT_FGo0Ed2rarCPPgIl8w" points="[15, -5, -199, 57]$[198, -53, -16, 9]"/>
- </edges>
-</notation:Diagram>
Deleted: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/synchronization/synchronization.png
===================================================================
(Binary files differ)
17 years, 8 months
JBoss JBPM SVN: r1896 - in jbossbpm/spec/trunk/modules: testsuite/src/test/java/org/jboss/bpm/cts/gateway and 5 other directories.
by do-not-reply@jboss.org
Author: thomas.diesler(a)jboss.com
Date: 2008-08-15 03:59:12 -0400 (Fri, 15 Aug 2008)
New Revision: 1896
Added:
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/exclusive/ExclusiveGatewayMergeMarshallerTest.java
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/exclusive/ExclusiveGatewayMergeTest.java
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/exclusive/ExclusiveGatewaySplitMarshallerTest.java
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/exclusive/ExclusiveGatewaySplitTest.java
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/inclusive/InclusiveGatewayMergeMarshallerTest.java
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/inclusive/InclusiveGatewayMergeTest.java
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/inclusive/InclusiveGatewaySplitMarshallerTest.java
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/inclusive/InclusiveGatewaySplitTest.java
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/parallel/
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/parallel/ParallelGatewayMergeMarshallerTest.java
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/parallel/ParallelGatewayMergeTest.java
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/parallel/ParallelGatewaySplitMarshallerTest.java
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/parallel/ParallelGatewaySplitTest.java
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/cts/gateway/parallel/
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/cts/gateway/parallel/parallel-merge.bpmn
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/cts/gateway/parallel/parallel-merge.bpmn_diagram
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/cts/gateway/parallel/parallel-merge.png
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/cts/gateway/parallel/parallel-split.bpmn
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/cts/gateway/parallel/parallel-split.bpmn_diagram
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/cts/gateway/parallel/parallel-split.png
Removed:
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/exclusive/ExclusiveMergeAPITest.java
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/exclusive/ExclusiveMergeTest.java
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/exclusive/ExclusiveSplitAPITest.java
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/exclusive/ExclusiveSplitTest.java
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/inclusive/InclusiveMergeAPITest.java
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/inclusive/InclusiveMergeTest.java
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/inclusive/InclusiveSplitAPITest.java
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/inclusive/InclusiveSplitTest.java
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/cts/gateway/parallel/parallel-merge.bpmn
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/cts/gateway/parallel/parallel-merge.bpmn_diagram
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/cts/gateway/parallel/parallel-merge.png
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/cts/gateway/parallel/parallel-split.bpmn
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/cts/gateway/parallel/parallel-split.bpmn_diagram
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/cts/gateway/parallel/parallel-split.png
Modified:
jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/client/internal/ExecutionManagerImpl.java
Log:
Restore all CTS tests
Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/client/internal/ExecutionManagerImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/client/internal/ExecutionManagerImpl.java 2008-08-14 19:43:52 UTC (rev 1895)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/client/internal/ExecutionManagerImpl.java 2008-08-15 07:59:12 UTC (rev 1896)
@@ -58,7 +58,7 @@
@Override
public void startProcess(Process proc, Attachments att)
{
- ProcessImpl procImpl = (ProcessImpl)proc;
+ final ProcessImpl procImpl = (ProcessImpl)proc;
procImpl.setProcessStatus(ProcessStatus.Active);
SignalManager signalManager = SignalManager.locateSignalManager();
@@ -70,7 +70,9 @@
{
public void start(Token token)
{
- new Thread(runner).start();
+ Thread executorThread = new Thread(runner);
+ procImpl.setExecutorThread(executorThread);
+ executorThread.start();
}
};
TokenExecutor tokenExecutor = new TokenExecutorImpl(rtProc, callback);
@@ -129,7 +131,6 @@
{
TokenExecutor tokenExecutor = rtProc.getTokenExecutor();
ProcessImpl procImpl = (ProcessImpl)rtProc.getProcess();
- procImpl.setExecutorThread(Thread.currentThread());
String procName = procImpl.getName();
ProcessStatus procStatus = procImpl.getProcessStatus();
Copied: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/exclusive/ExclusiveGatewayMergeMarshallerTest.java (from rev 1895, jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/exclusive/ExclusiveMergeAPITest.java)
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/exclusive/ExclusiveGatewayMergeMarshallerTest.java (rev 0)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/exclusive/ExclusiveGatewayMergeMarshallerTest.java 2008-08-15 07:59:12 UTC (rev 1896)
@@ -0,0 +1,55 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.cts.gateway.exclusive;
+
+// $Id$
+
+import java.io.StringWriter;
+
+import org.jboss.bpm.client.ProcessManager;
+import org.jboss.bpm.model.Process;
+
+/**
+ * ExclusiveMergeTest using the API Descriptor
+ *
+ * @author thomas.diesler(a)jboss.com
+ * @since 06-Aug-2008
+ */
+public class ExclusiveGatewayMergeMarshallerTest extends ExclusiveGatewayMergeTest
+{
+ @Override
+ public Process getProcess()
+ {
+ Process proc = super.getProcess();
+
+ // Marshall the process to a string
+ StringWriter strwr = new StringWriter();
+ marshallProcess(proc, strwr);
+ String procXML = strwr.toString();
+
+ // Recreate the process from the marshalled process
+ ProcessManager procManager = ProcessManager.locateProcessManager();
+ proc = procManager.createProcess(procXML);
+
+ return proc;
+ }
+}
Copied: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/exclusive/ExclusiveGatewayMergeTest.java (from rev 1895, jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/exclusive/ExclusiveMergeTest.java)
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/exclusive/ExclusiveGatewayMergeTest.java (rev 0)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/exclusive/ExclusiveGatewayMergeTest.java 2008-08-15 07:59:12 UTC (rev 1896)
@@ -0,0 +1,202 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.cts.gateway.exclusive;
+
+// $Id$
+
+import org.jboss.bpm.client.SignalListener;
+import org.jboss.bpm.client.SignalManager;
+import org.jboss.bpm.model.EventBuilder;
+import org.jboss.bpm.model.Process;
+import org.jboss.bpm.model.ProcessBuilder;
+import org.jboss.bpm.model.ProcessBuilderFactory;
+import org.jboss.bpm.model.Signal;
+import org.jboss.bpm.model.Gateway.GatewayType;
+import org.jboss.bpm.model.Signal.SignalType;
+import org.jboss.bpm.runtime.ExecutionContext;
+import org.jboss.bpm.runtime.ExecutionHandler;
+import org.jboss.bpm.runtime.Token;
+import org.jboss.bpm.test.DefaultEngineTestCase;
+
+/**
+ * Exclusive data-based gateway that has multiple incoming sequence flows. The first token arriving from one of the
+ * incoming sequence flows proceeds along the outgoing sequence flow. All other token are ignored until a token has
+ * arrived from each incoming sequence flow.
+ *
+ * @author thomas.diesler(a)jboss.com
+ * @since 06-Aug-2008
+ */
+public class ExclusiveGatewayMergeTest extends DefaultEngineTestCase
+{
+ public void testGateA() throws Exception
+ {
+ Process proc = getProcess();
+ proc.startProcess();
+
+ // Add a signal listener that sends the other start trigger signal
+ SignalManager signalManager = SignalManager.locateSignalManager();
+ Signal startTrigger = new Signal(getName(), SignalType.SYSTEM_START_TRIGGER, "B");
+ signalManager.addSignalListener(getName(), new MergeListener(getName(), startTrigger));
+
+ // Send start trigger signal
+ signalManager.throwSignal(proc.getName(), new Signal(getName(), SignalType.SYSTEM_START_TRIGGER, "A"));
+
+ // Wait for the process to end
+ proc.waitForEnd();
+
+ // Verify the result
+ assertEquals("TaskA", TaskC.taskValue);
+ }
+
+ public void testGateB() throws Exception
+ {
+ Process proc = getProcess();
+ proc.startProcess();
+
+ // Add a signal listener that sends the other start trigger signal
+ SignalManager signalManager = SignalManager.locateSignalManager();
+ Signal startTrigger = new Signal(getName(), SignalType.SYSTEM_START_TRIGGER, "A");
+ signalManager.addSignalListener(getName(), new MergeListener(getName(), startTrigger));
+
+ // Send start trigger signal
+ signalManager.throwSignal(proc.getName(), new Signal(getName(), SignalType.SYSTEM_START_TRIGGER, "B"));
+
+ // Wait for the process to end
+ proc.waitForEnd();
+
+ // Verify the result
+ assertEquals("TaskB", TaskC.taskValue);
+ }
+
+ public void testInvalidToken() throws Exception
+ {
+ Process proc = getProcess();
+ proc.startProcess();
+
+ // Add a signal listener that sends the other start trigger signal
+ SignalManager signalManager = SignalManager.locateSignalManager();
+ Signal startTrigger = new Signal(getName(), SignalType.SYSTEM_START_TRIGGER, "A");
+ signalManager.addSignalListener(getName(), new MergeListener(getName(), startTrigger));
+
+ // Send start trigger signal
+ signalManager.throwSignal(proc.getName(), new Signal(getName(), SignalType.SYSTEM_START_TRIGGER, "A"));
+
+ try
+ {
+ proc.waitForEnd();
+ fail("Expected: Unexpected token from: SequenceFlow[TaskA->Merge]");
+ }
+ catch (RuntimeException rte)
+ {
+ // expected
+ }
+
+ // Restart the process
+ proc.startProcess();
+
+ // Add a signal listener that sends the other start trigger signal
+ startTrigger = new Signal(getName(), SignalType.SYSTEM_START_TRIGGER, "B");
+ signalManager.addSignalListener(getName(), new MergeListener(getName(), startTrigger));
+
+ // Send start trigger signal
+ signalManager.throwSignal(proc.getName(), new Signal(getName(), SignalType.SYSTEM_START_TRIGGER, "A"));
+
+ // Wait for the process to end
+ proc.waitForEnd();
+
+ // Verify the result
+ assertEquals("TaskA", TaskC.taskValue);
+ }
+
+ public Process getProcess()
+ {
+ ProcessBuilder procBuilder = ProcessBuilderFactory.newInstance().newProcessBuilder();
+ EventBuilder eventBuilder = procBuilder.addProcess(getName()).addStartEvent("StartA");
+ eventBuilder.addSignalTrigger(SignalType.SYSTEM_START_TRIGGER, "A").addSequenceFlow("TaskA");
+ procBuilder.addTask("TaskA").addExecutionHandler(TaskA.class).addSequenceFlow("Merge");
+ eventBuilder = procBuilder.addStartEvent("StartB");
+ eventBuilder.addSignalTrigger(SignalType.SYSTEM_START_TRIGGER, "B").addSequenceFlow("TaskB");
+ procBuilder.addTask("TaskB").addExecutionHandler(TaskB.class).addSequenceFlow("Merge");
+ procBuilder.addGateway("Merge", GatewayType.Exclusive).addSequenceFlow("TaskC");
+ procBuilder.addTask("TaskC").addExecutionHandler(TaskC.class).addSequenceFlow("End");
+ procBuilder.addEndEvent("End");
+ Process proc = procBuilder.getProcess();
+ return proc;
+ }
+
+ class MergeListener implements SignalListener
+ {
+ private String fromRef;
+ private Signal nextSignal;
+
+ public MergeListener(String fromRef, Signal nextSignal)
+ {
+ this.fromRef = fromRef;
+ this.nextSignal = nextSignal;
+ }
+
+ public void catchSignal(Signal signal)
+ {
+ if (signal.getSignalType() == SignalType.SYSTEM_GATEWAY_ENTER)
+ {
+ if (nextSignal != null)
+ {
+ SignalManager signalManager = SignalManager.locateSignalManager();
+ signalManager.throwSignal(fromRef, nextSignal);
+ nextSignal = null;
+ }
+ }
+ }
+ }
+
+ @SuppressWarnings("serial")
+ public static class TaskA implements ExecutionHandler
+ {
+ public void execute(Token token)
+ {
+ ExecutionContext exContext = token.getExecutionContext();
+ exContext.addAttachment("taskValue", "TaskA");
+ }
+ }
+
+ @SuppressWarnings("serial")
+ public static class TaskB implements ExecutionHandler
+ {
+ public void execute(Token token)
+ {
+ ExecutionContext exContext = token.getExecutionContext();
+ exContext.addAttachment("taskValue", "TaskB");
+ }
+ }
+
+ @SuppressWarnings("serial")
+ public static class TaskC implements ExecutionHandler
+ {
+ public static Object taskValue;
+
+ public void execute(Token token)
+ {
+ ExecutionContext exContext = token.getExecutionContext();
+ taskValue = exContext.getAttachment("taskValue");
+ }
+ }
+}
Copied: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/exclusive/ExclusiveGatewaySplitMarshallerTest.java (from rev 1895, jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/exclusive/ExclusiveSplitAPITest.java)
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/exclusive/ExclusiveGatewaySplitMarshallerTest.java (rev 0)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/exclusive/ExclusiveGatewaySplitMarshallerTest.java 2008-08-15 07:59:12 UTC (rev 1896)
@@ -0,0 +1,55 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.cts.gateway.exclusive;
+
+// $Id$
+
+import java.io.StringWriter;
+
+import org.jboss.bpm.client.ProcessManager;
+import org.jboss.bpm.model.Process;
+
+/**
+ * ExclusiveSplitTest using the API Descriptor
+ *
+ * @author thomas.diesler(a)jboss.com
+ * @since 06-Aug-2008
+ */
+public class ExclusiveGatewaySplitMarshallerTest extends ExclusiveGatewaySplitTest
+{
+ @Override
+ public Process getProcess()
+ {
+ Process proc = super.getProcess();
+
+ // Marshall the process to a string
+ StringWriter strwr = new StringWriter();
+ marshallProcess(proc, strwr);
+ String procXML = strwr.toString();
+
+ // Recreate the process from the marshalled process
+ ProcessManager procManager = ProcessManager.locateProcessManager();
+ proc = procManager.createProcess(procXML);
+
+ return proc;
+ }
+}
Copied: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/exclusive/ExclusiveGatewaySplitTest.java (from rev 1895, jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/exclusive/ExclusiveSplitTest.java)
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/exclusive/ExclusiveGatewaySplitTest.java (rev 0)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/exclusive/ExclusiveGatewaySplitTest.java 2008-08-15 07:59:12 UTC (rev 1896)
@@ -0,0 +1,104 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.cts.gateway.exclusive;
+
+// $Id$
+
+import java.util.List;
+
+import org.jboss.bpm.model.GatewayBuilder;
+import org.jboss.bpm.model.Process;
+import org.jboss.bpm.model.ProcessBuilder;
+import org.jboss.bpm.model.ProcessBuilderFactory;
+import org.jboss.bpm.model.Signal;
+import org.jboss.bpm.model.Expression.ExpressionLanguage;
+import org.jboss.bpm.model.Gateway.GatewayType;
+import org.jboss.bpm.runtime.BasicAttachments;
+import org.jboss.bpm.test.DefaultEngineTestCase;
+
+/**
+ * Exclusive data-based gateway that has conditional outgoing sequence flows.
+ * Only one of the gates is taken. It is an error if no gate is applicable.
+ *
+ * @author thomas.diesler(a)jboss.com
+ * @since 06-Aug-2008
+ */
+public class ExclusiveGatewaySplitTest extends DefaultEngineTestCase
+{
+ public void testGateA() throws Exception
+ {
+ Process proc = getProcess();
+
+ BasicAttachments att = new BasicAttachments();
+ att.addAttachment("foo", "5");
+ proc.startProcess(att);
+ proc.waitForEnd();
+
+ List<Signal> endSignals = getSignals(Signal.SignalType.SYSTEM_END_EVENT_EXIT);
+ assertEquals(1, endSignals.size());
+ assertEquals("EndA", endSignals.get(0).getFromRef());
+ }
+
+ public void testGateB() throws Exception
+ {
+ Process proc = getProcess();
+
+ BasicAttachments att = new BasicAttachments();
+ att.addAttachment("foo", "15");
+ proc.startProcess(att);
+ proc.waitForEnd();
+
+ List<Signal> endSignals = getSignals(Signal.SignalType.SYSTEM_END_EVENT_EXIT);
+ assertEquals(1, endSignals.size());
+ assertEquals("EndB", endSignals.get(0).getFromRef());
+ }
+
+ public void testInvalidGate() throws Exception
+ {
+ Process proc = getProcess();
+
+ BasicAttachments att = new BasicAttachments();
+ att.addAttachment("foo", "10");
+ proc.startProcess(att);
+ try
+ {
+ proc.waitForEnd();
+ fail("No gate defained for foo==10");
+ }
+ catch (RuntimeException rte)
+ {
+ // expected
+ }
+ }
+
+ public Process getProcess()
+ {
+ ProcessBuilder procBuilder = ProcessBuilderFactory.newInstance().newProcessBuilder();
+ procBuilder.addProcess(getName()).addStartEvent("Start").addSequenceFlow("Split");
+ GatewayBuilder gatewayBuilder = procBuilder.addGateway("Split", GatewayType.Exclusive);
+ gatewayBuilder.addConditionalGate("EndA", ExpressionLanguage.MVEL, "foo < 10");
+ gatewayBuilder.addConditionalGate("EndB", ExpressionLanguage.MVEL, "foo > 10");
+ procBuilder.addEndEvent("EndA").addEndEvent("EndB");
+ Process proc = procBuilder.getProcess();
+ return proc;
+ }
+}
Deleted: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/exclusive/ExclusiveMergeAPITest.java
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/exclusive/ExclusiveMergeAPITest.java 2008-08-14 19:43:52 UTC (rev 1895)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/exclusive/ExclusiveMergeAPITest.java 2008-08-15 07:59:12 UTC (rev 1896)
@@ -1,55 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2005, JBoss Inc., and individual contributors as indicated
- * by the @authors tag. See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.bpm.cts.gateway.exclusive;
-
-// $Id$
-
-import java.io.StringWriter;
-
-import org.jboss.bpm.client.ProcessManager;
-import org.jboss.bpm.model.Process;
-
-/**
- * ExclusiveMergeTest using the API Descriptor
- *
- * @author thomas.diesler(a)jboss.com
- * @since 06-Aug-2008
- */
-public class ExclusiveMergeAPITest extends ExclusiveMergeTest
-{
- @Override
- public Process getProcess()
- {
- Process proc = super.getProcess();
-
- // Marshall the process to a string
- StringWriter strwr = new StringWriter();
- marshallProcess(proc, strwr);
- String procXML = strwr.toString();
-
- // Recreate the process from the marshalled process
- ProcessManager procManager = ProcessManager.locateProcessManager();
- proc = procManager.createProcess(procXML);
-
- return proc;
- }
-}
Deleted: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/exclusive/ExclusiveMergeTest.java
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/exclusive/ExclusiveMergeTest.java 2008-08-14 19:43:52 UTC (rev 1895)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/exclusive/ExclusiveMergeTest.java 2008-08-15 07:59:12 UTC (rev 1896)
@@ -1,202 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2005, JBoss Inc., and individual contributors as indicated
- * by the @authors tag. See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.bpm.cts.gateway.exclusive;
-
-// $Id$
-
-import org.jboss.bpm.client.SignalListener;
-import org.jboss.bpm.client.SignalManager;
-import org.jboss.bpm.model.EventBuilder;
-import org.jboss.bpm.model.Process;
-import org.jboss.bpm.model.ProcessBuilder;
-import org.jboss.bpm.model.ProcessBuilderFactory;
-import org.jboss.bpm.model.Signal;
-import org.jboss.bpm.model.Gateway.GatewayType;
-import org.jboss.bpm.model.Signal.SignalType;
-import org.jboss.bpm.runtime.ExecutionContext;
-import org.jboss.bpm.runtime.ExecutionHandler;
-import org.jboss.bpm.runtime.Token;
-import org.jboss.bpm.test.DefaultEngineTestCase;
-
-/**
- * Exclusive data-based gateway that has multiple incoming sequence flows. The first token arriving from one of the
- * incoming sequence flows proceeds along the outgoing sequence flow. All other token are ignored until a token has
- * arrived from each incoming sequence flow.
- *
- * @author thomas.diesler(a)jboss.com
- * @since 06-Aug-2008
- */
-public class ExclusiveMergeTest extends DefaultEngineTestCase
-{
- public void testGateA() throws Exception
- {
- Process proc = getProcess();
- proc.startProcess();
-
- // Add a signal listener that sends the other start trigger signal
- SignalManager signalManager = SignalManager.locateSignalManager();
- Signal startTrigger = new Signal(getName(), SignalType.SYSTEM_START_TRIGGER, "B");
- signalManager.addSignalListener(getName(), new MergeListener(getName(), startTrigger));
-
- // Send start trigger signal
- signalManager.throwSignal(proc.getName(), new Signal(getName(), SignalType.SYSTEM_START_TRIGGER, "A"));
-
- // Wait for the process to end
- proc.waitForEnd();
-
- // Verify the result
- assertEquals("TaskA", TaskC.taskValue);
- }
-
- public void testGateB() throws Exception
- {
- Process proc = getProcess();
- proc.startProcess();
-
- // Add a signal listener that sends the other start trigger signal
- SignalManager signalManager = SignalManager.locateSignalManager();
- Signal startTrigger = new Signal(getName(), SignalType.SYSTEM_START_TRIGGER, "A");
- signalManager.addSignalListener(getName(), new MergeListener(getName(), startTrigger));
-
- // Send start trigger signal
- signalManager.throwSignal(proc.getName(), new Signal(getName(), SignalType.SYSTEM_START_TRIGGER, "B"));
-
- // Wait for the process to end
- proc.waitForEnd();
-
- // Verify the result
- assertEquals("TaskB", TaskC.taskValue);
- }
-
- public void testInvalidToken() throws Exception
- {
- Process proc = getProcess();
- proc.startProcess();
-
- // Add a signal listener that sends the other start trigger signal
- SignalManager signalManager = SignalManager.locateSignalManager();
- Signal startTrigger = new Signal(getName(), SignalType.SYSTEM_START_TRIGGER, "A");
- signalManager.addSignalListener(getName(), new MergeListener(getName(), startTrigger));
-
- // Send start trigger signal
- signalManager.throwSignal(proc.getName(), new Signal(getName(), SignalType.SYSTEM_START_TRIGGER, "A"));
-
- try
- {
- proc.waitForEnd();
- fail("Expected: Unexpected token from: SequenceFlow[TaskA->Merge]");
- }
- catch (RuntimeException rte)
- {
- // expected
- }
-
- // Restart the process
- proc.startProcess();
-
- // Add a signal listener that sends the other start trigger signal
- startTrigger = new Signal(getName(), SignalType.SYSTEM_START_TRIGGER, "B");
- signalManager.addSignalListener(getName(), new MergeListener(getName(), startTrigger));
-
- // Send start trigger signal
- signalManager.throwSignal(proc.getName(), new Signal(getName(), SignalType.SYSTEM_START_TRIGGER, "A"));
-
- // Wait for the process to end
- proc.waitForEnd();
-
- // Verify the result
- assertEquals("TaskA", TaskC.taskValue);
- }
-
- public Process getProcess()
- {
- ProcessBuilder procBuilder = ProcessBuilderFactory.newInstance().newProcessBuilder();
- EventBuilder eventBuilder = procBuilder.addProcess(getName()).addStartEvent("StartA");
- eventBuilder.addSignalTrigger(SignalType.SYSTEM_START_TRIGGER, "A").addSequenceFlow("TaskA");
- procBuilder.addTask("TaskA").addExecutionHandler(TaskA.class).addSequenceFlow("Merge");
- eventBuilder = procBuilder.addStartEvent("StartB");
- eventBuilder.addSignalTrigger(SignalType.SYSTEM_START_TRIGGER, "B").addSequenceFlow("TaskB");
- procBuilder.addTask("TaskB").addExecutionHandler(TaskB.class).addSequenceFlow("Merge");
- procBuilder.addGateway("Merge", GatewayType.Exclusive).addSequenceFlow("TaskC");
- procBuilder.addTask("TaskC").addExecutionHandler(TaskC.class).addSequenceFlow("End");
- procBuilder.addEndEvent("End");
- Process proc = procBuilder.getProcess();
- return proc;
- }
-
- public static class MergeListener implements SignalListener
- {
- private String fromRef;
- private Signal nextSignal;
-
- public MergeListener(String fromRef, Signal nextSignal)
- {
- this.fromRef = fromRef;
- this.nextSignal = nextSignal;
- }
-
- public void catchSignal(Signal signal)
- {
- if (signal.getSignalType() == SignalType.SYSTEM_GATEWAY_ENTER)
- {
- if (nextSignal != null)
- {
- SignalManager signalManager = SignalManager.locateSignalManager();
- signalManager.throwSignal(fromRef, nextSignal);
- nextSignal = null;
- }
- }
- }
- }
-
- @SuppressWarnings("serial")
- public static class TaskA implements ExecutionHandler
- {
- public void execute(Token token)
- {
- ExecutionContext exContext = token.getExecutionContext();
- exContext.addAttachment("taskValue", "TaskA");
- }
- }
-
- @SuppressWarnings("serial")
- public static class TaskB implements ExecutionHandler
- {
- public void execute(Token token)
- {
- ExecutionContext exContext = token.getExecutionContext();
- exContext.addAttachment("taskValue", "TaskB");
- }
- }
-
- @SuppressWarnings("serial")
- public static class TaskC implements ExecutionHandler
- {
- public static Object taskValue;
-
- public void execute(Token token)
- {
- ExecutionContext exContext = token.getExecutionContext();
- taskValue = exContext.getAttachment("taskValue");
- }
- }
-}
Deleted: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/exclusive/ExclusiveSplitAPITest.java
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/exclusive/ExclusiveSplitAPITest.java 2008-08-14 19:43:52 UTC (rev 1895)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/exclusive/ExclusiveSplitAPITest.java 2008-08-15 07:59:12 UTC (rev 1896)
@@ -1,55 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2005, JBoss Inc., and individual contributors as indicated
- * by the @authors tag. See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.bpm.cts.gateway.exclusive;
-
-// $Id$
-
-import java.io.StringWriter;
-
-import org.jboss.bpm.client.ProcessManager;
-import org.jboss.bpm.model.Process;
-
-/**
- * ExclusiveSplitTest using the API Descriptor
- *
- * @author thomas.diesler(a)jboss.com
- * @since 06-Aug-2008
- */
-public class ExclusiveSplitAPITest extends ExclusiveSplitTest
-{
- @Override
- public Process getProcess()
- {
- Process proc = super.getProcess();
-
- // Marshall the process to a string
- StringWriter strwr = new StringWriter();
- marshallProcess(proc, strwr);
- String procXML = strwr.toString();
-
- // Recreate the process from the marshalled process
- ProcessManager procManager = ProcessManager.locateProcessManager();
- proc = procManager.createProcess(procXML);
-
- return proc;
- }
-}
Deleted: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/exclusive/ExclusiveSplitTest.java
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/exclusive/ExclusiveSplitTest.java 2008-08-14 19:43:52 UTC (rev 1895)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/exclusive/ExclusiveSplitTest.java 2008-08-15 07:59:12 UTC (rev 1896)
@@ -1,104 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2005, JBoss Inc., and individual contributors as indicated
- * by the @authors tag. See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.bpm.cts.gateway.exclusive;
-
-// $Id$
-
-import java.util.List;
-
-import org.jboss.bpm.model.GatewayBuilder;
-import org.jboss.bpm.model.Process;
-import org.jboss.bpm.model.ProcessBuilder;
-import org.jboss.bpm.model.ProcessBuilderFactory;
-import org.jboss.bpm.model.Signal;
-import org.jboss.bpm.model.Expression.ExpressionLanguage;
-import org.jboss.bpm.model.Gateway.GatewayType;
-import org.jboss.bpm.runtime.BasicAttachments;
-import org.jboss.bpm.test.DefaultEngineTestCase;
-
-/**
- * Exclusive data-based gateway that has conditional outgoing sequence flows.
- * Only one of the gates is taken. It is an error if no gate is applicable.
- *
- * @author thomas.diesler(a)jboss.com
- * @since 06-Aug-2008
- */
-public class ExclusiveSplitTest extends DefaultEngineTestCase
-{
- public void testGateA() throws Exception
- {
- Process proc = getProcess();
-
- BasicAttachments att = new BasicAttachments();
- att.addAttachment("foo", "5");
- proc.startProcess(att);
- proc.waitForEnd();
-
- List<Signal> endSignals = getSignals(Signal.SignalType.SYSTEM_END_EVENT_EXIT);
- assertEquals(1, endSignals.size());
- assertEquals("EndA", endSignals.get(0).getFromRef());
- }
-
- public void testGateB() throws Exception
- {
- Process proc = getProcess();
-
- BasicAttachments att = new BasicAttachments();
- att.addAttachment("foo", "15");
- proc.startProcess(att);
- proc.waitForEnd();
-
- List<Signal> endSignals = getSignals(Signal.SignalType.SYSTEM_END_EVENT_EXIT);
- assertEquals(1, endSignals.size());
- assertEquals("EndB", endSignals.get(0).getFromRef());
- }
-
- public void testInvalidGate() throws Exception
- {
- Process proc = getProcess();
-
- BasicAttachments att = new BasicAttachments();
- att.addAttachment("foo", "10");
- proc.startProcess(att);
- try
- {
- proc.waitForEnd();
- fail("No gate defained for foo==10");
- }
- catch (RuntimeException rte)
- {
- // expected
- }
- }
-
- public Process getProcess()
- {
- ProcessBuilder procBuilder = ProcessBuilderFactory.newInstance().newProcessBuilder();
- procBuilder.addProcess(getName()).addStartEvent("Start").addSequenceFlow("Split");
- GatewayBuilder gatewayBuilder = procBuilder.addGateway("Split", GatewayType.Exclusive);
- gatewayBuilder.addConditionalGate("EndA", ExpressionLanguage.MVEL, "foo < 10");
- gatewayBuilder.addConditionalGate("EndB", ExpressionLanguage.MVEL, "foo > 10");
- procBuilder.addEndEvent("EndA").addEndEvent("EndB");
- Process proc = procBuilder.getProcess();
- return proc;
- }
-}
Copied: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/inclusive/InclusiveGatewayMergeMarshallerTest.java (from rev 1895, jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/inclusive/InclusiveMergeAPITest.java)
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/inclusive/InclusiveGatewayMergeMarshallerTest.java (rev 0)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/inclusive/InclusiveGatewayMergeMarshallerTest.java 2008-08-15 07:59:12 UTC (rev 1896)
@@ -0,0 +1,55 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.cts.gateway.inclusive;
+
+// $Id$
+
+import java.io.StringWriter;
+
+import org.jboss.bpm.client.ProcessManager;
+import org.jboss.bpm.model.Process;
+
+/**
+ * InclusiveMergeTest using the API Descriptor
+ *
+ * @author thomas.diesler(a)jboss.com
+ * @since 06-Aug-2008
+ */
+public class InclusiveGatewayMergeMarshallerTest extends InclusiveGatewayMergeTest
+{
+ @Override
+ public Process getProcess()
+ {
+ Process proc = super.getProcess();
+
+ // Marshall the process to a string
+ StringWriter strwr = new StringWriter();
+ marshallProcess(proc, strwr);
+ String procXML = strwr.toString();
+
+ // Recreate the process from the marshalled process
+ ProcessManager procManager = ProcessManager.locateProcessManager();
+ proc = procManager.createProcess(procXML);
+
+ return proc;
+ }
+}
Copied: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/inclusive/InclusiveGatewayMergeTest.java (from rev 1895, jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/inclusive/InclusiveMergeTest.java)
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/inclusive/InclusiveGatewayMergeTest.java (rev 0)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/inclusive/InclusiveGatewayMergeTest.java 2008-08-15 07:59:12 UTC (rev 1896)
@@ -0,0 +1,106 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.cts.gateway.inclusive;
+
+// $Id$
+
+import java.util.List;
+
+import org.jboss.bpm.client.SignalListener;
+import org.jboss.bpm.client.SignalManager;
+import org.jboss.bpm.model.EventBuilder;
+import org.jboss.bpm.model.Process;
+import org.jboss.bpm.model.ProcessBuilder;
+import org.jboss.bpm.model.ProcessBuilderFactory;
+import org.jboss.bpm.model.Signal;
+import org.jboss.bpm.model.Gateway.GatewayType;
+import org.jboss.bpm.model.Signal.SignalType;
+import org.jboss.bpm.test.DefaultEngineTestCase;
+
+/**
+ * Inclusive gateway that has multiple incoming sequence flows.
+ * All tokens arriving from incoming sequence flows proceeds unconditionally along the outgoing sequence flow.
+ * The inclusive join is stateless.
+ *
+ * @author thomas.diesler(a)jboss.com
+ * @since 06-Aug-2008
+ */
+public class InclusiveGatewayMergeTest extends DefaultEngineTestCase
+{
+ public void testGateA() throws Exception
+ {
+ Process proc = getProcess();
+ proc.startProcess();
+
+ // Add a signal listener that sends the other start trigger signal
+ SignalManager signalManager = SignalManager.locateSignalManager();
+ Signal startTrigger = new Signal(getName(), SignalType.SYSTEM_START_TRIGGER, "B");
+ signalManager.addSignalListener(getName(), new MergeListener(getName(), startTrigger));
+
+ // Send start trigger signals
+ signalManager.throwSignal(proc.getName(), new Signal(getName(), SignalType.SYSTEM_START_TRIGGER, "A"));
+
+ // Wait for the process to end
+ proc.waitForEnd();
+
+ List<Signal> endSignals = getSignals(Signal.SignalType.SYSTEM_END_EVENT_EXIT);
+ assertEquals(2, endSignals.size());
+ }
+
+ public Process getProcess()
+ {
+ ProcessBuilder procBuilder = ProcessBuilderFactory.newInstance().newProcessBuilder();
+ EventBuilder eventBuilder = procBuilder.addProcess(getName()).addStartEvent("StartA");
+ eventBuilder.addSignalTrigger(SignalType.SYSTEM_START_TRIGGER, "A").addSequenceFlow("Merge");
+ eventBuilder = procBuilder.addStartEvent("StartB");
+ eventBuilder.addSignalTrigger(SignalType.SYSTEM_START_TRIGGER, "B").addSequenceFlow("Merge");
+ procBuilder.addGateway("Merge", GatewayType.Inclusive).addSequenceFlow("End");
+ procBuilder.addEndEvent("End");
+ Process proc = procBuilder.getProcess();
+ return proc;
+ }
+
+ class MergeListener implements SignalListener
+ {
+ private String fromRef;
+ private Signal nextSignal;
+
+ public MergeListener(String fromRef, Signal nextSignal)
+ {
+ this.fromRef = fromRef;
+ this.nextSignal = nextSignal;
+ }
+
+ public void catchSignal(Signal signal)
+ {
+ if (signal.getSignalType() == SignalType.SYSTEM_GATEWAY_ENTER)
+ {
+ if (nextSignal != null)
+ {
+ SignalManager signalManager = SignalManager.locateSignalManager();
+ signalManager.throwSignal(fromRef, nextSignal);
+ nextSignal = null;
+ }
+ }
+ }
+ }
+}
Copied: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/inclusive/InclusiveGatewaySplitMarshallerTest.java (from rev 1895, jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/inclusive/InclusiveSplitAPITest.java)
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/inclusive/InclusiveGatewaySplitMarshallerTest.java (rev 0)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/inclusive/InclusiveGatewaySplitMarshallerTest.java 2008-08-15 07:59:12 UTC (rev 1896)
@@ -0,0 +1,55 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.cts.gateway.inclusive;
+
+// $Id$
+
+import java.io.StringWriter;
+
+import org.jboss.bpm.client.ProcessManager;
+import org.jboss.bpm.model.Process;
+
+/**
+ * InclusiveSplitTest using the API Descriptor
+ *
+ * @author thomas.diesler(a)jboss.com
+ * @since 06-Aug-2008
+ */
+public class InclusiveGatewaySplitMarshallerTest extends InclusiveGatewaySplitTest
+{
+ @Override
+ public Process getProcess()
+ {
+ Process proc = super.getProcess();
+
+ // Marshall the process to a string
+ StringWriter strwr = new StringWriter();
+ marshallProcess(proc, strwr);
+ String procXML = strwr.toString();
+
+ // Recreate the process from the marshalled process
+ ProcessManager procManager = ProcessManager.locateProcessManager();
+ proc = procManager.createProcess(procXML);
+
+ return proc;
+ }
+}
\ No newline at end of file
Copied: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/inclusive/InclusiveGatewaySplitTest.java (from rev 1895, jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/inclusive/InclusiveSplitTest.java)
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/inclusive/InclusiveGatewaySplitTest.java (rev 0)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/inclusive/InclusiveGatewaySplitTest.java 2008-08-15 07:59:12 UTC (rev 1896)
@@ -0,0 +1,85 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.cts.gateway.inclusive;
+
+// $Id$
+
+import java.util.List;
+
+import org.jboss.bpm.model.GatewayBuilder;
+import org.jboss.bpm.model.Process;
+import org.jboss.bpm.model.ProcessBuilder;
+import org.jboss.bpm.model.ProcessBuilderFactory;
+import org.jboss.bpm.model.Signal;
+import org.jboss.bpm.model.Expression.ExpressionLanguage;
+import org.jboss.bpm.model.Gateway.GatewayType;
+import org.jboss.bpm.runtime.BasicAttachments;
+import org.jboss.bpm.test.DefaultEngineTestCase;
+
+/**
+ * Inclusive gateway that has conditional outgoing sequence flows.
+ * One or more of them can be taken.
+ *
+ * @author thomas.diesler(a)jboss.com
+ * @since 06-Aug-2008
+ */
+public class InclusiveGatewaySplitTest extends DefaultEngineTestCase
+{
+ public void testGateA() throws Exception
+ {
+ Process proc = getProcess();
+
+ BasicAttachments att = new BasicAttachments();
+ att.addAttachment("foo", "5");
+ proc.startProcess(att);
+ proc.waitForEnd();
+
+ List<Signal> endSignals = getSignals(Signal.SignalType.SYSTEM_END_EVENT_EXIT);
+ assertEquals(2, endSignals.size());
+ }
+
+ public void testGateB() throws Exception
+ {
+ Process proc = getProcess();
+
+ BasicAttachments att = new BasicAttachments();
+ att.addAttachment("foo", "15");
+ proc.startProcess(att);
+ proc.waitForEnd();
+
+ List<Signal> endSignals = getSignals(Signal.SignalType.SYSTEM_END_EVENT_EXIT);
+ assertEquals(1, endSignals.size());
+ assertEquals("EndB", endSignals.get(0).getFromRef());
+ }
+
+ public Process getProcess()
+ {
+ ProcessBuilder procBuilder = ProcessBuilderFactory.newInstance().newProcessBuilder();
+ procBuilder.addProcess(getName()).addStartEvent("Start").addSequenceFlow("Split");
+ GatewayBuilder gatewayBuilder = procBuilder.addGateway("Split", GatewayType.Inclusive);
+ gatewayBuilder.addConditionalGate("EndA", ExpressionLanguage.MVEL, "foo < 10");
+ gatewayBuilder.addConditionalGate("EndB", ExpressionLanguage.MVEL, "foo < 20");
+ procBuilder.addEndEvent("EndA").addEndEvent("EndB");
+ Process proc = procBuilder.getProcess();
+ return proc;
+ }
+}
\ No newline at end of file
Deleted: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/inclusive/InclusiveMergeAPITest.java
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/inclusive/InclusiveMergeAPITest.java 2008-08-14 19:43:52 UTC (rev 1895)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/inclusive/InclusiveMergeAPITest.java 2008-08-15 07:59:12 UTC (rev 1896)
@@ -1,55 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2005, JBoss Inc., and individual contributors as indicated
- * by the @authors tag. See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.bpm.cts.gateway.inclusive;
-
-// $Id$
-
-import java.io.StringWriter;
-
-import org.jboss.bpm.client.ProcessManager;
-import org.jboss.bpm.model.Process;
-
-/**
- * InclusiveMergeTest using the API Descriptor
- *
- * @author thomas.diesler(a)jboss.com
- * @since 06-Aug-2008
- */
-public class InclusiveMergeAPITest extends InclusiveMergeTest
-{
- @Override
- public Process getProcess()
- {
- Process proc = super.getProcess();
-
- // Marshall the process to a string
- StringWriter strwr = new StringWriter();
- marshallProcess(proc, strwr);
- String procXML = strwr.toString();
-
- // Recreate the process from the marshalled process
- ProcessManager procManager = ProcessManager.locateProcessManager();
- proc = procManager.createProcess(procXML);
-
- return proc;
- }
-}
Deleted: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/inclusive/InclusiveMergeTest.java
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/inclusive/InclusiveMergeTest.java 2008-08-14 19:43:52 UTC (rev 1895)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/inclusive/InclusiveMergeTest.java 2008-08-15 07:59:12 UTC (rev 1896)
@@ -1,77 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2005, JBoss Inc., and individual contributors as indicated
- * by the @authors tag. See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.bpm.cts.gateway.inclusive;
-
-// $Id$
-
-import java.util.List;
-
-import org.jboss.bpm.client.SignalManager;
-import org.jboss.bpm.model.EventBuilder;
-import org.jboss.bpm.model.Process;
-import org.jboss.bpm.model.ProcessBuilder;
-import org.jboss.bpm.model.ProcessBuilderFactory;
-import org.jboss.bpm.model.Signal;
-import org.jboss.bpm.model.Gateway.GatewayType;
-import org.jboss.bpm.model.Signal.SignalType;
-import org.jboss.bpm.test.DefaultEngineTestCase;
-
-/**
- * Inclusive gateway that has multiple incoming sequence flows.
- * All tokens arriving from incoming sequence flows proceeds unconditionally along the outgoing sequence flow.
- * The inclusive join is stateless.
- *
- * @author thomas.diesler(a)jboss.com
- * @since 06-Aug-2008
- */
-public abstract class InclusiveMergeTest extends DefaultEngineTestCase
-{
- public void testGateA() throws Exception
- {
- Process proc = getProcess();
- proc.startProcess();
-
- // Send start trigger signals
- SignalManager signalManager = SignalManager.locateSignalManager();
- signalManager.throwSignal(proc.getName(), new Signal(getName(), SignalType.SYSTEM_START_TRIGGER, "A"));
- signalManager.throwSignal(proc.getName(), new Signal(getName(), SignalType.SYSTEM_START_TRIGGER, "B"));
-
- // Wait for the process to end
- proc.waitForEnd();
-
- List<Signal> endSignals = getSignals(Signal.SignalType.SYSTEM_END_EVENT_EXIT);
- assertEquals(2, endSignals.size());
- }
-
- public Process getProcess()
- {
- ProcessBuilder procBuilder = ProcessBuilderFactory.newInstance().newProcessBuilder();
- EventBuilder eventBuilder = procBuilder.addProcess(getName()).addStartEvent("StartA");
- eventBuilder.addSignalTrigger(SignalType.SYSTEM_START_TRIGGER, "A").addSequenceFlow("Merge");
- eventBuilder = procBuilder.addStartEvent("StartB");
- eventBuilder.addSignalTrigger(SignalType.SYSTEM_START_TRIGGER, "B").addSequenceFlow("Merge");
- procBuilder.addGateway("Merge", GatewayType.Inclusive).addSequenceFlow("End");
- procBuilder.addEndEvent("End");
- Process proc = procBuilder.getProcess();
- return proc;
- }
-}
Deleted: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/inclusive/InclusiveSplitAPITest.java
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/inclusive/InclusiveSplitAPITest.java 2008-08-14 19:43:52 UTC (rev 1895)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/inclusive/InclusiveSplitAPITest.java 2008-08-15 07:59:12 UTC (rev 1896)
@@ -1,55 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2005, JBoss Inc., and individual contributors as indicated
- * by the @authors tag. See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.bpm.cts.gateway.inclusive;
-
-// $Id$
-
-import java.io.StringWriter;
-
-import org.jboss.bpm.client.ProcessManager;
-import org.jboss.bpm.model.Process;
-
-/**
- * InclusiveSplitTest using the API Descriptor
- *
- * @author thomas.diesler(a)jboss.com
- * @since 06-Aug-2008
- */
-public class InclusiveSplitAPITest extends InclusiveSplitTest
-{
- @Override
- public Process getProcess()
- {
- Process proc = super.getProcess();
-
- // Marshall the process to a string
- StringWriter strwr = new StringWriter();
- marshallProcess(proc, strwr);
- String procXML = strwr.toString();
-
- // Recreate the process from the marshalled process
- ProcessManager procManager = ProcessManager.locateProcessManager();
- proc = procManager.createProcess(procXML);
-
- return proc;
- }
-}
\ No newline at end of file
Deleted: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/inclusive/InclusiveSplitTest.java
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/inclusive/InclusiveSplitTest.java 2008-08-14 19:43:52 UTC (rev 1895)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/inclusive/InclusiveSplitTest.java 2008-08-15 07:59:12 UTC (rev 1896)
@@ -1,85 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2005, JBoss Inc., and individual contributors as indicated
- * by the @authors tag. See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.bpm.cts.gateway.inclusive;
-
-// $Id$
-
-import java.util.List;
-
-import org.jboss.bpm.model.GatewayBuilder;
-import org.jboss.bpm.model.Process;
-import org.jboss.bpm.model.ProcessBuilder;
-import org.jboss.bpm.model.ProcessBuilderFactory;
-import org.jboss.bpm.model.Signal;
-import org.jboss.bpm.model.Expression.ExpressionLanguage;
-import org.jboss.bpm.model.Gateway.GatewayType;
-import org.jboss.bpm.runtime.BasicAttachments;
-import org.jboss.bpm.test.DefaultEngineTestCase;
-
-/**
- * Inclusive gateway that has conditional outgoing sequence flows.
- * One or more of them can be taken.
- *
- * @author thomas.diesler(a)jboss.com
- * @since 06-Aug-2008
- */
-public class InclusiveSplitTest extends DefaultEngineTestCase
-{
- public void testGateA() throws Exception
- {
- Process proc = getProcess();
-
- BasicAttachments att = new BasicAttachments();
- att.addAttachment("foo", "5");
- proc.startProcess(att);
- proc.waitForEnd();
-
- List<Signal> endSignals = getSignals(Signal.SignalType.SYSTEM_END_EVENT_EXIT);
- assertEquals(2, endSignals.size());
- }
-
- public void testGateB() throws Exception
- {
- Process proc = getProcess();
-
- BasicAttachments att = new BasicAttachments();
- att.addAttachment("foo", "15");
- proc.startProcess(att);
- proc.waitForEnd();
-
- List<Signal> endSignals = getSignals(Signal.SignalType.SYSTEM_END_EVENT_EXIT);
- assertEquals(1, endSignals.size());
- assertEquals("EndB", endSignals.get(0).getFromRef());
- }
-
- public Process getProcess()
- {
- ProcessBuilder procBuilder = ProcessBuilderFactory.newInstance().newProcessBuilder();
- procBuilder.addProcess(getName()).addStartEvent("Start").addSequenceFlow("Split");
- GatewayBuilder gatewayBuilder = procBuilder.addGateway("Split", GatewayType.Inclusive);
- gatewayBuilder.addConditionalGate("EndA", ExpressionLanguage.MVEL, "foo < 10");
- gatewayBuilder.addConditionalGate("EndB", ExpressionLanguage.MVEL, "foo < 20");
- procBuilder.addEndEvent("EndA").addEndEvent("EndB");
- Process proc = procBuilder.getProcess();
- return proc;
- }
-}
\ No newline at end of file
Copied: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/parallel (from rev 1892, jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/parallel)
Added: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/parallel/ParallelGatewayMergeMarshallerTest.java
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/parallel/ParallelGatewayMergeMarshallerTest.java (rev 0)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/parallel/ParallelGatewayMergeMarshallerTest.java 2008-08-15 07:59:12 UTC (rev 1896)
@@ -0,0 +1,56 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.cts.gateway.parallel;
+
+//$Id$
+
+import java.io.StringWriter;
+
+import org.jboss.bpm.client.ProcessManager;
+import org.jboss.bpm.model.Process;
+
+
+/**
+ * ParallelMergeTest using the API Descriptor
+ *
+ * @author thomas.diesler(a)jboss.com
+ * @since 06-Aug-2008
+ */
+public class ParallelGatewayMergeMarshallerTest extends ParallelGatewayMergeTest
+{
+ @Override
+ public Process getProcess()
+ {
+ Process proc = super.getProcess();
+
+ // Marshall the process to a string
+ StringWriter strwr = new StringWriter();
+ marshallProcess(proc, strwr);
+ String procXML = strwr.toString();
+
+ // Recreate the process from the marshalled process
+ ProcessManager procManager = ProcessManager.locateProcessManager();
+ proc = procManager.createProcess(procXML);
+
+ return proc;
+ }
+}
Property changes on: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/parallel/ParallelGatewayMergeMarshallerTest.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/parallel/ParallelGatewayMergeTest.java
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/parallel/ParallelGatewayMergeTest.java (rev 0)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/parallel/ParallelGatewayMergeTest.java 2008-08-15 07:59:12 UTC (rev 1896)
@@ -0,0 +1,203 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.cts.gateway.parallel;
+
+// $Id$
+
+import org.jboss.bpm.client.SignalListener;
+import org.jboss.bpm.client.SignalManager;
+import org.jboss.bpm.model.EventBuilder;
+import org.jboss.bpm.model.Process;
+import org.jboss.bpm.model.ProcessBuilder;
+import org.jboss.bpm.model.ProcessBuilderFactory;
+import org.jboss.bpm.model.Signal;
+import org.jboss.bpm.model.Gateway.GatewayType;
+import org.jboss.bpm.model.Signal.SignalType;
+import org.jboss.bpm.runtime.ExecutionContext;
+import org.jboss.bpm.runtime.ExecutionHandler;
+import org.jboss.bpm.runtime.Token;
+import org.jboss.bpm.test.DefaultEngineTestCase;
+
+/**
+ * Parallel gateway that that has multiple incoming sequence flows. Each token arriving from an incoming sequence flow
+ * is stored in the gateway until a token has arrived from each incoming sequence flow. The tokens are merged together
+ * and leave the gateway as a one.
+ *
+ * @author thomas.diesler(a)jboss.com
+ * @since 06-Aug-2008
+ */
+public class ParallelGatewayMergeTest extends DefaultEngineTestCase
+{
+ public void testParallelMerge() throws Exception
+ {
+ Process proc = getProcess();
+ proc.startProcess();
+
+ // Add a signal listener that sends the other start trigger signal
+ SignalManager signalManager = SignalManager.locateSignalManager();
+ Signal startTrigger = new Signal(getName(), SignalType.SYSTEM_START_TRIGGER, "B");
+ signalManager.addSignalListener(getName(), new MergeListener(getName(), startTrigger));
+
+ // Send start trigger signal
+ signalManager.throwSignal(proc.getName(), new Signal(getName(), SignalType.SYSTEM_START_TRIGGER, "A"));
+
+ // Wait for the process to end
+ proc.waitForEnd();
+
+ // Verify the result
+ assertEquals("TaskA:TaskB", TaskC.taskValue);
+ }
+
+ public void testMergeTimeout() throws Exception
+ {
+ Process proc = getProcess();
+ proc.startProcess();
+
+ // Send start trigger signal
+ SignalManager signalManager = SignalManager.locateSignalManager();
+ signalManager.throwSignal(proc.getName(), new Signal(getName(), SignalType.SYSTEM_START_TRIGGER, "A"));
+
+ // Wait for the process to end
+ try
+ {
+ proc.waitForEnd(1000);
+ fail("timeout expected");
+ }
+ catch (RuntimeException rte)
+ {
+ // expected
+ }
+ }
+
+ public void testInvalidToken() throws Exception
+ {
+ Process proc = getProcess();
+ proc.startProcess();
+
+ // Add a signal listener that sends the other start trigger signal
+ SignalManager signalManager = SignalManager.locateSignalManager();
+ Signal startTrigger = new Signal(getName(), SignalType.SYSTEM_START_TRIGGER, "A");
+ signalManager.addSignalListener(getName(), new MergeListener(getName(), startTrigger));
+
+ // Send start trigger signal
+ signalManager.throwSignal(proc.getName(), new Signal(getName(), SignalType.SYSTEM_START_TRIGGER, "A"));
+
+ try
+ {
+ proc.waitForEnd();
+ fail("Expected: Unexpected token from: SequenceFlow[TaskA->Merge]");
+ }
+ catch (RuntimeException rte)
+ {
+ // expected
+ }
+
+ // Restart the process
+ proc.startProcess();
+
+ // Add a signal listener that sends the other start trigger signal
+ startTrigger = new Signal(getName(), SignalType.SYSTEM_START_TRIGGER, "B");
+ signalManager.addSignalListener(getName(), new MergeListener(getName(), startTrigger));
+
+ // Send start trigger signal
+ signalManager.throwSignal(proc.getName(), new Signal(getName(), SignalType.SYSTEM_START_TRIGGER, "A"));
+
+ // Wait for the process to end
+ proc.waitForEnd();
+
+ // Verify the result
+ assertEquals("TaskA:TaskB", TaskC.taskValue);
+ }
+
+ public Process getProcess()
+ {
+ ProcessBuilder procBuilder = ProcessBuilderFactory.newInstance().newProcessBuilder();
+ EventBuilder eventBuilder = procBuilder.addProcess(getName()).addStartEvent("StartA");
+ eventBuilder.addSignalTrigger(SignalType.SYSTEM_START_TRIGGER, "A").addSequenceFlow("TaskA");
+ procBuilder.addTask("TaskA").addExecutionHandler(TaskA.class).addSequenceFlow("Merge");
+ eventBuilder = procBuilder.addStartEvent("StartB");
+ eventBuilder.addSignalTrigger(SignalType.SYSTEM_START_TRIGGER, "B").addSequenceFlow("TaskB");
+ procBuilder.addTask("TaskB").addExecutionHandler(TaskB.class).addSequenceFlow("Merge");
+ procBuilder.addGateway("Merge", GatewayType.Parallel).addSequenceFlow("TaskC");
+ procBuilder.addTask("TaskC").addExecutionHandler(TaskC.class).addSequenceFlow("End");
+ procBuilder.addEndEvent("End");
+ Process proc = procBuilder.getProcess();
+ return proc;
+ }
+
+ public static class MergeListener implements SignalListener
+ {
+ private String fromRef;
+ private Signal nextSignal;
+
+ public MergeListener(String fromRef, Signal nextSignal)
+ {
+ this.fromRef = fromRef;
+ this.nextSignal = nextSignal;
+ }
+
+ public void catchSignal(Signal signal)
+ {
+ if (signal.getSignalType() == SignalType.SYSTEM_GATEWAY_ENTER)
+ {
+ if (nextSignal != null)
+ {
+ SignalManager signalManager = SignalManager.locateSignalManager();
+ signalManager.throwSignal(fromRef, nextSignal);
+ nextSignal = null;
+ }
+ }
+ }
+ }
+
+ @SuppressWarnings("serial")
+ public static class TaskA implements ExecutionHandler
+ {
+ public void execute(Token token)
+ {
+ ExecutionContext exContext = token.getExecutionContext();
+ exContext.addAttachment("taskA", "TaskA");
+ }
+ }
+
+ @SuppressWarnings("serial")
+ public static class TaskB implements ExecutionHandler
+ {
+ public void execute(Token token)
+ {
+ ExecutionContext exContext = token.getExecutionContext();
+ exContext.addAttachment("taskB", "TaskB");
+ }
+ }
+
+ @SuppressWarnings("serial")
+ public static class TaskC implements ExecutionHandler
+ {
+ public static Object taskValue;
+
+ public void execute(Token token)
+ {
+ ExecutionContext exContext = token.getExecutionContext();
+ taskValue = exContext.getAttachment("taskA") + ":" + exContext.getAttachment("taskB");
+ }
+ }
+}
Property changes on: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/parallel/ParallelGatewayMergeTest.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/parallel/ParallelGatewaySplitMarshallerTest.java
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/parallel/ParallelGatewaySplitMarshallerTest.java (rev 0)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/parallel/ParallelGatewaySplitMarshallerTest.java 2008-08-15 07:59:12 UTC (rev 1896)
@@ -0,0 +1,55 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.cts.gateway.parallel;
+
+// $Id$
+
+import java.io.StringWriter;
+
+import org.jboss.bpm.client.ProcessManager;
+import org.jboss.bpm.model.Process;
+
+/**
+ * ParallelSplitTest using the API Descriptor
+ *
+ * @author thomas.diesler(a)jboss.com
+ * @since 06-Aug-2008
+ */
+public class ParallelGatewaySplitMarshallerTest extends ParallelGatewaySplitTest
+{
+ @Override
+ public Process getProcess()
+ {
+ Process proc = super.getProcess();
+
+ // Marshall the process to a string
+ StringWriter strwr = new StringWriter();
+ marshallProcess(proc, strwr);
+ String procXML = strwr.toString();
+
+ // Recreate the process from the marshalled process
+ ProcessManager procManager = ProcessManager.locateProcessManager();
+ proc = procManager.createProcess(procXML);
+
+ return proc;
+ }
+}
Property changes on: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/parallel/ParallelGatewaySplitMarshallerTest.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/parallel/ParallelGatewaySplitTest.java
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/parallel/ParallelGatewaySplitTest.java (rev 0)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/parallel/ParallelGatewaySplitTest.java 2008-08-15 07:59:12 UTC (rev 1896)
@@ -0,0 +1,66 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.cts.gateway.parallel;
+
+// $Id$
+
+import java.util.List;
+
+import org.jboss.bpm.model.Process;
+import org.jboss.bpm.model.ProcessBuilder;
+import org.jboss.bpm.model.ProcessBuilderFactory;
+import org.jboss.bpm.model.Signal;
+import org.jboss.bpm.model.Gateway.GatewayType;
+import org.jboss.bpm.model.Signal.SignalType;
+import org.jboss.bpm.test.DefaultEngineTestCase;
+
+/**
+ * Parallel gateway that has uncontrolled outgoing sequence flows.
+ * All of them are taken, which leads to parallel paths of execution.
+ *
+ * @author thomas.diesler(a)jboss.com
+ * @since 06-Aug-2008
+ */
+public class ParallelGatewaySplitTest extends DefaultEngineTestCase
+{
+ public void testParallelSplit() throws Exception
+ {
+ Process proc = getProcess();
+ proc.startProcess();
+ proc.waitForEnd();
+
+ // Validate received signals
+ List<Signal> signals = getSignals(SignalType.SYSTEM_END_EVENT_ENTER);
+ assertEquals(2, signals.size());
+ String fromRefs = signals.get(0).getFromRef() + signals.get(1).getFromRef();
+ assertTrue("Unexpected from refs: " + fromRefs, fromRefs.contains("EndA"));
+ assertTrue("Unexpected from refs: " + fromRefs, fromRefs.contains("EndB"));
+ }
+
+ public Process getProcess()
+ {
+ ProcessBuilder procBuilder = ProcessBuilderFactory.newInstance().newProcessBuilder();
+ Process proc = procBuilder.addProcess(getName()).addStartEvent("Start").addSequenceFlow("Split").addGateway("Split", GatewayType.Parallel).
+ addSequenceFlow("EndA").addSequenceFlow("EndB").addEndEvent("EndA").addEndEvent("EndB").getProcess();
+ return proc;
+ }
+}
Property changes on: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/parallel/ParallelGatewaySplitTest.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Copied: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/cts/gateway/parallel (from rev 1892, jbossbpm/spec/trunk/modules/testsuite/src/test/resources/cts/gateway/parallel)
Deleted: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/cts/gateway/parallel/parallel-merge.bpmn
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/resources/cts/gateway/parallel/parallel-merge.bpmn 2008-08-14 15:25:00 UTC (rev 1892)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/resources/cts/gateway/parallel/parallel-merge.bpmn 2008-08-15 07:59:12 UTC (rev 1896)
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<bpmn:BpmnDiagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:bpmn="http://stp.eclipse.org/bpmn" xmi:id="_AXFyUWOSEd2mS_8SFTXMeQ" iD="_AXFyUGOSEd2mS_8SFTXMeQ">
- <pools xmi:type="bpmn:Pool" xmi:id="_AXHAcWOSEd2mS_8SFTXMeQ" iD="_AXHAcGOSEd2mS_8SFTXMeQ" name="Pool">
- <vertices xmi:type="bpmn:Activity" xmi:id="_EPuQwWOSEd2mS_8SFTXMeQ" iD="_EPuQwGOSEd2mS_8SFTXMeQ" outgoingEdges="_6HqqgWlWEd2VTpmAjt3VIA" incomingEdges="_x1ziAWlWEd2VTpmAjt3VIA _25I5AWlWEd2VTpmAjt3VIA" activityType="GatewayParallel"/>
- <vertices xmi:type="bpmn:Activity" xmi:id="_FY9wwWOSEd2mS_8SFTXMeQ" iD="_FY9wwGOSEd2mS_8SFTXMeQ" outgoingEdges="_xbzGkWlWEd2VTpmAjt3VIA" name="StartA" activityType="EventStartSignal"/>
- <vertices xmi:type="bpmn:Activity" xmi:id="_FobwIWOSEd2mS_8SFTXMeQ" iD="_FobwIGOSEd2mS_8SFTXMeQ" outgoingEdges="_1inyAWlWEd2VTpmAjt3VIA" name="StartB" activityType="EventStartSignal"/>
- <vertices xmi:type="bpmn:Activity" xmi:id="_LFtRIWOSEd2mS_8SFTXMeQ" iD="_LFtRIGOSEd2mS_8SFTXMeQ" incomingEdges="_696WAWlWEd2VTpmAjt3VIA" activityType="EventEndEmpty"/>
- <vertices xmi:type="bpmn:Activity" xmi:id="_tQcgcWlWEd2VTpmAjt3VIA" iD="_tQcgcGlWEd2VTpmAjt3VIA" outgoingEdges="_x1ziAWlWEd2VTpmAjt3VIA" incomingEdges="_xbzGkWlWEd2VTpmAjt3VIA" name="TaskA"/>
- <vertices xmi:type="bpmn:Activity" xmi:id="_y-u48WlWEd2VTpmAjt3VIA" iD="_y-u48GlWEd2VTpmAjt3VIA" outgoingEdges="_25I5AWlWEd2VTpmAjt3VIA" incomingEdges="_1inyAWlWEd2VTpmAjt3VIA" name="TaskB"/>
- <vertices xmi:type="bpmn:Activity" xmi:id="_4Egf8WlWEd2VTpmAjt3VIA" iD="_4Egf8GlWEd2VTpmAjt3VIA" outgoingEdges="_696WAWlWEd2VTpmAjt3VIA" incomingEdges="_6HqqgWlWEd2VTpmAjt3VIA" name="TaskC"/>
- <sequenceEdges xmi:type="bpmn:SequenceEdge" xmi:id="_xbzGkWlWEd2VTpmAjt3VIA" iD="_xbzGkGlWEd2VTpmAjt3VIA" source="_FY9wwWOSEd2mS_8SFTXMeQ" target="_tQcgcWlWEd2VTpmAjt3VIA"/>
- <sequenceEdges xmi:type="bpmn:SequenceEdge" xmi:id="_x1ziAWlWEd2VTpmAjt3VIA" iD="_x1ziAGlWEd2VTpmAjt3VIA" source="_tQcgcWlWEd2VTpmAjt3VIA" target="_EPuQwWOSEd2mS_8SFTXMeQ"/>
- <sequenceEdges xmi:type="bpmn:SequenceEdge" xmi:id="_1inyAWlWEd2VTpmAjt3VIA" iD="_1inyAGlWEd2VTpmAjt3VIA" source="_FobwIWOSEd2mS_8SFTXMeQ" target="_y-u48WlWEd2VTpmAjt3VIA"/>
- <sequenceEdges xmi:type="bpmn:SequenceEdge" xmi:id="_25I5AWlWEd2VTpmAjt3VIA" iD="_25I5AGlWEd2VTpmAjt3VIA" source="_y-u48WlWEd2VTpmAjt3VIA" target="_EPuQwWOSEd2mS_8SFTXMeQ"/>
- <sequenceEdges xmi:type="bpmn:SequenceEdge" xmi:id="_6HqqgWlWEd2VTpmAjt3VIA" iD="_6HqqgGlWEd2VTpmAjt3VIA" source="_EPuQwWOSEd2mS_8SFTXMeQ" target="_4Egf8WlWEd2VTpmAjt3VIA"/>
- <sequenceEdges xmi:type="bpmn:SequenceEdge" xmi:id="_696WAWlWEd2VTpmAjt3VIA" iD="_696WAGlWEd2VTpmAjt3VIA" source="_4Egf8WlWEd2VTpmAjt3VIA" target="_LFtRIWOSEd2mS_8SFTXMeQ"/>
- </pools>
-</bpmn:BpmnDiagram>
Copied: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/cts/gateway/parallel/parallel-merge.bpmn (from rev 1892, jbossbpm/spec/trunk/modules/testsuite/src/test/resources/cts/gateway/parallel/parallel-merge.bpmn)
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/resources/cts/gateway/parallel/parallel-merge.bpmn (rev 0)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/resources/cts/gateway/parallel/parallel-merge.bpmn 2008-08-15 07:59:12 UTC (rev 1896)
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<bpmn:BpmnDiagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:bpmn="http://stp.eclipse.org/bpmn" xmi:id="_AXFyUWOSEd2mS_8SFTXMeQ" iD="_AXFyUGOSEd2mS_8SFTXMeQ">
+ <pools xmi:type="bpmn:Pool" xmi:id="_AXHAcWOSEd2mS_8SFTXMeQ" iD="_AXHAcGOSEd2mS_8SFTXMeQ" name="Pool">
+ <vertices xmi:type="bpmn:Activity" xmi:id="_EPuQwWOSEd2mS_8SFTXMeQ" iD="_EPuQwGOSEd2mS_8SFTXMeQ" outgoingEdges="_6HqqgWlWEd2VTpmAjt3VIA" incomingEdges="_x1ziAWlWEd2VTpmAjt3VIA _25I5AWlWEd2VTpmAjt3VIA" activityType="GatewayParallel"/>
+ <vertices xmi:type="bpmn:Activity" xmi:id="_FY9wwWOSEd2mS_8SFTXMeQ" iD="_FY9wwGOSEd2mS_8SFTXMeQ" outgoingEdges="_xbzGkWlWEd2VTpmAjt3VIA" name="StartA" activityType="EventStartSignal"/>
+ <vertices xmi:type="bpmn:Activity" xmi:id="_FobwIWOSEd2mS_8SFTXMeQ" iD="_FobwIGOSEd2mS_8SFTXMeQ" outgoingEdges="_1inyAWlWEd2VTpmAjt3VIA" name="StartB" activityType="EventStartSignal"/>
+ <vertices xmi:type="bpmn:Activity" xmi:id="_LFtRIWOSEd2mS_8SFTXMeQ" iD="_LFtRIGOSEd2mS_8SFTXMeQ" incomingEdges="_696WAWlWEd2VTpmAjt3VIA" activityType="EventEndEmpty"/>
+ <vertices xmi:type="bpmn:Activity" xmi:id="_tQcgcWlWEd2VTpmAjt3VIA" iD="_tQcgcGlWEd2VTpmAjt3VIA" outgoingEdges="_x1ziAWlWEd2VTpmAjt3VIA" incomingEdges="_xbzGkWlWEd2VTpmAjt3VIA" name="TaskA"/>
+ <vertices xmi:type="bpmn:Activity" xmi:id="_y-u48WlWEd2VTpmAjt3VIA" iD="_y-u48GlWEd2VTpmAjt3VIA" outgoingEdges="_25I5AWlWEd2VTpmAjt3VIA" incomingEdges="_1inyAWlWEd2VTpmAjt3VIA" name="TaskB"/>
+ <vertices xmi:type="bpmn:Activity" xmi:id="_4Egf8WlWEd2VTpmAjt3VIA" iD="_4Egf8GlWEd2VTpmAjt3VIA" outgoingEdges="_696WAWlWEd2VTpmAjt3VIA" incomingEdges="_6HqqgWlWEd2VTpmAjt3VIA" name="TaskC"/>
+ <sequenceEdges xmi:type="bpmn:SequenceEdge" xmi:id="_xbzGkWlWEd2VTpmAjt3VIA" iD="_xbzGkGlWEd2VTpmAjt3VIA" source="_FY9wwWOSEd2mS_8SFTXMeQ" target="_tQcgcWlWEd2VTpmAjt3VIA"/>
+ <sequenceEdges xmi:type="bpmn:SequenceEdge" xmi:id="_x1ziAWlWEd2VTpmAjt3VIA" iD="_x1ziAGlWEd2VTpmAjt3VIA" source="_tQcgcWlWEd2VTpmAjt3VIA" target="_EPuQwWOSEd2mS_8SFTXMeQ"/>
+ <sequenceEdges xmi:type="bpmn:SequenceEdge" xmi:id="_1inyAWlWEd2VTpmAjt3VIA" iD="_1inyAGlWEd2VTpmAjt3VIA" source="_FobwIWOSEd2mS_8SFTXMeQ" target="_y-u48WlWEd2VTpmAjt3VIA"/>
+ <sequenceEdges xmi:type="bpmn:SequenceEdge" xmi:id="_25I5AWlWEd2VTpmAjt3VIA" iD="_25I5AGlWEd2VTpmAjt3VIA" source="_y-u48WlWEd2VTpmAjt3VIA" target="_EPuQwWOSEd2mS_8SFTXMeQ"/>
+ <sequenceEdges xmi:type="bpmn:SequenceEdge" xmi:id="_6HqqgWlWEd2VTpmAjt3VIA" iD="_6HqqgGlWEd2VTpmAjt3VIA" source="_EPuQwWOSEd2mS_8SFTXMeQ" target="_4Egf8WlWEd2VTpmAjt3VIA"/>
+ <sequenceEdges xmi:type="bpmn:SequenceEdge" xmi:id="_696WAWlWEd2VTpmAjt3VIA" iD="_696WAGlWEd2VTpmAjt3VIA" source="_4Egf8WlWEd2VTpmAjt3VIA" target="_LFtRIWOSEd2mS_8SFTXMeQ"/>
+ </pools>
+</bpmn:BpmnDiagram>
Deleted: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/cts/gateway/parallel/parallel-merge.bpmn_diagram
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/resources/cts/gateway/parallel/parallel-merge.bpmn_diagram 2008-08-14 15:25:00 UTC (rev 1892)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/resources/cts/gateway/parallel/parallel-merge.bpmn_diagram 2008-08-15 07:59:12 UTC (rev 1896)
@@ -1,156 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<notation:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:bpmn="http://stp.eclipse.org/bpmn" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.1/notation" xmi:id="_AXGZYGOSEd2mS_8SFTXMeQ" type="Bpmn" name="parallel-merge.bpmn_diagram" measurementUnit="Pixel">
- <children xmi:type="notation:Node" xmi:id="_AXIOkGOSEd2mS_8SFTXMeQ" type="1001">
- <children xmi:type="notation:Node" xmi:id="_AXI1oGOSEd2mS_8SFTXMeQ" type="4008"/>
- <children xmi:type="notation:Node" xmi:id="_AXI1oWOSEd2mS_8SFTXMeQ" type="5001">
- <children xmi:type="notation:Node" xmi:id="_EPve4GOSEd2mS_8SFTXMeQ" type="2001">
- <children xmi:type="notation:Node" xmi:id="_EPwF8GOSEd2mS_8SFTXMeQ" type="4001"/>
- <styles xmi:type="notation:FontStyle" xmi:id="_EPve4WOSEd2mS_8SFTXMeQ" fontName="Arial"/>
- <styles xmi:type="notation:DescriptionStyle" xmi:id="_EPve4mOSEd2mS_8SFTXMeQ"/>
- <styles xmi:type="notation:FillStyle" xmi:id="_EPve42OSEd2mS_8SFTXMeQ"/>
- <styles xmi:type="notation:LineStyle" xmi:id="_EPve5GOSEd2mS_8SFTXMeQ" lineColor="0"/>
- <element xmi:type="bpmn:Activity" href="parallel-merge.bpmn#_EPuQwWOSEd2mS_8SFTXMeQ"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_EPve5WOSEd2mS_8SFTXMeQ" x="240" y="72"/>
- </children>
- <children xmi:type="notation:Node" xmi:id="_FY--4GOSEd2mS_8SFTXMeQ" type="2001">
- <children xmi:type="notation:Node" xmi:id="_FY_l8GOSEd2mS_8SFTXMeQ" type="4001"/>
- <styles xmi:type="notation:FontStyle" xmi:id="_FY--4WOSEd2mS_8SFTXMeQ" fontName="Arial"/>
- <styles xmi:type="notation:DescriptionStyle" xmi:id="_FY--4mOSEd2mS_8SFTXMeQ"/>
- <styles xmi:type="notation:FillStyle" xmi:id="_FY--42OSEd2mS_8SFTXMeQ"/>
- <styles xmi:type="notation:LineStyle" xmi:id="_FY--5GOSEd2mS_8SFTXMeQ" lineColor="0"/>
- <element xmi:type="bpmn:Activity" href="parallel-merge.bpmn#_FY9wwWOSEd2mS_8SFTXMeQ"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_FY--5WOSEd2mS_8SFTXMeQ" x="36" y="24" width="50"/>
- </children>
- <children xmi:type="notation:Node" xmi:id="_Foc-QGOSEd2mS_8SFTXMeQ" type="2001">
- <children xmi:type="notation:Node" xmi:id="_FodlUGOSEd2mS_8SFTXMeQ" type="4001"/>
- <styles xmi:type="notation:FontStyle" xmi:id="_Foc-QWOSEd2mS_8SFTXMeQ" fontName="Arial"/>
- <styles xmi:type="notation:DescriptionStyle" xmi:id="_Foc-QmOSEd2mS_8SFTXMeQ"/>
- <styles xmi:type="notation:FillStyle" xmi:id="_Foc-Q2OSEd2mS_8SFTXMeQ"/>
- <styles xmi:type="notation:LineStyle" xmi:id="_Foc-RGOSEd2mS_8SFTXMeQ" lineColor="0"/>
- <element xmi:type="bpmn:Activity" href="parallel-merge.bpmn#_FobwIWOSEd2mS_8SFTXMeQ"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Foc-RWOSEd2mS_8SFTXMeQ" x="36" y="144"/>
- </children>
- <children xmi:type="notation:Node" xmi:id="_LFt4MGOSEd2mS_8SFTXMeQ" type="2001">
- <children xmi:type="notation:Node" xmi:id="_LFufRWOSEd2mS_8SFTXMeQ" type="4001"/>
- <styles xmi:type="notation:FontStyle" xmi:id="_LFufQGOSEd2mS_8SFTXMeQ" fontName="Arial"/>
- <styles xmi:type="notation:DescriptionStyle" xmi:id="_LFufQWOSEd2mS_8SFTXMeQ"/>
- <styles xmi:type="notation:FillStyle" xmi:id="_LFufQmOSEd2mS_8SFTXMeQ"/>
- <styles xmi:type="notation:LineStyle" xmi:id="_LFufQ2OSEd2mS_8SFTXMeQ" lineColor="0"/>
- <element xmi:type="bpmn:Activity" href="parallel-merge.bpmn#_LFtRIWOSEd2mS_8SFTXMeQ"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LFufRGOSEd2mS_8SFTXMeQ" x="492" y="84"/>
- </children>
- <children xmi:type="notation:Node" xmi:id="_tQlDUGlWEd2VTpmAjt3VIA" type="2001">
- <children xmi:type="notation:Node" xmi:id="_tQmRcGlWEd2VTpmAjt3VIA" type="4001"/>
- <styles xmi:type="notation:FontStyle" xmi:id="_tQlDUWlWEd2VTpmAjt3VIA" fontName="Arial"/>
- <styles xmi:type="notation:DescriptionStyle" xmi:id="_tQlDUmlWEd2VTpmAjt3VIA"/>
- <styles xmi:type="notation:FillStyle" xmi:id="_tQlDU2lWEd2VTpmAjt3VIA"/>
- <styles xmi:type="notation:LineStyle" xmi:id="_tQlDVGlWEd2VTpmAjt3VIA" lineColor="0"/>
- <element xmi:type="bpmn:Activity" href="parallel-merge.bpmn#_tQcgcWlWEd2VTpmAjt3VIA"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_tQlDVWlWEd2VTpmAjt3VIA" x="96" y="12"/>
- </children>
- <children xmi:type="notation:Node" xmi:id="_y-wHEGlWEd2VTpmAjt3VIA" type="2001">
- <children xmi:type="notation:Node" xmi:id="_y-wuIGlWEd2VTpmAjt3VIA" type="4001"/>
- <styles xmi:type="notation:FontStyle" xmi:id="_y-wHEWlWEd2VTpmAjt3VIA" fontName="Arial"/>
- <styles xmi:type="notation:DescriptionStyle" xmi:id="_y-wHEmlWEd2VTpmAjt3VIA"/>
- <styles xmi:type="notation:FillStyle" xmi:id="_y-wHE2lWEd2VTpmAjt3VIA"/>
- <styles xmi:type="notation:LineStyle" xmi:id="_y-wHFGlWEd2VTpmAjt3VIA" lineColor="0"/>
- <element xmi:type="bpmn:Activity" href="parallel-merge.bpmn#_y-u48WlWEd2VTpmAjt3VIA"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_y-wHFWlWEd2VTpmAjt3VIA" x="96" y="132"/>
- </children>
- <children xmi:type="notation:Node" xmi:id="_4EhHAGlWEd2VTpmAjt3VIA" type="2001">
- <children xmi:type="notation:Node" xmi:id="_4EhuEGlWEd2VTpmAjt3VIA" type="4001"/>
- <styles xmi:type="notation:FontStyle" xmi:id="_4EhHAWlWEd2VTpmAjt3VIA" fontName="Arial"/>
- <styles xmi:type="notation:DescriptionStyle" xmi:id="_4EhHAmlWEd2VTpmAjt3VIA"/>
- <styles xmi:type="notation:FillStyle" xmi:id="_4EhHA2lWEd2VTpmAjt3VIA"/>
- <styles xmi:type="notation:LineStyle" xmi:id="_4EhHBGlWEd2VTpmAjt3VIA" lineColor="0"/>
- <element xmi:type="bpmn:Activity" href="parallel-merge.bpmn#_4Egf8WlWEd2VTpmAjt3VIA"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_4EhHBWlWEd2VTpmAjt3VIA" x="336" y="72"/>
- </children>
- <styles xmi:type="notation:DrawerStyle" xmi:id="_AXI1omOSEd2mS_8SFTXMeQ"/>
- <styles xmi:type="notation:SortingStyle" xmi:id="_AXI1o2OSEd2mS_8SFTXMeQ"/>
- <styles xmi:type="notation:FilteringStyle" xmi:id="_AXI1pGOSEd2mS_8SFTXMeQ"/>
- </children>
- <styles xmi:type="notation:FontStyle" xmi:id="_AXIOkWOSEd2mS_8SFTXMeQ" fontName="Arial"/>
- <styles xmi:type="notation:DescriptionStyle" xmi:id="_AXIOkmOSEd2mS_8SFTXMeQ"/>
- <styles xmi:type="notation:FillStyle" xmi:id="_AXIOk2OSEd2mS_8SFTXMeQ" fillColor="16771304"/>
- <styles xmi:type="notation:LineStyle" xmi:id="_AXIOlGOSEd2mS_8SFTXMeQ" lineColor="11119017"/>
- <element xmi:type="bpmn:Pool" href="parallel-merge.bpmn#_AXHAcWOSEd2mS_8SFTXMeQ"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AXI1pWOSEd2mS_8SFTXMeQ" x="16" y="16" width="585" height="213"/>
- </children>
- <styles xmi:type="notation:PageStyle" xmi:id="_AXGZYWOSEd2mS_8SFTXMeQ"/>
- <styles xmi:type="notation:GuideStyle" xmi:id="_AXGZYmOSEd2mS_8SFTXMeQ"/>
- <styles xmi:type="notation:DescriptionStyle" xmi:id="_AXGZY2OSEd2mS_8SFTXMeQ"/>
- <element xmi:type="bpmn:BpmnDiagram" href="parallel-merge.bpmn#_AXFyUWOSEd2mS_8SFTXMeQ"/>
- <edges xmi:type="notation:Edge" xmi:id="_xb2w8GlWEd2VTpmAjt3VIA" type="3001" source="_FY--4GOSEd2mS_8SFTXMeQ" target="_tQlDUGlWEd2VTpmAjt3VIA">
- <children xmi:type="notation:Node" xmi:id="_xb5NMGlWEd2VTpmAjt3VIA" type="4012">
- <styles xmi:type="notation:FillStyle" xmi:id="_xb5NMWlWEd2VTpmAjt3VIA" fillColor="16776959"/>
- <styles xmi:type="notation:LineStyle" xmi:id="_xb5NMmlWEd2VTpmAjt3VIA" lineColor="16776959"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_xb5NM2lWEd2VTpmAjt3VIA" y="-10"/>
- </children>
- <styles xmi:type="notation:RoutingStyle" xmi:id="_xb2w8WlWEd2VTpmAjt3VIA" routing="Rectilinear" smoothness="Normal" closestDistance="true"/>
- <styles xmi:type="notation:FontStyle" xmi:id="_xb2w8mlWEd2VTpmAjt3VIA" fontName="Arial"/>
- <styles xmi:type="notation:LineStyle" xmi:id="_xb2w82lWEd2VTpmAjt3VIA" lineColor="0"/>
- <element xmi:type="bpmn:SequenceEdge" href="parallel-merge.bpmn#_xbzGkWlWEd2VTpmAjt3VIA"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_xb2w9GlWEd2VTpmAjt3VIA" points="[15, 1, -148, -14]$[217, 23, 54, 8]"/>
- </edges>
- <edges xmi:type="notation:Edge" xmi:id="_x11-QGlWEd2VTpmAjt3VIA" type="3001" source="_tQlDUGlWEd2VTpmAjt3VIA" target="_EPve4GOSEd2mS_8SFTXMeQ">
- <children xmi:type="notation:Node" xmi:id="_x12lUGlWEd2VTpmAjt3VIA" type="4012">
- <styles xmi:type="notation:FillStyle" xmi:id="_x12lUWlWEd2VTpmAjt3VIA" fillColor="16776959"/>
- <styles xmi:type="notation:LineStyle" xmi:id="_x12lUmlWEd2VTpmAjt3VIA" lineColor="16776959"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_x12lU2lWEd2VTpmAjt3VIA" y="-10"/>
- </children>
- <styles xmi:type="notation:RoutingStyle" xmi:id="_x11-QWlWEd2VTpmAjt3VIA" routing="Rectilinear" smoothness="Normal" closestDistance="true"/>
- <styles xmi:type="notation:FontStyle" xmi:id="_x11-QmlWEd2VTpmAjt3VIA" fontName="Arial"/>
- <styles xmi:type="notation:LineStyle" xmi:id="_x11-Q2lWEd2VTpmAjt3VIA" lineColor="0"/>
- <element xmi:type="bpmn:SequenceEdge" href="parallel-merge.bpmn#_x1ziAWlWEd2VTpmAjt3VIA"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_x11-RGlWEd2VTpmAjt3VIA" points="[54, 6, -189, -37]$[244, 19, 1, -24]"/>
- </edges>
- <edges xmi:type="notation:Edge" xmi:id="_1ipAIGlWEd2VTpmAjt3VIA" type="3001" source="_Foc-QGOSEd2mS_8SFTXMeQ" target="_y-wHEGlWEd2VTpmAjt3VIA">
- <children xmi:type="notation:Node" xmi:id="_1ipnMGlWEd2VTpmAjt3VIA" type="4012">
- <styles xmi:type="notation:FillStyle" xmi:id="_1ipnMWlWEd2VTpmAjt3VIA" fillColor="16776959"/>
- <styles xmi:type="notation:LineStyle" xmi:id="_1ipnMmlWEd2VTpmAjt3VIA" lineColor="16776959"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_1ipnM2lWEd2VTpmAjt3VIA" y="-10"/>
- </children>
- <styles xmi:type="notation:RoutingStyle" xmi:id="_1ipAIWlWEd2VTpmAjt3VIA" routing="Rectilinear" smoothness="Normal" closestDistance="true"/>
- <styles xmi:type="notation:FontStyle" xmi:id="_1ipAImlWEd2VTpmAjt3VIA" fontName="Arial"/>
- <styles xmi:type="notation:LineStyle" xmi:id="_1ipAI2lWEd2VTpmAjt3VIA" lineColor="0"/>
- <element xmi:type="bpmn:SequenceEdge" href="parallel-merge.bpmn#_1inyAWlWEd2VTpmAjt3VIA"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_1ipAJGlWEd2VTpmAjt3VIA" points="[15, -3, -199, 16]$[161, -46, -53, -27]"/>
- </edges>
- <edges xmi:type="notation:Edge" xmi:id="_25KHIGlWEd2VTpmAjt3VIA" type="3001" source="_y-wHEGlWEd2VTpmAjt3VIA" target="_EPve4GOSEd2mS_8SFTXMeQ">
- <children xmi:type="notation:Node" xmi:id="_25KuMGlWEd2VTpmAjt3VIA" type="4012">
- <styles xmi:type="notation:FillStyle" xmi:id="_25KuMWlWEd2VTpmAjt3VIA" fillColor="16776959"/>
- <styles xmi:type="notation:LineStyle" xmi:id="_25KuMmlWEd2VTpmAjt3VIA" lineColor="16776959"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_25KuM2lWEd2VTpmAjt3VIA" y="-10"/>
- </children>
- <styles xmi:type="notation:RoutingStyle" xmi:id="_25KHIWlWEd2VTpmAjt3VIA" routing="Rectilinear" smoothness="Normal" closestDistance="true"/>
- <styles xmi:type="notation:FontStyle" xmi:id="_25KHImlWEd2VTpmAjt3VIA" fontName="Arial"/>
- <styles xmi:type="notation:LineStyle" xmi:id="_25KHI2lWEd2VTpmAjt3VIA" lineColor="0"/>
- <element xmi:type="bpmn:SequenceEdge" href="parallel-merge.bpmn#_25I5AWlWEd2VTpmAjt3VIA"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_25KHJGlWEd2VTpmAjt3VIA" points="[54, -10, -254, 53]$[303, -43, -5, 20]"/>
- </edges>
- <edges xmi:type="notation:Edge" xmi:id="_6Hr4oGlWEd2VTpmAjt3VIA" type="3001" source="_EPve4GOSEd2mS_8SFTXMeQ" target="_4EhHAGlWEd2VTpmAjt3VIA">
- <children xmi:type="notation:Node" xmi:id="_6HsfsWlWEd2VTpmAjt3VIA" type="4012">
- <styles xmi:type="notation:FillStyle" xmi:id="_6HsfsmlWEd2VTpmAjt3VIA" fillColor="16776959"/>
- <styles xmi:type="notation:LineStyle" xmi:id="_6Hsfs2lWEd2VTpmAjt3VIA" lineColor="16776959"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_6HsftGlWEd2VTpmAjt3VIA" y="-10"/>
- </children>
- <styles xmi:type="notation:RoutingStyle" xmi:id="_6Hr4oWlWEd2VTpmAjt3VIA" routing="Rectilinear" smoothness="Normal" closestDistance="true"/>
- <styles xmi:type="notation:FontStyle" xmi:id="_6Hr4omlWEd2VTpmAjt3VIA" fontName="Arial"/>
- <styles xmi:type="notation:LineStyle" xmi:id="_6Hr4o2lWEd2VTpmAjt3VIA" lineColor="0"/>
- <element xmi:type="bpmn:SequenceEdge" href="parallel-merge.bpmn#_6HqqgWlWEd2VTpmAjt3VIA"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_6HsfsGlWEd2VTpmAjt3VIA" points="[22, -3, -154, -6]$[175, -25, -1, -28]"/>
- </edges>
- <edges xmi:type="notation:Edge" xmi:id="_697kIGlWEd2VTpmAjt3VIA" type="3001" source="_4EhHAGlWEd2VTpmAjt3VIA" target="_LFt4MGOSEd2mS_8SFTXMeQ">
- <children xmi:type="notation:Node" xmi:id="_698LMGlWEd2VTpmAjt3VIA" type="4012">
- <styles xmi:type="notation:FillStyle" xmi:id="_698LMWlWEd2VTpmAjt3VIA" fillColor="16776959"/>
- <styles xmi:type="notation:LineStyle" xmi:id="_698LMmlWEd2VTpmAjt3VIA" lineColor="16776959"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_698LM2lWEd2VTpmAjt3VIA" y="-10"/>
- </children>
- <styles xmi:type="notation:RoutingStyle" xmi:id="_697kIWlWEd2VTpmAjt3VIA" routing="Rectilinear" smoothness="Normal" closestDistance="true"/>
- <styles xmi:type="notation:FontStyle" xmi:id="_697kImlWEd2VTpmAjt3VIA" fontName="Arial"/>
- <styles xmi:type="notation:LineStyle" xmi:id="_697kI2lWEd2VTpmAjt3VIA" lineColor="0"/>
- <element xmi:type="bpmn:SequenceEdge" href="parallel-merge.bpmn#_696WAWlWEd2VTpmAjt3VIA"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_697kJGlWEd2VTpmAjt3VIA" points="[54, -2, -88, -1]$[127, -16, -15, -15]"/>
- </edges>
-</notation:Diagram>
Copied: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/cts/gateway/parallel/parallel-merge.bpmn_diagram (from rev 1892, jbossbpm/spec/trunk/modules/testsuite/src/test/resources/cts/gateway/parallel/parallel-merge.bpmn_diagram)
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/resources/cts/gateway/parallel/parallel-merge.bpmn_diagram (rev 0)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/resources/cts/gateway/parallel/parallel-merge.bpmn_diagram 2008-08-15 07:59:12 UTC (rev 1896)
@@ -0,0 +1,156 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<notation:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:bpmn="http://stp.eclipse.org/bpmn" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.1/notation" xmi:id="_AXGZYGOSEd2mS_8SFTXMeQ" type="Bpmn" name="parallel-merge.bpmn_diagram" measurementUnit="Pixel">
+ <children xmi:type="notation:Node" xmi:id="_AXIOkGOSEd2mS_8SFTXMeQ" type="1001">
+ <children xmi:type="notation:Node" xmi:id="_AXI1oGOSEd2mS_8SFTXMeQ" type="4008"/>
+ <children xmi:type="notation:Node" xmi:id="_AXI1oWOSEd2mS_8SFTXMeQ" type="5001">
+ <children xmi:type="notation:Node" xmi:id="_EPve4GOSEd2mS_8SFTXMeQ" type="2001">
+ <children xmi:type="notation:Node" xmi:id="_EPwF8GOSEd2mS_8SFTXMeQ" type="4001"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_EPve4WOSEd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_EPve4mOSEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:FillStyle" xmi:id="_EPve42OSEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_EPve5GOSEd2mS_8SFTXMeQ" lineColor="0"/>
+ <element xmi:type="bpmn:Activity" href="parallel-merge.bpmn#_EPuQwWOSEd2mS_8SFTXMeQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_EPve5WOSEd2mS_8SFTXMeQ" x="240" y="72"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_FY--4GOSEd2mS_8SFTXMeQ" type="2001">
+ <children xmi:type="notation:Node" xmi:id="_FY_l8GOSEd2mS_8SFTXMeQ" type="4001"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_FY--4WOSEd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_FY--4mOSEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:FillStyle" xmi:id="_FY--42OSEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_FY--5GOSEd2mS_8SFTXMeQ" lineColor="0"/>
+ <element xmi:type="bpmn:Activity" href="parallel-merge.bpmn#_FY9wwWOSEd2mS_8SFTXMeQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_FY--5WOSEd2mS_8SFTXMeQ" x="36" y="24" width="50"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_Foc-QGOSEd2mS_8SFTXMeQ" type="2001">
+ <children xmi:type="notation:Node" xmi:id="_FodlUGOSEd2mS_8SFTXMeQ" type="4001"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_Foc-QWOSEd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_Foc-QmOSEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:FillStyle" xmi:id="_Foc-Q2OSEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_Foc-RGOSEd2mS_8SFTXMeQ" lineColor="0"/>
+ <element xmi:type="bpmn:Activity" href="parallel-merge.bpmn#_FobwIWOSEd2mS_8SFTXMeQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Foc-RWOSEd2mS_8SFTXMeQ" x="36" y="144"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_LFt4MGOSEd2mS_8SFTXMeQ" type="2001">
+ <children xmi:type="notation:Node" xmi:id="_LFufRWOSEd2mS_8SFTXMeQ" type="4001"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_LFufQGOSEd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_LFufQWOSEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:FillStyle" xmi:id="_LFufQmOSEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_LFufQ2OSEd2mS_8SFTXMeQ" lineColor="0"/>
+ <element xmi:type="bpmn:Activity" href="parallel-merge.bpmn#_LFtRIWOSEd2mS_8SFTXMeQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LFufRGOSEd2mS_8SFTXMeQ" x="492" y="84"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_tQlDUGlWEd2VTpmAjt3VIA" type="2001">
+ <children xmi:type="notation:Node" xmi:id="_tQmRcGlWEd2VTpmAjt3VIA" type="4001"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_tQlDUWlWEd2VTpmAjt3VIA" fontName="Arial"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_tQlDUmlWEd2VTpmAjt3VIA"/>
+ <styles xmi:type="notation:FillStyle" xmi:id="_tQlDU2lWEd2VTpmAjt3VIA"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_tQlDVGlWEd2VTpmAjt3VIA" lineColor="0"/>
+ <element xmi:type="bpmn:Activity" href="parallel-merge.bpmn#_tQcgcWlWEd2VTpmAjt3VIA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_tQlDVWlWEd2VTpmAjt3VIA" x="96" y="12"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_y-wHEGlWEd2VTpmAjt3VIA" type="2001">
+ <children xmi:type="notation:Node" xmi:id="_y-wuIGlWEd2VTpmAjt3VIA" type="4001"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_y-wHEWlWEd2VTpmAjt3VIA" fontName="Arial"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_y-wHEmlWEd2VTpmAjt3VIA"/>
+ <styles xmi:type="notation:FillStyle" xmi:id="_y-wHE2lWEd2VTpmAjt3VIA"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_y-wHFGlWEd2VTpmAjt3VIA" lineColor="0"/>
+ <element xmi:type="bpmn:Activity" href="parallel-merge.bpmn#_y-u48WlWEd2VTpmAjt3VIA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_y-wHFWlWEd2VTpmAjt3VIA" x="96" y="132"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_4EhHAGlWEd2VTpmAjt3VIA" type="2001">
+ <children xmi:type="notation:Node" xmi:id="_4EhuEGlWEd2VTpmAjt3VIA" type="4001"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_4EhHAWlWEd2VTpmAjt3VIA" fontName="Arial"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_4EhHAmlWEd2VTpmAjt3VIA"/>
+ <styles xmi:type="notation:FillStyle" xmi:id="_4EhHA2lWEd2VTpmAjt3VIA"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_4EhHBGlWEd2VTpmAjt3VIA" lineColor="0"/>
+ <element xmi:type="bpmn:Activity" href="parallel-merge.bpmn#_4Egf8WlWEd2VTpmAjt3VIA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_4EhHBWlWEd2VTpmAjt3VIA" x="336" y="72"/>
+ </children>
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_AXI1omOSEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_AXI1o2OSEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_AXI1pGOSEd2mS_8SFTXMeQ"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_AXIOkWOSEd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_AXIOkmOSEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:FillStyle" xmi:id="_AXIOk2OSEd2mS_8SFTXMeQ" fillColor="16771304"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_AXIOlGOSEd2mS_8SFTXMeQ" lineColor="11119017"/>
+ <element xmi:type="bpmn:Pool" href="parallel-merge.bpmn#_AXHAcWOSEd2mS_8SFTXMeQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AXI1pWOSEd2mS_8SFTXMeQ" x="16" y="16" width="585" height="213"/>
+ </children>
+ <styles xmi:type="notation:PageStyle" xmi:id="_AXGZYWOSEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:GuideStyle" xmi:id="_AXGZYmOSEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_AXGZY2OSEd2mS_8SFTXMeQ"/>
+ <element xmi:type="bpmn:BpmnDiagram" href="parallel-merge.bpmn#_AXFyUWOSEd2mS_8SFTXMeQ"/>
+ <edges xmi:type="notation:Edge" xmi:id="_xb2w8GlWEd2VTpmAjt3VIA" type="3001" source="_FY--4GOSEd2mS_8SFTXMeQ" target="_tQlDUGlWEd2VTpmAjt3VIA">
+ <children xmi:type="notation:Node" xmi:id="_xb5NMGlWEd2VTpmAjt3VIA" type="4012">
+ <styles xmi:type="notation:FillStyle" xmi:id="_xb5NMWlWEd2VTpmAjt3VIA" fillColor="16776959"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_xb5NMmlWEd2VTpmAjt3VIA" lineColor="16776959"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_xb5NM2lWEd2VTpmAjt3VIA" y="-10"/>
+ </children>
+ <styles xmi:type="notation:RoutingStyle" xmi:id="_xb2w8WlWEd2VTpmAjt3VIA" routing="Rectilinear" smoothness="Normal" closestDistance="true"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_xb2w8mlWEd2VTpmAjt3VIA" fontName="Arial"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_xb2w82lWEd2VTpmAjt3VIA" lineColor="0"/>
+ <element xmi:type="bpmn:SequenceEdge" href="parallel-merge.bpmn#_xbzGkWlWEd2VTpmAjt3VIA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_xb2w9GlWEd2VTpmAjt3VIA" points="[15, 1, -148, -14]$[217, 23, 54, 8]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_x11-QGlWEd2VTpmAjt3VIA" type="3001" source="_tQlDUGlWEd2VTpmAjt3VIA" target="_EPve4GOSEd2mS_8SFTXMeQ">
+ <children xmi:type="notation:Node" xmi:id="_x12lUGlWEd2VTpmAjt3VIA" type="4012">
+ <styles xmi:type="notation:FillStyle" xmi:id="_x12lUWlWEd2VTpmAjt3VIA" fillColor="16776959"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_x12lUmlWEd2VTpmAjt3VIA" lineColor="16776959"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_x12lU2lWEd2VTpmAjt3VIA" y="-10"/>
+ </children>
+ <styles xmi:type="notation:RoutingStyle" xmi:id="_x11-QWlWEd2VTpmAjt3VIA" routing="Rectilinear" smoothness="Normal" closestDistance="true"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_x11-QmlWEd2VTpmAjt3VIA" fontName="Arial"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_x11-Q2lWEd2VTpmAjt3VIA" lineColor="0"/>
+ <element xmi:type="bpmn:SequenceEdge" href="parallel-merge.bpmn#_x1ziAWlWEd2VTpmAjt3VIA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_x11-RGlWEd2VTpmAjt3VIA" points="[54, 6, -189, -37]$[244, 19, 1, -24]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_1ipAIGlWEd2VTpmAjt3VIA" type="3001" source="_Foc-QGOSEd2mS_8SFTXMeQ" target="_y-wHEGlWEd2VTpmAjt3VIA">
+ <children xmi:type="notation:Node" xmi:id="_1ipnMGlWEd2VTpmAjt3VIA" type="4012">
+ <styles xmi:type="notation:FillStyle" xmi:id="_1ipnMWlWEd2VTpmAjt3VIA" fillColor="16776959"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_1ipnMmlWEd2VTpmAjt3VIA" lineColor="16776959"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_1ipnM2lWEd2VTpmAjt3VIA" y="-10"/>
+ </children>
+ <styles xmi:type="notation:RoutingStyle" xmi:id="_1ipAIWlWEd2VTpmAjt3VIA" routing="Rectilinear" smoothness="Normal" closestDistance="true"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_1ipAImlWEd2VTpmAjt3VIA" fontName="Arial"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_1ipAI2lWEd2VTpmAjt3VIA" lineColor="0"/>
+ <element xmi:type="bpmn:SequenceEdge" href="parallel-merge.bpmn#_1inyAWlWEd2VTpmAjt3VIA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_1ipAJGlWEd2VTpmAjt3VIA" points="[15, -3, -199, 16]$[161, -46, -53, -27]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_25KHIGlWEd2VTpmAjt3VIA" type="3001" source="_y-wHEGlWEd2VTpmAjt3VIA" target="_EPve4GOSEd2mS_8SFTXMeQ">
+ <children xmi:type="notation:Node" xmi:id="_25KuMGlWEd2VTpmAjt3VIA" type="4012">
+ <styles xmi:type="notation:FillStyle" xmi:id="_25KuMWlWEd2VTpmAjt3VIA" fillColor="16776959"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_25KuMmlWEd2VTpmAjt3VIA" lineColor="16776959"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_25KuM2lWEd2VTpmAjt3VIA" y="-10"/>
+ </children>
+ <styles xmi:type="notation:RoutingStyle" xmi:id="_25KHIWlWEd2VTpmAjt3VIA" routing="Rectilinear" smoothness="Normal" closestDistance="true"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_25KHImlWEd2VTpmAjt3VIA" fontName="Arial"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_25KHI2lWEd2VTpmAjt3VIA" lineColor="0"/>
+ <element xmi:type="bpmn:SequenceEdge" href="parallel-merge.bpmn#_25I5AWlWEd2VTpmAjt3VIA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_25KHJGlWEd2VTpmAjt3VIA" points="[54, -10, -254, 53]$[303, -43, -5, 20]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_6Hr4oGlWEd2VTpmAjt3VIA" type="3001" source="_EPve4GOSEd2mS_8SFTXMeQ" target="_4EhHAGlWEd2VTpmAjt3VIA">
+ <children xmi:type="notation:Node" xmi:id="_6HsfsWlWEd2VTpmAjt3VIA" type="4012">
+ <styles xmi:type="notation:FillStyle" xmi:id="_6HsfsmlWEd2VTpmAjt3VIA" fillColor="16776959"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_6Hsfs2lWEd2VTpmAjt3VIA" lineColor="16776959"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_6HsftGlWEd2VTpmAjt3VIA" y="-10"/>
+ </children>
+ <styles xmi:type="notation:RoutingStyle" xmi:id="_6Hr4oWlWEd2VTpmAjt3VIA" routing="Rectilinear" smoothness="Normal" closestDistance="true"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_6Hr4omlWEd2VTpmAjt3VIA" fontName="Arial"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_6Hr4o2lWEd2VTpmAjt3VIA" lineColor="0"/>
+ <element xmi:type="bpmn:SequenceEdge" href="parallel-merge.bpmn#_6HqqgWlWEd2VTpmAjt3VIA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_6HsfsGlWEd2VTpmAjt3VIA" points="[22, -3, -154, -6]$[175, -25, -1, -28]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_697kIGlWEd2VTpmAjt3VIA" type="3001" source="_4EhHAGlWEd2VTpmAjt3VIA" target="_LFt4MGOSEd2mS_8SFTXMeQ">
+ <children xmi:type="notation:Node" xmi:id="_698LMGlWEd2VTpmAjt3VIA" type="4012">
+ <styles xmi:type="notation:FillStyle" xmi:id="_698LMWlWEd2VTpmAjt3VIA" fillColor="16776959"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_698LMmlWEd2VTpmAjt3VIA" lineColor="16776959"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_698LM2lWEd2VTpmAjt3VIA" y="-10"/>
+ </children>
+ <styles xmi:type="notation:RoutingStyle" xmi:id="_697kIWlWEd2VTpmAjt3VIA" routing="Rectilinear" smoothness="Normal" closestDistance="true"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_697kImlWEd2VTpmAjt3VIA" fontName="Arial"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_697kI2lWEd2VTpmAjt3VIA" lineColor="0"/>
+ <element xmi:type="bpmn:SequenceEdge" href="parallel-merge.bpmn#_696WAWlWEd2VTpmAjt3VIA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_697kJGlWEd2VTpmAjt3VIA" points="[54, -2, -88, -1]$[127, -16, -15, -15]"/>
+ </edges>
+</notation:Diagram>
Deleted: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/cts/gateway/parallel/parallel-merge.png
===================================================================
(Binary files differ)
Copied: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/cts/gateway/parallel/parallel-merge.png (from rev 1892, jbossbpm/spec/trunk/modules/testsuite/src/test/resources/cts/gateway/parallel/parallel-merge.png)
===================================================================
(Binary files differ)
Deleted: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/cts/gateway/parallel/parallel-split.bpmn
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/resources/cts/gateway/parallel/parallel-split.bpmn 2008-08-14 15:25:00 UTC (rev 1892)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/resources/cts/gateway/parallel/parallel-split.bpmn 2008-08-15 07:59:12 UTC (rev 1896)
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<bpmn:BpmnDiagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:bpmn="http://stp.eclipse.org/bpmn" xmi:id="_rQi2YWOREd2mS_8SFTXMeQ" iD="_rQi2YGOREd2mS_8SFTXMeQ">
- <pools xmi:type="bpmn:Pool" xmi:id="_rQjddWOREd2mS_8SFTXMeQ" iD="_rQjddGOREd2mS_8SFTXMeQ" name="Pool">
- <vertices xmi:type="bpmn:Activity" xmi:id="_tKtdAWOREd2mS_8SFTXMeQ" iD="_tKtdAGOREd2mS_8SFTXMeQ" outgoingEdges="_yunKcWOREd2mS_8SFTXMeQ" activityType="EventStartEmpty"/>
- <vertices xmi:type="bpmn:Activity" xmi:id="_uJQI4WOREd2mS_8SFTXMeQ" iD="_uJQI4GOREd2mS_8SFTXMeQ" outgoingEdges="_wrzlMWOREd2mS_8SFTXMeQ _xTKgIWOREd2mS_8SFTXMeQ" incomingEdges="_yunKcWOREd2mS_8SFTXMeQ" activityType="GatewayParallel"/>
- <vertices xmi:type="bpmn:Activity" xmi:id="_vO_B4WOREd2mS_8SFTXMeQ" iD="_vO_B4GOREd2mS_8SFTXMeQ" incomingEdges="_wrzlMWOREd2mS_8SFTXMeQ" name="EndA" activityType="EventEndEmpty"/>
- <vertices xmi:type="bpmn:Activity" xmi:id="_vpvrQWOREd2mS_8SFTXMeQ" iD="_vpvrQGOREd2mS_8SFTXMeQ" incomingEdges="_xTKgIWOREd2mS_8SFTXMeQ" name="EndB " activityType="EventEndEmpty"/>
- <sequenceEdges xmi:type="bpmn:SequenceEdge" xmi:id="_wrzlMWOREd2mS_8SFTXMeQ" iD="_wrzlMGOREd2mS_8SFTXMeQ" source="_uJQI4WOREd2mS_8SFTXMeQ" target="_vO_B4WOREd2mS_8SFTXMeQ"/>
- <sequenceEdges xmi:type="bpmn:SequenceEdge" xmi:id="_xTKgIWOREd2mS_8SFTXMeQ" iD="_xTKgIGOREd2mS_8SFTXMeQ" source="_uJQI4WOREd2mS_8SFTXMeQ" target="_vpvrQWOREd2mS_8SFTXMeQ"/>
- <sequenceEdges xmi:type="bpmn:SequenceEdge" xmi:id="_yunKcWOREd2mS_8SFTXMeQ" iD="_yunKcGOREd2mS_8SFTXMeQ" source="_tKtdAWOREd2mS_8SFTXMeQ" target="_uJQI4WOREd2mS_8SFTXMeQ"/>
- </pools>
-</bpmn:BpmnDiagram>
Copied: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/cts/gateway/parallel/parallel-split.bpmn (from rev 1892, jbossbpm/spec/trunk/modules/testsuite/src/test/resources/cts/gateway/parallel/parallel-split.bpmn)
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/resources/cts/gateway/parallel/parallel-split.bpmn (rev 0)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/resources/cts/gateway/parallel/parallel-split.bpmn 2008-08-15 07:59:12 UTC (rev 1896)
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<bpmn:BpmnDiagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:bpmn="http://stp.eclipse.org/bpmn" xmi:id="_rQi2YWOREd2mS_8SFTXMeQ" iD="_rQi2YGOREd2mS_8SFTXMeQ">
+ <pools xmi:type="bpmn:Pool" xmi:id="_rQjddWOREd2mS_8SFTXMeQ" iD="_rQjddGOREd2mS_8SFTXMeQ" name="Pool">
+ <vertices xmi:type="bpmn:Activity" xmi:id="_tKtdAWOREd2mS_8SFTXMeQ" iD="_tKtdAGOREd2mS_8SFTXMeQ" outgoingEdges="_yunKcWOREd2mS_8SFTXMeQ" activityType="EventStartEmpty"/>
+ <vertices xmi:type="bpmn:Activity" xmi:id="_uJQI4WOREd2mS_8SFTXMeQ" iD="_uJQI4GOREd2mS_8SFTXMeQ" outgoingEdges="_wrzlMWOREd2mS_8SFTXMeQ _xTKgIWOREd2mS_8SFTXMeQ" incomingEdges="_yunKcWOREd2mS_8SFTXMeQ" activityType="GatewayParallel"/>
+ <vertices xmi:type="bpmn:Activity" xmi:id="_vO_B4WOREd2mS_8SFTXMeQ" iD="_vO_B4GOREd2mS_8SFTXMeQ" incomingEdges="_wrzlMWOREd2mS_8SFTXMeQ" name="EndA" activityType="EventEndEmpty"/>
+ <vertices xmi:type="bpmn:Activity" xmi:id="_vpvrQWOREd2mS_8SFTXMeQ" iD="_vpvrQGOREd2mS_8SFTXMeQ" incomingEdges="_xTKgIWOREd2mS_8SFTXMeQ" name="EndB " activityType="EventEndEmpty"/>
+ <sequenceEdges xmi:type="bpmn:SequenceEdge" xmi:id="_wrzlMWOREd2mS_8SFTXMeQ" iD="_wrzlMGOREd2mS_8SFTXMeQ" source="_uJQI4WOREd2mS_8SFTXMeQ" target="_vO_B4WOREd2mS_8SFTXMeQ"/>
+ <sequenceEdges xmi:type="bpmn:SequenceEdge" xmi:id="_xTKgIWOREd2mS_8SFTXMeQ" iD="_xTKgIGOREd2mS_8SFTXMeQ" source="_uJQI4WOREd2mS_8SFTXMeQ" target="_vpvrQWOREd2mS_8SFTXMeQ"/>
+ <sequenceEdges xmi:type="bpmn:SequenceEdge" xmi:id="_yunKcWOREd2mS_8SFTXMeQ" iD="_yunKcGOREd2mS_8SFTXMeQ" source="_tKtdAWOREd2mS_8SFTXMeQ" target="_uJQI4WOREd2mS_8SFTXMeQ"/>
+ </pools>
+</bpmn:BpmnDiagram>
Deleted: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/cts/gateway/parallel/parallel-split.bpmn_diagram
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/resources/cts/gateway/parallel/parallel-split.bpmn_diagram 2008-08-14 15:25:00 UTC (rev 1892)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/resources/cts/gateway/parallel/parallel-split.bpmn_diagram 2008-08-15 07:59:12 UTC (rev 1896)
@@ -1,93 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<notation:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:bpmn="http://stp.eclipse.org/bpmn" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.1/notation" xmi:id="_rQjdcGOREd2mS_8SFTXMeQ" type="Bpmn" name="parallel-split.bpmn_diagram" measurementUnit="Pixel">
- <children xmi:type="notation:Node" xmi:id="_rQkrkGOREd2mS_8SFTXMeQ" type="1001">
- <children xmi:type="notation:Node" xmi:id="_rQlSoGOREd2mS_8SFTXMeQ" type="4008"/>
- <children xmi:type="notation:Node" xmi:id="_rQlSoWOREd2mS_8SFTXMeQ" type="5001">
- <children xmi:type="notation:Node" xmi:id="_tKuEEGOREd2mS_8SFTXMeQ" type="2001">
- <children xmi:type="notation:Node" xmi:id="_tKurImOREd2mS_8SFTXMeQ" type="4001"/>
- <styles xmi:type="notation:FontStyle" xmi:id="_tKuEEWOREd2mS_8SFTXMeQ" fontName="Arial"/>
- <styles xmi:type="notation:DescriptionStyle" xmi:id="_tKuEEmOREd2mS_8SFTXMeQ"/>
- <styles xmi:type="notation:FillStyle" xmi:id="_tKuEE2OREd2mS_8SFTXMeQ"/>
- <styles xmi:type="notation:LineStyle" xmi:id="_tKurIGOREd2mS_8SFTXMeQ" lineColor="0"/>
- <element xmi:type="bpmn:Activity" href="parallel-split.bpmn#_tKtdAWOREd2mS_8SFTXMeQ"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_tKurIWOREd2mS_8SFTXMeQ" x="48" y="84"/>
- </children>
- <children xmi:type="notation:Node" xmi:id="_uJRXAGOREd2mS_8SFTXMeQ" type="2001">
- <children xmi:type="notation:Node" xmi:id="_uJR-EGOREd2mS_8SFTXMeQ" type="4001"/>
- <styles xmi:type="notation:FontStyle" xmi:id="_uJRXAWOREd2mS_8SFTXMeQ" fontName="Arial"/>
- <styles xmi:type="notation:DescriptionStyle" xmi:id="_uJRXAmOREd2mS_8SFTXMeQ"/>
- <styles xmi:type="notation:FillStyle" xmi:id="_uJRXA2OREd2mS_8SFTXMeQ"/>
- <styles xmi:type="notation:LineStyle" xmi:id="_uJRXBGOREd2mS_8SFTXMeQ" lineColor="0"/>
- <element xmi:type="bpmn:Activity" href="parallel-split.bpmn#_uJQI4WOREd2mS_8SFTXMeQ"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_uJRXBWOREd2mS_8SFTXMeQ" x="120" y="72"/>
- </children>
- <children xmi:type="notation:Node" xmi:id="_vO_o8GOREd2mS_8SFTXMeQ" type="2001">
- <children xmi:type="notation:Node" xmi:id="_vPAQAmOREd2mS_8SFTXMeQ" type="4001"/>
- <styles xmi:type="notation:FontStyle" xmi:id="_vO_o8WOREd2mS_8SFTXMeQ" fontName="Arial"/>
- <styles xmi:type="notation:DescriptionStyle" xmi:id="_vO_o8mOREd2mS_8SFTXMeQ"/>
- <styles xmi:type="notation:FillStyle" xmi:id="_vO_o82OREd2mS_8SFTXMeQ"/>
- <styles xmi:type="notation:LineStyle" xmi:id="_vPAQAGOREd2mS_8SFTXMeQ" lineColor="0"/>
- <element xmi:type="bpmn:Activity" href="parallel-split.bpmn#_vO_B4WOREd2mS_8SFTXMeQ"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_vPAQAWOREd2mS_8SFTXMeQ" x="216" y="24"/>
- </children>
- <children xmi:type="notation:Node" xmi:id="_vpw5YGOREd2mS_8SFTXMeQ" type="2001">
- <children xmi:type="notation:Node" xmi:id="_vpxgcGOREd2mS_8SFTXMeQ" type="4001"/>
- <styles xmi:type="notation:FontStyle" xmi:id="_vpw5YWOREd2mS_8SFTXMeQ" fontName="Arial"/>
- <styles xmi:type="notation:DescriptionStyle" xmi:id="_vpw5YmOREd2mS_8SFTXMeQ"/>
- <styles xmi:type="notation:FillStyle" xmi:id="_vpw5Y2OREd2mS_8SFTXMeQ"/>
- <styles xmi:type="notation:LineStyle" xmi:id="_vpw5ZGOREd2mS_8SFTXMeQ" lineColor="0"/>
- <element xmi:type="bpmn:Activity" href="parallel-split.bpmn#_vpvrQWOREd2mS_8SFTXMeQ"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_vpw5ZWOREd2mS_8SFTXMeQ" x="216" y="132"/>
- </children>
- <styles xmi:type="notation:DrawerStyle" xmi:id="_rQlSomOREd2mS_8SFTXMeQ"/>
- <styles xmi:type="notation:SortingStyle" xmi:id="_rQlSo2OREd2mS_8SFTXMeQ"/>
- <styles xmi:type="notation:FilteringStyle" xmi:id="_rQlSpGOREd2mS_8SFTXMeQ"/>
- </children>
- <styles xmi:type="notation:FontStyle" xmi:id="_rQkrkWOREd2mS_8SFTXMeQ" fontName="Arial"/>
- <styles xmi:type="notation:DescriptionStyle" xmi:id="_rQkrkmOREd2mS_8SFTXMeQ"/>
- <styles xmi:type="notation:FillStyle" xmi:id="_rQkrk2OREd2mS_8SFTXMeQ" fillColor="16771304"/>
- <styles xmi:type="notation:LineStyle" xmi:id="_rQkrlGOREd2mS_8SFTXMeQ" lineColor="11119017"/>
- <element xmi:type="bpmn:Pool" href="parallel-split.bpmn#_rQjddWOREd2mS_8SFTXMeQ"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_rQlSpWOREd2mS_8SFTXMeQ" x="16" y="16" width="369" height="200"/>
- </children>
- <styles xmi:type="notation:PageStyle" xmi:id="_rQjdcWOREd2mS_8SFTXMeQ"/>
- <styles xmi:type="notation:GuideStyle" xmi:id="_rQjdcmOREd2mS_8SFTXMeQ"/>
- <styles xmi:type="notation:DescriptionStyle" xmi:id="_rQjdc2OREd2mS_8SFTXMeQ"/>
- <element xmi:type="bpmn:BpmnDiagram" href="parallel-split.bpmn#_rQi2YWOREd2mS_8SFTXMeQ"/>
- <edges xmi:type="notation:Edge" xmi:id="_wr1aYGOREd2mS_8SFTXMeQ" type="3001" source="_uJRXAGOREd2mS_8SFTXMeQ" target="_vO_o8GOREd2mS_8SFTXMeQ">
- <children xmi:type="notation:Node" xmi:id="_wr2BcGOREd2mS_8SFTXMeQ" type="4012">
- <styles xmi:type="notation:FillStyle" xmi:id="_wr2BcWOREd2mS_8SFTXMeQ" fillColor="16776959"/>
- <styles xmi:type="notation:LineStyle" xmi:id="_wr2BcmOREd2mS_8SFTXMeQ" lineColor="16776959"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_wr2Bc2OREd2mS_8SFTXMeQ" y="-10"/>
- </children>
- <styles xmi:type="notation:RoutingStyle" xmi:id="_wr1aYWOREd2mS_8SFTXMeQ" routing="Rectilinear" smoothness="Normal" closestDistance="true"/>
- <styles xmi:type="notation:FontStyle" xmi:id="_wr1aYmOREd2mS_8SFTXMeQ" fontName="Arial"/>
- <styles xmi:type="notation:LineStyle" xmi:id="_wr1aY2OREd2mS_8SFTXMeQ" lineColor="0"/>
- <element xmi:type="bpmn:SequenceEdge" href="parallel-split.bpmn#_wrzlMWOREd2mS_8SFTXMeQ"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_wr1aZGOREd2mS_8SFTXMeQ" points="[17, -8, -124, 51]$[156, -68, 15, -9]"/>
- </edges>
- <edges xmi:type="notation:Edge" xmi:id="_xTMVUGOREd2mS_8SFTXMeQ" type="3001" source="_uJRXAGOREd2mS_8SFTXMeQ" target="_vpw5YGOREd2mS_8SFTXMeQ">
- <children xmi:type="notation:Node" xmi:id="_xTM8YGOREd2mS_8SFTXMeQ" type="4012">
- <styles xmi:type="notation:FillStyle" xmi:id="_xTM8YWOREd2mS_8SFTXMeQ" fillColor="16776959"/>
- <styles xmi:type="notation:LineStyle" xmi:id="_xTM8YmOREd2mS_8SFTXMeQ" lineColor="16776959"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_xTM8Y2OREd2mS_8SFTXMeQ" y="-10"/>
- </children>
- <styles xmi:type="notation:RoutingStyle" xmi:id="_xTMVUWOREd2mS_8SFTXMeQ" routing="Rectilinear" smoothness="Normal" closestDistance="true"/>
- <styles xmi:type="notation:FontStyle" xmi:id="_xTMVUmOREd2mS_8SFTXMeQ" fontName="Arial"/>
- <styles xmi:type="notation:LineStyle" xmi:id="_xTMVU2OREd2mS_8SFTXMeQ" lineColor="0"/>
- <element xmi:type="bpmn:SequenceEdge" href="parallel-split.bpmn#_xTKgIWOREd2mS_8SFTXMeQ"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_xTMVVGOREd2mS_8SFTXMeQ" points="[18, 6, -116, -44]$[149, 61, 15, 11]"/>
- </edges>
- <edges xmi:type="notation:Edge" xmi:id="_yuo_oGOREd2mS_8SFTXMeQ" type="3001" source="_tKuEEGOREd2mS_8SFTXMeQ" target="_uJRXAGOREd2mS_8SFTXMeQ">
- <children xmi:type="notation:Node" xmi:id="_yupmsGOREd2mS_8SFTXMeQ" type="4012">
- <styles xmi:type="notation:FillStyle" xmi:id="_yupmsWOREd2mS_8SFTXMeQ" fillColor="16776959"/>
- <styles xmi:type="notation:LineStyle" xmi:id="_yupmsmOREd2mS_8SFTXMeQ" lineColor="16776959"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_yupms2OREd2mS_8SFTXMeQ" y="-10"/>
- </children>
- <styles xmi:type="notation:RoutingStyle" xmi:id="_yuo_oWOREd2mS_8SFTXMeQ" routing="Rectilinear" smoothness="Normal" closestDistance="true"/>
- <styles xmi:type="notation:FontStyle" xmi:id="_yuo_omOREd2mS_8SFTXMeQ" fontName="Arial"/>
- <styles xmi:type="notation:LineStyle" xmi:id="_yuo_o2OREd2mS_8SFTXMeQ" lineColor="0"/>
- <element xmi:type="bpmn:SequenceEdge" href="parallel-split.bpmn#_yunKcWOREd2mS_8SFTXMeQ"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_yuo_pGOREd2mS_8SFTXMeQ" points="[15, -2, -84, 1]$[80, -10, -19, -7]"/>
- </edges>
-</notation:Diagram>
Copied: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/cts/gateway/parallel/parallel-split.bpmn_diagram (from rev 1892, jbossbpm/spec/trunk/modules/testsuite/src/test/resources/cts/gateway/parallel/parallel-split.bpmn_diagram)
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/resources/cts/gateway/parallel/parallel-split.bpmn_diagram (rev 0)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/resources/cts/gateway/parallel/parallel-split.bpmn_diagram 2008-08-15 07:59:12 UTC (rev 1896)
@@ -0,0 +1,93 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<notation:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:bpmn="http://stp.eclipse.org/bpmn" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.1/notation" xmi:id="_rQjdcGOREd2mS_8SFTXMeQ" type="Bpmn" name="parallel-split.bpmn_diagram" measurementUnit="Pixel">
+ <children xmi:type="notation:Node" xmi:id="_rQkrkGOREd2mS_8SFTXMeQ" type="1001">
+ <children xmi:type="notation:Node" xmi:id="_rQlSoGOREd2mS_8SFTXMeQ" type="4008"/>
+ <children xmi:type="notation:Node" xmi:id="_rQlSoWOREd2mS_8SFTXMeQ" type="5001">
+ <children xmi:type="notation:Node" xmi:id="_tKuEEGOREd2mS_8SFTXMeQ" type="2001">
+ <children xmi:type="notation:Node" xmi:id="_tKurImOREd2mS_8SFTXMeQ" type="4001"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_tKuEEWOREd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_tKuEEmOREd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:FillStyle" xmi:id="_tKuEE2OREd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_tKurIGOREd2mS_8SFTXMeQ" lineColor="0"/>
+ <element xmi:type="bpmn:Activity" href="parallel-split.bpmn#_tKtdAWOREd2mS_8SFTXMeQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_tKurIWOREd2mS_8SFTXMeQ" x="48" y="84"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_uJRXAGOREd2mS_8SFTXMeQ" type="2001">
+ <children xmi:type="notation:Node" xmi:id="_uJR-EGOREd2mS_8SFTXMeQ" type="4001"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_uJRXAWOREd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_uJRXAmOREd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:FillStyle" xmi:id="_uJRXA2OREd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_uJRXBGOREd2mS_8SFTXMeQ" lineColor="0"/>
+ <element xmi:type="bpmn:Activity" href="parallel-split.bpmn#_uJQI4WOREd2mS_8SFTXMeQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_uJRXBWOREd2mS_8SFTXMeQ" x="120" y="72"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_vO_o8GOREd2mS_8SFTXMeQ" type="2001">
+ <children xmi:type="notation:Node" xmi:id="_vPAQAmOREd2mS_8SFTXMeQ" type="4001"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_vO_o8WOREd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_vO_o8mOREd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:FillStyle" xmi:id="_vO_o82OREd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_vPAQAGOREd2mS_8SFTXMeQ" lineColor="0"/>
+ <element xmi:type="bpmn:Activity" href="parallel-split.bpmn#_vO_B4WOREd2mS_8SFTXMeQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_vPAQAWOREd2mS_8SFTXMeQ" x="216" y="24"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_vpw5YGOREd2mS_8SFTXMeQ" type="2001">
+ <children xmi:type="notation:Node" xmi:id="_vpxgcGOREd2mS_8SFTXMeQ" type="4001"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_vpw5YWOREd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_vpw5YmOREd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:FillStyle" xmi:id="_vpw5Y2OREd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_vpw5ZGOREd2mS_8SFTXMeQ" lineColor="0"/>
+ <element xmi:type="bpmn:Activity" href="parallel-split.bpmn#_vpvrQWOREd2mS_8SFTXMeQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_vpw5ZWOREd2mS_8SFTXMeQ" x="216" y="132"/>
+ </children>
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_rQlSomOREd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_rQlSo2OREd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_rQlSpGOREd2mS_8SFTXMeQ"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_rQkrkWOREd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_rQkrkmOREd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:FillStyle" xmi:id="_rQkrk2OREd2mS_8SFTXMeQ" fillColor="16771304"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_rQkrlGOREd2mS_8SFTXMeQ" lineColor="11119017"/>
+ <element xmi:type="bpmn:Pool" href="parallel-split.bpmn#_rQjddWOREd2mS_8SFTXMeQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_rQlSpWOREd2mS_8SFTXMeQ" x="16" y="16" width="369" height="200"/>
+ </children>
+ <styles xmi:type="notation:PageStyle" xmi:id="_rQjdcWOREd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:GuideStyle" xmi:id="_rQjdcmOREd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_rQjdc2OREd2mS_8SFTXMeQ"/>
+ <element xmi:type="bpmn:BpmnDiagram" href="parallel-split.bpmn#_rQi2YWOREd2mS_8SFTXMeQ"/>
+ <edges xmi:type="notation:Edge" xmi:id="_wr1aYGOREd2mS_8SFTXMeQ" type="3001" source="_uJRXAGOREd2mS_8SFTXMeQ" target="_vO_o8GOREd2mS_8SFTXMeQ">
+ <children xmi:type="notation:Node" xmi:id="_wr2BcGOREd2mS_8SFTXMeQ" type="4012">
+ <styles xmi:type="notation:FillStyle" xmi:id="_wr2BcWOREd2mS_8SFTXMeQ" fillColor="16776959"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_wr2BcmOREd2mS_8SFTXMeQ" lineColor="16776959"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_wr2Bc2OREd2mS_8SFTXMeQ" y="-10"/>
+ </children>
+ <styles xmi:type="notation:RoutingStyle" xmi:id="_wr1aYWOREd2mS_8SFTXMeQ" routing="Rectilinear" smoothness="Normal" closestDistance="true"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_wr1aYmOREd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_wr1aY2OREd2mS_8SFTXMeQ" lineColor="0"/>
+ <element xmi:type="bpmn:SequenceEdge" href="parallel-split.bpmn#_wrzlMWOREd2mS_8SFTXMeQ"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_wr1aZGOREd2mS_8SFTXMeQ" points="[17, -8, -124, 51]$[156, -68, 15, -9]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_xTMVUGOREd2mS_8SFTXMeQ" type="3001" source="_uJRXAGOREd2mS_8SFTXMeQ" target="_vpw5YGOREd2mS_8SFTXMeQ">
+ <children xmi:type="notation:Node" xmi:id="_xTM8YGOREd2mS_8SFTXMeQ" type="4012">
+ <styles xmi:type="notation:FillStyle" xmi:id="_xTM8YWOREd2mS_8SFTXMeQ" fillColor="16776959"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_xTM8YmOREd2mS_8SFTXMeQ" lineColor="16776959"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_xTM8Y2OREd2mS_8SFTXMeQ" y="-10"/>
+ </children>
+ <styles xmi:type="notation:RoutingStyle" xmi:id="_xTMVUWOREd2mS_8SFTXMeQ" routing="Rectilinear" smoothness="Normal" closestDistance="true"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_xTMVUmOREd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_xTMVU2OREd2mS_8SFTXMeQ" lineColor="0"/>
+ <element xmi:type="bpmn:SequenceEdge" href="parallel-split.bpmn#_xTKgIWOREd2mS_8SFTXMeQ"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_xTMVVGOREd2mS_8SFTXMeQ" points="[18, 6, -116, -44]$[149, 61, 15, 11]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_yuo_oGOREd2mS_8SFTXMeQ" type="3001" source="_tKuEEGOREd2mS_8SFTXMeQ" target="_uJRXAGOREd2mS_8SFTXMeQ">
+ <children xmi:type="notation:Node" xmi:id="_yupmsGOREd2mS_8SFTXMeQ" type="4012">
+ <styles xmi:type="notation:FillStyle" xmi:id="_yupmsWOREd2mS_8SFTXMeQ" fillColor="16776959"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_yupmsmOREd2mS_8SFTXMeQ" lineColor="16776959"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_yupms2OREd2mS_8SFTXMeQ" y="-10"/>
+ </children>
+ <styles xmi:type="notation:RoutingStyle" xmi:id="_yuo_oWOREd2mS_8SFTXMeQ" routing="Rectilinear" smoothness="Normal" closestDistance="true"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_yuo_omOREd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_yuo_o2OREd2mS_8SFTXMeQ" lineColor="0"/>
+ <element xmi:type="bpmn:SequenceEdge" href="parallel-split.bpmn#_yunKcWOREd2mS_8SFTXMeQ"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_yuo_pGOREd2mS_8SFTXMeQ" points="[15, -2, -84, 1]$[80, -10, -19, -7]"/>
+ </edges>
+</notation:Diagram>
Deleted: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/cts/gateway/parallel/parallel-split.png
===================================================================
(Binary files differ)
Copied: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/cts/gateway/parallel/parallel-split.png (from rev 1892, jbossbpm/spec/trunk/modules/testsuite/src/test/resources/cts/gateway/parallel/parallel-split.png)
===================================================================
(Binary files differ)
17 years, 8 months
JBoss JBPM SVN: r1895 - in jbossbpm/spec/trunk/modules: ri/src/main/java/org/jboss/bpm/model/internal and 8 other directories.
by do-not-reply@jboss.org
Author: thomas.diesler(a)jboss.com
Date: 2008-08-14 15:43:52 -0400 (Thu, 14 Aug 2008)
New Revision: 1895
Added:
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/parallelsplit/ParallelSplitMarshallerTest.java
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/synchronization/
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/synchronization/SynchronizationAPITest.java
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/synchronization/SynchronizationMarshallerTest.java
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/synchronization/SynchronizationTest.java
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/synchronization/
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/synchronization/synchronization-api10.xml
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/synchronization/synchronization.bpmn
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/synchronization/synchronization.bpmn_diagram
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/synchronization/synchronization.png
Removed:
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/parallel/
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/cts/gateway/parallel/
Modified:
jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/client/SignalManager.java
jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/StartEventImpl.java
jbossbpm/spec/trunk/modules/testsuite/pom.xml
Log:
Add pattern synchronization
Modified: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/client/SignalManager.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/client/SignalManager.java 2008-08-14 16:07:59 UTC (rev 1894)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/client/SignalManager.java 2008-08-14 19:43:52 UTC (rev 1895)
@@ -63,7 +63,7 @@
*/
public void addSignalListener(String procName, SignalListener listener)
{
- log.debug("addSignalListener: " + listener);
+ log.debug("addSignalListener: " + procName + "=" + listener);
Set<SignalListener> set = listeners.get(procName);
if (set == null)
{
@@ -78,7 +78,7 @@
*/
public void removeSignalListener(String procName, SignalListener listener)
{
- log.debug("removeSignalListener: " + listener);
+ log.debug("removeSignalListener: " + procName + "=" + listener);
Set<SignalListener> set = listeners.get(procName);
if (set != null)
{
@@ -100,7 +100,7 @@
*/
public void throwSignal(String procName, Signal signal)
{
- log.debug("throwSignal: " + signal);
+ log.debug("throwSignal: " + procName + "=" + signal);
// Throw Signal to listeners associated with the process
Set<SignalListener> set = listeners.get(procName);
Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/StartEventImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/StartEventImpl.java 2008-08-14 16:07:59 UTC (rev 1894)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/StartEventImpl.java 2008-08-14 19:43:52 UTC (rev 1895)
@@ -147,6 +147,7 @@
{
if (startSignal.getSignalType() == signal.getSignalType() && startSignal.getMessage().equals(signal.getMessage()))
{
+ log.debug("catchSignal: " + signal);
if (proc.getProcessStatus() == ProcessStatus.Active)
{
log.debug("Start process from signal: " + signal);
@@ -163,6 +164,11 @@
}
}
}
+
+ public String toString()
+ {
+ return start + "." + startSignal;
+ }
};
SignalManager signalManager = SignalManager.locateSignalManager();
signalManager.addSignalListener(getProcess().getName(), listener);
Modified: jbossbpm/spec/trunk/modules/testsuite/pom.xml
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/pom.xml 2008-08-14 16:07:59 UTC (rev 1894)
+++ jbossbpm/spec/trunk/modules/testsuite/pom.xml 2008-08-14 19:43:52 UTC (rev 1895)
@@ -106,7 +106,7 @@
<configuration>
<artifacts>
<artifact>
- <file>target/${project.artifactId}-${project.version}.zip
+ <file>target/${project.artifactId}-${project.version}.zip
</file>
<type>zip</type>
</artifact>
@@ -120,5 +120,45 @@
<!-- Profiles -->
<profiles>
+
+ <!--
+ Name: patterns
+ Descr: Run the pattern tests
+ -->
+ <profile>
+ <id>cts</id>
+ <build>
+ <plugins>
+ <plugin>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <configuration>
+ <includes>
+ <include>org/jboss/bpm/cts/**</include>
+ </includes>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+
+ <!--
+ Name: patterns
+ Descr: Run the pattern tests
+ -->
+ <profile>
+ <id>pattern</id>
+ <build>
+ <plugins>
+ <plugin>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <configuration>
+ <includes>
+ <include>org/jboss/bpm/pattern/**</include>
+ </includes>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
</profiles>
</project>
\ No newline at end of file
Added: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/parallelsplit/ParallelSplitMarshallerTest.java
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/parallelsplit/ParallelSplitMarshallerTest.java (rev 0)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/parallelsplit/ParallelSplitMarshallerTest.java 2008-08-14 19:43:52 UTC (rev 1895)
@@ -0,0 +1,56 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.pattern.control.parallelsplit;
+
+// $Id$
+
+import java.io.IOException;
+import java.io.StringWriter;
+
+import org.jboss.bpm.client.ProcessManager;
+import org.jboss.bpm.model.Process;
+
+/**
+ * ParallelSplitTest using the ProcessMarshaller
+ *
+ * @author thomas.diesler(a)jboss.com
+ * @since 06-Aug-2008
+ */
+public class ParallelSplitMarshallerTest extends ParallelSplitTest
+{
+ @Override
+ public Process getProcess() throws IOException
+ {
+ Process proc = super.getProcess();
+
+ // Marshall the process to a string
+ StringWriter strwr = new StringWriter();
+ marshallProcess(proc, strwr);
+ String procXML = strwr.toString();
+
+ // Recreate the process from the marshalled process
+ ProcessManager procManager = ProcessManager.locateProcessManager();
+ proc = procManager.createProcess(procXML);
+
+ return proc;
+ }
+}
Property changes on: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/parallelsplit/ParallelSplitMarshallerTest.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/synchronization/SynchronizationAPITest.java
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/synchronization/SynchronizationAPITest.java (rev 0)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/synchronization/SynchronizationAPITest.java 2008-08-14 19:43:52 UTC (rev 1895)
@@ -0,0 +1,49 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.pattern.control.synchronization;
+
+//$Id$
+
+import java.io.IOException;
+import java.net.URL;
+
+import org.jboss.bpm.client.ProcessManager;
+import org.jboss.bpm.model.Process;
+
+
+/**
+ * ParallelMergeTest using the API Descriptor
+ *
+ * @author thomas.diesler(a)jboss.com
+ * @since 06-Aug-2008
+ */
+public class SynchronizationAPITest extends SynchronizationTest
+{
+ @Override
+ public Process getProcess() throws IOException
+ {
+ URL jpdlURL = getResourceURL("pattern/control/synchronization/synchronization-api10.xml");
+ ProcessManager pm = ProcessManager.locateProcessManager();
+ Process proc = pm.createProcess(jpdlURL);
+ return proc;
+ }
+}
Property changes on: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/synchronization/SynchronizationAPITest.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/synchronization/SynchronizationMarshallerTest.java
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/synchronization/SynchronizationMarshallerTest.java (rev 0)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/synchronization/SynchronizationMarshallerTest.java 2008-08-14 19:43:52 UTC (rev 1895)
@@ -0,0 +1,57 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.pattern.control.synchronization;
+
+//$Id$
+
+import java.io.IOException;
+import java.io.StringWriter;
+
+import org.jboss.bpm.client.ProcessManager;
+import org.jboss.bpm.model.Process;
+
+
+/**
+ * ParallelMergeTest using the ProcessMarshaller
+ *
+ * @author thomas.diesler(a)jboss.com
+ * @since 06-Aug-2008
+ */
+public class SynchronizationMarshallerTest extends SynchronizationTest
+{
+ @Override
+ public Process getProcess() throws IOException
+ {
+ Process proc = super.getProcess();
+
+ // Marshall the process to a string
+ StringWriter strwr = new StringWriter();
+ marshallProcess(proc, strwr);
+ String procXML = strwr.toString();
+
+ // Recreate the process from the marshalled process
+ ProcessManager procManager = ProcessManager.locateProcessManager();
+ proc = procManager.createProcess(procXML);
+
+ return proc;
+ }
+}
Property changes on: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/synchronization/SynchronizationMarshallerTest.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/synchronization/SynchronizationTest.java
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/synchronization/SynchronizationTest.java (rev 0)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/synchronization/SynchronizationTest.java 2008-08-14 19:43:52 UTC (rev 1895)
@@ -0,0 +1,205 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.pattern.control.synchronization;
+
+// $Id$
+
+import java.io.IOException;
+
+import org.jboss.bpm.client.SignalListener;
+import org.jboss.bpm.client.SignalManager;
+import org.jboss.bpm.model.EventBuilder;
+import org.jboss.bpm.model.Process;
+import org.jboss.bpm.model.ProcessBuilder;
+import org.jboss.bpm.model.ProcessBuilderFactory;
+import org.jboss.bpm.model.Signal;
+import org.jboss.bpm.model.Gateway.GatewayType;
+import org.jboss.bpm.model.Signal.SignalType;
+import org.jboss.bpm.runtime.ExecutionContext;
+import org.jboss.bpm.runtime.ExecutionHandler;
+import org.jboss.bpm.runtime.Token;
+import org.jboss.bpm.test.DefaultEngineTestCase;
+
+/**
+ * Parallel gateway that that has multiple incoming sequence flows. Each token arriving from an incoming sequence flow
+ * is stored in the gateway until a token has arrived from each incoming sequence flow. The tokens are merged together
+ * and leave the gateway as a one.
+ *
+ * @author thomas.diesler(a)jboss.com
+ * @since 06-Aug-2008
+ */
+public class SynchronizationTest extends DefaultEngineTestCase
+{
+ public void testParallelMerge() throws Exception
+ {
+ Process proc = getProcess();
+ proc.startProcess();
+
+ // Add a signal listener that sends the other start trigger signal
+ SignalManager signalManager = SignalManager.locateSignalManager();
+ Signal startTrigger = new Signal(getName(), SignalType.SYSTEM_START_TRIGGER, "B");
+ signalManager.addSignalListener(null, new MergeListener(proc.getName(), startTrigger));
+
+ // Send start trigger signal
+ signalManager.throwSignal(proc.getName(), new Signal(getName(), SignalType.SYSTEM_START_TRIGGER, "A"));
+
+ // Wait for the process to end
+ proc.waitForEnd();
+
+ // Verify the result
+ assertEquals("TaskA:TaskB", TaskC.taskValue);
+ }
+
+ public void testMergeTimeout() throws Exception
+ {
+ Process proc = getProcess();
+ proc.startProcess();
+
+ // Send start trigger signal
+ SignalManager signalManager = SignalManager.locateSignalManager();
+ signalManager.throwSignal(proc.getName(), new Signal(getName(), SignalType.SYSTEM_START_TRIGGER, "A"));
+
+ // Wait for the process to end
+ try
+ {
+ proc.waitForEnd(1000);
+ fail("timeout expected");
+ }
+ catch (RuntimeException rte)
+ {
+ // expected
+ }
+ }
+
+ public void testInvalidToken() throws Exception
+ {
+ Process proc = getProcess();
+ proc.startProcess();
+
+ // Add a signal listener that sends the other start trigger signal
+ SignalManager signalManager = SignalManager.locateSignalManager();
+ Signal startTrigger = new Signal(getName(), SignalType.SYSTEM_START_TRIGGER, "A");
+ signalManager.addSignalListener(null, new MergeListener(proc.getName(), startTrigger));
+
+ // Send start trigger signal
+ signalManager.throwSignal(proc.getName(), new Signal(getName(), SignalType.SYSTEM_START_TRIGGER, "A"));
+
+ try
+ {
+ proc.waitForEnd();
+ fail("Expected: Unexpected token from: SequenceFlow[TaskA->Merge]");
+ }
+ catch (RuntimeException rte)
+ {
+ // expected
+ }
+
+ // Restart the process
+ proc.startProcess();
+
+ // Add a signal listener that sends the other start trigger signal
+ startTrigger = new Signal(getName(), SignalType.SYSTEM_START_TRIGGER, "B");
+ signalManager.addSignalListener(null, new MergeListener(proc.getName(), startTrigger));
+
+ // Send start trigger signal
+ signalManager.throwSignal(proc.getName(), new Signal(getName(), SignalType.SYSTEM_START_TRIGGER, "A"));
+
+ // Wait for the process to end
+ proc.waitForEnd();
+
+ // Verify the result
+ assertEquals("TaskA:TaskB", TaskC.taskValue);
+ }
+
+ public Process getProcess() throws IOException
+ {
+ ProcessBuilder procBuilder = ProcessBuilderFactory.newInstance().newProcessBuilder();
+ EventBuilder eventBuilder = procBuilder.addProcess(getName()).addStartEvent("StartA");
+ eventBuilder.addSignalTrigger(SignalType.SYSTEM_START_TRIGGER, "A").addSequenceFlow("TaskA");
+ procBuilder.addTask("TaskA").addExecutionHandler(TaskA.class).addSequenceFlow("Merge");
+ eventBuilder = procBuilder.addStartEvent("StartB");
+ eventBuilder.addSignalTrigger(SignalType.SYSTEM_START_TRIGGER, "B").addSequenceFlow("TaskB");
+ procBuilder.addTask("TaskB").addExecutionHandler(TaskB.class).addSequenceFlow("Merge");
+ procBuilder.addGateway("Merge", GatewayType.Parallel).addSequenceFlow("TaskC");
+ procBuilder.addTask("TaskC").addExecutionHandler(TaskC.class).addSequenceFlow("End");
+ procBuilder.addEndEvent("End");
+ Process proc = procBuilder.getProcess();
+ return proc;
+ }
+
+ public static class MergeListener implements SignalListener
+ {
+ private String fromRef;
+ private Signal nextSignal;
+
+ public MergeListener(String fromRef, Signal nextSignal)
+ {
+ this.fromRef = fromRef;
+ this.nextSignal = nextSignal;
+ }
+
+ public void catchSignal(Signal signal)
+ {
+ if (signal.getSignalType() == SignalType.SYSTEM_GATEWAY_ENTER)
+ {
+ if (nextSignal != null)
+ {
+ SignalManager signalManager = SignalManager.locateSignalManager();
+ signalManager.throwSignal(fromRef, nextSignal);
+ nextSignal = null;
+ }
+ }
+ }
+ }
+
+ @SuppressWarnings("serial")
+ public static class TaskA implements ExecutionHandler
+ {
+ public void execute(Token token)
+ {
+ ExecutionContext exContext = token.getExecutionContext();
+ exContext.addAttachment("taskA", "TaskA");
+ }
+ }
+
+ @SuppressWarnings("serial")
+ public static class TaskB implements ExecutionHandler
+ {
+ public void execute(Token token)
+ {
+ ExecutionContext exContext = token.getExecutionContext();
+ exContext.addAttachment("taskB", "TaskB");
+ }
+ }
+
+ @SuppressWarnings("serial")
+ public static class TaskC implements ExecutionHandler
+ {
+ public static Object taskValue;
+
+ public void execute(Token token)
+ {
+ ExecutionContext exContext = token.getExecutionContext();
+ taskValue = exContext.getAttachment("taskA") + ":" + exContext.getAttachment("taskB");
+ }
+ }
+}
Property changes on: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/synchronization/SynchronizationTest.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/synchronization/synchronization-api10.xml
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/synchronization/synchronization-api10.xml (rev 0)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/synchronization/synchronization-api10.xml 2008-08-14 19:43:52 UTC (rev 1895)
@@ -0,0 +1,34 @@
+<ns2:process name="Synchronization" xmlns:ns2="urn:bpm.jboss:pdl-0.1">
+ <start name="StartA">
+ <seqflow to="TaskA" />
+ <signal-trigger>
+ <signal type="SYSTEM_START_TRIGGER">
+ <message>A</message>
+ </signal>
+ </signal-trigger>
+ </start>
+ <task taskType="None" name="TaskA">
+ <seqflow to="Merge" />
+ <execution-handler class="org.jboss.bpm.pattern.control.synchronization.SynchronizationTest$TaskA" />
+ </task>
+ <start name="StartB">
+ <seqflow to="TaskB" />
+ <signal-trigger>
+ <signal type="SYSTEM_START_TRIGGER">
+ <message>B</message>
+ </signal>
+ </signal-trigger>
+ </start>
+ <task taskType="None" name="TaskB">
+ <seqflow to="Merge" />
+ <execution-handler class="org.jboss.bpm.pattern.control.synchronization.SynchronizationTest$TaskB" />
+ </task>
+ <parallel-gateway name="Merge">
+ <seqflow to="TaskC" />
+ </parallel-gateway>
+ <task taskType="None" name="TaskC">
+ <seqflow to="End" />
+ <execution-handler class="org.jboss.bpm.pattern.control.synchronization.SynchronizationTest$TaskC" />
+ </task>
+ <end name="End" />
+</ns2:process>
\ No newline at end of file
Property changes on: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/synchronization/synchronization-api10.xml
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/synchronization/synchronization.bpmn
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/synchronization/synchronization.bpmn (rev 0)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/synchronization/synchronization.bpmn 2008-08-14 19:43:52 UTC (rev 1895)
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<bpmn:BpmnDiagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:bpmn="http://stp.eclipse.org/bpmn" xmi:id="_AXFyUWOSEd2mS_8SFTXMeQ" iD="_AXFyUGOSEd2mS_8SFTXMeQ">
+ <pools xmi:type="bpmn:Pool" xmi:id="_AXHAcWOSEd2mS_8SFTXMeQ" iD="_AXHAcGOSEd2mS_8SFTXMeQ" name="Pool">
+ <vertices xmi:type="bpmn:Activity" xmi:id="_EPuQwWOSEd2mS_8SFTXMeQ" iD="_EPuQwGOSEd2mS_8SFTXMeQ" outgoingEdges="_YRqagWo0Ed2rarCPPgIl8w" incomingEdges="_YxTj4Wo0Ed2rarCPPgIl8w _ZZSw8Wo0Ed2rarCPPgIl8w" activityType="GatewayParallel"/>
+ <vertices xmi:type="bpmn:Activity" xmi:id="_FY9wwWOSEd2mS_8SFTXMeQ" iD="_FY9wwGOSEd2mS_8SFTXMeQ" outgoingEdges="_YxTj4Wo0Ed2rarCPPgIl8w" name="StartA" activityType="EventStartSignal"/>
+ <vertices xmi:type="bpmn:Activity" xmi:id="_FobwIWOSEd2mS_8SFTXMeQ" iD="_FobwIGOSEd2mS_8SFTXMeQ" outgoingEdges="_ZZSw8Wo0Ed2rarCPPgIl8w" name="StartB" activityType="EventStartSignal"/>
+ <vertices xmi:type="bpmn:Activity" xmi:id="_LFtRIWOSEd2mS_8SFTXMeQ" iD="_LFtRIGOSEd2mS_8SFTXMeQ" incomingEdges="_YRqagWo0Ed2rarCPPgIl8w" activityType="EventEndEmpty"/>
+ <sequenceEdges xmi:type="bpmn:SequenceEdge" xmi:id="_YRqagWo0Ed2rarCPPgIl8w" iD="_YRqagGo0Ed2rarCPPgIl8w" source="_EPuQwWOSEd2mS_8SFTXMeQ" target="_LFtRIWOSEd2mS_8SFTXMeQ"/>
+ <sequenceEdges xmi:type="bpmn:SequenceEdge" xmi:id="_YxTj4Wo0Ed2rarCPPgIl8w" iD="_YxTj4Go0Ed2rarCPPgIl8w" source="_FY9wwWOSEd2mS_8SFTXMeQ" target="_EPuQwWOSEd2mS_8SFTXMeQ"/>
+ <sequenceEdges xmi:type="bpmn:SequenceEdge" xmi:id="_ZZSw8Wo0Ed2rarCPPgIl8w" iD="_ZZSw8Go0Ed2rarCPPgIl8w" source="_FobwIWOSEd2mS_8SFTXMeQ" target="_EPuQwWOSEd2mS_8SFTXMeQ"/>
+ </pools>
+</bpmn:BpmnDiagram>
Added: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/synchronization/synchronization.bpmn_diagram
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/synchronization/synchronization.bpmn_diagram (rev 0)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/synchronization/synchronization.bpmn_diagram 2008-08-14 19:43:52 UTC (rev 1895)
@@ -0,0 +1,93 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<notation:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:bpmn="http://stp.eclipse.org/bpmn" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.1/notation" xmi:id="_AXGZYGOSEd2mS_8SFTXMeQ" type="Bpmn" name="synchronization.bpmn_diagram" measurementUnit="Pixel">
+ <children xmi:type="notation:Node" xmi:id="_AXIOkGOSEd2mS_8SFTXMeQ" type="1001">
+ <children xmi:type="notation:Node" xmi:id="_AXI1oGOSEd2mS_8SFTXMeQ" type="4008"/>
+ <children xmi:type="notation:Node" xmi:id="_AXI1oWOSEd2mS_8SFTXMeQ" type="5001">
+ <children xmi:type="notation:Node" xmi:id="_EPve4GOSEd2mS_8SFTXMeQ" type="2001">
+ <children xmi:type="notation:Node" xmi:id="_EPwF8GOSEd2mS_8SFTXMeQ" type="4001"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_EPve4WOSEd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_EPve4mOSEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:FillStyle" xmi:id="_EPve42OSEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_EPve5GOSEd2mS_8SFTXMeQ" lineColor="0"/>
+ <element xmi:type="bpmn:Activity" href="synchronization.bpmn#_EPuQwWOSEd2mS_8SFTXMeQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_EPve5WOSEd2mS_8SFTXMeQ" x="132" y="72"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_FY--4GOSEd2mS_8SFTXMeQ" type="2001">
+ <children xmi:type="notation:Node" xmi:id="_FY_l8GOSEd2mS_8SFTXMeQ" type="4001"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_FY--4WOSEd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_FY--4mOSEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:FillStyle" xmi:id="_FY--42OSEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_FY--5GOSEd2mS_8SFTXMeQ" lineColor="0"/>
+ <element xmi:type="bpmn:Activity" href="synchronization.bpmn#_FY9wwWOSEd2mS_8SFTXMeQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_FY--5WOSEd2mS_8SFTXMeQ" x="36" y="24" width="50"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_Foc-QGOSEd2mS_8SFTXMeQ" type="2001">
+ <children xmi:type="notation:Node" xmi:id="_FodlUGOSEd2mS_8SFTXMeQ" type="4001"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_Foc-QWOSEd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_Foc-QmOSEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:FillStyle" xmi:id="_Foc-Q2OSEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_Foc-RGOSEd2mS_8SFTXMeQ" lineColor="0"/>
+ <element xmi:type="bpmn:Activity" href="synchronization.bpmn#_FobwIWOSEd2mS_8SFTXMeQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Foc-RWOSEd2mS_8SFTXMeQ" x="36" y="144"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_LFt4MGOSEd2mS_8SFTXMeQ" type="2001">
+ <children xmi:type="notation:Node" xmi:id="_LFufRWOSEd2mS_8SFTXMeQ" type="4001"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_LFufQGOSEd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_LFufQWOSEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:FillStyle" xmi:id="_LFufQmOSEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_LFufQ2OSEd2mS_8SFTXMeQ" lineColor="0"/>
+ <element xmi:type="bpmn:Activity" href="synchronization.bpmn#_LFtRIWOSEd2mS_8SFTXMeQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LFufRGOSEd2mS_8SFTXMeQ" x="252" y="84"/>
+ </children>
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_AXI1omOSEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_AXI1o2OSEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_AXI1pGOSEd2mS_8SFTXMeQ"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_AXIOkWOSEd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_AXIOkmOSEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:FillStyle" xmi:id="_AXIOk2OSEd2mS_8SFTXMeQ" fillColor="16771304"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_AXIOlGOSEd2mS_8SFTXMeQ" lineColor="11119017"/>
+ <element xmi:type="bpmn:Pool" href="synchronization.bpmn#_AXHAcWOSEd2mS_8SFTXMeQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AXI1pWOSEd2mS_8SFTXMeQ" x="16" y="16" width="357" height="213"/>
+ </children>
+ <styles xmi:type="notation:PageStyle" xmi:id="_AXGZYWOSEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:GuideStyle" xmi:id="_AXGZYmOSEd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_AXGZY2OSEd2mS_8SFTXMeQ"/>
+ <element xmi:type="bpmn:BpmnDiagram" href="synchronization.bpmn#_AXFyUWOSEd2mS_8SFTXMeQ"/>
+ <edges xmi:type="notation:Edge" xmi:id="_YRv6EGo0Ed2rarCPPgIl8w" type="3001" source="_EPve4GOSEd2mS_8SFTXMeQ" target="_LFt4MGOSEd2mS_8SFTXMeQ">
+ <children xmi:type="notation:Node" xmi:id="_YRzkcGo0Ed2rarCPPgIl8w" type="4012">
+ <styles xmi:type="notation:FillStyle" xmi:id="_YRzkcWo0Ed2rarCPPgIl8w" fillColor="16776959"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_YRzkcmo0Ed2rarCPPgIl8w" lineColor="16776959"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_YRzkc2o0Ed2rarCPPgIl8w" y="-10"/>
+ </children>
+ <styles xmi:type="notation:RoutingStyle" xmi:id="_YRv6EWo0Ed2rarCPPgIl8w" routing="Rectilinear" smoothness="Normal" closestDistance="true"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_YRv6Emo0Ed2rarCPPgIl8w" fontName="Arial"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_YRv6E2o0Ed2rarCPPgIl8w" lineColor="0"/>
+ <element xmi:type="bpmn:SequenceEdge" href="synchronization.bpmn#_YRqagWo0Ed2rarCPPgIl8w"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_YRv6FGo0Ed2rarCPPgIl8w" points="[24, 1, -218, -1]$[243, -13, 1, -15]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_YxWnMGo0Ed2rarCPPgIl8w" type="3001" source="_FY--4GOSEd2mS_8SFTXMeQ" target="_EPve4GOSEd2mS_8SFTXMeQ">
+ <children xmi:type="notation:Node" xmi:id="_YxXOQGo0Ed2rarCPPgIl8w" type="4012">
+ <styles xmi:type="notation:FillStyle" xmi:id="_YxXOQWo0Ed2rarCPPgIl8w" fillColor="16776959"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_YxXOQmo0Ed2rarCPPgIl8w" lineColor="16776959"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_YxXOQ2o0Ed2rarCPPgIl8w" y="-10"/>
+ </children>
+ <styles xmi:type="notation:RoutingStyle" xmi:id="_YxWnMWo0Ed2rarCPPgIl8w" routing="Rectilinear" smoothness="Normal" closestDistance="true"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_YxWnMmo0Ed2rarCPPgIl8w" fontName="Arial"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_YxWnM2o0Ed2rarCPPgIl8w" lineColor="0"/>
+ <element xmi:type="bpmn:SequenceEdge" href="synchronization.bpmn#_YxTj4Wo0Ed2rarCPPgIl8w"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_YxWnNGo0Ed2rarCPPgIl8w" points="[15, 2, -199, -56]$[222, 41, 8, -17]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_ZZT_EGo0Ed2rarCPPgIl8w" type="3001" source="_Foc-QGOSEd2mS_8SFTXMeQ" target="_EPve4GOSEd2mS_8SFTXMeQ">
+ <children xmi:type="notation:Node" xmi:id="_ZZUmIGo0Ed2rarCPPgIl8w" type="4012">
+ <styles xmi:type="notation:FillStyle" xmi:id="_ZZUmIWo0Ed2rarCPPgIl8w" fillColor="16776959"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_ZZUmImo0Ed2rarCPPgIl8w" lineColor="16776959"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_ZZUmI2o0Ed2rarCPPgIl8w" y="-10"/>
+ </children>
+ <styles xmi:type="notation:RoutingStyle" xmi:id="_ZZT_EWo0Ed2rarCPPgIl8w" routing="Rectilinear" smoothness="Normal" closestDistance="true"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_ZZT_Emo0Ed2rarCPPgIl8w" fontName="Arial"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_ZZT_E2o0Ed2rarCPPgIl8w" lineColor="0"/>
+ <element xmi:type="bpmn:SequenceEdge" href="synchronization.bpmn#_ZZSw8Wo0Ed2rarCPPgIl8w"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_ZZT_FGo0Ed2rarCPPgIl8w" points="[15, -5, -199, 57]$[198, -53, -16, 9]"/>
+ </edges>
+</notation:Diagram>
Added: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/synchronization/synchronization.png
===================================================================
(Binary files differ)
Property changes on: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/synchronization/synchronization.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
17 years, 8 months
JBoss JBPM SVN: r1894 - in jbossbpm/spec/trunk/modules/testsuite/src/test: java/org/jboss/bpm/pattern/control/parallelsplit and 3 other directories.
by do-not-reply@jboss.org
Author: thomas.diesler(a)jboss.com
Date: 2008-08-14 12:07:59 -0400 (Thu, 14 Aug 2008)
New Revision: 1894
Added:
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/parallelsplit/
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/parallelsplit/ParallelSplitAPITest.java
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/parallelsplit/ParallelSplitSTPTest.java
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/parallelsplit/ParallelSplitTest.java
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/parallelsplit/
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/parallelsplit/parallel-split-api10.xml
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/parallelsplit/parallel-split.bpmn
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/parallelsplit/parallel-split.bpmn_diagram
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/parallelsplit/parallel-split.png
Modified:
jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/sequence/basic-sequence-api10.xml
Log:
Add pattern parallel split
Copied: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/parallelsplit/ParallelSplitAPITest.java (from rev 1890, jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/parallel/ParallelSplitAPITest.java)
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/parallelsplit/ParallelSplitAPITest.java (rev 0)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/parallelsplit/ParallelSplitAPITest.java 2008-08-14 16:07:59 UTC (rev 1894)
@@ -0,0 +1,48 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.pattern.control.parallelsplit;
+
+// $Id$
+
+import java.io.IOException;
+import java.net.URL;
+
+import org.jboss.bpm.client.ProcessManager;
+import org.jboss.bpm.model.Process;
+
+/**
+ * ParallelSplitTest using the API Descriptor
+ *
+ * @author thomas.diesler(a)jboss.com
+ * @since 06-Aug-2008
+ */
+public class ParallelSplitAPITest extends ParallelSplitTest
+{
+ @Override
+ public Process getProcess() throws IOException
+ {
+ URL jpdlURL = getResourceURL("pattern/control/parallelsplit/parallel-split-api10.xml");
+ ProcessManager pm = ProcessManager.locateProcessManager();
+ Process proc = pm.createProcess(jpdlURL);
+ return proc;
+ }
+}
Added: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/parallelsplit/ParallelSplitSTPTest.java
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/parallelsplit/ParallelSplitSTPTest.java (rev 0)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/parallelsplit/ParallelSplitSTPTest.java 2008-08-14 16:07:59 UTC (rev 1894)
@@ -0,0 +1,48 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.pattern.control.parallelsplit;
+
+// $Id$
+
+import java.io.IOException;
+import java.net.URL;
+
+import org.jboss.bpm.client.ProcessManager;
+import org.jboss.bpm.model.Process;
+
+/**
+ * ParallelSplitTest using the STP Descriptor
+ *
+ * @author thomas.diesler(a)jboss.com
+ * @since 06-Aug-2008
+ */
+public class ParallelSplitSTPTest extends ParallelSplitTest
+{
+ @Override
+ public Process getProcess() throws IOException
+ {
+ URL jpdlURL = getResourceURL("pattern/control/parallelsplit/parallel-split.bpmn");
+ ProcessManager pm = ProcessManager.locateProcessManager();
+ Process proc = pm.createProcess(jpdlURL);
+ return proc;
+ }
+}
Property changes on: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/parallelsplit/ParallelSplitSTPTest.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Copied: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/parallelsplit/ParallelSplitTest.java (from rev 1890, jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/gateway/parallel/ParallelSplitTest.java)
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/parallelsplit/ParallelSplitTest.java (rev 0)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/pattern/control/parallelsplit/ParallelSplitTest.java 2008-08-14 16:07:59 UTC (rev 1894)
@@ -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.jboss.bpm.pattern.control.parallelsplit;
+
+// $Id$
+
+import java.io.IOException;
+import java.util.List;
+
+import org.jboss.bpm.model.Process;
+import org.jboss.bpm.model.ProcessBuilder;
+import org.jboss.bpm.model.ProcessBuilderFactory;
+import org.jboss.bpm.model.Signal;
+import org.jboss.bpm.model.Gateway.GatewayType;
+import org.jboss.bpm.model.Signal.SignalType;
+import org.jboss.bpm.test.DefaultEngineTestCase;
+
+/**
+ * Parallel gateway that has uncontrolled outgoing sequence flows.
+ * All of them are taken, which leads to parallel paths of execution.
+ *
+ * @author thomas.diesler(a)jboss.com
+ * @since 06-Aug-2008
+ */
+public class ParallelSplitTest extends DefaultEngineTestCase
+{
+ public void testParallelSplit() throws Exception
+ {
+ Process proc = getProcess();
+ proc.startProcess();
+ proc.waitForEnd();
+
+ // Validate received signals
+ List<Signal> signals = getSignals(SignalType.SYSTEM_END_EVENT_ENTER);
+ assertEquals(2, signals.size());
+ String fromRefs = signals.get(0).getFromRef() + signals.get(1).getFromRef();
+ assertTrue("Unexpected from refs: " + fromRefs, fromRefs.contains("EndA"));
+ assertTrue("Unexpected from refs: " + fromRefs, fromRefs.contains("EndB"));
+ }
+
+ public Process getProcess() throws IOException
+ {
+ ProcessBuilder procBuilder = ProcessBuilderFactory.newInstance().newProcessBuilder();
+ Process proc = procBuilder.addProcess(getName()).addStartEvent("Start").addSequenceFlow("Split").addGateway("Split", GatewayType.Parallel).
+ addSequenceFlow("EndA").addSequenceFlow("EndB").addEndEvent("EndA").addEndEvent("EndB").getProcess();
+ return proc;
+ }
+}
Added: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/parallelsplit/parallel-split-api10.xml
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/parallelsplit/parallel-split-api10.xml (rev 0)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/parallelsplit/parallel-split-api10.xml 2008-08-14 16:07:59 UTC (rev 1894)
@@ -0,0 +1,11 @@
+<ns2:process name="testParallelSplit" xmlns:ns2="urn:bpm.jboss:pdl-0.1">
+ <start name="Start">
+ <seqflow to="Split" />
+ </start>
+ <parallel-gateway name="Split">
+ <seqflow to="EndA" />
+ <seqflow to="EndB" />
+ </parallel-gateway>
+ <end name="EndA" />
+ <end name="EndB" />
+</ns2:process>
\ No newline at end of file
Property changes on: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/parallelsplit/parallel-split-api10.xml
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Copied: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/parallelsplit/parallel-split.bpmn (from rev 1890, jbossbpm/spec/trunk/modules/testsuite/src/test/resources/cts/gateway/parallel/parallel-split.bpmn)
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/parallelsplit/parallel-split.bpmn (rev 0)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/parallelsplit/parallel-split.bpmn 2008-08-14 16:07:59 UTC (rev 1894)
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<bpmn:BpmnDiagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:bpmn="http://stp.eclipse.org/bpmn" xmi:id="_rQi2YWOREd2mS_8SFTXMeQ" iD="_rQi2YGOREd2mS_8SFTXMeQ">
+ <pools xmi:type="bpmn:Pool" xmi:id="_rQjddWOREd2mS_8SFTXMeQ" iD="_rQjddGOREd2mS_8SFTXMeQ" name="Pool">
+ <vertices xmi:type="bpmn:Activity" xmi:id="_tKtdAWOREd2mS_8SFTXMeQ" iD="_tKtdAGOREd2mS_8SFTXMeQ" outgoingEdges="_yunKcWOREd2mS_8SFTXMeQ" activityType="EventStartEmpty"/>
+ <vertices xmi:type="bpmn:Activity" xmi:id="_uJQI4WOREd2mS_8SFTXMeQ" iD="_uJQI4GOREd2mS_8SFTXMeQ" outgoingEdges="_wrzlMWOREd2mS_8SFTXMeQ _xTKgIWOREd2mS_8SFTXMeQ" incomingEdges="_yunKcWOREd2mS_8SFTXMeQ" activityType="GatewayParallel"/>
+ <vertices xmi:type="bpmn:Activity" xmi:id="_vO_B4WOREd2mS_8SFTXMeQ" iD="_vO_B4GOREd2mS_8SFTXMeQ" incomingEdges="_wrzlMWOREd2mS_8SFTXMeQ" name="EndA" activityType="EventEndEmpty"/>
+ <vertices xmi:type="bpmn:Activity" xmi:id="_vpvrQWOREd2mS_8SFTXMeQ" iD="_vpvrQGOREd2mS_8SFTXMeQ" incomingEdges="_xTKgIWOREd2mS_8SFTXMeQ" name="EndB " activityType="EventEndEmpty"/>
+ <sequenceEdges xmi:type="bpmn:SequenceEdge" xmi:id="_wrzlMWOREd2mS_8SFTXMeQ" iD="_wrzlMGOREd2mS_8SFTXMeQ" source="_uJQI4WOREd2mS_8SFTXMeQ" target="_vO_B4WOREd2mS_8SFTXMeQ"/>
+ <sequenceEdges xmi:type="bpmn:SequenceEdge" xmi:id="_xTKgIWOREd2mS_8SFTXMeQ" iD="_xTKgIGOREd2mS_8SFTXMeQ" source="_uJQI4WOREd2mS_8SFTXMeQ" target="_vpvrQWOREd2mS_8SFTXMeQ"/>
+ <sequenceEdges xmi:type="bpmn:SequenceEdge" xmi:id="_yunKcWOREd2mS_8SFTXMeQ" iD="_yunKcGOREd2mS_8SFTXMeQ" source="_tKtdAWOREd2mS_8SFTXMeQ" target="_uJQI4WOREd2mS_8SFTXMeQ"/>
+ </pools>
+</bpmn:BpmnDiagram>
Copied: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/parallelsplit/parallel-split.bpmn_diagram (from rev 1890, jbossbpm/spec/trunk/modules/testsuite/src/test/resources/cts/gateway/parallel/parallel-split.bpmn_diagram)
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/parallelsplit/parallel-split.bpmn_diagram (rev 0)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/parallelsplit/parallel-split.bpmn_diagram 2008-08-14 16:07:59 UTC (rev 1894)
@@ -0,0 +1,93 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<notation:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:bpmn="http://stp.eclipse.org/bpmn" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.1/notation" xmi:id="_rQjdcGOREd2mS_8SFTXMeQ" type="Bpmn" name="parallel-split.bpmn_diagram" measurementUnit="Pixel">
+ <children xmi:type="notation:Node" xmi:id="_rQkrkGOREd2mS_8SFTXMeQ" type="1001">
+ <children xmi:type="notation:Node" xmi:id="_rQlSoGOREd2mS_8SFTXMeQ" type="4008"/>
+ <children xmi:type="notation:Node" xmi:id="_rQlSoWOREd2mS_8SFTXMeQ" type="5001">
+ <children xmi:type="notation:Node" xmi:id="_tKuEEGOREd2mS_8SFTXMeQ" type="2001">
+ <children xmi:type="notation:Node" xmi:id="_tKurImOREd2mS_8SFTXMeQ" type="4001"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_tKuEEWOREd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_tKuEEmOREd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:FillStyle" xmi:id="_tKuEE2OREd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_tKurIGOREd2mS_8SFTXMeQ" lineColor="0"/>
+ <element xmi:type="bpmn:Activity" href="parallel-split.bpmn#_tKtdAWOREd2mS_8SFTXMeQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_tKurIWOREd2mS_8SFTXMeQ" x="48" y="84"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_uJRXAGOREd2mS_8SFTXMeQ" type="2001">
+ <children xmi:type="notation:Node" xmi:id="_uJR-EGOREd2mS_8SFTXMeQ" type="4001"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_uJRXAWOREd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_uJRXAmOREd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:FillStyle" xmi:id="_uJRXA2OREd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_uJRXBGOREd2mS_8SFTXMeQ" lineColor="0"/>
+ <element xmi:type="bpmn:Activity" href="parallel-split.bpmn#_uJQI4WOREd2mS_8SFTXMeQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_uJRXBWOREd2mS_8SFTXMeQ" x="120" y="72"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_vO_o8GOREd2mS_8SFTXMeQ" type="2001">
+ <children xmi:type="notation:Node" xmi:id="_vPAQAmOREd2mS_8SFTXMeQ" type="4001"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_vO_o8WOREd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_vO_o8mOREd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:FillStyle" xmi:id="_vO_o82OREd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_vPAQAGOREd2mS_8SFTXMeQ" lineColor="0"/>
+ <element xmi:type="bpmn:Activity" href="parallel-split.bpmn#_vO_B4WOREd2mS_8SFTXMeQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_vPAQAWOREd2mS_8SFTXMeQ" x="216" y="24"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_vpw5YGOREd2mS_8SFTXMeQ" type="2001">
+ <children xmi:type="notation:Node" xmi:id="_vpxgcGOREd2mS_8SFTXMeQ" type="4001"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_vpw5YWOREd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_vpw5YmOREd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:FillStyle" xmi:id="_vpw5Y2OREd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_vpw5ZGOREd2mS_8SFTXMeQ" lineColor="0"/>
+ <element xmi:type="bpmn:Activity" href="parallel-split.bpmn#_vpvrQWOREd2mS_8SFTXMeQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_vpw5ZWOREd2mS_8SFTXMeQ" x="216" y="132"/>
+ </children>
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_rQlSomOREd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_rQlSo2OREd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_rQlSpGOREd2mS_8SFTXMeQ"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_rQkrkWOREd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_rQkrkmOREd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:FillStyle" xmi:id="_rQkrk2OREd2mS_8SFTXMeQ" fillColor="16771304"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_rQkrlGOREd2mS_8SFTXMeQ" lineColor="11119017"/>
+ <element xmi:type="bpmn:Pool" href="parallel-split.bpmn#_rQjddWOREd2mS_8SFTXMeQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_rQlSpWOREd2mS_8SFTXMeQ" x="16" y="16" width="369" height="200"/>
+ </children>
+ <styles xmi:type="notation:PageStyle" xmi:id="_rQjdcWOREd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:GuideStyle" xmi:id="_rQjdcmOREd2mS_8SFTXMeQ"/>
+ <styles xmi:type="notation:DescriptionStyle" xmi:id="_rQjdc2OREd2mS_8SFTXMeQ"/>
+ <element xmi:type="bpmn:BpmnDiagram" href="parallel-split.bpmn#_rQi2YWOREd2mS_8SFTXMeQ"/>
+ <edges xmi:type="notation:Edge" xmi:id="_wr1aYGOREd2mS_8SFTXMeQ" type="3001" source="_uJRXAGOREd2mS_8SFTXMeQ" target="_vO_o8GOREd2mS_8SFTXMeQ">
+ <children xmi:type="notation:Node" xmi:id="_wr2BcGOREd2mS_8SFTXMeQ" type="4012">
+ <styles xmi:type="notation:FillStyle" xmi:id="_wr2BcWOREd2mS_8SFTXMeQ" fillColor="16776959"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_wr2BcmOREd2mS_8SFTXMeQ" lineColor="16776959"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_wr2Bc2OREd2mS_8SFTXMeQ" y="-10"/>
+ </children>
+ <styles xmi:type="notation:RoutingStyle" xmi:id="_wr1aYWOREd2mS_8SFTXMeQ" routing="Rectilinear" smoothness="Normal" closestDistance="true"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_wr1aYmOREd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_wr1aY2OREd2mS_8SFTXMeQ" lineColor="0"/>
+ <element xmi:type="bpmn:SequenceEdge" href="parallel-split.bpmn#_wrzlMWOREd2mS_8SFTXMeQ"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_wr1aZGOREd2mS_8SFTXMeQ" points="[17, -8, -124, 51]$[156, -68, 15, -9]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_xTMVUGOREd2mS_8SFTXMeQ" type="3001" source="_uJRXAGOREd2mS_8SFTXMeQ" target="_vpw5YGOREd2mS_8SFTXMeQ">
+ <children xmi:type="notation:Node" xmi:id="_xTM8YGOREd2mS_8SFTXMeQ" type="4012">
+ <styles xmi:type="notation:FillStyle" xmi:id="_xTM8YWOREd2mS_8SFTXMeQ" fillColor="16776959"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_xTM8YmOREd2mS_8SFTXMeQ" lineColor="16776959"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_xTM8Y2OREd2mS_8SFTXMeQ" y="-10"/>
+ </children>
+ <styles xmi:type="notation:RoutingStyle" xmi:id="_xTMVUWOREd2mS_8SFTXMeQ" routing="Rectilinear" smoothness="Normal" closestDistance="true"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_xTMVUmOREd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_xTMVU2OREd2mS_8SFTXMeQ" lineColor="0"/>
+ <element xmi:type="bpmn:SequenceEdge" href="parallel-split.bpmn#_xTKgIWOREd2mS_8SFTXMeQ"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_xTMVVGOREd2mS_8SFTXMeQ" points="[18, 6, -116, -44]$[149, 61, 15, 11]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_yuo_oGOREd2mS_8SFTXMeQ" type="3001" source="_tKuEEGOREd2mS_8SFTXMeQ" target="_uJRXAGOREd2mS_8SFTXMeQ">
+ <children xmi:type="notation:Node" xmi:id="_yupmsGOREd2mS_8SFTXMeQ" type="4012">
+ <styles xmi:type="notation:FillStyle" xmi:id="_yupmsWOREd2mS_8SFTXMeQ" fillColor="16776959"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_yupmsmOREd2mS_8SFTXMeQ" lineColor="16776959"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_yupms2OREd2mS_8SFTXMeQ" y="-10"/>
+ </children>
+ <styles xmi:type="notation:RoutingStyle" xmi:id="_yuo_oWOREd2mS_8SFTXMeQ" routing="Rectilinear" smoothness="Normal" closestDistance="true"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_yuo_omOREd2mS_8SFTXMeQ" fontName="Arial"/>
+ <styles xmi:type="notation:LineStyle" xmi:id="_yuo_o2OREd2mS_8SFTXMeQ" lineColor="0"/>
+ <element xmi:type="bpmn:SequenceEdge" href="parallel-split.bpmn#_yunKcWOREd2mS_8SFTXMeQ"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_yuo_pGOREd2mS_8SFTXMeQ" points="[15, -2, -84, 1]$[80, -10, -19, -7]"/>
+ </edges>
+</notation:Diagram>
Copied: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/parallelsplit/parallel-split.png (from rev 1890, jbossbpm/spec/trunk/modules/testsuite/src/test/resources/cts/gateway/parallel/parallel-split.png)
===================================================================
(Binary files differ)
Modified: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/sequence/basic-sequence-api10.xml
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/sequence/basic-sequence-api10.xml 2008-08-14 15:34:15 UTC (rev 1893)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/resources/pattern/control/sequence/basic-sequence-api10.xml 2008-08-14 16:07:59 UTC (rev 1894)
@@ -1,4 +1,4 @@
-<ns2:process name="testSequence" xmlns:ns2="urn:bpm.jboss:pdl-0.1">
+<ns2:process name="Sequence" xmlns:ns2="urn:bpm.jboss:pdl-0.1">
<start>
<seqflow to="TaskA" />
</start>
17 years, 8 months
JBoss JBPM SVN: r1893 - jbossbpm/spec/trunk/modules/samples/airticket/server.
by do-not-reply@jboss.org
Author: thomas.diesler(a)jboss.com
Date: 2008-08-14 11:34:15 -0400 (Thu, 14 Aug 2008)
New Revision: 1893
Modified:
jbossbpm/spec/trunk/modules/samples/airticket/server/pom.xml
Log:
Restore missing compile time dependency - maybe it's needed with JDK1.5
Modified: jbossbpm/spec/trunk/modules/samples/airticket/server/pom.xml
===================================================================
--- jbossbpm/spec/trunk/modules/samples/airticket/server/pom.xml 2008-08-14 15:25:00 UTC (rev 1892)
+++ jbossbpm/spec/trunk/modules/samples/airticket/server/pom.xml 2008-08-14 15:34:15 UTC (rev 1893)
@@ -37,6 +37,10 @@
<artifactId>bpm-dialect-stp</artifactId>
<scope>runtime</scope>
</dependency>
+ <dependency>
+ <groupId>javax.servlet</groupId>
+ <artifactId>servlet-api</artifactId>
+ </dependency>
</dependencies>
<!-- Build -->
17 years, 8 months
JBoss JBPM SVN: r1892 - in jbossbpm/spec/trunk/modules: testsuite/src/test/java/org/jboss/bpm/cts/processmanager and 1 other directory.
by do-not-reply@jboss.org
Author: thomas.diesler(a)jboss.com
Date: 2008-08-14 11:25:00 -0400 (Thu, 14 Aug 2008)
New Revision: 1892
Modified:
jbossbpm/spec/trunk/modules/samples/airticket/server/pom.xml
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/processmanager/ProcessManagerTest.java
Log:
Rollback: Add missing compile time dependency
Modified: jbossbpm/spec/trunk/modules/samples/airticket/server/pom.xml
===================================================================
--- jbossbpm/spec/trunk/modules/samples/airticket/server/pom.xml 2008-08-14 15:16:13 UTC (rev 1891)
+++ jbossbpm/spec/trunk/modules/samples/airticket/server/pom.xml 2008-08-14 15:25:00 UTC (rev 1892)
@@ -13,7 +13,7 @@
-->
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <modelVersion>4.0.0</modelVersion>
+ <modelVersion>4.0.0</modelVersion>
<name>JBossBPM - Spec Samples Airticket (Server)</name>
<groupId>org.jboss.bpm</groupId>
<artifactId>bpm-sample-airticket-server</artifactId>
@@ -37,21 +37,17 @@
<artifactId>bpm-dialect-stp</artifactId>
<scope>runtime</scope>
</dependency>
- <dependency>
- <groupId>javax.servlet</groupId>
- <artifactId>servlet-api</artifactId>
- </dependency>
</dependencies>
<!-- Build -->
- <build>
- <resources>
- <resource>
- <directory>src/main/java</directory>
- </resource>
- <resource>
- <directory>src/main/resources</directory>
- </resource>
+ <build>
+ <resources>
+ <resource>
+ <directory>src/main/java</directory>
+ </resource>
+ <resource>
+ <directory>src/main/resources</directory>
+ </resource>
</resources>
</build>
</project>
\ No newline at end of file
Modified: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/processmanager/ProcessManagerTest.java
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/processmanager/ProcessManagerTest.java 2008-08-14 15:16:13 UTC (rev 1891)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/processmanager/ProcessManagerTest.java 2008-08-14 15:25:00 UTC (rev 1892)
@@ -26,9 +26,13 @@
import javax.management.ObjectName;
import org.jboss.bpm.client.ProcessManager;
+import org.jboss.bpm.client.SignalListener;
+import org.jboss.bpm.client.SignalManager;
import org.jboss.bpm.model.Process;
import org.jboss.bpm.model.ProcessBuilder;
import org.jboss.bpm.model.ProcessBuilderFactory;
+import org.jboss.bpm.model.Signal;
+import org.jboss.bpm.model.Signal.SignalType;
import org.jboss.bpm.test.DefaultEngineTestCase;
/**
@@ -41,16 +45,27 @@
{
public void testStartProcess() throws Exception
{
- Process proc = getProcess();
- ObjectName procID = proc.getID();
+ final Process proc = getProcess();
+ final ObjectName procID = proc.getID();
- ProcessManager pm = ProcessManager.locateProcessManager();
+ final ProcessManager pm = ProcessManager.locateProcessManager();
assertNull("A process created through the builder is not registered automatically", pm.getProcessByID(procID));
+ SignalListener signalListener = new SignalListener()
+ {
+ public void catchSignal(Signal signal)
+ {
+ if (signal.getSignalType() == SignalType.SYSTEM_TASK_ENTER)
+ {
+ assertNotNull(pm.getProcessByID(procID));
+ }
+ }
+ };
+ SignalManager sm = SignalManager.locateSignalManager();
+ sm.addSignalListener(getName(), signalListener);
+
// Start the process, which automatically adds it to the registery
assertEquals(procID, proc.startProcess());
- assertNotNull(pm.getProcessByID(procID));
-
proc.waitForEnd();
assertNull("A terminated process is removed from the registry", pm.getProcessByID(procID));
17 years, 8 months