[jbpm-commits] JBoss JBPM SVN: r1734 - in jbossbpm/spec/trunk: modules/dialects/stp and 11 other directories.
do-not-reply at jboss.org
do-not-reply at jboss.org
Sun Jul 27 04:13:59 EDT 2008
Author: thomas.diesler at jboss.com
Date: 2008-07-27 04:13:58 -0400 (Sun, 27 Jul 2008)
New Revision: 1734
Added:
jbossbpm/spec/trunk/modules/ri/src/test/
jbossbpm/spec/trunk/modules/ri/src/test/java/
jbossbpm/spec/trunk/modules/ri/src/test/java/org/
jbossbpm/spec/trunk/modules/ri/src/test/java/org/jboss/
jbossbpm/spec/trunk/modules/ri/src/test/java/org/jboss/bpm/
jbossbpm/spec/trunk/modules/ri/src/test/java/org/jboss/bpm/expression/
jbossbpm/spec/trunk/modules/ri/src/test/java/org/jboss/bpm/expression/MvelExpressionTest.java
Modified:
jbossbpm/spec/trunk/.classpath
jbossbpm/spec/trunk/modules/dialects/stp/pom.xml
jbossbpm/spec/trunk/modules/ri/pom.xml
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/BPMNElementImpl.java
jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/EventImpl.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/GatewayImpl.java
jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/GraphicalElementImpl.java
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/SendTaskImpl.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
jbossbpm/spec/trunk/modules/testsuite/pom.xml
jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/samples/airticket/AirticketTest.java
jbossbpm/spec/trunk/pom.xml
Log:
Add MVEL
Modified: jbossbpm/spec/trunk/.classpath
===================================================================
--- jbossbpm/spec/trunk/.classpath 2008-07-26 09:43:04 UTC (rev 1733)
+++ jbossbpm/spec/trunk/.classpath 2008-07-27 08:13:58 UTC (rev 1734)
@@ -1,6 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" output="modules/api/target/classes" path="modules/api/src/main/java"/>
+ <classpathentry kind="src" path="modules/ri/src/test/java"/>
<classpathentry kind="src" path="modules/ri/src/main/java"/>
<classpathentry kind="src" output="modules/testsuite/target/test-classes" path="modules/testsuite/src/test/java"/>
<classpathentry kind="src" path="modules/dialects/api10/src/main/java"/>
Modified: jbossbpm/spec/trunk/modules/dialects/stp/pom.xml
===================================================================
--- jbossbpm/spec/trunk/modules/dialects/stp/pom.xml 2008-07-26 09:43:04 UTC (rev 1733)
+++ jbossbpm/spec/trunk/modules/dialects/stp/pom.xml 2008-07-27 08:13:58 UTC (rev 1734)
@@ -37,18 +37,6 @@
<artifactId>jaxb-impl</artifactId>
</dependency>
- <!-- Test Dependencies -->
- <dependency>
- <groupId>junit</groupId>
- <artifactId>junit</artifactId>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>log4j</groupId>
- <artifactId>log4j</artifactId>
- <scope>test</scope>
- </dependency>
-
<!-- Runtime Dependencies -->
<dependency>
<groupId>org.jboss.bpm</groupId>
Modified: jbossbpm/spec/trunk/modules/ri/pom.xml
===================================================================
--- jbossbpm/spec/trunk/modules/ri/pom.xml 2008-07-26 09:43:04 UTC (rev 1733)
+++ jbossbpm/spec/trunk/modules/ri/pom.xml 2008-07-27 08:13:58 UTC (rev 1734)
@@ -9,8 +9,10 @@
<!-- -->
<!-- ====================================================================== -->
-<!-- $Id$ -->
-<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">
+<!-- $Id$
+-->
+<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>
<name>JBossBPM - Spec RI</name>
<groupId>org.jboss.bpm</groupId>
@@ -33,6 +35,9 @@
<version>${version}</version>
<scope>compile</scope>
</dependency>
+ <dependency>
+ <groupId>org.mvel</groupId>
+ <artifactId>mvel</artifactId>
+ </dependency>
</dependencies>
-
</project>
\ No newline at end of file
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-07-26 09:43:04 UTC (rev 1733)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/ActivityImpl.java 2008-07-27 08:13:58 UTC (rev 1734)
@@ -27,14 +27,22 @@
import java.util.Collections;
import java.util.List;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
import org.jboss.bpm.InvalidProcessException;
import org.jboss.bpm.NotImplementedException;
import org.jboss.bpm.model.Activity;
import org.jboss.bpm.model.Expression;
+import org.jboss.bpm.model.Flow;
import org.jboss.bpm.model.InputSet;
import org.jboss.bpm.model.OutputSet;
import org.jboss.bpm.model.Process;
import org.jboss.bpm.model.Property;
+import org.jboss.bpm.runtime.ExecutionHandler;
+import org.jboss.bpm.runtime.FlowHandler;
+import org.jboss.bpm.runtime.FlowScheduler;
+import org.jboss.bpm.runtime.Token;
+import org.jboss.bpm.runtime.FlowScheduler.Tuple;
/**
* An activity is a generic term for work that a company or organization performs via business processes. An activity
@@ -44,13 +52,19 @@
* @author thomas.diesler at jboss.com
* @since 08-Jul-2008
*/
-public abstract class ActivityImpl extends FlowObjectImpl implements Activity, MutablePropertySupport
+public abstract class ActivityImpl extends FlowObjectImpl implements Activity, MutablePropertySupport,
+ SingleInFlowSetterSupport, SingleOutFlowSetterSupport
{
+ // provide logging
+ private static final Log log = LogFactory.getLog(ActivityImpl.class);
+
private String name;
private List<InputSet> inputSets = new ArrayList<InputSet>();
private List<OutputSet> outputSets = new ArrayList<OutputSet>();
private List<Expression> ioRules = new ArrayList<Expression>();
private List<Property> props = new ArrayList<Property>();
+ private Flow inFlow;
+ private Flow outFlow;
public ActivityImpl(String name)
{
@@ -147,6 +161,59 @@
props.add(prop);
}
+ public Flow getInFlow()
+ {
+ return inFlow;
+ }
+
+ public void setInFlow(Flow inFlow)
+ {
+ this.inFlow = inFlow;
+ }
+
+ public Flow getOutFlow()
+ {
+ return outFlow;
+ }
+
+ public void setOutFlow(Flow flow)
+ {
+ this.outFlow = flow;
+ }
+
+ public ExecutionHandler getExecutionHandler()
+ {
+ ExecutionHandler handler = super.getExecutionHandler();
+ if (handler == null)
+ {
+ handler = new ExecutionHandler()
+ {
+ public void execute(Token token)
+ {
+ log.debug("Nothing to do in task: " + getName());
+ }
+ };
+ }
+ return handler;
+ }
+
+ public FlowHandler getFlowHandler()
+ {
+ FlowHandler handler = super.getFlowHandler();
+ if (handler == null)
+ {
+ handler = new FlowHandler()
+ {
+ public void execute(FlowScheduler scheduler, Token token)
+ {
+ Tuple tuple = new Tuple(outFlow, token);
+ scheduler.scheduleTuple(tuple);
+ }
+ };
+ }
+ return handler;
+ }
+
@Override
protected void initialize(Process proc)
{
@@ -157,19 +224,19 @@
{
int artSize = inSet.getArtifactInputs().size();
int propSize = inSet.getProperties().size();
- if (artSize == 0 && propSize == 0)
+ if (artSize == 0 && propSize == 0)
{
throw new InvalidProcessException(
"For the combination of ArtifactInputs and PropertyInputs, there MUST be at least one item defined for the InputSet");
}
}
-
+
// Validate OutputSets
for (OutputSet outSet : outputSets)
{
int artSize = outSet.getArtifactOutputs().size();
int propSize = outSet.getProperties().size();
- if (artSize == 0 && propSize == 0)
+ if (artSize == 0 && propSize == 0)
{
throw new InvalidProcessException(
"For the combination of ArtifactOutputs and PropertyOututs, there MUST be at least one item defined for the OutputSet");
Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/BPMNElementImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/BPMNElementImpl.java 2008-07-26 09:43:04 UTC (rev 1733)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/BPMNElementImpl.java 2008-07-27 08:13:58 UTC (rev 1734)
@@ -43,6 +43,8 @@
*/
public class BPMNElementImpl implements BPMNElement
{
+ private static final long serialVersionUID = 1L;
+
private ObjectName id;
private Process process;
Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/EventImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/EventImpl.java 2008-07-26 09:43:04 UTC (rev 1733)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/EventImpl.java 2008-07-27 08:13:58 UTC (rev 1734)
@@ -22,9 +22,6 @@
package org.jboss.bpm.model.internal;
import org.jboss.bpm.model.Event;
-import org.jboss.bpm.runtime.ExecutionHandler;
-import org.jboss.bpm.runtime.FlowHandler;
-import org.jboss.bpm.runtime.SignalHandler;
//$Id$
@@ -36,40 +33,7 @@
* @author thomas.diesler at jboss.com
* @since 08-Jul-2008
*/
-public abstract class EventImpl extends FlowObjectImpl implements Event, HandlerSetterSupport
+public abstract class EventImpl extends FlowObjectImpl implements Event
{
- private ExecutionHandler executionHandler;
- private FlowHandler flowHandler;
- private SignalHandler signalHandler;
-
- public ExecutionHandler getExecutionHandler()
- {
- return executionHandler;
- }
- public void setExecutionHandler(ExecutionHandler executionHandler)
- {
- this.executionHandler = executionHandler;
- }
-
- public FlowHandler getFlowHandler()
- {
- return flowHandler;
- }
-
- public void setFlowHandler(FlowHandler flowHandler)
- {
- this.flowHandler = flowHandler;
- }
-
- public SignalHandler getSignalHandler()
- {
- return signalHandler;
- }
-
- public void setSignalHandler(SignalHandler signalHandler)
- {
- this.signalHandler = signalHandler;
- }
-
}
\ No newline at end of file
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-07-26 09:43:04 UTC (rev 1733)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/FlowObjectImpl.java 2008-07-27 08:13:58 UTC (rev 1734)
@@ -33,6 +33,10 @@
import org.jboss.bpm.model.Process;
import org.jboss.bpm.model.SingleInFlowSupport;
import org.jboss.bpm.model.SingleOutFlowSupport;
+import org.jboss.bpm.runtime.ExecutionHandler;
+import org.jboss.bpm.runtime.FlowHandler;
+import org.jboss.bpm.runtime.SignalHandler;
+import org.jboss.bpm.runtime.Token;
//$Id$
@@ -42,8 +46,53 @@
* @author thomas.diesler at jboss.com
* @since 08-Jul-2008
*/
-public abstract class FlowObjectImpl extends GraphicalElementImpl implements FlowObject
+public abstract class FlowObjectImpl extends GraphicalElementImpl implements FlowObject, HandlerSetterSupport
{
+ private static final long serialVersionUID = 1L;
+
+ private ExecutionHandler executionHandler;
+ private FlowHandler flowHandler;
+ private SignalHandler signalHandler;
+
+ public ExecutionHandler getExecutionHandler()
+ {
+ return executionHandler;
+ }
+
+ public void setExecutionHandler(ExecutionHandler executionHandler)
+ {
+ this.executionHandler = executionHandler;
+ }
+
+ public FlowHandler getFlowHandler()
+ {
+ return flowHandler;
+ }
+
+ public void setFlowHandler(FlowHandler flowHandler)
+ {
+ this.flowHandler = flowHandler;
+ }
+
+ public SignalHandler getSignalHandler()
+ {
+ return signalHandler;
+ }
+
+ public void setSignalHandler(SignalHandler signalHandler)
+ {
+ this.signalHandler = signalHandler;
+ }
+
+ public void execute(Token token)
+ {
+ ExecutionHandler handler = getExecutionHandler();
+ if (handler != null)
+ {
+ handler.execute(token);
+ }
+ }
+
@Override
protected void initialize(Process proc)
{
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-07-26 09:43:04 UTC (rev 1733)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/GatewayImpl.java 2008-07-27 08:13:58 UTC (rev 1734)
@@ -49,16 +49,13 @@
* @author thomas.diesler at jboss.com
* @since 08-Jul-2008
*/
-public abstract class GatewayImpl extends FlowObjectImpl implements Gateway, HandlerSetterSupport, MultipleInFlowSetterSupport
+public abstract class GatewayImpl extends FlowObjectImpl implements Gateway, MultipleInFlowSetterSupport
{
// provide logging
private static final Log log = LogFactory.getLog(GatewayImpl.class);
private String name;
protected List<Flow> inFlows = new ArrayList<Flow>();
- private ExecutionHandler executionHandler;
- private FlowHandler flowHandler;
- private SignalHandler signalHandler;
private List<Gate> gates = new ArrayList<Gate>();
public GatewayImpl(String name)
@@ -93,7 +90,7 @@
public ExecutionHandler getExecutionHandler()
{
- ExecutionHandler handler = executionHandler;
+ ExecutionHandler handler = super.getExecutionHandler();
if (handler == null)
{
handler = new ExecutionHandler()
@@ -107,14 +104,9 @@
return handler;
}
- public void setExecutionHandler(ExecutionHandler executionHandler)
- {
- this.executionHandler = executionHandler;
- }
-
public FlowHandler getFlowHandler()
{
- FlowHandler handler = flowHandler;
+ FlowHandler handler = super.getFlowHandler();
if (handler == null && gates.size() == 1)
{
handler = new FlowHandler()
@@ -129,14 +121,9 @@
return handler;
}
- public void setFlowHandler(FlowHandler flowHandler)
- {
- this.flowHandler = flowHandler;
- }
-
public SignalHandler getSignalHandler()
{
- SignalHandler handler = signalHandler;
+ SignalHandler handler = super.getSignalHandler();
if (handler == null)
{
final FlowObject gateway = this;
@@ -155,9 +142,4 @@
}
return handler;
}
-
- public void setSignalHandler(SignalHandler signalHandler)
- {
- this.signalHandler = signalHandler;
- }
}
\ No newline at end of file
Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/GraphicalElementImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/GraphicalElementImpl.java 2008-07-26 09:43:04 UTC (rev 1733)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/GraphicalElementImpl.java 2008-07-27 08:13:58 UTC (rev 1734)
@@ -32,4 +32,5 @@
*/
public abstract class GraphicalElementImpl extends BPMNElementImpl implements GraphicalElement
{
+ private static final long serialVersionUID = 1L;
}
\ 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-07-26 09:43:04 UTC (rev 1733)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/ReceiveTaskImpl.java 2008-07-27 08:13:58 UTC (rev 1734)
@@ -114,7 +114,7 @@
public ExecutionHandler getExecutionHandler()
{
final Task task = this;
- ExecutionHandler handler = executionHandler;
+ ExecutionHandler handler = super.getExecutionHandler();
if (handler == null)
{
handler = new ExecutionHandler()
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-07-26 09:43:04 UTC (rev 1733)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/SendTaskImpl.java 2008-07-27 08:13:58 UTC (rev 1734)
@@ -31,7 +31,6 @@
import org.jboss.bpm.model.Process;
import org.jboss.bpm.model.Property;
import org.jboss.bpm.model.SendTask;
-import org.jboss.bpm.model.Task;
import org.jboss.bpm.runtime.ExecutionContext;
import org.jboss.bpm.runtime.ExecutionHandler;
import org.jboss.bpm.runtime.Token;
@@ -82,8 +81,7 @@
@Override
public ExecutionHandler getExecutionHandler()
{
- final Task task = this;
- ExecutionHandler handler = executionHandler;
+ ExecutionHandler handler = super.getExecutionHandler();
if (handler == null)
{
handler = new ExecutionHandler()
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-07-26 09:43:04 UTC (rev 1733)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/SubProcessImpl.java 2008-07-27 08:13:58 UTC (rev 1734)
@@ -23,17 +23,10 @@
//$Id$
-import org.jboss.bpm.NotImplementedException;
-import org.jboss.bpm.model.Flow;
import org.jboss.bpm.model.FlowObject;
import org.jboss.bpm.model.Signal;
import org.jboss.bpm.model.SubProcess;
-import org.jboss.bpm.runtime.ExecutionHandler;
-import org.jboss.bpm.runtime.FlowHandler;
-import org.jboss.bpm.runtime.FlowScheduler;
import org.jboss.bpm.runtime.SignalHandler;
-import org.jboss.bpm.runtime.Token;
-import org.jboss.bpm.runtime.FlowScheduler.Tuple;
/**
* A Sub-Process is Process that is included within another Process.
@@ -41,13 +34,9 @@
* @author thomas.diesler at jboss.com
* @since 08-Jul-2008
*/
-public class SubProcessImpl extends ActivityImpl implements SubProcess, HandlerSetterSupport, SingleInFlowSetterSupport, SingleOutFlowSetterSupport
+public class SubProcessImpl extends ActivityImpl implements SubProcess, SingleInFlowSetterSupport, SingleOutFlowSetterSupport
{
- private Flow inFlow;
- private Flow outFlow;
- private ExecutionHandler executionHandler;
- private FlowHandler flowHandler;
- private SignalHandler signalHandler;
+ private static final long serialVersionUID = 1L;
public SubProcessImpl(String name)
{
@@ -59,72 +48,9 @@
return ActivityType.SubProcess;
}
- public Flow getInFlow()
- {
- return inFlow;
- }
-
- public void setInFlow(Flow inFlow)
- {
- this.inFlow = inFlow;
- }
-
- public Flow getOutFlow()
- {
- return outFlow;
- }
-
- public void setOutFlow(Flow flow)
- {
- this.outFlow = flow;
- }
-
- public ExecutionHandler getExecutionHandler()
- {
- ExecutionHandler handler = executionHandler;
- if (handler == null)
- {
- handler = new ExecutionHandler()
- {
- public void execute(Token token)
- {
- throw new NotImplementedException();
- }
- };
- }
- return handler;
- }
-
- public void setExecutionHandler(ExecutionHandler executionHandler)
- {
- this.executionHandler = executionHandler;
- }
-
- public FlowHandler getFlowHandler()
- {
- FlowHandler handler = flowHandler;
- if (handler == null)
- {
- handler = new FlowHandler()
- {
- public void execute(FlowScheduler scheduler, Token token)
- {
- Tuple tuple = new Tuple(outFlow, token);
- scheduler.scheduleTuple(tuple);
- }
- };
- }
- return handler;
- }
-
- public void setFlowHandler(FlowHandler flowHandler)
- {
- this.flowHandler = flowHandler;
- }
-
public SignalHandler getSignalHandler()
{
- SignalHandler handler = signalHandler;
+ SignalHandler handler = super.getSignalHandler();
if (handler == null)
{
final FlowObject subproc = this;
@@ -144,11 +70,6 @@
return handler;
}
- public void setSignalHandler(SignalHandler signalHandler)
- {
- this.signalHandler = signalHandler;
- }
-
public String toString()
{
return "SubProcess[" + getName() + "]";
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-07-26 09:43:04 UTC (rev 1733)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/model/internal/TaskImpl.java 2008-07-27 08:13:58 UTC (rev 1734)
@@ -21,17 +21,9 @@
*/
package org.jboss.bpm.model.internal;
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.jboss.bpm.model.Flow;
import org.jboss.bpm.model.Signal;
import org.jboss.bpm.model.Task;
-import org.jboss.bpm.runtime.ExecutionHandler;
-import org.jboss.bpm.runtime.FlowHandler;
-import org.jboss.bpm.runtime.FlowScheduler;
import org.jboss.bpm.runtime.SignalHandler;
-import org.jboss.bpm.runtime.Token;
-import org.jboss.bpm.runtime.FlowScheduler.Tuple;
//$Id$
@@ -44,18 +36,8 @@
* @author thomas.diesler at jboss.com
* @since 08-Jul-2008
*/
-public abstract class TaskImpl extends ActivityImpl implements Task, HandlerSetterSupport, SingleInFlowSetterSupport, SingleOutFlowSetterSupport
+public abstract class TaskImpl extends ActivityImpl implements Task
{
- // provide logging
- private static final Log log = LogFactory.getLog(TaskImpl.class);
-
- protected ExecutionHandler executionHandler;
-
- private Flow inFlow;
- private Flow outFlow;
- private FlowHandler flowHandler;
- private SignalHandler signalHandler;
-
public TaskImpl(String name)
{
super(name);
@@ -68,78 +50,9 @@
public abstract TaskType getTaskType();
- /**
- * Get the out flow
- */
- public Flow getInFlow()
- {
- return inFlow;
- }
-
- /**
- * Set the in flow
- */
- public void setInFlow(Flow inFlow)
- {
- this.inFlow = inFlow;
- }
-
- public Flow getOutFlow()
- {
- return outFlow;
- }
-
- public void setOutFlow(Flow flow)
- {
- this.outFlow = flow;
- }
-
- public ExecutionHandler getExecutionHandler()
- {
- ExecutionHandler handler = executionHandler;
- if (handler == null)
- {
- handler = new ExecutionHandler()
- {
- public void execute(Token token)
- {
- log.debug("Nothing to do in task: " + getName());
- }
- };
- }
- return handler;
- }
-
- public void setExecutionHandler(ExecutionHandler executionHandler)
- {
- this.executionHandler = executionHandler;
- }
-
- public FlowHandler getFlowHandler()
- {
- FlowHandler handler = flowHandler;
- if (handler == null)
- {
- handler = new FlowHandler()
- {
- public void execute(FlowScheduler scheduler, Token token)
- {
- Tuple tuple = new Tuple(outFlow, token);
- scheduler.scheduleTuple(tuple);
- }
- };
- }
- return handler;
- }
-
- public void setFlowHandler(FlowHandler flowHandler)
- {
- this.flowHandler = flowHandler;
- }
-
public SignalHandler getSignalHandler()
{
- SignalHandler handler = signalHandler;
+ SignalHandler handler = super.getSignalHandler();
if (handler == null)
{
final Task task = this;
@@ -159,11 +72,6 @@
return handler;
}
- public void setSignalHandler(SignalHandler signalHandler)
- {
- this.signalHandler = signalHandler;
- }
-
public String toString()
{
return "Task[" + getName() + "]";
Added: jbossbpm/spec/trunk/modules/ri/src/test/java/org/jboss/bpm/expression/MvelExpressionTest.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/test/java/org/jboss/bpm/expression/MvelExpressionTest.java (rev 0)
+++ jbossbpm/spec/trunk/modules/ri/src/test/java/org/jboss/bpm/expression/MvelExpressionTest.java 2008-07-27 08:13:58 UTC (rev 1734)
@@ -0,0 +1,68 @@
+/*
+ * 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.expression;
+
+// $Id$
+
+import java.util.HashMap;
+import java.util.Map;
+
+import org.jboss.bpm.runtime.BasicAttachments;
+import org.jboss.bpm.runtime.Attachments.Key;
+import org.mvel.MVEL;
+
+import junit.framework.TestCase;
+
+/**
+ * Test MVEL access to Attachments
+ *
+ * @author thomas.diesler at jboss.com
+ * @since 08-Jul-2008
+ */
+public class MvelExpressionTest extends TestCase
+{
+ public void testBasicAttachments() throws Exception
+ {
+ BasicAttachments att = new BasicAttachments();
+ att.addAttachment("Name", "Kermit");
+ att.addAttachment("From", "MUC");
+ att.addAttachment("To", "NYC");
+ att.addAttachment("Date", "26-Jul-2008");
+ att.addAttachment("Seats", "2");
+
+ Map<String, Object> vars = new HashMap<String, Object>();
+ for (Key key : att.getAttachmentKeys())
+ {
+ String name = key.getNamePart();
+ Object value = att.getAttachment(name);
+ vars.put(name, value);
+ }
+
+ assertEquals("Kermit", MVEL.eval("Name", vars));
+ assertEquals("MUC", MVEL.eval("From", vars));
+ assertEquals("NYC", MVEL.eval("To", vars));
+ assertEquals("26-Jul-2008", MVEL.eval("Date", vars));
+ assertEquals("2", MVEL.eval("Seats", vars));
+
+ assertTrue((Boolean)MVEL.eval("Name != null && Seats > 0", vars));
+ }
+}
Property changes on: jbossbpm/spec/trunk/modules/ri/src/test/java/org/jboss/bpm/expression/MvelExpressionTest.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Modified: jbossbpm/spec/trunk/modules/testsuite/pom.xml
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/pom.xml 2008-07-26 09:43:04 UTC (rev 1733)
+++ jbossbpm/spec/trunk/modules/testsuite/pom.xml 2008-07-27 08:13:58 UTC (rev 1734)
@@ -55,16 +55,6 @@
<artifactId>servlet-api</artifactId>
<scope>test</scope>
</dependency>
- <dependency>
- <groupId>junit</groupId>
- <artifactId>junit</artifactId>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>log4j</groupId>
- <artifactId>log4j</artifactId>
- <scope>test</scope>
- </dependency>
<!-- Runtime Dependencies -->
<dependency>
Modified: jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/samples/airticket/AirticketTest.java
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/samples/airticket/AirticketTest.java 2008-07-26 09:43:04 UTC (rev 1733)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/java/org/jboss/bpm/samples/airticket/AirticketTest.java 2008-07-27 08:13:58 UTC (rev 1734)
@@ -109,7 +109,7 @@
addPropertyInput("Seats", null).
addOutputSet().
addPropertyOutput("isReqDataValid", null).
- addIORule("isReqDataValid == true if ....", ExpressionLanguage.MVEL).
+ addIORule("Name != null && From != null && To != null && Date != null && Seats > 0", ExpressionLanguage.MVEL).
addSequenceFlow("ValidateGateway");
// Build the Validate Gateway
Modified: jbossbpm/spec/trunk/pom.xml
===================================================================
--- jbossbpm/spec/trunk/pom.xml 2008-07-26 09:43:04 UTC (rev 1733)
+++ jbossbpm/spec/trunk/pom.xml 2008-07-27 08:13:58 UTC (rev 1734)
@@ -41,6 +41,7 @@
<javax.servlet.version>2.5</javax.servlet.version>
<jboss.microcontainer.version>2.0.0.Beta15</jboss.microcontainer.version>
<jboss.jbpm3.version>3.2.4-SNAPSHOT</jboss.jbpm3.version>
+ <mvel.version>1.3.7-java1.5</mvel.version>
</properties>
<!-- DependencyManagement -->
@@ -67,6 +68,11 @@
<version>${jboss.microcontainer.version}</version>
</dependency>
<dependency>
+ <groupId>org.mvel</groupId>
+ <artifactId>mvel</artifactId>
+ <version>${mvel.version}</version>
+ </dependency>
+ <dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>${javax.servlet.version}</version>
@@ -74,6 +80,21 @@
</dependencies>
</dependencyManagement>
+ <!-- Dependencies -->
+ <dependencies>
+ <!-- Test Dependencies -->
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>log4j</groupId>
+ <artifactId>log4j</artifactId>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
+
<!-- DistributionManagement -->
<distributionManagement>
<!--
More information about the jbpm-commits
mailing list