[jbpm-commits] JBoss JBPM SVN: r1583 - in api/trunk: modules/api and 3 other directories.
do-not-reply at jboss.org
do-not-reply at jboss.org
Fri Jul 11 09:11:03 EDT 2008
Author: thomas.diesler at jboss.com
Date: 2008-07-11 09:11:03 -0400 (Fri, 11 Jul 2008)
New Revision: 1583
Modified:
api/trunk/docs/VioletUML/APIModel.class.violet
api/trunk/docs/VioletUML/APIModel.png
api/trunk/modules/api/pom.xml
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/AbstractFlowObject.java
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/AbstractItermediateEvent.java
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/EndEvent.java
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/Flow.java
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/FlowObject.java
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/ItermediateEvent.java
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/MultipleInFlowSupport.java
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/Process.java
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/SingleInFlowSupport.java
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/StartEvent.java
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/SubProcess.java
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/Task.java
api/trunk/modules/api/src/test/java/org/jboss/bpm/model/ProcessMarshallerTest.java
api/trunk/modules/testsuite/src/test/java/org/jboss/bpm/model/ProcessTest.java
Log:
Initialize FlowObject
Modified: api/trunk/docs/VioletUML/APIModel.class.violet
===================================================================
--- api/trunk/docs/VioletUML/APIModel.class.violet 2008-07-11 11:23:42 UTC (rev 1582)
+++ api/trunk/docs/VioletUML/APIModel.class.violet 2008-07-11 13:11:03 UTC (rev 1583)
@@ -89,6 +89,11 @@
</void>
<void method="addNode">
<object id="ClassNode5" class="com.horstmann.violet.ClassNode">
+ <void property="attributes">
+ <void property="text">
+ <string>outFlow</string>
+ </void>
+ </void>
<void property="name">
<void property="text">
<string>StartEvent</string>
@@ -97,8 +102,8 @@
</object>
<object class="java.awt.geom.Point2D$Double">
<void method="setLocation">
- <double>33.0</double>
- <double>209.0</double>
+ <double>32.0</double>
+ <double>224.0</double>
</void>
</object>
</void>
@@ -106,7 +111,9 @@
<object id="ClassNode6" class="com.horstmann.violet.ClassNode">
<void property="attributes">
<void property="text">
- <string>name</string>
+ <string>name
+inFlows
+outFlows</string>
</void>
</void>
<void property="name">
@@ -117,8 +124,8 @@
</object>
<object class="java.awt.geom.Point2D$Double">
<void method="setLocation">
- <double>9.0</double>
- <double>134.0</double>
+ <double>12.0</double>
+ <double>101.0</double>
</void>
</object>
</void>
@@ -126,7 +133,8 @@
<object id="ClassNode7" class="com.horstmann.violet.ClassNode">
<void property="attributes">
<void property="text">
- <string>name</string>
+ <string>name
+inFlow</string>
</void>
</void>
<void property="name">
@@ -137,8 +145,8 @@
</object>
<object class="java.awt.geom.Point2D$Double">
<void method="setLocation">
- <double>27.0</double>
- <double>302.0</double>
+ <double>26.0</double>
+ <double>317.0</double>
</void>
</object>
</void>
@@ -166,7 +174,9 @@
<object id="ClassNode9" class="com.horstmann.violet.ClassNode">
<void property="attributes">
<void property="text">
- <string>name</string>
+ <string>name
+inFlows
+outFlows</string>
</void>
</void>
<void property="name">
@@ -187,7 +197,9 @@
<object id="ClassNode10" class="com.horstmann.violet.ClassNode">
<void property="attributes">
<void property="text">
- <string>parent</string>
+ <string>parent
+inFlow
+outFlow</string>
</void>
</void>
<void property="name">
@@ -199,13 +211,19 @@
</object>
<object class="java.awt.geom.Point2D$Double">
<void method="setLocation">
- <double>269.0</double>
- <double>342.0</double>
+ <double>271.0</double>
+ <double>356.0</double>
</void>
</object>
</void>
<void method="addNode">
<object id="ClassNode11" class="com.horstmann.violet.ClassNode">
+ <void property="attributes">
+ <void property="text">
+ <string>inFlow
+outFlow</string>
+ </void>
+ </void>
<void property="name">
<void property="text">
<string>Task</string>
@@ -309,8 +327,8 @@
</object>
<object class="java.awt.geom.Point2D$Double">
<void method="setLocation">
- <double>28.0</double>
- <double>396.0</double>
+ <double>25.0</double>
+ <double>421.0</double>
</void>
</object>
</void>
@@ -324,8 +342,8 @@
</object>
<object class="java.awt.geom.Point2D$Double">
<void method="setLocation">
- <double>29.0</double>
- <double>490.0</double>
+ <double>33.0</double>
+ <double>495.0</double>
</void>
</object>
</void>
Modified: api/trunk/docs/VioletUML/APIModel.png
===================================================================
(Binary files differ)
Modified: api/trunk/modules/api/pom.xml
===================================================================
--- api/trunk/modules/api/pom.xml 2008-07-11 11:23:42 UTC (rev 1582)
+++ api/trunk/modules/api/pom.xml 2008-07-11 13:11:03 UTC (rev 1583)
@@ -89,6 +89,7 @@
<include>AbstractFlow.java</include>
<include>AbstractFlowObject.java</include>
<include>AbstractGateway.java</include>
+ <include>AbstractItermediateEvent.java</include>
<include>AbstractProcess.java</include>
<include>AbstractStartEvent.java</include>
<include>AbstractSubProcess.java</include>
Modified: api/trunk/modules/api/src/main/java/org/jboss/bpm/model/AbstractFlowObject.java
===================================================================
--- api/trunk/modules/api/src/main/java/org/jboss/bpm/model/AbstractFlowObject.java 2008-07-11 11:23:42 UTC (rev 1582)
+++ api/trunk/modules/api/src/main/java/org/jboss/bpm/model/AbstractFlowObject.java 2008-07-11 13:11:03 UTC (rev 1583)
@@ -23,6 +23,7 @@
//$Id$
+import javax.xml.bind.annotation.XmlTransient;
import javax.xml.bind.annotation.XmlType;
/**
@@ -34,4 +35,16 @@
@XmlType(name = "AbstractFlowObject")
abstract class AbstractFlowObject
{
+ @XmlTransient
+ private Process process;
+
+ public Process getProcess()
+ {
+ return process;
+ }
+
+ public void setProcess(Process process)
+ {
+ this.process = process;
+ }
}
\ No newline at end of file
Modified: api/trunk/modules/api/src/main/java/org/jboss/bpm/model/AbstractItermediateEvent.java
===================================================================
--- api/trunk/modules/api/src/main/java/org/jboss/bpm/model/AbstractItermediateEvent.java 2008-07-11 11:23:42 UTC (rev 1582)
+++ api/trunk/modules/api/src/main/java/org/jboss/bpm/model/AbstractItermediateEvent.java 2008-07-11 13:11:03 UTC (rev 1583)
@@ -43,7 +43,7 @@
* @since 08-Jul-2008
*/
@XmlType(name="AbstractItermediateEvent")
-abstract class AbstractItermediateEvent extends Event implements MultipleOutFlowSupport, MultipleInFlowSupport
+abstract class AbstractItermediateEvent extends Event implements MultipleOutFlowSupport, MultipleInFlowSupport, NamedFlowObject
{
private String name;
@@ -51,6 +51,7 @@
@XmlElement(name = "sequence", type = SequenceFlow.class),
@XmlElement(name = "message", type = MessageFlow.class)
})
+
protected List<Flow> outFlows = new ArrayList<Flow>();
/**
* Construct an anonymous StartEvent.
Modified: api/trunk/modules/api/src/main/java/org/jboss/bpm/model/EndEvent.java
===================================================================
--- api/trunk/modules/api/src/main/java/org/jboss/bpm/model/EndEvent.java 2008-07-11 11:23:42 UTC (rev 1582)
+++ api/trunk/modules/api/src/main/java/org/jboss/bpm/model/EndEvent.java 2008-07-11 13:11:03 UTC (rev 1583)
@@ -40,9 +40,10 @@
* @since 08-Jul-2008
*/
@XmlType(name="EndEvent")
-public class EndEvent extends AbstractEndEvent implements NamedFlowObject
+public class EndEvent extends AbstractEndEvent implements NamedFlowObject, SingleInFlowSupport
{
private Result result;
+ private Flow inFlow;
/**
* Construct an anonymous StartEvent.
@@ -61,6 +62,23 @@
super(name);
}
+ /**
+ * Get the out flow
+ */
+ public Flow getInFlow()
+ {
+ return inFlow;
+ }
+
+ /**
+ * Set the in flow
+ */
+ @XmlTransient
+ public void setInFlow(Flow inFlow)
+ {
+ this.inFlow = inFlow;
+ }
+
/**
* Get the result
*/
Modified: api/trunk/modules/api/src/main/java/org/jboss/bpm/model/Flow.java
===================================================================
--- api/trunk/modules/api/src/main/java/org/jboss/bpm/model/Flow.java 2008-07-11 11:23:42 UTC (rev 1582)
+++ api/trunk/modules/api/src/main/java/org/jboss/bpm/model/Flow.java 2008-07-11 13:11:03 UTC (rev 1583)
@@ -42,6 +42,7 @@
public abstract class Flow extends AbstractFlow
{
private FlowObject source;
+ private FlowObject target;
/**
* Construct a flow with no target
@@ -77,4 +78,22 @@
{
this.source = source;
}
+
+ /**
+ * Get the target flow object
+ */
+ public FlowObject getTarget()
+ {
+ return target;
+ }
+
+ /**
+ * Set the target flow object
+ * Note, this MUST NOT leak into the public API.
+ */
+ @XmlTransient
+ public void setTarget(FlowObject target)
+ {
+ this.target = target;
+ }
}
\ No newline at end of file
Modified: api/trunk/modules/api/src/main/java/org/jboss/bpm/model/FlowObject.java
===================================================================
--- api/trunk/modules/api/src/main/java/org/jboss/bpm/model/FlowObject.java 2008-07-11 11:23:42 UTC (rev 1582)
+++ api/trunk/modules/api/src/main/java/org/jboss/bpm/model/FlowObject.java 2008-07-11 13:11:03 UTC (rev 1583)
@@ -24,6 +24,7 @@
import javax.xml.bind.annotation.XmlTransient;
import javax.xml.bind.annotation.XmlType;
+import org.jboss.bpm.InvalidProcessException;
import org.jboss.bpm.client.SignalManager;
import org.jboss.bpm.runtime.Token;
@@ -39,8 +40,6 @@
public abstract class FlowObject extends AbstractFlowObject
{
@XmlTransient
- private Process process;
- @XmlTransient
private Object implObject;
/**
@@ -51,12 +50,84 @@
{
}
+ /**
+ * Initialize the flow object
+ */
+ protected void initialize(Process proc)
+ {
+ setProcess(proc);
+
+ Flow outFlow = null;
+ if (this instanceof SingleOutFlowSupport)
+ {
+ SingleOutFlowSupport sof = (SingleOutFlowSupport)this;
+ outFlow = sof.getOutFlow();
+ initFlow(proc, outFlow);
+ }
+ else if (this instanceof MultipleOutFlowSupport)
+ {
+ MultipleOutFlowSupport mof = (MultipleOutFlowSupport)this;
+ for (Flow flow : mof.getOutFlows())
+ {
+ outFlow = flow;
+ initFlow(proc, flow);
+ }
+ }
+
+ Flow inFlow = null;
+ if (this instanceof SingleInFlowSupport)
+ {
+ SingleInFlowSupport sif = (SingleInFlowSupport)this;
+ inFlow = sif.getInFlow();
+ }
+ else if (this instanceof MultipleInFlowSupport)
+ {
+ MultipleInFlowSupport mif = (MultipleInFlowSupport)this;
+ for (Flow flow : mif.getInFlows())
+ {
+ inFlow = flow;
+ }
+ }
+
+ //if (inFlow == null && outFlow == null)
+ // throw new InvalidProcessException("Unconnected flow object: " + this);
+ }
+
+ private void initFlow(Process proc, Flow flow)
+ {
+ if (flow != null)
+ {
+ String name = flow.getTargetName();
+ FlowObject target = proc.findFlowObject(name);
+ if (target == null)
+ throw new InvalidProcessException("Cannot find target for out flow: " + name);
+
+ if (target instanceof SingleInFlowSupport)
+ {
+ SingleInFlowSupport sif = (SingleInFlowSupport)target;
+ sif.setInFlow(flow);
+ }
+ else if (target instanceof MultipleInFlowSupport)
+ {
+ MultipleInFlowSupport mif = (MultipleInFlowSupport)target;
+ mif.addInFlow(flow);
+ }
+ else
+ {
+ throw new InvalidProcessException("Target does not support in flow: " + target);
+ }
+
+ flow.setSource(this);
+ flow.setTarget(target);
+ }
+ }
+
/**
* Get the associated Process
*/
public Process getProcess()
{
- return process;
+ return super.getProcess();
}
/**
@@ -72,20 +143,6 @@
public abstract Signal getExitSignal();
/**
- * Set the associated process
- * Note, this MUST NOT leak into the public API.
- */
- @XmlTransient
- // TODO
- public void setProcess(Process process)
- {
- if (this.process != null && this.process != process)
- throw new IllegalStateException("Cannot reassign task to process");
-
- this.process = process;
- }
-
- /**
* Set the associated implementation object
* Note, this MUST NOT leak into the public API.
*/
Modified: api/trunk/modules/api/src/main/java/org/jboss/bpm/model/ItermediateEvent.java
===================================================================
--- api/trunk/modules/api/src/main/java/org/jboss/bpm/model/ItermediateEvent.java 2008-07-11 11:23:42 UTC (rev 1582)
+++ api/trunk/modules/api/src/main/java/org/jboss/bpm/model/ItermediateEvent.java 2008-07-11 13:11:03 UTC (rev 1583)
@@ -78,4 +78,9 @@
{
this.inFlows.add(inFlow);
}
+
+ public String toString()
+ {
+ return "ItermediateEvent[" + getName() + "]";
+ }
}
\ No newline at end of file
Modified: api/trunk/modules/api/src/main/java/org/jboss/bpm/model/MultipleInFlowSupport.java
===================================================================
--- api/trunk/modules/api/src/main/java/org/jboss/bpm/model/MultipleInFlowSupport.java 2008-07-11 11:23:42 UTC (rev 1582)
+++ api/trunk/modules/api/src/main/java/org/jboss/bpm/model/MultipleInFlowSupport.java 2008-07-11 13:11:03 UTC (rev 1583)
@@ -35,5 +35,5 @@
/**
* Add an out flow
*/
- void addOutFlow(Flow flow);
+ void addInFlow(Flow flow);
}
Modified: api/trunk/modules/api/src/main/java/org/jboss/bpm/model/Process.java
===================================================================
--- api/trunk/modules/api/src/main/java/org/jboss/bpm/model/Process.java 2008-07-11 11:23:42 UTC (rev 1582)
+++ api/trunk/modules/api/src/main/java/org/jboss/bpm/model/Process.java 2008-07-11 13:11:03 UTC (rev 1583)
@@ -21,7 +21,7 @@
*/
package org.jboss.bpm.model;
-//$Id$
+//$Id: Process.java 1581 2008-07-10 19:41:52Z thomas.diesler at jboss.com $
import java.util.ArrayList;
import java.util.Collections;
@@ -97,9 +97,8 @@
if (flowObject instanceof NamedFlowObject)
{
NamedFlowObject nfo = (NamedFlowObject)flowObject;
- String name = nfo.getName();
- if (name != null && findFlowObject(name) != null)
- throw new NameNotUniqueException("NamedFlowObject: " + name);
+ if (findFlowObject(nfo.getName()) != null)
+ throw new NameNotUniqueException("NamedFlowObject: " + nfo.getName());
}
flowObjects.add(flowObject);
@@ -171,18 +170,22 @@
*
* @return null if not found
*/
- public NamedFlowObject findFlowObject(String name)
+ public FlowObject findFlowObject(String name)
{
if (name == null)
throw new IllegalArgumentException("Cannot find flow object with name: null");
- NamedFlowObject nfo = null;
+ FlowObject nfo = null;
for (FlowObject aux : flowObjects)
{
- if (aux instanceof NamedFlowObject && name.equals(((NamedFlowObject)aux).getName()))
+ if (aux instanceof NamedFlowObject)
{
- nfo = (NamedFlowObject)aux;
- break;
+ NamedFlowObject auxnfo = (NamedFlowObject)aux;
+ if (auxnfo.getName().equals(name))
+ {
+ nfo = aux;
+ break;
+ }
}
}
return nfo;
@@ -230,7 +233,7 @@
// Set the associated process
for (FlowObject aux : flowObjects)
- aux.setProcess(this);
+ aux.initialize(this);
processState = ProcessState.INITIALIZED;
}
Modified: api/trunk/modules/api/src/main/java/org/jboss/bpm/model/SingleInFlowSupport.java
===================================================================
--- api/trunk/modules/api/src/main/java/org/jboss/bpm/model/SingleInFlowSupport.java 2008-07-11 11:23:42 UTC (rev 1582)
+++ api/trunk/modules/api/src/main/java/org/jboss/bpm/model/SingleInFlowSupport.java 2008-07-11 13:11:03 UTC (rev 1583)
@@ -33,5 +33,5 @@
/**
* Set the in flow
*/
- void setOutFlow(Flow flow);
+ void setInFlow(Flow flow);
}
Modified: api/trunk/modules/api/src/main/java/org/jboss/bpm/model/StartEvent.java
===================================================================
--- api/trunk/modules/api/src/main/java/org/jboss/bpm/model/StartEvent.java 2008-07-11 11:23:42 UTC (rev 1582)
+++ api/trunk/modules/api/src/main/java/org/jboss/bpm/model/StartEvent.java 2008-07-11 13:11:03 UTC (rev 1583)
@@ -35,7 +35,7 @@
* @since 08-Jul-2008
*/
@XmlType(name = "StartEvent")
-public class StartEvent extends AbstractStartEvent implements SingleOutFlowSupport
+public class StartEvent extends AbstractStartEvent
{
/**
* Construct a StartEvent with a constant name: 'start'
Modified: api/trunk/modules/api/src/main/java/org/jboss/bpm/model/SubProcess.java
===================================================================
--- api/trunk/modules/api/src/main/java/org/jboss/bpm/model/SubProcess.java 2008-07-11 11:23:42 UTC (rev 1582)
+++ api/trunk/modules/api/src/main/java/org/jboss/bpm/model/SubProcess.java 2008-07-11 13:11:03 UTC (rev 1583)
@@ -33,10 +33,9 @@
* @since 08-Jul-2008
*/
@XmlType(name="SubProcess")
-public class SubProcess extends AbstractSubProcess
+public class SubProcess extends AbstractSubProcess implements SingleInFlowSupport
{
- @XmlTransient
- private Process parentProcess;
+ private Flow inFlow;
/**
* Construct an anonymous process
@@ -55,9 +54,25 @@
super(name);
}
- /** Get the parent process */
- public Process getParentProcess()
+ /**
+ * Get the out flow
+ */
+ public Flow getInFlow()
{
- return parentProcess;
+ return inFlow;
}
+
+ /**
+ * Set the in flow
+ */
+ @XmlTransient
+ public void setInFlow(Flow inFlow)
+ {
+ this.inFlow = inFlow;
+ }
+
+ public String toString()
+ {
+ return "SubProcess[" + getName() + "]";
+ }
}
\ No newline at end of file
Modified: api/trunk/modules/api/src/main/java/org/jboss/bpm/model/Task.java
===================================================================
--- api/trunk/modules/api/src/main/java/org/jboss/bpm/model/Task.java 2008-07-11 11:23:42 UTC (rev 1582)
+++ api/trunk/modules/api/src/main/java/org/jboss/bpm/model/Task.java 2008-07-11 13:11:03 UTC (rev 1583)
@@ -21,6 +21,7 @@
*/
package org.jboss.bpm.model;
+import javax.xml.bind.annotation.XmlTransient;
import javax.xml.bind.annotation.XmlType;
//$Id$
@@ -35,8 +36,10 @@
* @since 08-Jul-2008
*/
@XmlType(name = "Task")
-public class Task extends AbstractTask implements SingleOutFlowSupport
+public class Task extends AbstractTask implements SingleInFlowSupport
{
+ private Flow inFlow;
+
/**
* Construct an anonymous Task
* Note, this MUST NOT leak into the public API.
@@ -54,6 +57,23 @@
super(name);
}
+ /**
+ * Get the out flow
+ */
+ public Flow getInFlow()
+ {
+ return inFlow;
+ }
+
+ /**
+ * Set the in flow
+ */
+ @XmlTransient
+ public void setInFlow(Flow inFlow)
+ {
+ this.inFlow = inFlow;
+ }
+
/** Get signal for enter */
public Signal getEnterSignal()
{
Modified: api/trunk/modules/api/src/test/java/org/jboss/bpm/model/ProcessMarshallerTest.java
===================================================================
--- api/trunk/modules/api/src/test/java/org/jboss/bpm/model/ProcessMarshallerTest.java 2008-07-11 11:23:42 UTC (rev 1582)
+++ api/trunk/modules/api/src/test/java/org/jboss/bpm/model/ProcessMarshallerTest.java 2008-07-11 13:11:03 UTC (rev 1583)
@@ -41,7 +41,7 @@
{
public void testProcess() throws Exception
{
- Process inProc = new ProcessBuilder("myproc").addStartEvent().addSequenceFlow("task").addTask("taskA").
+ Process inProc = new ProcessBuilder("myproc").addStartEvent().addSequenceFlow("task").addTask("task").
addSequenceFlow("split").addParallelGateway("split").addSequenceFlow("subproc").addSequenceFlow("event").
addSubProcess("subproc").addSequenceFlow("join").addItermediateEvent("event").addSequenceFlow("join").
addParallelGateway("join").addSequenceFlow("end").addEndEvent("end").getProcess();
@@ -56,16 +56,87 @@
ProcessUnmarshaller unmarshaller = new ProcessUnmarshaller();
Process outProc = unmarshaller.unmarshallProcess(new StringReader(xml));
StartEvent start = outProc.getStartEvent();
- Task taskA = (Task)outProc.findFlowObject("taskA");
- EndEvent end = outProc.getEndEvents().get(0);
+ Task task = (Task)outProc.findFlowObject("task");
+ ParallelGateway split = (ParallelGateway)outProc.findFlowObject("split");
+ ParallelGateway join = (ParallelGateway)outProc.findFlowObject("join");
+ ItermediateEvent event = (ItermediateEvent)outProc.findFlowObject("event");
+ SubProcess subproc = (SubProcess)outProc.findFlowObject("subproc");
+ EndEvent end = (EndEvent)outProc.findFlowObject("end");
+
+ assertEquals(inProc.getName(), outProc.getName());
+ assertEquals(1, outProc.getEndEvents().size());
- assertEquals(inProc.getName(), outProc.getName());
assertNotNull(start);
+ assertNotNull(task);
+ assertNotNull(event);
+ assertNotNull(join);
+ assertNotNull(split);
+ assertNotNull(subproc);
+ assertNotNull(end);
+
assertEquals(outProc, start.getProcess());
- assertNotNull(taskA);
- assertEquals(outProc, taskA.getProcess());
- assertEquals(1, outProc.getEndEvents().size());
- assertNotNull(end);
+ assertEquals(outProc, task.getProcess());
+ assertEquals(outProc, event.getProcess());
+ assertEquals(outProc, join.getProcess());
+ assertEquals(outProc, split.getProcess());
+ assertEquals(outProc, subproc.getProcess());
assertEquals(outProc, end.getProcess());
+
+ Flow of1 = start.getOutFlow();
+ Flow of2 = task.getOutFlow();
+ Flow of3 = split.getOutFlows().get(0);
+ Flow of4 = split.getOutFlows().get(1);
+ Flow of5 = subproc.getOutFlow();
+ Flow of6 = event.getOutFlows().get(0);
+ Flow of7 = join.getOutFlows().get(0);
+
+ assertNotNull(of1);
+ assertNotNull(of2);
+ assertNotNull(of3);
+ assertNotNull(of4);
+ assertNotNull(of5);
+ assertNotNull(of6);
+ assertNotNull(of7);
+
+ assertEquals(2, split.getOutFlows().size());
+ assertEquals(1, event.getOutFlows().size());
+ assertEquals(1, join.getOutFlows().size());
+
+ Flow if1 = task.getInFlow();
+ Flow if2 = split.getInFlows().get(0);
+ Flow if3 = subproc.getInFlow();
+ Flow if4 = event.getInFlows().get(0);
+ Flow if5 = join.getInFlows().get(0);
+ Flow if6 = join.getInFlows().get(1);
+ Flow if7 = end.getInFlow();
+
+ assertEquals(of1, if1);
+ assertEquals(of2, if2);
+ assertEquals(of3, if3);
+ assertEquals(of4, if4);
+ assertEquals(of5, if5);
+ assertEquals(of6, if6);
+ assertEquals(of7, if7);
+
+ assertEquals(start, of1.getSource());
+ assertEquals(task, of1.getTarget());
+
+ assertEquals(task, of2.getSource());
+ assertEquals(split, of2.getTarget());
+
+ assertEquals(split, of3.getSource());
+ assertEquals(subproc, of3.getTarget());
+
+ assertEquals(split, of4.getSource());
+ assertEquals(event, of4.getTarget());
+
+ assertEquals(subproc, of5.getSource());
+ assertEquals(join, of5.getTarget());
+
+ assertEquals(event, of6.getSource());
+ assertEquals(join, of6.getTarget());
+
+ assertEquals(join, of7.getSource());
+ assertEquals(end, of7.getTarget());
}
}
Modified: api/trunk/modules/testsuite/src/test/java/org/jboss/bpm/model/ProcessTest.java
===================================================================
--- api/trunk/modules/testsuite/src/test/java/org/jboss/bpm/model/ProcessTest.java 2008-07-11 11:23:42 UTC (rev 1582)
+++ api/trunk/modules/testsuite/src/test/java/org/jboss/bpm/model/ProcessTest.java 2008-07-11 13:11:03 UTC (rev 1583)
@@ -52,7 +52,7 @@
StartEvent start = proc.getStartEvent();
assertNotNull("Start expected", start);
- NamedFlowObject nfo = proc.findFlowObject("stateA");
+ FlowObject nfo = proc.findFlowObject("stateA");
assertNotNull("FlowObject expected", nfo);
assertTrue("Task expected", nfo instanceof Task);
More information about the jbpm-commits
mailing list