[jbpm-commits] JBoss JBPM SVN: r1804 - in jbossbpm/spec/trunk/modules: api/src/main/java/org/jboss/bpm/model and 20 other directories.
do-not-reply at jboss.org
do-not-reply at jboss.org
Sat Aug 2 11:47:06 EDT 2008
Author: thomas.diesler at jboss.com
Date: 2008-08-02 11:47:06 -0400 (Sat, 02 Aug 2008)
New Revision: 1804
Added:
jbossbpm/spec/trunk/modules/dialects/api10/src/main/java/org/jboss/bpm/dialect/api10/model/JAXBInclude.java
jbossbpm/spec/trunk/modules/dialects/api10/src/test/java/org/jboss/bpm/dialect/api10/include/
jbossbpm/spec/trunk/modules/dialects/api10/src/test/java/org/jboss/bpm/dialect/api10/include/ProcessIncludeTest.java
jbossbpm/spec/trunk/modules/dialects/api10/src/test/java/org/jboss/bpm/dialect/api10/message/
jbossbpm/spec/trunk/modules/dialects/api10/src/test/java/org/jboss/bpm/dialect/api10/message/ProcessMessageTest.java
jbossbpm/spec/trunk/modules/dialects/api10/src/test/resources/include/
jbossbpm/spec/trunk/modules/dialects/api10/src/test/resources/include/proc-api10.xml
jbossbpm/spec/trunk/modules/dialects/api10/src/test/resources/include/proc-include-api10.xml
Removed:
jbossbpm/spec/trunk/modules/dialects/api10/src/test/java/org/jboss/bpm/dialect/api10/ProcessMessageTest.java
Modified:
jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/client/DialectHandler.java
jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/client/ProcessManager.java
jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Activity.java
jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Message.java
jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Process.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/model/PropertySupport.java
jbossbpm/spec/trunk/modules/dialects/api10/src/main/java/org/jboss/bpm/dialect/api10/DialectHandlerImpl.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/JAXBProcess.java
jbossbpm/spec/trunk/modules/dialects/jpdl32/src/main/java/org/jboss/bpm/dialect/jpdl32/DialectHandlerImpl.java
jbossbpm/spec/trunk/modules/dialects/jpdl32/src/main/java/org/jboss/bpm/dialect/jpdl32/ProcessDefinitionAdapter.java
jbossbpm/spec/trunk/modules/dialects/stp/src/main/java/org/jboss/bpm/dialect/stp/DialectHandlerImpl.java
jbossbpm/spec/trunk/modules/dialects/stp/src/main/java/org/jboss/bpm/dialect/stp/ProcessUnmarshaller.java
jbossbpm/spec/trunk/modules/dialects/xpdl21/src/main/java/org/jboss/bpm/dialect/xpdl21/DialectHandlerImpl.java
jbossbpm/spec/trunk/modules/dialects/xpdl21/src/main/java/org/jboss/bpm/dialect/xpdl21/WorkflowProcessAdapter.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/FlowObjectImpl.java
jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/InputSetImpl.java
jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/MessageImpl.java
jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/OutputSetImpl.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/ProcessImpl.java
jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/ReceiveTaskImpl.java
jbossbpm/spec/trunk/modules/samples/airticket/server/src/main/java/org/jboss/bpm/samples/airticket/AirticketProcessBuilder.java
jbossbpm/spec/trunk/modules/samples/airticket/server/src/main/java/org/jboss/bpm/samples/airticket/AvailabilityHandler.java
jbossbpm/spec/trunk/modules/samples/airticket/server/src/main/java/org/jboss/bpm/samples/airticket/ValidationHandler.java
jbossbpm/spec/trunk/modules/samples/airticket/server/src/main/java/org/jboss/bpm/samples/airticket/server/AirticketServiceImpl.java
jbossbpm/spec/trunk/modules/samples/airticket/server/src/test/java/org/jboss/bpm/samples/airticket/AirticketTest.java
jbossbpm/spec/trunk/modules/samples/airticket/server/src/test/java/org/jboss/bpm/samples/airticket/ProcessMarshallerTest.java
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/process/ProcessIntegrityTest.java
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/process/ProcessStartTest.java
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/processmanager/ProcessRegistryTest.java
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/task/TaskMessageTest.java
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/samples/parallelsplit/ParallelSplitTest.java
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/samples/sequence/BasicSequenceTest.java
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/samples/task/BasicTaskTest.java
Log:
Add support for include
Modified: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/client/DialectHandler.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/client/DialectHandler.java 2008-08-02 13:11:12 UTC (rev 1803)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/client/DialectHandler.java 2008-08-02 15:47:06 UTC (rev 1804)
@@ -44,13 +44,15 @@
/**
* Create a {@link Process} from a descriptor.
+ * @param isInclude TODO
*/
- Process createProcess(String pXML);
+ Process createProcess(String pXML, boolean isInclude);
/**
* Create a {@link Process} from a descriptor URL.
+ * @param isInclude TODO
*/
- Process createProcess(URL pURL) throws IOException;
+ Process createProcess(URL pURL, boolean isInclude) throws IOException;
/**
* Marshall the process to the given writer
Modified: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/client/ProcessManager.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/client/ProcessManager.java 2008-08-02 13:11:12 UTC (rev 1803)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/client/ProcessManager.java 2008-08-02 15:47:06 UTC (rev 1804)
@@ -96,7 +96,7 @@
throw new EngineShutdownException("Cannot create new Process while engine is shutting down");
String nsURI = getNamespaceURI(new ByteArrayInputStream(pXML.getBytes()));
- Process proc = getDialectHandler(nsURI).createProcess(pXML);
+ Process proc = getDialectHandler(nsURI).createProcess(pXML, false);
registerProcess(proc);
return proc;
}
@@ -110,7 +110,7 @@
throw new EngineShutdownException("Cannot create new Process while engine is shutting down");
String nsURI = getNamespaceURI(pURL.openStream());
- Process proc = getDialectHandler(nsURI).createProcess(pURL);
+ Process proc = getDialectHandler(nsURI).createProcess(pURL, false);
registerProcess(proc);
return proc;
}
Modified: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Activity.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Activity.java 2008-08-02 13:11:12 UTC (rev 1803)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Activity.java 2008-08-02 15:47:06 UTC (rev 1804)
@@ -32,7 +32,7 @@
* @author thomas.diesler at jboss.com
* @since 08-Jul-2008
*/
-public interface Activity extends FlowObject, NameSupport
+public interface Activity extends FlowObject, NameSupport, PropertySupport
{
/**
* The ActivityType MUST be of type Task or Sub-Process.
@@ -64,14 +64,6 @@
List<String> getPerformers();
/**
- * 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”).
- */
- List<Property> getProperties();
-
- /**
* The InputSets attribute defines the data requirements for input to the Activity.
* Zero or more InputSets MAY be defined. Each Input set is sufficient to allow the
* Activity to be performed (if it has first been instantiated by the appropriate signal
Modified: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Message.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Message.java 2008-08-02 13:11:12 UTC (rev 1803)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Message.java 2008-08-02 15:47:06 UTC (rev 1804)
@@ -21,7 +21,6 @@
*/
package org.jboss.bpm.model;
-import java.util.List;
//$Id$
@@ -33,7 +32,7 @@
* @author thomas.diesler at jboss.com
* @since 21-Jul-2008
*/
-public interface Message extends SupportingElement
+public interface Message extends SupportingElement, PropertySupport
{
/**
* Name is an attribute that is text description of the Message.
@@ -41,21 +40,6 @@
String getName();
/**
- * Multiple Properties MAY entered for the Message.
- */
- List<Property> getProperties();
-
- /**
- * Get a Property with a given name.
- */
- Property getProperty(String name);
-
- /**
- * Get the list of property names
- */
- List<String> getPropertyNames();
-
- /**
* This defines the source of the Message.
*/
Participant getFromRef();
Modified: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Process.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Process.java 2008-08-02 13:11:12 UTC (rev 1803)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Process.java 2008-08-02 15:47:06 UTC (rev 1804)
@@ -35,7 +35,7 @@
* @author thomas.diesler at jboss.com
* @since 08-Jul-2008
*/
-public interface Process extends SupportingElement, NameSupport
+public interface Process extends SupportingElement, NameSupport, PropertySupport
{
/**
* Defines the type of a {@link Process}
@@ -82,15 +82,6 @@
List<String> getAssignments();
/**
- * 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.
- */
- List<Property> getProperties();
-
- /**
* The InputSets attribute defines the data requirements for input to the Process. Zero or more InputSets MAY be
* defined. Each Input set is sufficient to allow the Process to be performed (if it has first been instantiated by
* the appropriate signal arriving from an incoming Sequence Flow)
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-02 13:11:12 UTC (rev 1803)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/ProcessBuilder.java 2008-08-02 15:47:06 UTC (rev 1804)
@@ -43,11 +43,17 @@
ProcessBuilder addProcess(String name);
/**
+ * Merge with another {@link Process}
+ */
+ ProcessBuilder mergeProcess(Process proc);
+
+ /**
* Get the {@link Process}.
* <p/>
* This is the final call to the ProcessBuilder after all elements have been added.
+ * @param initProcess If true the builder initializes the process
*/
- Process getProcess();
+ Process getProcess(boolean initProcess);
/**
* Add a {@link SequenceFlow} with a given name
Modified: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/PropertySupport.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/PropertySupport.java 2008-08-02 13:11:12 UTC (rev 1803)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/PropertySupport.java 2008-08-02 15:47:06 UTC (rev 1804)
@@ -40,6 +40,11 @@
Property getProperty(String name);
/**
+ * Get a Property value with a given name.
+ */
+ String getPropertyValue(String name);
+
+ /**
* Multiple Properties MAY entered for the Message.
*/
List<Property> getProperties();
Modified: jbossbpm/spec/trunk/modules/dialects/api10/src/main/java/org/jboss/bpm/dialect/api10/DialectHandlerImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/dialects/api10/src/main/java/org/jboss/bpm/dialect/api10/DialectHandlerImpl.java 2008-08-02 13:11:12 UTC (rev 1803)
+++ jbossbpm/spec/trunk/modules/dialects/api10/src/main/java/org/jboss/bpm/dialect/api10/DialectHandlerImpl.java 2008-08-02 15:47:06 UTC (rev 1804)
@@ -50,26 +50,30 @@
return NAMESPACE_URI;
}
- public Process createProcess(String pXML)
+ public Process createProcess(String pXML, boolean isInclude)
{
try
{
ProcessUnmarshaller unmarschaller = new ProcessUnmarshaller();
- Process proc = unmarschaller.unmarshallProcess(new StringReader(pXML));
+ Process proc = unmarschaller.unmarshallProcess(new StringReader(pXML), isInclude);
return proc;
}
catch (JAXBException ex)
{
throw new InvalidProcessException("Cannot unmarschall: " + pXML, ex);
}
+ catch (IOException ex)
+ {
+ throw new InvalidProcessException("Cannot unmarschall: " + pXML, ex);
+ }
}
- public Process createProcess(URL pURL) throws IOException
+ public Process createProcess(URL pURL, boolean isInclude) throws IOException
{
try
{
ProcessUnmarshaller unmarschaller = new ProcessUnmarshaller();
- Process proc = unmarschaller.unmarshallProcess(new InputStreamReader(pURL.openStream()));
+ Process proc = unmarschaller.unmarshallProcess(new InputStreamReader(pURL.openStream()), isInclude);
return proc;
}
catch (JAXBException ex)
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-02 13:11:12 UTC (rev 1803)
+++ jbossbpm/spec/trunk/modules/dialects/api10/src/main/java/org/jboss/bpm/dialect/api10/ProcessUnmarshaller.java 2008-08-02 15:47:06 UTC (rev 1804)
@@ -23,7 +23,10 @@
// $Id$
+import java.io.IOException;
import java.io.Reader;
+import java.net.MalformedURLException;
+import java.net.URL;
import javax.management.ObjectName;
import javax.xml.bind.JAXBContext;
@@ -32,7 +35,9 @@
import org.jboss.bpm.InvalidProcessException;
import org.jboss.bpm.NotImplementedException;
+import org.jboss.bpm.client.DialectHandler;
import org.jboss.bpm.client.ObjectNameFactory;
+import org.jboss.bpm.client.ProcessManager;
import org.jboss.bpm.dialect.api10.model.JAXBComplexGateway;
import org.jboss.bpm.dialect.api10.model.JAXBEndEvent;
import org.jboss.bpm.dialect.api10.model.JAXBEvent;
@@ -42,6 +47,7 @@
import org.jboss.bpm.dialect.api10.model.JAXBFlowObject;
import org.jboss.bpm.dialect.api10.model.JAXBGateway;
import org.jboss.bpm.dialect.api10.model.JAXBHandler;
+import org.jboss.bpm.dialect.api10.model.JAXBInclude;
import org.jboss.bpm.dialect.api10.model.JAXBInclusiveGateway;
import org.jboss.bpm.dialect.api10.model.JAXBInputSet;
import org.jboss.bpm.dialect.api10.model.JAXBMessage;
@@ -73,27 +79,32 @@
*/
public class ProcessUnmarshaller
{
- public Process unmarshallProcess(Reader xml) throws JAXBException
+ public Process unmarshallProcess(Reader xml, boolean isInclude) throws JAXBException, IOException
{
JAXBContext jaxbContext = JAXBContext.newInstance(ObjectFactory.class);
Unmarshaller unmarshaller = jaxbContext.createUnmarshaller();
unmarshaller.setProperty("com.sun.xml.bind.ObjectFactory", new ObjectFactory());
JAXBProcess jaxbProc = (JAXBProcess)unmarshaller.unmarshal(xml);
- Process proc = adaptProcess(jaxbProc);
+ Process proc = adaptProcess(jaxbProc, isInclude);
return proc;
}
- private Process adaptProcess(JAXBProcess jaxbProc)
+ private Process adaptProcess(JAXBProcess jaxbProc, boolean isInclude) throws IOException
{
ProcessBuilder procBuilder = ProcessBuilderFactory.newInstance().newProcessBuilder();
procBuilder.addProcess(jaxbProc.getName());
+ // Process Includes
+ processIncludes(procBuilder, jaxbProc);
+
+ // Process Messages
for(JAXBMessage jaxb : jaxbProc.getMessages())
{
MessageBuilder msgBuilder = procBuilder.addMessage(jaxb.getName());
adaptJAXBMessage(msgBuilder, jaxb);
}
+ // Process FlowObjects
for (JAXBFlowObject jaxb : jaxbProc.getFlowObjects())
{
if (jaxb instanceof JAXBEvent)
@@ -113,17 +124,46 @@
throw new NotImplementedException(jaxb.toString());
}
}
- Process proc = procBuilder.getProcess();
+
+ Process proc = procBuilder.getProcess(!isInclude);
return proc;
}
+ private void processIncludes(ProcessBuilder procBuilder, JAXBProcess jaxbProc) throws IOException
+ {
+ for(JAXBInclude incl : jaxbProc.getIncludes())
+ {
+ String nsURI = incl.getNamespace();
+ String location = incl.getLocation();
+
+ URL procURL;
+ try
+ {
+ procURL = new URL(location);
+ }
+ catch (MalformedURLException ex)
+ {
+ ClassLoader ctxLoader = Thread.currentThread().getContextClassLoader();
+ procURL = ctxLoader.getResource(location);
+ }
+ if (procURL == null)
+ throw new InvalidProcessException("Cannot find process include: " + location);
+
+ ProcessManager pm = ProcessManager.locateProcessManager();
+ DialectHandler dh = pm.getDialectHandler(nsURI);
+ Process procInclude = dh.createProcess(procURL, true);
+ procBuilder.mergeProcess(procInclude);
+ }
+ }
+
private void adaptJAXBMessage(MessageBuilder msgBuilder, JAXBMessage jaxbMsg)
{
msgBuilder.addFromRef(getObjectName(jaxbMsg.getFromRef()));
msgBuilder.addToRef(getObjectName(jaxbMsg.getToRef()));
for (JAXBProperty jaxbProp : jaxbMsg.getProperties())
{
- msgBuilder.addProperty(jaxbProp.getName(), jaxbProp.getValue(), jaxbProp.isCorrelation());
+ boolean isCorrelation = jaxbProp.isCorrelation() != null ? jaxbProp.isCorrelation() : false;
+ msgBuilder.addProperty(jaxbProp.getName(), jaxbProp.getValue(), isCorrelation);
}
}
@@ -181,11 +221,7 @@
{
JAXBMessageRef jaxbMsgRef = (JAXBMessageRef)jaxbSE;
String msgName = jaxbMsgRef.getNameRef();
- JAXBMessage jaxbMsg = jaxbProc.getMessageByName(msgName);
- if (jaxbMsg == null)
- throw new InvalidProcessException("Cannot find message with name: " + msgName);
- MessageBuilder msgBuilder = taskBuilder.addMessage(msgName);
- adaptJAXBMessage(msgBuilder, jaxbMsg);
+ taskBuilder.addMessageRef(msgName);
}
procBuilder.addExecutionHandler(loadHandler(jaxb.getExecutionHandler()));
procBuilder.addFlowHandler(loadHandler(jaxb.getFlowHandler()));
Added: jbossbpm/spec/trunk/modules/dialects/api10/src/main/java/org/jboss/bpm/dialect/api10/model/JAXBInclude.java
===================================================================
--- jbossbpm/spec/trunk/modules/dialects/api10/src/main/java/org/jboss/bpm/dialect/api10/model/JAXBInclude.java (rev 0)
+++ jbossbpm/spec/trunk/modules/dialects/api10/src/main/java/org/jboss/bpm/dialect/api10/model/JAXBInclude.java 2008-08-02 15:47:06 UTC (rev 1804)
@@ -0,0 +1,62 @@
+/*
+ * 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.dialect.api10.model;
+
+//$Id$
+
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlType;
+
+/**
+ * An include that can be used as part of the process
+ *
+ * @author thomas.diesler at jboss.com
+ * @since 08-Jul-2008
+ */
+ at XmlType(name = "Include")
+public class JAXBInclude
+{
+ private String namespace;
+ private String location;
+
+ public String getNamespace()
+ {
+ return namespace;
+ }
+
+ @XmlAttribute(required = true)
+ public void setNamespace(String namespace)
+ {
+ this.namespace = namespace;
+ }
+
+ public String getLocation()
+ {
+ return location;
+ }
+
+ @XmlAttribute(required = true)
+ public void setLocation(String location)
+ {
+ this.location = location;
+ }
+}
\ No newline at end of file
Property changes on: jbossbpm/spec/trunk/modules/dialects/api10/src/main/java/org/jboss/bpm/dialect/api10/model/JAXBInclude.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
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-02 13:11:12 UTC (rev 1803)
+++ jbossbpm/spec/trunk/modules/dialects/api10/src/main/java/org/jboss/bpm/dialect/api10/model/JAXBProcess.java 2008-08-02 15:47:06 UTC (rev 1804)
@@ -44,6 +44,7 @@
{
private String name;
private List<JAXBMessage> messages = new ArrayList<JAXBMessage>();
+ private List<JAXBInclude> includes = new ArrayList<JAXBInclude>();
@XmlElements( { @XmlElement(name = "start", type = JAXBStartEvent.class),
@XmlElement(name = "event", type = JAXBIntermediateEvent.class),
@@ -61,7 +62,7 @@
return name;
}
- @XmlAttribute(required = true)
+ @XmlAttribute
public void setName(String name)
{
this.name = name;
@@ -83,6 +84,17 @@
this.messages = messages;
}
+ public List<JAXBInclude> getIncludes()
+ {
+ return includes;
+ }
+
+ @XmlElement(name = "include")
+ public void setIncludes(List<JAXBInclude> includes)
+ {
+ this.includes = includes;
+ }
+
public JAXBMessage getMessageByName(String msgName)
{
for (JAXBMessage msg : messages)
Deleted: jbossbpm/spec/trunk/modules/dialects/api10/src/test/java/org/jboss/bpm/dialect/api10/ProcessMessageTest.java
===================================================================
--- jbossbpm/spec/trunk/modules/dialects/api10/src/test/java/org/jboss/bpm/dialect/api10/ProcessMessageTest.java 2008-08-02 13:11:12 UTC (rev 1803)
+++ jbossbpm/spec/trunk/modules/dialects/api10/src/test/java/org/jboss/bpm/dialect/api10/ProcessMessageTest.java 2008-08-02 15:47:06 UTC (rev 1804)
@@ -1,103 +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.dialect.api10;
-
-// $Id$
-
-import java.io.StringWriter;
-
-import org.jboss.bpm.client.DialectHandler;
-import org.jboss.bpm.client.ProcessManager;
-import org.jboss.bpm.model.Process;
-import org.jboss.bpm.model.ProcessBuilder;
-import org.jboss.bpm.model.ProcessBuilderFactory;
-import org.jboss.bpm.model.ReceiveTask;
-import org.jboss.bpm.model.TaskBuilder;
-import org.jboss.bpm.model.Task.TaskType;
-import org.jboss.bpm.test.DefaultEngineTestCase;
-
-/**
- * Test process messages
- *
- * @author thomas.diesler at jboss.com
- * @since 03-Jul-2008
- */
-public class ProcessMessageTest extends DefaultEngineTestCase
-{
- public void testProcessMessage() throws Exception
- {
- ProcessBuilder procBuilder = ProcessBuilderFactory.newInstance().newProcessBuilder();
- procBuilder.addProcess(getName()).addStartEvent().addSequenceFlow("End").addEndEvent("End");
- procBuilder.addMessage("FooMsg");
- Process expProc = procBuilder.getProcess();
-
- ProcessManager pm = ProcessManager.locateProcessManager();
- DialectHandler dh = pm.getDialectHandler(DialectHandlerImpl.NAMESPACE_URI);
-
- StringWriter strwr = new StringWriter();
- dh.marshallProcess(expProc, strwr);
-
- Process wasProc = dh.createProcess(strwr.toString());
- assertNotNull(wasProc.getMessageByName("FooMsg"));
- }
-
- public void testReceiveTaskWithMessage() throws Exception
- {
- ProcessBuilder procBuilder = ProcessBuilderFactory.newInstance().newProcessBuilder();
- procBuilder.addProcess(getName()).addStartEvent().addSequenceFlow("A");
- TaskBuilder taskBuilder = procBuilder.addTask("A", TaskType.Receive);
- taskBuilder.addMessage("FooMsg");
- procBuilder.addSequenceFlow("End").addEndEvent("End");
- Process expProc = procBuilder.getProcess();
-
- ProcessManager pm = ProcessManager.locateProcessManager();
- DialectHandler dh = pm.getDialectHandler(DialectHandlerImpl.NAMESPACE_URI);
-
- StringWriter strwr = new StringWriter();
- dh.marshallProcess(expProc, strwr);
-
- Process wasProc = dh.createProcess(strwr.toString());
- ReceiveTask recTask = (ReceiveTask)wasProc.getFlowObjectByName("A");
- assertEquals("FooMsg", recTask.getMessageRef().getName());
- }
-
- public void testReceiveTaskWithMessageRef() throws Exception
- {
- ProcessBuilder procBuilder = ProcessBuilderFactory.newInstance().newProcessBuilder();
- procBuilder.addProcess(getName()).addMessage("FooMsg");
- procBuilder.addStartEvent().addSequenceFlow("A");
- TaskBuilder taskBuilder = procBuilder.addTask("A", TaskType.Receive);
- taskBuilder.addMessageRef("FooMsg");
- procBuilder.addSequenceFlow("End").addEndEvent("End");
- Process expProc = procBuilder.getProcess();
-
- ProcessManager pm = ProcessManager.locateProcessManager();
- DialectHandler dh = pm.getDialectHandler(DialectHandlerImpl.NAMESPACE_URI);
-
- StringWriter strwr = new StringWriter();
- dh.marshallProcess(expProc, strwr);
-
- Process wasProc = dh.createProcess(strwr.toString());
- ReceiveTask recTask = (ReceiveTask)wasProc.getFlowObjectByName("A");
- assertEquals("FooMsg", recTask.getMessageRef().getName());
- }
-}
Added: jbossbpm/spec/trunk/modules/dialects/api10/src/test/java/org/jboss/bpm/dialect/api10/include/ProcessIncludeTest.java
===================================================================
--- jbossbpm/spec/trunk/modules/dialects/api10/src/test/java/org/jboss/bpm/dialect/api10/include/ProcessIncludeTest.java (rev 0)
+++ jbossbpm/spec/trunk/modules/dialects/api10/src/test/java/org/jboss/bpm/dialect/api10/include/ProcessIncludeTest.java 2008-08-02 15:47:06 UTC (rev 1804)
@@ -0,0 +1,50 @@
+/*
+ * 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.dialect.api10.include;
+
+// $Id$
+
+import org.jboss.bpm.client.ProcessManager;
+import org.jboss.bpm.model.Message;
+import org.jboss.bpm.model.Process;
+import org.jboss.bpm.model.ReceiveTask;
+import org.jboss.bpm.test.DefaultEngineTestCase;
+
+/**
+ * Test process messages
+ *
+ * @author thomas.diesler at jboss.com
+ * @since 03-Jul-2008
+ */
+public class ProcessIncludeTest extends DefaultEngineTestCase
+{
+ public void testInclude() throws Exception
+ {
+ ProcessManager pm = ProcessManager.locateProcessManager();
+ Process proc = pm.createProcess(getResourceURL("include/proc-api10.xml"));
+
+ ReceiveTask recTask = (ReceiveTask)proc.getFlowObjectByName("A");
+ Message msg = recTask.getMessageRef();
+ assertEquals("FooMsg", msg.getName());
+ assertEquals("bar", msg.getPropertyValue("foo"));
+ }
+}
Property changes on: jbossbpm/spec/trunk/modules/dialects/api10/src/test/java/org/jboss/bpm/dialect/api10/include/ProcessIncludeTest.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Copied: jbossbpm/spec/trunk/modules/dialects/api10/src/test/java/org/jboss/bpm/dialect/api10/message/ProcessMessageTest.java (from rev 1802, jbossbpm/spec/trunk/modules/dialects/api10/src/test/java/org/jboss/bpm/dialect/api10/ProcessMessageTest.java)
===================================================================
--- jbossbpm/spec/trunk/modules/dialects/api10/src/test/java/org/jboss/bpm/dialect/api10/message/ProcessMessageTest.java (rev 0)
+++ jbossbpm/spec/trunk/modules/dialects/api10/src/test/java/org/jboss/bpm/dialect/api10/message/ProcessMessageTest.java 2008-08-02 15:47:06 UTC (rev 1804)
@@ -0,0 +1,114 @@
+/*
+ * 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.dialect.api10.message;
+
+// $Id$
+
+import java.io.StringWriter;
+
+import org.jboss.bpm.client.DialectHandler;
+import org.jboss.bpm.client.ProcessManager;
+import org.jboss.bpm.dialect.api10.DialectHandlerImpl;
+import org.jboss.bpm.model.Message;
+import org.jboss.bpm.model.MessageBuilder;
+import org.jboss.bpm.model.Process;
+import org.jboss.bpm.model.ProcessBuilder;
+import org.jboss.bpm.model.ProcessBuilderFactory;
+import org.jboss.bpm.model.ReceiveTask;
+import org.jboss.bpm.model.TaskBuilder;
+import org.jboss.bpm.model.Task.TaskType;
+import org.jboss.bpm.test.DefaultEngineTestCase;
+
+/**
+ * Test process messages
+ *
+ * @author thomas.diesler at jboss.com
+ * @since 03-Jul-2008
+ */
+public class ProcessMessageTest extends DefaultEngineTestCase
+{
+ public void testProcessMessage() throws Exception
+ {
+ ProcessBuilder procBuilder = ProcessBuilderFactory.newInstance().newProcessBuilder();
+ procBuilder.addProcess(getName()).addStartEvent().addSequenceFlow("End").addEndEvent("End");
+ MessageBuilder msgBuilder = procBuilder.addMessage("FooMsg");
+ msgBuilder.addProperty("foo", "bar");
+ Process expProc = procBuilder.getProcess(true);
+
+ ProcessManager pm = ProcessManager.locateProcessManager();
+ DialectHandler dh = pm.getDialectHandler(DialectHandlerImpl.NAMESPACE_URI);
+
+ StringWriter strwr = new StringWriter();
+ dh.marshallProcess(expProc, strwr);
+
+ Process wasProc = dh.createProcess(strwr.toString(), false);
+ Message msg = wasProc.getMessageByName("FooMsg");
+ assertEquals("bar", msg.getPropertyValue("foo"));
+ }
+
+ public void testReceiveTaskWithMessage() throws Exception
+ {
+ ProcessBuilder procBuilder = ProcessBuilderFactory.newInstance().newProcessBuilder();
+ procBuilder.addProcess(getName()).addStartEvent().addSequenceFlow("A");
+ TaskBuilder taskBuilder = procBuilder.addTask("A", TaskType.Receive);
+ MessageBuilder msgBuilder = taskBuilder.addMessage("FooMsg");
+ msgBuilder.addProperty("foo", "bar");
+ procBuilder.addSequenceFlow("End").addEndEvent("End");
+ Process expProc = procBuilder.getProcess(true);
+
+ ProcessManager pm = ProcessManager.locateProcessManager();
+ DialectHandler dh = pm.getDialectHandler(DialectHandlerImpl.NAMESPACE_URI);
+
+ StringWriter strwr = new StringWriter();
+ dh.marshallProcess(expProc, strwr);
+
+ Process wasProc = dh.createProcess(strwr.toString(), false);
+ ReceiveTask recTask = (ReceiveTask)wasProc.getFlowObjectByName("A");
+ Message msg = recTask.getMessageRef();
+ assertEquals("FooMsg", msg.getName());
+ assertEquals("bar", msg.getPropertyValue("foo"));
+ }
+
+ public void testReceiveTaskWithMessageRef() throws Exception
+ {
+ ProcessBuilder procBuilder = ProcessBuilderFactory.newInstance().newProcessBuilder();
+ procBuilder.addProcess(getName()).addStartEvent().addSequenceFlow("A");
+ MessageBuilder msgBuilder = procBuilder.addMessage("FooMsg");
+ msgBuilder.addProperty("foo", "bar");
+ TaskBuilder taskBuilder = procBuilder.addTask("A", TaskType.Receive);
+ taskBuilder.addMessageRef("FooMsg");
+ procBuilder.addSequenceFlow("End").addEndEvent("End");
+ Process expProc = procBuilder.getProcess(true);
+
+ ProcessManager pm = ProcessManager.locateProcessManager();
+ DialectHandler dh = pm.getDialectHandler(DialectHandlerImpl.NAMESPACE_URI);
+
+ StringWriter strwr = new StringWriter();
+ dh.marshallProcess(expProc, strwr);
+
+ Process wasProc = dh.createProcess(strwr.toString(), false);
+ ReceiveTask recTask = (ReceiveTask)wasProc.getFlowObjectByName("A");
+ Message msg = recTask.getMessageRef();
+ assertEquals("FooMsg", msg.getName());
+ assertEquals("bar", msg.getPropertyValue("foo"));
+ }
+}
Added: jbossbpm/spec/trunk/modules/dialects/api10/src/test/resources/include/proc-api10.xml
===================================================================
--- jbossbpm/spec/trunk/modules/dialects/api10/src/test/resources/include/proc-api10.xml (rev 0)
+++ jbossbpm/spec/trunk/modules/dialects/api10/src/test/resources/include/proc-api10.xml 2008-08-02 15:47:06 UTC (rev 1804)
@@ -0,0 +1,11 @@
+<ns2:process name="testReceiveTaskWithMessageRef" xmlns:ns2="urn:bpm.jboss:pdl-0.1">
+ <include namespace="urn:bpm.jboss:pdl-0.1" location="include/proc-include-api10.xml"/>
+ <start>
+ <seqflow to="A" />
+ </start>
+ <task taskType="Receive" name="A">
+ <seqflow to="End" />
+ <msgref nameRef="FooMsg" />
+ </task>
+ <end name="End" />
+</ns2:process>
\ No newline at end of file
Property changes on: jbossbpm/spec/trunk/modules/dialects/api10/src/test/resources/include/proc-api10.xml
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: jbossbpm/spec/trunk/modules/dialects/api10/src/test/resources/include/proc-include-api10.xml
===================================================================
--- jbossbpm/spec/trunk/modules/dialects/api10/src/test/resources/include/proc-include-api10.xml (rev 0)
+++ jbossbpm/spec/trunk/modules/dialects/api10/src/test/resources/include/proc-include-api10.xml 2008-08-02 15:47:06 UTC (rev 1804)
@@ -0,0 +1,8 @@
+<ns2:process xmlns:ns2="urn:bpm.jboss:pdl-0.1">
+ <message name="FooMsg">
+ <property>
+ <name>foo</name>
+ <value>bar</value>
+ </property>
+ </message>
+</ns2:process>
\ No newline at end of file
Property changes on: jbossbpm/spec/trunk/modules/dialects/api10/src/test/resources/include/proc-include-api10.xml
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Modified: jbossbpm/spec/trunk/modules/dialects/jpdl32/src/main/java/org/jboss/bpm/dialect/jpdl32/DialectHandlerImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/dialects/jpdl32/src/main/java/org/jboss/bpm/dialect/jpdl32/DialectHandlerImpl.java 2008-08-02 13:11:12 UTC (rev 1803)
+++ jbossbpm/spec/trunk/modules/dialects/jpdl32/src/main/java/org/jboss/bpm/dialect/jpdl32/DialectHandlerImpl.java 2008-08-02 15:47:06 UTC (rev 1804)
@@ -52,7 +52,7 @@
return NAMESPACE_URI;
}
- public Process createProcess(String pXML)
+ public Process createProcess(String pXML, boolean isInclude)
{
try
{
@@ -67,7 +67,7 @@
}
}
- public Process createProcess(URL pURL) throws IOException
+ public Process createProcess(URL pURL, boolean isInclude) throws IOException
{
try
{
Modified: jbossbpm/spec/trunk/modules/dialects/jpdl32/src/main/java/org/jboss/bpm/dialect/jpdl32/ProcessDefinitionAdapter.java
===================================================================
--- jbossbpm/spec/trunk/modules/dialects/jpdl32/src/main/java/org/jboss/bpm/dialect/jpdl32/ProcessDefinitionAdapter.java 2008-08-02 13:11:12 UTC (rev 1803)
+++ jbossbpm/spec/trunk/modules/dialects/jpdl32/src/main/java/org/jboss/bpm/dialect/jpdl32/ProcessDefinitionAdapter.java 2008-08-02 15:47:06 UTC (rev 1804)
@@ -78,7 +78,7 @@
}
}
- Process proc = builder.getProcess();
+ Process proc = builder.getProcess(true);
return proc;
}
Modified: jbossbpm/spec/trunk/modules/dialects/stp/src/main/java/org/jboss/bpm/dialect/stp/DialectHandlerImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/dialects/stp/src/main/java/org/jboss/bpm/dialect/stp/DialectHandlerImpl.java 2008-08-02 13:11:12 UTC (rev 1803)
+++ jbossbpm/spec/trunk/modules/dialects/stp/src/main/java/org/jboss/bpm/dialect/stp/DialectHandlerImpl.java 2008-08-02 15:47:06 UTC (rev 1804)
@@ -50,7 +50,7 @@
return NAMESPACE_URI;
}
- public Process createProcess(String pXML)
+ public Process createProcess(String pXML, boolean isInclude)
{
try
{
@@ -64,7 +64,7 @@
}
}
- public Process createProcess(URL pURL) throws IOException
+ public Process createProcess(URL pURL, boolean isInclude) throws IOException
{
try
{
Modified: jbossbpm/spec/trunk/modules/dialects/stp/src/main/java/org/jboss/bpm/dialect/stp/ProcessUnmarshaller.java
===================================================================
--- jbossbpm/spec/trunk/modules/dialects/stp/src/main/java/org/jboss/bpm/dialect/stp/ProcessUnmarshaller.java 2008-08-02 13:11:12 UTC (rev 1803)
+++ jbossbpm/spec/trunk/modules/dialects/stp/src/main/java/org/jboss/bpm/dialect/stp/ProcessUnmarshaller.java 2008-08-02 15:47:06 UTC (rev 1804)
@@ -133,7 +133,7 @@
adaptActivity(builder, stpActivity);
}
- return builder.getProcess();
+ return builder.getProcess(true);
}
private ProcessBuilder adaptDiagram(BpmnDiagram bpmnDiagram)
Modified: jbossbpm/spec/trunk/modules/dialects/xpdl21/src/main/java/org/jboss/bpm/dialect/xpdl21/DialectHandlerImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/dialects/xpdl21/src/main/java/org/jboss/bpm/dialect/xpdl21/DialectHandlerImpl.java 2008-08-02 13:11:12 UTC (rev 1803)
+++ jbossbpm/spec/trunk/modules/dialects/xpdl21/src/main/java/org/jboss/bpm/dialect/xpdl21/DialectHandlerImpl.java 2008-08-02 15:47:06 UTC (rev 1804)
@@ -52,7 +52,7 @@
return NAMESPACE_URI;
}
- public Process createProcess(String pXML)
+ public Process createProcess(String pXML, boolean isInclude)
{
try
{
@@ -67,7 +67,7 @@
}
}
- public Process createProcess(URL pURL) throws IOException
+ public Process createProcess(URL pURL, boolean isInclude) throws IOException
{
try
{
Modified: jbossbpm/spec/trunk/modules/dialects/xpdl21/src/main/java/org/jboss/bpm/dialect/xpdl21/WorkflowProcessAdapter.java
===================================================================
--- jbossbpm/spec/trunk/modules/dialects/xpdl21/src/main/java/org/jboss/bpm/dialect/xpdl21/WorkflowProcessAdapter.java 2008-08-02 13:11:12 UTC (rev 1803)
+++ jbossbpm/spec/trunk/modules/dialects/xpdl21/src/main/java/org/jboss/bpm/dialect/xpdl21/WorkflowProcessAdapter.java 2008-08-02 15:47:06 UTC (rev 1804)
@@ -70,7 +70,7 @@
}
}
- Process proc = builder.getProcess();
+ Process proc = builder.getProcess(true);
return proc;
}
}
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-02 13:11:12 UTC (rev 1803)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/ActivityImpl.java 2008-08-02 15:47:06 UTC (rev 1804)
@@ -137,6 +137,12 @@
return null;
}
+ public String getPropertyValue(String name)
+ {
+ Property prop = getProperty(name);
+ return prop != null ? prop.getValue().getExpressionBody() : null;
+ }
+
public List<Property> getProperties()
{
return Collections.unmodifiableList(props);
Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/FlowObjectImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/FlowObjectImpl.java 2008-08-02 13:11:12 UTC (rev 1803)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/FlowObjectImpl.java 2008-08-02 15:47:06 UTC (rev 1804)
@@ -95,6 +95,17 @@
// noting to do
}
+ public void merge(FlowObjectImpl foIncl)
+ {
+ // Merge Handlers
+ if (executionHandler == null)
+ executionHandler = foIncl.getExecutionHandler();
+ if (flowHandler == null)
+ flowHandler = foIncl.getFlowHandler();
+ if (signalHandler == null)
+ signalHandler = foIncl.getSignalHandler();
+ }
+
@Override
protected void initialize(Process proc)
{
Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/InputSetImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/InputSetImpl.java 2008-08-02 13:11:12 UTC (rev 1803)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/InputSetImpl.java 2008-08-02 15:47:06 UTC (rev 1804)
@@ -64,6 +64,12 @@
return null;
}
+ public String getPropertyValue(String name)
+ {
+ Property prop = getProperty(name);
+ return prop != null ? prop.getValue().getExpressionBody() : null;
+ }
+
public List<Property> getProperties()
{
return Collections.unmodifiableList(props);
Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/MessageImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/MessageImpl.java 2008-08-02 13:11:12 UTC (rev 1803)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/MessageImpl.java 2008-08-02 15:47:06 UTC (rev 1804)
@@ -102,6 +102,12 @@
return null;
}
+ public String getPropertyValue(String name)
+ {
+ Property prop = getProperty(name);
+ return prop != null ? prop.getValue().getExpressionBody() : null;
+ }
+
public List<Property> getProperties()
{
return Collections.unmodifiableList(props);
Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/OutputSetImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/OutputSetImpl.java 2008-08-02 13:11:12 UTC (rev 1803)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/OutputSetImpl.java 2008-08-02 15:47:06 UTC (rev 1804)
@@ -64,6 +64,12 @@
return null;
}
+ public String getPropertyValue(String name)
+ {
+ Property prop = getProperty(name);
+ return prop != null ? prop.getValue().getExpressionBody() : null;
+ }
+
public List<Property> getProperties()
{
return Collections.unmodifiableList(props);
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-02 13:11:12 UTC (rev 1803)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/ProcessBuilderImpl.java 2008-08-02 15:47:06 UTC (rev 1804)
@@ -63,12 +63,20 @@
return this;
}
- public Process getProcess()
+ public ProcessBuilder mergeProcess(Process procInclude)
{
+ proc.merge(procInclude);
+ return this;
+ }
+
+ public Process getProcess(boolean initProcess)
+ {
if (proc == null)
throw new IllegalStateException("No process has been added");
- proc.initialize();
+ if (initProcess)
+ proc.initialize();
+
return proc;
}
Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/ProcessImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/ProcessImpl.java 2008-08-02 13:11:12 UTC (rev 1803)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/ProcessImpl.java 2008-08-02 15:47:06 UTC (rev 1804)
@@ -47,6 +47,7 @@
import org.jboss.bpm.model.Property;
import org.jboss.bpm.model.StartEvent;
import org.jboss.bpm.runtime.Attachments;
+import org.jboss.bpm.runtime.MutablePropertySupport;
/**
* A Process is any Activity performed within a company or organization.
@@ -55,7 +56,7 @@
* @since 08-Jul-2008
*/
@SuppressWarnings("serial")
-public class ProcessImpl extends SupportingElementImpl implements Process
+public class ProcessImpl extends SupportingElementImpl implements Process, MutablePropertySupport
{
// The required process name
private String name;
@@ -63,6 +64,8 @@
private List<FlowObject> flowObjects = new ArrayList<FlowObject>();
// The list of associated messages
private List<Message> messages = new ArrayList<Message>();
+ // The process properties
+ private List<Property> props = new ArrayList<Property>();
// the status of the process
private Status status = Status.None;
// The possible exception that caused the process to abort
@@ -103,11 +106,42 @@
throw new NotImplementedException();
}
+ public Property getProperty(String name)
+ {
+ for (Property prop : props)
+ {
+ if (prop.getName().equals(name))
+ return prop;
+ }
+ return null;
+ }
+
+ public String getPropertyValue(String name)
+ {
+ Property prop = getProperty(name);
+ return prop != null ? prop.getValue().getExpressionBody() : null;
+ }
+
public List<Property> getProperties()
{
- throw new NotImplementedException();
+ return Collections.unmodifiableList(props);
}
+ public List<String> getPropertyNames()
+ {
+ List<String> names = new ArrayList<String>();
+ for (Property prop : props)
+ {
+ names.add(prop.getName());
+ }
+ return names;
+ }
+
+ public void addProperty(Property prop)
+ {
+ props.add(prop);
+ }
+
public void addFlowObject(FlowObject flowObject)
{
flowObjects.add(flowObject);
@@ -219,7 +253,7 @@
if (name == null)
throw new IllegalArgumentException("Cannot find flow object with name: null");
- FlowObject nfo = null;
+ FlowObject flowObject = null;
for (FlowObject aux : flowObjects)
{
if (aux instanceof NameSupport)
@@ -227,12 +261,12 @@
NameSupport auxnfo = (NameSupport)aux;
if (name.equals(auxnfo.getName()))
{
- nfo = aux;
+ flowObject = aux;
break;
}
}
}
- return nfo;
+ return flowObject;
}
public Status getStatus()
@@ -301,9 +335,32 @@
return null;
}
+ public void merge(Process procIncl)
+ {
+ for(Message msg : procIncl.getMessages())
+ {
+ addMessage(msg);
+ }
+ for(FlowObject foIncl : procIncl.getFlowObjects())
+ {
+ if (foIncl instanceof NameSupport)
+ {
+ String foName = ((NameSupport)foIncl).getName();
+ FlowObjectImpl fo = (FlowObjectImpl)getFlowObjectByName(foName);
+ if (fo != null)
+ {
+ fo.merge((FlowObjectImpl)foIncl);
+ }
+ else
+ {
+ addFlowObject(foIncl);
+ }
+ }
+ }
+ }
+
public String toString()
{
return "Process[" + getName() + "]";
}
-
}
\ No newline at end of file
Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/ReceiveTaskImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/ReceiveTaskImpl.java 2008-08-02 13:11:12 UTC (rev 1803)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/ReceiveTaskImpl.java 2008-08-02 15:47:06 UTC (rev 1804)
@@ -32,7 +32,6 @@
import org.jboss.bpm.NotImplementedException;
import org.jboss.bpm.ProcessTimeoutException;
import org.jboss.bpm.client.MessageListener;
-import org.jboss.bpm.model.Expression;
import org.jboss.bpm.model.Message;
import org.jboss.bpm.model.Process;
import org.jboss.bpm.model.Property;
@@ -146,8 +145,8 @@
for (Property prop : messageRef.getProperties())
{
String key = prop.getName();
- Expression value = msg.getProperty(key).getValue();
- exContext.addAttachment(key, value.getExpressionBody());
+ String value = msg.getPropertyValue(key);
+ exContext.addAttachment(key, value);
}
// Call default execute
Modified: jbossbpm/spec/trunk/modules/samples/airticket/server/src/main/java/org/jboss/bpm/samples/airticket/AirticketProcessBuilder.java
===================================================================
--- jbossbpm/spec/trunk/modules/samples/airticket/server/src/main/java/org/jboss/bpm/samples/airticket/AirticketProcessBuilder.java 2008-08-02 13:11:12 UTC (rev 1803)
+++ jbossbpm/spec/trunk/modules/samples/airticket/server/src/main/java/org/jboss/bpm/samples/airticket/AirticketProcessBuilder.java 2008-08-02 15:47:06 UTC (rev 1804)
@@ -213,7 +213,7 @@
addProperty("Price", null, true);
// Get the process
- Process proc = procBuilder.getProcess();
+ Process proc = procBuilder.getProcess(true);
return proc;
}
}
\ No newline at end of file
Modified: jbossbpm/spec/trunk/modules/samples/airticket/server/src/main/java/org/jboss/bpm/samples/airticket/AvailabilityHandler.java
===================================================================
--- jbossbpm/spec/trunk/modules/samples/airticket/server/src/main/java/org/jboss/bpm/samples/airticket/AvailabilityHandler.java 2008-08-02 13:11:12 UTC (rev 1803)
+++ jbossbpm/spec/trunk/modules/samples/airticket/server/src/main/java/org/jboss/bpm/samples/airticket/AvailabilityHandler.java 2008-08-02 15:47:06 UTC (rev 1804)
@@ -42,7 +42,7 @@
public void execute(Token token, InputSet inputSet, OutputSet outputSet)
{
PropertyBuilder builder = PropertyBuilderFactory.newInstance().newPropertyBuilder();
- Integer seats = Integer.valueOf(inputSet.getProperty("Seats").getValue().getExpressionBody());
+ Integer seats = Integer.valueOf(inputSet.getPropertyValue("Seats"));
outputSet.addProperty(builder.newProperty("isAvailable", new Boolean(seats < 10).toString()));
outputSet.addProperty(builder.newProperty("Price", new Integer(seats * 111).toString()));
}
Modified: jbossbpm/spec/trunk/modules/samples/airticket/server/src/main/java/org/jboss/bpm/samples/airticket/ValidationHandler.java
===================================================================
--- jbossbpm/spec/trunk/modules/samples/airticket/server/src/main/java/org/jboss/bpm/samples/airticket/ValidationHandler.java 2008-08-02 13:11:12 UTC (rev 1803)
+++ jbossbpm/spec/trunk/modules/samples/airticket/server/src/main/java/org/jboss/bpm/samples/airticket/ValidationHandler.java 2008-08-02 15:47:06 UTC (rev 1804)
@@ -41,11 +41,11 @@
{
public void execute(Token token, InputSet inputSet, OutputSet outputSet)
{
- String name = inputSet.getProperty("Name").getValue().getExpressionBody();
- String from = inputSet.getProperty("From").getValue().getExpressionBody();
- String to = inputSet.getProperty("To").getValue().getExpressionBody();
- String date = inputSet.getProperty("Date").getValue().getExpressionBody();
- String seats = inputSet.getProperty("Seats").getValue().getExpressionBody();
+ String name = inputSet.getPropertyValue("Name");
+ String from = inputSet.getPropertyValue("From");
+ String to = inputSet.getPropertyValue("To");
+ String date = inputSet.getPropertyValue("Date");
+ String seats = inputSet.getPropertyValue("Seats");
boolean isValid = name != null && name.length() > 0;
isValid &= from != null && from.length() > 0;
Modified: jbossbpm/spec/trunk/modules/samples/airticket/server/src/main/java/org/jboss/bpm/samples/airticket/server/AirticketServiceImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/samples/airticket/server/src/main/java/org/jboss/bpm/samples/airticket/server/AirticketServiceImpl.java 2008-08-02 13:11:12 UTC (rev 1803)
+++ jbossbpm/spec/trunk/modules/samples/airticket/server/src/main/java/org/jboss/bpm/samples/airticket/server/AirticketServiceImpl.java 2008-08-02 15:47:06 UTC (rev 1804)
@@ -106,43 +106,43 @@
if (msgName.equals("OfferMsg"))
{
OfferMessage gwtMsg = new OfferMessage();
- gwtMsg.name = bpmMsg.getProperty("Name").getValue().getExpressionBody();
- gwtMsg.from = bpmMsg.getProperty("From").getValue().getExpressionBody();
- gwtMsg.to = bpmMsg.getProperty("To").getValue().getExpressionBody();
- gwtMsg.date = bpmMsg.getProperty("Date").getValue().getExpressionBody();
- gwtMsg.seats = bpmMsg.getProperty("Seats").getValue().getExpressionBody();
- gwtMsg.price = bpmMsg.getProperty("Price").getValue().getExpressionBody();
+ gwtMsg.name = bpmMsg.getPropertyValue("Name");
+ gwtMsg.from = bpmMsg.getPropertyValue("From");
+ gwtMsg.to = bpmMsg.getPropertyValue("To");
+ gwtMsg.date = bpmMsg.getPropertyValue("Date");
+ gwtMsg.seats = bpmMsg.getPropertyValue("Seats");
+ gwtMsg.price = bpmMsg.getPropertyValue("Price");
returnMsg = gwtMsg;
}
else if (msgName.equals("InvalidDataMsg"))
{
InvalidDataMessage gwtMsg = new InvalidDataMessage();
- gwtMsg.name = bpmMsg.getProperty("Name").getValue().getExpressionBody();
- gwtMsg.from = bpmMsg.getProperty("From").getValue().getExpressionBody();
- gwtMsg.to = bpmMsg.getProperty("To").getValue().getExpressionBody();
- gwtMsg.date = bpmMsg.getProperty("Date").getValue().getExpressionBody();
- gwtMsg.seats = bpmMsg.getProperty("Seats").getValue().getExpressionBody();
+ gwtMsg.name = bpmMsg.getPropertyValue("Name");
+ gwtMsg.from = bpmMsg.getPropertyValue("From");
+ gwtMsg.to = bpmMsg.getPropertyValue("To");
+ gwtMsg.date = bpmMsg.getPropertyValue("Date");
+ gwtMsg.seats = bpmMsg.getPropertyValue("Seats");
returnMsg = gwtMsg;
}
else if (msgName.equals("NotAvailableMsg"))
{
NotAvailableMessage gwtMsg = new NotAvailableMessage();
- gwtMsg.name = bpmMsg.getProperty("Name").getValue().getExpressionBody();
- gwtMsg.from = bpmMsg.getProperty("From").getValue().getExpressionBody();
- gwtMsg.to = bpmMsg.getProperty("To").getValue().getExpressionBody();
- gwtMsg.date = bpmMsg.getProperty("Date").getValue().getExpressionBody();
- gwtMsg.seats = bpmMsg.getProperty("Seats").getValue().getExpressionBody();
+ gwtMsg.name = bpmMsg.getPropertyValue("Name");
+ gwtMsg.from = bpmMsg.getPropertyValue("From");
+ gwtMsg.to = bpmMsg.getPropertyValue("To");
+ gwtMsg.date = bpmMsg.getPropertyValue("Date");
+ gwtMsg.seats = bpmMsg.getPropertyValue("Seats");
returnMsg = gwtMsg;
}
else if (msgName.equals("ConfirmMsg"))
{
ConfirmMessage gwtMsg = new ConfirmMessage();
- gwtMsg.name = bpmMsg.getProperty("Name").getValue().getExpressionBody();
- gwtMsg.from = bpmMsg.getProperty("From").getValue().getExpressionBody();
- gwtMsg.to = bpmMsg.getProperty("To").getValue().getExpressionBody();
- gwtMsg.date = bpmMsg.getProperty("Date").getValue().getExpressionBody();
- gwtMsg.seats = bpmMsg.getProperty("Seats").getValue().getExpressionBody();
- gwtMsg.price = bpmMsg.getProperty("Price").getValue().getExpressionBody();
+ gwtMsg.name = bpmMsg.getPropertyValue("Name");
+ gwtMsg.from = bpmMsg.getPropertyValue("From");
+ gwtMsg.to = bpmMsg.getPropertyValue("To");
+ gwtMsg.date = bpmMsg.getPropertyValue("Date");
+ gwtMsg.seats = bpmMsg.getPropertyValue("Seats");
+ gwtMsg.price = bpmMsg.getPropertyValue("Price");
returnMsg = gwtMsg;
}
else
Modified: jbossbpm/spec/trunk/modules/samples/airticket/server/src/test/java/org/jboss/bpm/samples/airticket/AirticketTest.java
===================================================================
--- jbossbpm/spec/trunk/modules/samples/airticket/server/src/test/java/org/jboss/bpm/samples/airticket/AirticketTest.java 2008-08-02 13:11:12 UTC (rev 1803)
+++ jbossbpm/spec/trunk/modules/samples/airticket/server/src/test/java/org/jboss/bpm/samples/airticket/AirticketTest.java 2008-08-02 15:47:06 UTC (rev 1804)
@@ -92,7 +92,7 @@
Message confirmMessage = msgListener.getConfirmMessage();
assertNotNull("Expected confirm message", confirmMessage);
- String price = confirmMessage.getProperty("Price").getValue().getExpressionBody();
+ String price = confirmMessage.getPropertyValue("Price");
assertEquals("222", price);
}
@@ -111,7 +111,7 @@
Message confirmMessage = msgListener.getConfirmMessage();
assertNotNull("Expected confirm message", confirmMessage);
- String price = confirmMessage.getProperty("Price").getValue().getExpressionBody();
+ String price = confirmMessage.getPropertyValue("Price");
assertEquals("222", price);
}
Modified: jbossbpm/spec/trunk/modules/samples/airticket/server/src/test/java/org/jboss/bpm/samples/airticket/ProcessMarshallerTest.java
===================================================================
--- jbossbpm/spec/trunk/modules/samples/airticket/server/src/test/java/org/jboss/bpm/samples/airticket/ProcessMarshallerTest.java 2008-08-02 13:11:12 UTC (rev 1803)
+++ jbossbpm/spec/trunk/modules/samples/airticket/server/src/test/java/org/jboss/bpm/samples/airticket/ProcessMarshallerTest.java 2008-08-02 15:47:06 UTC (rev 1804)
@@ -79,7 +79,7 @@
DialectHandler dialect = pm.getDialectHandler("urn:bpm.jboss:pdl-0.1");
URL expURL = getResourceURL("samples/airticket/airticket-api10.xml");
- Process proc = dialect.createProcess(expURL);
+ Process proc = dialect.createProcess(expURL, false);
StringWriter strwr = new StringWriter();
dialect.marshallProcess(proc, strwr);
Modified: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/process/ProcessIntegrityTest.java
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/process/ProcessIntegrityTest.java 2008-08-02 13:11:12 UTC (rev 1803)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/process/ProcessIntegrityTest.java 2008-08-02 15:47:06 UTC (rev 1804)
@@ -48,7 +48,7 @@
// Create a Process through the ProcessBuilder
ProcessBuilder builder = ProcessBuilderFactory.newInstance().newProcessBuilder();
Process proc = builder.addProcess(null).addStartEvent().addSequenceFlow("taskA").addTask("taskA").
- addSequenceFlow("end").addEndEvent("end").getProcess();
+ addSequenceFlow("end").addEndEvent("end").getProcess(true);
assertEquals("AnonymousProcess#0", proc.getName());
StartEvent start = proc.getStartEvent();
@@ -68,7 +68,7 @@
{
// Create a Process through the ProcessBuilder
ProcessBuilder builder = ProcessBuilderFactory.newInstance().newProcessBuilder();
- builder.addProcess(null).addTask("taskA").addSequenceFlow("end").addEndEvent("end").getProcess();
+ builder.addProcess(null).addTask("taskA").addSequenceFlow("end").addEndEvent("end").getProcess(true);
fail("InvalidProcessException expected");
}
catch (InvalidProcessException ex)
@@ -84,7 +84,7 @@
// Create a Process through the ProcessBuilder
ProcessBuilder builder = ProcessBuilderFactory.newInstance().newProcessBuilder();
builder.addProcess(null).addStartEvent().addSequenceFlow("taskA").addTask("taskA").addSequenceFlow("end").
- addTask("end").getProcess();
+ addTask("end").getProcess(true);
fail("InvalidProcessException expected");
}
catch (InvalidProcessException ex)
@@ -100,7 +100,7 @@
// Create a Process through the ProcessBuilder
ProcessBuilder builder = ProcessBuilderFactory.newInstance().newProcessBuilder();
builder.addProcess(null).addStartEvent().addSequenceFlow("taskA").addTask("taskA").addSequenceFlow("end").
- addTask("taskA").addSequenceFlow("end").addEndEvent("end").getProcess();
+ addTask("taskA").addSequenceFlow("end").addEndEvent("end").getProcess(true);
fail("InvalidProcessException expected");
}
catch (InvalidProcessException ex)
Modified: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/process/ProcessStartTest.java
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/process/ProcessStartTest.java 2008-08-02 13:11:12 UTC (rev 1803)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/process/ProcessStartTest.java 2008-08-02 15:47:06 UTC (rev 1804)
@@ -66,7 +66,7 @@
{
ProcessBuilder builder = ProcessBuilderFactory.newInstance().newProcessBuilder();
Process proc = builder.addProcess(getName()).addStartEvent().addSequenceFlow("taskA").
- addTask("taskA").addSequenceFlow("end").addEndEvent("end").getProcess();
+ addTask("taskA").addSequenceFlow("end").addEndEvent("end").getProcess(true);
return proc;
}
}
Modified: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/processmanager/ProcessRegistryTest.java
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/processmanager/ProcessRegistryTest.java 2008-08-02 13:11:12 UTC (rev 1803)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/processmanager/ProcessRegistryTest.java 2008-08-02 15:47:06 UTC (rev 1804)
@@ -76,7 +76,7 @@
{
ProcessBuilder builder = ProcessBuilderFactory.newInstance().newProcessBuilder();
Process proc = builder.addProcess(getName()).addStartEvent().addSequenceFlow("taskA").
- addTask("taskA").addSequenceFlow("end").addEndEvent("end").getProcess();
+ addTask("taskA").addSequenceFlow("end").addEndEvent("end").getProcess(true);
return proc;
}
}
Modified: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/task/TaskMessageTest.java
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/task/TaskMessageTest.java 2008-08-02 13:11:12 UTC (rev 1803)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/cts/task/TaskMessageTest.java 2008-08-02 15:47:06 UTC (rev 1804)
@@ -44,7 +44,7 @@
procBuilder.addTask("A", TaskType.Receive).addSequenceFlow("End").addEndEvent("End");
try
{
- procBuilder.getProcess();
+ procBuilder.getProcess(true);
fail("A Message for the MessageRef attribute MUST be entered");
}
catch (InvalidProcessException ex)
@@ -60,7 +60,7 @@
procBuilder.addTask("A", TaskType.Send).addSequenceFlow("End").addEndEvent("End");
try
{
- procBuilder.getProcess();
+ procBuilder.getProcess(true);
fail("A Message for the MessageRef attribute MUST be entered");
}
catch (InvalidProcessException ex)
Modified: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/samples/parallelsplit/ParallelSplitTest.java
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/samples/parallelsplit/ParallelSplitTest.java 2008-08-02 13:11:12 UTC (rev 1803)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/samples/parallelsplit/ParallelSplitTest.java 2008-08-02 15:47:06 UTC (rev 1804)
@@ -73,7 +73,7 @@
// Create a Process through the ProcessBuilder
ProcessBuilder procBuilder = ProcessBuilderFactory.newInstance().newProcessBuilder();
Process proc = procBuilder.addProcess(getName()).addStartEvent().addSequenceFlow("gateway").addGateway("gateway", GatewayType.Parallel).
- addSequenceFlow("endA").addSequenceFlow("endB").addEndEvent("endA").addEndEvent("endB").getProcess();
+ addSequenceFlow("endA").addSequenceFlow("endB").addEndEvent("endA").addEndEvent("endB").getProcess(true);
runProcess(proc);
}
Modified: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/samples/sequence/BasicSequenceTest.java
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/samples/sequence/BasicSequenceTest.java 2008-08-02 13:11:12 UTC (rev 1803)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/samples/sequence/BasicSequenceTest.java 2008-08-02 15:47:06 UTC (rev 1804)
@@ -73,7 +73,7 @@
// Create a Process through the ProcessBuilder
ProcessBuilder procBuilder = ProcessBuilderFactory.newInstance().newProcessBuilder();
Process proc = procBuilder.addProcess(getName()).addStartEvent().addSequenceFlow("stateA").addTask("stateA").
- addSequenceFlow("end").addEndEvent("end").getProcess();
+ addSequenceFlow("end").addEndEvent("end").getProcess(true);
runProcess(proc);
}
Modified: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/samples/task/BasicTaskTest.java
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/samples/task/BasicTaskTest.java 2008-08-02 13:11:12 UTC (rev 1803)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/samples/task/BasicTaskTest.java 2008-08-02 15:47:06 UTC (rev 1804)
@@ -73,7 +73,7 @@
// Create a Process through the ProcessBuilder
ProcessBuilder procBuilder = ProcessBuilderFactory.newInstance().newProcessBuilder();
Process proc = procBuilder.addProcess(getName()).addStartEvent().addSequenceFlow("stateA").addTask("stateA").
- addExecutionHandler(TaskA.class).addSequenceFlow("end").addEndEvent("end").getProcess();
+ addExecutionHandler(TaskA.class).addSequenceFlow("end").addEndEvent("end").getProcess(true);
runProcess(proc);
}
More information about the jbpm-commits
mailing list