Author: tom.baeyens(a)jboss.com
Date: 2010-01-20 10:55:02 -0500 (Wed, 20 Jan 2010)
New Revision: 6106
Added:
jbpm4/trunk/modules/api/src/main/java/org/jbpm/api/model/Activity.java
jbpm4/trunk/modules/api/src/main/java/org/jbpm/api/model/Transition.java
Removed:
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/Activity.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/Transition.java
Modified:
jbpm4/trunk/modules/api/src/main/java/org/jbpm/api/model/OpenExecution.java
jbpm4/trunk/modules/bpmn/src/main/java/org/jbpm/bpmn/flownodes/AbstractMergingGatewayActivity.java
jbpm4/trunk/modules/bpmn/src/main/java/org/jbpm/bpmn/flownodes/AbstractTask.java
jbpm4/trunk/modules/bpmn/src/main/java/org/jbpm/bpmn/flownodes/BpmnActivity.java
jbpm4/trunk/modules/bpmn/src/main/java/org/jbpm/bpmn/flownodes/EndActivity.java
jbpm4/trunk/modules/bpmn/src/main/java/org/jbpm/bpmn/flownodes/ExclusiveGatewayActivity.java
jbpm4/trunk/modules/bpmn/src/main/java/org/jbpm/bpmn/flownodes/ParallelGatewayActivity.java
jbpm4/trunk/modules/bpmn/src/main/java/org/jbpm/bpmn/flownodes/ReceiveActivity.java
jbpm4/trunk/modules/bpmn/src/main/java/org/jbpm/bpmn/flownodes/UserTaskActivity.java
jbpm4/trunk/modules/bpmn/src/main/java/org/jbpm/bpmn/model/BpmnProcessDefinition.java
jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/activity/DecisionConditionActivity.java
jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/activity/DecisionExpressionActivity.java
jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/activity/DecisionHandlerActivity.java
jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/activity/EndActivity.java
jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/activity/ForkActivity.java
jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/activity/GroupActivity.java
jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/activity/JoinActivity.java
jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/activity/StateActivity.java
jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/activity/SubProcessActivity.java
jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/activity/TaskActivity.java
jbpm4/trunk/modules/jpdl/src/test/java/org/jbpm/jpdl/parsing/TransitionParsingTest.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cmd/GetOutcomes.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/migration/DefaultMigrationHandler.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/ActivityImpl.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/CompositeElement.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/CompositeElementImpl.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/Condition.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/ExecutionImpl.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/OpenProcessDefinition.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/ProcessModificationsImpl.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/TransitionImpl.java
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/task/LifeCycle.java
jbpm4/trunk/modules/pvm/src/test/java/org/jbpm/pvm/builder/BuilderTest.java
jbpm4/trunk/modules/test-cfg/src/test/java/org/jbpm/test/custombusinesscalendarimpl/CustomBusinessCalendar.java
jbpm4/trunk/modules/test-pojo/src/main/java/org/jbpm/test/activities/EventTest.java
jbpm4/trunk/modules/test-pojo/src/main/java/org/jbpm/test/activities/FunctionalActivityTest.java
jbpm4/trunk/modules/test-pojo/src/main/java/org/jbpm/test/activities/ScopeVariableDeclarationTest.java
Log:
JBPM-2609 Extended API to be able to list all outgoing transitions of active activities
Copied: jbpm4/trunk/modules/api/src/main/java/org/jbpm/api/model/Activity.java (from rev
6105, jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/Activity.java)
===================================================================
--- jbpm4/trunk/modules/api/src/main/java/org/jbpm/api/model/Activity.java
(rev 0)
+++ jbpm4/trunk/modules/api/src/main/java/org/jbpm/api/model/Activity.java 2010-01-20
15:55:02 UTC (rev 6106)
@@ -0,0 +1,147 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site:
http://www.fsf.org.
+ */
+package org.jbpm.api.model;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * a activity in a {@link OpenProcessDefinition} graph.
+ *
+ * <p>The activity supports both graph based process models as well as
+ * block structured (tree based) process models. First we describe
+ * tranisions that can be used to formResourceName graph based process structures
+ * and then we'll describe activity composition to formResourceName block structured
+ * process models. Both models can be combined as well.
+ * </p>
+ *
+ * <p>Activities have {@link #getIncomingTransitions() incoming}
+ * and {@link #getOutgoingTransitions() outgoing transitions}.
+ * These are lists of transitions.
+ * </p>
+ *
+ * <p>Optionally, transitions can have names. In that case the
+ * transition {@link #getOutgoingTransition(String) names are associated
+ * to activity's outgoing transitions}. The {@link #getOutgoingTransitionsMap() map
+ * of outgoing transitions} provides easy access to the named transitions.
+ * </p>
+ *
+ * <p>One of the outgoing transitions can optionally be marked as
+ * {@link #getDefaultOutgoingTransition() the default transition}.
+ * </p>
+ *
+ * <p>Block structured process languages have composite activities that can be
+ * modeled with the {@link #getParent() parent}-{@link #getActivities() child}
+ * relation.
+ * </p>
+ *
+ * @author Tom Baeyens
+ */
+public interface Activity {
+
+ /** the short display name given to this element. */
+ String getName();
+
+ /** the list of outgoing transitions.
+ * Caution: the actual member is returned. No copy is made. */
+ List<Transition> getOutgoingTransitions();
+
+ /** the default outgoing transition. */
+ Transition getDefaultOutgoingTransition();
+
+ /** the first leaving transition with the given name or null of no
+ * such leaving transition exists. If the multiple transitions have
+ * the given transition name, the first (in order of {@link
#getOutgoingTransitions()})
+ * will be returned.
+ *
+ * @param transitionName is the name of the transition to take. A null value will
+ * match the first unnamed transition. */
+ Transition getOutgoingTransition(String transitionName);
+
+ /** indicates if a leaving transition with the given transitionName exists.
+ * A null value matches an unnamed transition. */
+ boolean hasOutgoingTransition(String transitionName);
+
+ /** indicates if this activity has leaving transitions */
+ boolean hasOutgoingTransitions();
+
+ /** the leaving transitions, keyed by transition name. If a transition with
+ * the same name occurs mutltiple times, the first one is returned.
+ * Leaving transitions with a null value for their name are not included
+ * in the map.
+ * Beware: the actual member is returned. No copy is made. In fact, the
+ * returned map is maintained as a cache. So updates to the map will
+ * influence subsequent retrievals of outgoing transitions by name. */
+ Map<String, Transition> getOutgoingTransitionsMap();
+
+ /** searches for the given transitionName in this activity and then up the
+ * parent chain. Returns null if no such transition is found. */
+ Transition findOutgoingTransition(String transitionName);
+
+ /** the list of arriving transitions.
+ * Beware: the actual member is returned. No copy is made. */
+ List<Transition> getIncomingTransitions();
+
+ /** indicates if this activity has arriving transitions */
+ boolean hasIncomingTransitions();
+
+ /** retrieve the parent activity in the composite activity structure. This is
+ * different from {@link ObservableElement#getParent()} in that it is restricted
+ * to the parent activities. It doesn't take into account the process definition.
*/
+ Activity getParentActivity();
+
+ /** indicates if this processDefinition has activities. */
+ boolean hasActivities();
+
+ /** the list of direct composite activities. Recursively contained
+ * activities are not included in the list.
+ * Beware: the actual member is returned. No copy is made. */
+ List<? extends Activity> getActivities();
+
+ /** indicates if an activity with the given name exists directly in
+ * this element. Only the direct contained activities are
+ * searched. No recursive search is made. */
+ boolean hasActivity(String activityName);
+
+ /** the first composite activity with the given name or null of no
+ * such activity exists. Only the direct contained activities are
+ * searched. No recursive search is made. */
+ Activity getActivity(String activityName);
+
+ /** searches for the given activity in this element recursively,
+ * including this activity and all child activities. The search
+ * is done depth-first. A null value for activityName matches a activity
+ * without a name. */
+ Activity findActivity(String activityName);
+
+ /** the composite activities, keyed by activity name. If an activity
+ * with the same name occurs mutltiple times, the first in the list
+ * is included in the map. Activities with a null value for their name
+ * are not included in the map.
+ * Beware: the actual member is returned. No copy is made. In fact, the
+ * returned map is maintained as a cache. So updates to the map will
+ * influence subsequent retrievals of activities by name.*/
+ Map<String, Activity> getActivitiesMap();
+
+ /** the type of this activity which corresponds to the xml tag */
+ String getType();
+}
\ No newline at end of file
Property changes on:
jbpm4/trunk/modules/api/src/main/java/org/jbpm/api/model/Activity.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:mergeinfo
+
Name: svn:eol-style
+ LF
Modified: jbpm4/trunk/modules/api/src/main/java/org/jbpm/api/model/OpenExecution.java
===================================================================
--- jbpm4/trunk/modules/api/src/main/java/org/jbpm/api/model/OpenExecution.java 2010-01-20
12:32:25 UTC (rev 6105)
+++ jbpm4/trunk/modules/api/src/main/java/org/jbpm/api/model/OpenExecution.java 2010-01-20
15:55:02 UTC (rev 6106)
@@ -46,6 +46,9 @@
*/
public interface OpenExecution extends Execution {
+ /** the current activity */
+ Activity getActivity();
+
/** update the state */
void setState(String state);
Copied: jbpm4/trunk/modules/api/src/main/java/org/jbpm/api/model/Transition.java (from rev
6105, jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/Transition.java)
===================================================================
--- jbpm4/trunk/modules/api/src/main/java/org/jbpm/api/model/Transition.java
(rev 0)
+++ jbpm4/trunk/modules/api/src/main/java/org/jbpm/api/model/Transition.java 2010-01-20
15:55:02 UTC (rev 6106)
@@ -0,0 +1,63 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site:
http://www.fsf.org.
+ */
+package org.jbpm.api.model;
+
+/**
+ * a transition in a {@link OpenProcessDefinition} graph.
+ *
+ * <h3 id="guardconditions">Guard conditions</h3>
+ * <p>TODO</p>
+ *
+ * <h3 id="transitionsaswaitstates">Transitions as wait
states</h3>
+ * <p>A wait condition indicates wether a transition is to be taken synchronously
+ * or wether the transition will behave as a wait state.
+ * </p>
+ *
+ * <p>Transitions that are wait states can occur when an analyst has
+ * an actual state (e.g. 'making loss') and a desired state (e.g. 'making
profit')
+ * and models a transition between those states. In that case the transition
+ * might take a long time and hence it results into a wait state for the system.
+ * </p>
+ *
+ * <p>If the wait condition is null or if it returns false, then the transition
+ * will be taking synchronously. Otherwise the transition will behave as
+ * a wait state and wait for a signal on the execution.
+ * </p>
+ *
+ * <p>Transitions as wait states has every thing to do with matching the
+ * process graph to transactions on the server. If the transition is taken
+ * in one (the current) transaction, then the async condition should be empty
+ * or evaluate to false. If the arrival of the execution in the destination
+ * activity should occur in a separate execution
+ *
+ * @author Tom Baeyens
+ */
+public interface Transition {
+ /** the short display name given to this element. */
+ String getName();
+
+ /** the activity from which this transition leaves. */
+ Activity getSource();
+
+ /** the activity in which this transition arrives. */
+ Activity getDestination();
+}
\ No newline at end of file
Property changes on:
jbpm4/trunk/modules/api/src/main/java/org/jbpm/api/model/Transition.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Modified:
jbpm4/trunk/modules/bpmn/src/main/java/org/jbpm/bpmn/flownodes/AbstractMergingGatewayActivity.java
===================================================================
---
jbpm4/trunk/modules/bpmn/src/main/java/org/jbpm/bpmn/flownodes/AbstractMergingGatewayActivity.java 2010-01-20
12:32:25 UTC (rev 6105)
+++
jbpm4/trunk/modules/bpmn/src/main/java/org/jbpm/bpmn/flownodes/AbstractMergingGatewayActivity.java 2010-01-20
15:55:02 UTC (rev 6106)
@@ -29,11 +29,11 @@
import org.jbpm.api.Execution;
import org.jbpm.api.JbpmException;
import org.jbpm.api.activity.ActivityExecution;
+import org.jbpm.api.model.Activity;
+import org.jbpm.api.model.Transition;
import org.jbpm.internal.log.Log;
import org.jbpm.pvm.internal.env.EnvironmentImpl;
-import org.jbpm.pvm.internal.model.Activity;
import org.jbpm.pvm.internal.model.ExecutionImpl;
-import org.jbpm.pvm.internal.model.Transition;
/**
* Superclass for gateway activities that wait on multiple incoming executions before
merging
Modified:
jbpm4/trunk/modules/bpmn/src/main/java/org/jbpm/bpmn/flownodes/AbstractTask.java
===================================================================
---
jbpm4/trunk/modules/bpmn/src/main/java/org/jbpm/bpmn/flownodes/AbstractTask.java 2010-01-20
12:32:25 UTC (rev 6105)
+++
jbpm4/trunk/modules/bpmn/src/main/java/org/jbpm/bpmn/flownodes/AbstractTask.java 2010-01-20
15:55:02 UTC (rev 6106)
@@ -26,10 +26,10 @@
import org.jbpm.api.Execution;
import org.jbpm.api.activity.ActivityExecution;
-import org.jbpm.pvm.internal.model.Activity;
+import org.jbpm.api.model.Activity;
+import org.jbpm.api.model.Transition;
import org.jbpm.pvm.internal.model.Condition;
import org.jbpm.pvm.internal.model.ExecutionImpl;
-import org.jbpm.pvm.internal.model.Transition;
/**
* The abstract task is a base class for all BPMN 2.0 tasks
Modified:
jbpm4/trunk/modules/bpmn/src/main/java/org/jbpm/bpmn/flownodes/BpmnActivity.java
===================================================================
---
jbpm4/trunk/modules/bpmn/src/main/java/org/jbpm/bpmn/flownodes/BpmnActivity.java 2010-01-20
12:32:25 UTC (rev 6105)
+++
jbpm4/trunk/modules/bpmn/src/main/java/org/jbpm/bpmn/flownodes/BpmnActivity.java 2010-01-20
15:55:02 UTC (rev 6106)
@@ -29,11 +29,13 @@
import org.jbpm.api.Execution;
import org.jbpm.api.JbpmException;
import org.jbpm.api.activity.ActivityBehaviour;
+import org.jbpm.api.model.Activity;
+import org.jbpm.api.model.Transition;
import org.jbpm.internal.log.Log;
-import org.jbpm.pvm.internal.model.Activity;
+import org.jbpm.pvm.internal.model.ActivityImpl;
import org.jbpm.pvm.internal.model.Condition;
import org.jbpm.pvm.internal.model.ExecutionImpl;
-import org.jbpm.pvm.internal.model.Transition;
+import org.jbpm.pvm.internal.model.TransitionImpl;
/**
* Basic activity for BPMN activities (tasks, gateways)
@@ -115,12 +117,12 @@
* If the boolean 'checkConditions' is true, conditions on the sequence flow
will be evaluated.
*/
protected List<Transition> findOutgoingSequenceFlow(ExecutionImpl execution,
boolean checkConditions) {
- Activity activity = execution.getActivity();
+ ActivityImpl activity = execution.getActivity();
// evaluate the conditions and find the transitions that should be forked
List<Transition> forkingTransitions = new ArrayList<Transition>();
- List<Transition> outgoingTransitions = activity.getOutgoingTransitions();
+ List<TransitionImpl> outgoingTransitions = (List)
activity.getOutgoingTransitions();
- for (Transition transition : outgoingTransitions) {
+ for (TransitionImpl transition : outgoingTransitions) {
Condition condition = transition.getCondition();
if ( ( (condition == null) || (!checkConditions) || (condition.evaluate(execution))
)
&& (activity.getDefaultOutgoingTransition() != transition) ) {
Modified: jbpm4/trunk/modules/bpmn/src/main/java/org/jbpm/bpmn/flownodes/EndActivity.java
===================================================================
---
jbpm4/trunk/modules/bpmn/src/main/java/org/jbpm/bpmn/flownodes/EndActivity.java 2010-01-20
12:32:25 UTC (rev 6105)
+++
jbpm4/trunk/modules/bpmn/src/main/java/org/jbpm/bpmn/flownodes/EndActivity.java 2010-01-20
15:55:02 UTC (rev 6106)
@@ -24,11 +24,11 @@
import java.util.List;
import org.jbpm.api.activity.ActivityExecution;
+import org.jbpm.api.model.Activity;
import org.jbpm.api.model.OpenExecution;
-import org.jbpm.pvm.internal.model.Activity;
+import org.jbpm.api.model.Transition;
import org.jbpm.pvm.internal.model.ActivityImpl;
import org.jbpm.pvm.internal.model.ExecutionImpl;
-import org.jbpm.pvm.internal.model.Transition;
/**
Modified:
jbpm4/trunk/modules/bpmn/src/main/java/org/jbpm/bpmn/flownodes/ExclusiveGatewayActivity.java
===================================================================
---
jbpm4/trunk/modules/bpmn/src/main/java/org/jbpm/bpmn/flownodes/ExclusiveGatewayActivity.java 2010-01-20
12:32:25 UTC (rev 6105)
+++
jbpm4/trunk/modules/bpmn/src/main/java/org/jbpm/bpmn/flownodes/ExclusiveGatewayActivity.java 2010-01-20
15:55:02 UTC (rev 6106)
@@ -24,10 +24,10 @@
import java.util.List;
import org.jbpm.api.activity.ActivityExecution;
+import org.jbpm.api.model.Transition;
import org.jbpm.bpmn.parser.BindingsParser;
import org.jbpm.internal.log.Log;
import org.jbpm.pvm.internal.model.ExecutionImpl;
-import org.jbpm.pvm.internal.model.Transition;
/**
* @author Tom Baeyens
Modified:
jbpm4/trunk/modules/bpmn/src/main/java/org/jbpm/bpmn/flownodes/ParallelGatewayActivity.java
===================================================================
---
jbpm4/trunk/modules/bpmn/src/main/java/org/jbpm/bpmn/flownodes/ParallelGatewayActivity.java 2010-01-20
12:32:25 UTC (rev 6105)
+++
jbpm4/trunk/modules/bpmn/src/main/java/org/jbpm/bpmn/flownodes/ParallelGatewayActivity.java 2010-01-20
15:55:02 UTC (rev 6106)
@@ -23,8 +23,8 @@
import java.util.List;
+import org.jbpm.api.model.Activity;
import org.jbpm.internal.log.Log;
-import org.jbpm.pvm.internal.model.Activity;
import org.jbpm.pvm.internal.model.ExecutionImpl;
/**
Modified:
jbpm4/trunk/modules/bpmn/src/main/java/org/jbpm/bpmn/flownodes/ReceiveActivity.java
===================================================================
---
jbpm4/trunk/modules/bpmn/src/main/java/org/jbpm/bpmn/flownodes/ReceiveActivity.java 2010-01-20
12:32:25 UTC (rev 6105)
+++
jbpm4/trunk/modules/bpmn/src/main/java/org/jbpm/bpmn/flownodes/ReceiveActivity.java 2010-01-20
15:55:02 UTC (rev 6106)
@@ -27,10 +27,10 @@
import org.jbpm.api.JbpmException;
import org.jbpm.api.activity.ActivityExecution;
+import org.jbpm.api.model.Transition;
import org.jbpm.internal.log.Log;
-import org.jbpm.pvm.internal.model.Activity;
+import org.jbpm.pvm.internal.model.ActivityImpl;
import org.jbpm.pvm.internal.model.ExecutionImpl;
-import org.jbpm.pvm.internal.model.Transition;
/**
* Java version of the Receive activity.
@@ -57,7 +57,7 @@
}
public void signal(ExecutionImpl execution, String signalName, Map<String, ?>
parameters) {
- Activity activity = execution.getActivity();
+ ActivityImpl activity = execution.getActivity();
if (parameters!=null) {
execution.setVariables(parameters);
Modified:
jbpm4/trunk/modules/bpmn/src/main/java/org/jbpm/bpmn/flownodes/UserTaskActivity.java
===================================================================
---
jbpm4/trunk/modules/bpmn/src/main/java/org/jbpm/bpmn/flownodes/UserTaskActivity.java 2010-01-20
12:32:25 UTC (rev 6105)
+++
jbpm4/trunk/modules/bpmn/src/main/java/org/jbpm/bpmn/flownodes/UserTaskActivity.java 2010-01-20
15:55:02 UTC (rev 6106)
@@ -30,7 +30,7 @@
import org.jbpm.pvm.internal.env.EnvironmentImpl;
import org.jbpm.pvm.internal.history.HistoryEvent;
import org.jbpm.pvm.internal.history.events.TaskActivityStart;
-import org.jbpm.pvm.internal.model.Activity;
+import org.jbpm.pvm.internal.model.ActivityImpl;
import org.jbpm.pvm.internal.model.ExecutionImpl;
import org.jbpm.pvm.internal.session.DbSession;
import org.jbpm.pvm.internal.task.TaskDefinitionImpl;
@@ -92,7 +92,7 @@
}
public void signal(ExecutionImpl execution, String signalName, Map<String, ? >
parameters) throws Exception {
- Activity activity = execution.getActivity();
+ ActivityImpl activity = execution.getActivity();
if (parameters != null) {
execution.setVariables(parameters);
Modified:
jbpm4/trunk/modules/bpmn/src/main/java/org/jbpm/bpmn/model/BpmnProcessDefinition.java
===================================================================
---
jbpm4/trunk/modules/bpmn/src/main/java/org/jbpm/bpmn/model/BpmnProcessDefinition.java 2010-01-20
12:32:25 UTC (rev 6105)
+++
jbpm4/trunk/modules/bpmn/src/main/java/org/jbpm/bpmn/model/BpmnProcessDefinition.java 2010-01-20
15:55:02 UTC (rev 6106)
@@ -28,10 +28,10 @@
import java.util.Map;
import java.util.Set;
+import org.jbpm.api.model.Transition;
import org.jbpm.bpmn.common.Resource;
import org.jbpm.pvm.internal.model.ExecutionImpl;
import org.jbpm.pvm.internal.model.ProcessDefinitionImpl;
-import org.jbpm.pvm.internal.model.Transition;
import org.jbpm.pvm.internal.model.VariableDefinitionImpl;
import org.jbpm.pvm.internal.task.TaskDefinitionImpl;
import org.w3c.dom.Element;
Modified:
jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/activity/DecisionConditionActivity.java
===================================================================
---
jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/activity/DecisionConditionActivity.java 2010-01-20
12:32:25 UTC (rev 6105)
+++
jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/activity/DecisionConditionActivity.java 2010-01-20
15:55:02 UTC (rev 6106)
@@ -25,10 +25,11 @@
import org.jbpm.api.JbpmException;
import org.jbpm.api.activity.ActivityExecution;
-import org.jbpm.pvm.internal.model.Activity;
+import org.jbpm.api.model.Activity;
+import org.jbpm.api.model.Transition;
import org.jbpm.pvm.internal.model.Condition;
import org.jbpm.pvm.internal.model.ExecutionImpl;
-import org.jbpm.pvm.internal.model.Transition;
+import org.jbpm.pvm.internal.model.TransitionImpl;
/**
@@ -55,8 +56,8 @@
public static Transition findTransitionUsingConditions(ExecutionImpl execution) {
Activity activity = execution.getActivity();
- List<Transition> outgoingTransitions = activity.getOutgoingTransitions();
- for (Transition transition : outgoingTransitions) {
+ List<TransitionImpl> outgoingTransitions = (List)
activity.getOutgoingTransitions();
+ for (TransitionImpl transition : outgoingTransitions) {
Condition condition = transition.getCondition();
if ( (condition==null)
|| (condition.evaluate(execution))
Modified:
jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/activity/DecisionExpressionActivity.java
===================================================================
---
jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/activity/DecisionExpressionActivity.java 2010-01-20
12:32:25 UTC (rev 6105)
+++
jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/activity/DecisionExpressionActivity.java 2010-01-20
15:55:02 UTC (rev 6106)
@@ -23,9 +23,9 @@
import org.jbpm.api.JbpmException;
import org.jbpm.api.activity.ActivityExecution;
-import org.jbpm.pvm.internal.model.Activity;
+import org.jbpm.api.model.Activity;
+import org.jbpm.api.model.Transition;
import org.jbpm.pvm.internal.model.ExecutionImpl;
-import org.jbpm.pvm.internal.model.Transition;
import org.jbpm.pvm.internal.script.ScriptManager;
/**
Modified:
jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/activity/DecisionHandlerActivity.java
===================================================================
---
jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/activity/DecisionHandlerActivity.java 2010-01-20
12:32:25 UTC (rev 6105)
+++
jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/activity/DecisionHandlerActivity.java 2010-01-20
15:55:02 UTC (rev 6106)
@@ -24,9 +24,9 @@
import org.jbpm.api.JbpmException;
import org.jbpm.api.activity.ActivityExecution;
import org.jbpm.api.jpdl.DecisionHandler;
-import org.jbpm.pvm.internal.model.Activity;
+import org.jbpm.api.model.Activity;
+import org.jbpm.api.model.Transition;
import org.jbpm.pvm.internal.model.ExecutionImpl;
-import org.jbpm.pvm.internal.model.Transition;
import org.jbpm.pvm.internal.wire.usercode.UserCodeReference;
/**
Modified:
jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/activity/EndActivity.java
===================================================================
---
jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/activity/EndActivity.java 2010-01-20
12:32:25 UTC (rev 6105)
+++
jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/activity/EndActivity.java 2010-01-20
15:55:02 UTC (rev 6106)
@@ -24,11 +24,11 @@
import java.util.List;
import org.jbpm.api.activity.ActivityExecution;
+import org.jbpm.api.model.Activity;
import org.jbpm.api.model.OpenExecution;
-import org.jbpm.pvm.internal.model.Activity;
+import org.jbpm.api.model.Transition;
import org.jbpm.pvm.internal.model.ActivityImpl;
import org.jbpm.pvm.internal.model.ExecutionImpl;
-import org.jbpm.pvm.internal.model.Transition;
/**
Modified:
jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/activity/ForkActivity.java
===================================================================
---
jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/activity/ForkActivity.java 2010-01-20
12:32:25 UTC (rev 6105)
+++
jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/activity/ForkActivity.java 2010-01-20
15:55:02 UTC (rev 6106)
@@ -28,10 +28,11 @@
import org.jbpm.api.Execution;
import org.jbpm.api.activity.ActivityExecution;
-import org.jbpm.pvm.internal.model.Activity;
+import org.jbpm.api.model.Activity;
+import org.jbpm.api.model.Transition;
import org.jbpm.pvm.internal.model.Condition;
import org.jbpm.pvm.internal.model.ExecutionImpl;
-import org.jbpm.pvm.internal.model.Transition;
+import org.jbpm.pvm.internal.model.TransitionImpl;
/**
@@ -50,8 +51,8 @@
// evaluate the conditions and find the transitions that should be forked
List<Transition> forkingTransitions = new ArrayList<Transition>();
- List<Transition> outgoingTransitions = activity.getOutgoingTransitions();
- for (Transition transition: outgoingTransitions) {
+ List<TransitionImpl> outgoingTransitions = (List)
activity.getOutgoingTransitions();
+ for (TransitionImpl transition: outgoingTransitions) {
Condition condition = transition.getCondition();
if ( (condition==null)
|| (condition.evaluate(execution))
Modified:
jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/activity/GroupActivity.java
===================================================================
---
jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/activity/GroupActivity.java 2010-01-20
12:32:25 UTC (rev 6105)
+++
jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/activity/GroupActivity.java 2010-01-20
15:55:02 UTC (rev 6106)
@@ -28,10 +28,10 @@
import org.jbpm.api.Execution;
import org.jbpm.api.JbpmException;
import org.jbpm.api.activity.ActivityExecution;
-import org.jbpm.pvm.internal.model.Activity;
+import org.jbpm.api.model.Activity;
+import org.jbpm.api.model.Transition;
import org.jbpm.pvm.internal.model.ActivityImpl;
import org.jbpm.pvm.internal.model.ExecutionImpl;
-import org.jbpm.pvm.internal.model.Transition;
/**
Modified:
jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/activity/JoinActivity.java
===================================================================
---
jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/activity/JoinActivity.java 2010-01-20
12:32:25 UTC (rev 6105)
+++
jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/activity/JoinActivity.java 2010-01-20
15:55:02 UTC (rev 6106)
@@ -29,10 +29,10 @@
import org.jbpm.api.Execution;
import org.jbpm.api.JbpmException;
import org.jbpm.api.activity.ActivityExecution;
+import org.jbpm.api.model.Activity;
+import org.jbpm.api.model.Transition;
import org.jbpm.pvm.internal.env.EnvironmentImpl;
-import org.jbpm.pvm.internal.model.Activity;
import org.jbpm.pvm.internal.model.ExecutionImpl;
-import org.jbpm.pvm.internal.model.Transition;
/**
Modified:
jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/activity/StateActivity.java
===================================================================
---
jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/activity/StateActivity.java 2010-01-20
12:32:25 UTC (rev 6105)
+++
jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/activity/StateActivity.java 2010-01-20
15:55:02 UTC (rev 6106)
@@ -24,9 +24,9 @@
import java.util.Map;
import org.jbpm.api.activity.ActivityExecution;
-import org.jbpm.pvm.internal.model.Activity;
+import org.jbpm.api.model.Transition;
+import org.jbpm.pvm.internal.model.ActivityImpl;
import org.jbpm.pvm.internal.model.ExecutionImpl;
-import org.jbpm.pvm.internal.model.Transition;
/**
* @author Tom Baeyens
@@ -50,7 +50,7 @@
}
public void signal(ExecutionImpl execution, String signalName, Map<String, ?>
parameters) throws Exception {
- Activity activity = execution.getActivity();
+ ActivityImpl activity = execution.getActivity();
if (parameters!=null) {
execution.setVariables(parameters);
Modified:
jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/activity/SubProcessActivity.java
===================================================================
---
jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/activity/SubProcessActivity.java 2010-01-20
12:32:25 UTC (rev 6105)
+++
jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/activity/SubProcessActivity.java 2010-01-20
15:55:02 UTC (rev 6106)
@@ -25,11 +25,11 @@
import java.util.Map;
import org.jbpm.api.activity.ActivityExecution;
+import org.jbpm.api.model.Activity;
import org.jbpm.pvm.internal.client.ClientProcessDefinition;
import org.jbpm.pvm.internal.env.Context;
import org.jbpm.pvm.internal.env.EnvironmentImpl;
import org.jbpm.pvm.internal.env.ExecutionContext;
-import org.jbpm.pvm.internal.model.Activity;
import org.jbpm.pvm.internal.model.ExecutionImpl;
import org.jbpm.pvm.internal.script.ScriptManager;
import org.jbpm.pvm.internal.session.DbSession;
Modified:
jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/activity/TaskActivity.java
===================================================================
---
jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/activity/TaskActivity.java 2010-01-20
12:32:25 UTC (rev 6105)
+++
jbpm4/trunk/modules/jpdl/src/main/java/org/jbpm/jpdl/internal/activity/TaskActivity.java 2010-01-20
15:55:02 UTC (rev 6106)
@@ -27,13 +27,13 @@
import org.jbpm.api.JbpmException;
import org.jbpm.api.activity.ActivityExecution;
+import org.jbpm.api.model.Transition;
import org.jbpm.internal.log.Log;
import org.jbpm.pvm.internal.env.EnvironmentImpl;
import org.jbpm.pvm.internal.history.HistoryEvent;
import org.jbpm.pvm.internal.history.events.TaskActivityStart;
-import org.jbpm.pvm.internal.model.Activity;
+import org.jbpm.pvm.internal.model.ActivityImpl;
import org.jbpm.pvm.internal.model.ExecutionImpl;
-import org.jbpm.pvm.internal.model.Transition;
import org.jbpm.pvm.internal.session.DbSession;
import org.jbpm.pvm.internal.task.ParticipationImpl;
import org.jbpm.pvm.internal.task.SwimlaneDefinitionImpl;
@@ -104,7 +104,7 @@
}
public void signal(ExecutionImpl execution, String signalName, Map<String, ?>
parameters) throws Exception {
- Activity activity = execution.getActivity();
+ ActivityImpl activity = execution.getActivity();
if (parameters!=null) {
execution.setVariables(parameters);
Modified:
jbpm4/trunk/modules/jpdl/src/test/java/org/jbpm/jpdl/parsing/TransitionParsingTest.java
===================================================================
---
jbpm4/trunk/modules/jpdl/src/test/java/org/jbpm/jpdl/parsing/TransitionParsingTest.java 2010-01-20
12:32:25 UTC (rev 6105)
+++
jbpm4/trunk/modules/jpdl/src/test/java/org/jbpm/jpdl/parsing/TransitionParsingTest.java 2010-01-20
15:55:02 UTC (rev 6106)
@@ -23,9 +23,9 @@
import java.util.List;
+import org.jbpm.api.model.Activity;
+import org.jbpm.api.model.Transition;
import org.jbpm.pvm.internal.client.ClientProcessDefinition;
-import org.jbpm.pvm.internal.model.Activity;
-import org.jbpm.pvm.internal.model.Transition;
import org.jbpm.pvm.internal.xml.Problem;
Modified:
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cmd/GetOutcomes.java
===================================================================
---
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cmd/GetOutcomes.java 2010-01-20
12:32:25 UTC (rev 6105)
+++
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cmd/GetOutcomes.java 2010-01-20
15:55:02 UTC (rev 6106)
@@ -28,10 +28,10 @@
import org.jbpm.api.JbpmException;
import org.jbpm.api.cmd.Command;
import org.jbpm.api.cmd.Environment;
+import org.jbpm.api.model.Transition;
import org.jbpm.api.task.Task;
import org.jbpm.pvm.internal.model.ActivityImpl;
import org.jbpm.pvm.internal.model.ExecutionImpl;
-import org.jbpm.pvm.internal.model.Transition;
import org.jbpm.pvm.internal.session.DbSession;
import org.jbpm.pvm.internal.task.TaskImpl;
Modified:
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/migration/DefaultMigrationHandler.java
===================================================================
---
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/migration/DefaultMigrationHandler.java 2010-01-20
12:32:25 UTC (rev 6105)
+++
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/migration/DefaultMigrationHandler.java 2010-01-20
15:55:02 UTC (rev 6106)
@@ -4,9 +4,9 @@
import org.jbpm.api.JbpmException;
import org.jbpm.api.ProcessDefinition;
import org.jbpm.api.ProcessInstance;
+import org.jbpm.api.model.Activity;
import org.jbpm.pvm.internal.history.HistoryEvent;
import org.jbpm.pvm.internal.history.events.ProcessInstanceMigration;
-import org.jbpm.pvm.internal.model.Activity;
import org.jbpm.pvm.internal.model.ExecutionImpl;
import org.jbpm.pvm.internal.model.ProcessDefinitionImpl;
Deleted: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/Activity.java
===================================================================
---
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/Activity.java 2010-01-20
12:32:25 UTC (rev 6105)
+++
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/Activity.java 2010-01-20
15:55:02 UTC (rev 6106)
@@ -1,111 +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.jbpm.pvm.internal.model;
-
-import java.util.List;
-import java.util.Map;
-
-/**
- * a activity in a {@link OpenProcessDefinition} graph.
- *
- * <p>The activity supports both graph based process models as well as
- * block structured (tree based) process models. First we describe
- * tranisions that can be used to formResourceName graph based process structures
- * and then we'll describe activity composition to formResourceName block structured
- * process models. Both models can be combined as well.
- * </p>
- *
- * <p>Activities have {@link #getIncomingTransitions() incoming}
- * and {@link #getOutgoingTransitions() outgoing transitions}.
- * These are lists of transitions.
- * </p>
- *
- * <p>Optionally, transitions can have names. In that case the
- * transition {@link #getOutgoingTransition(String) names are associated
- * to activity's outgoing transitions}. The {@link #getOutgoingTransitionsMap() map
- * of outgoing transitions} provides easy access to the named transitions.
- * </p>
- *
- * <p>One of the outgoing transitions can optionally be marked as
- * {@link #getDefaultOutgoingTransition() the default transition}.
- * </p>
- *
- * <p>Block structured process languages have composite activities that can be
- * modeled with the {@link #getParent() parent}-{@link #getActivities() child}
- * relation.
- * </p>
- *
- * @author Tom Baeyens
- */
-public interface Activity extends CompositeElement {
-
- /** the list of outgoing transitions.
- * Caution: the actual member is returned. No copy is made. */
- List<Transition> getOutgoingTransitions();
-
- /** the default outgoing transition. */
- Transition getDefaultOutgoingTransition();
-
- /** the first leaving transition with the given name or null of no
- * such leaving transition exists. If the multiple transitions have
- * the given transition name, the first (in order of {@link
#getOutgoingTransitions()})
- * will be returned.
- *
- * @param transitionName is the name of the transition to take. A null value will
- * match the first unnamed transition. */
- Transition getOutgoingTransition(String transitionName);
-
- /** indicates if a leaving transition with the given transitionName exists.
- * A null value matches an unnamed transition. */
- boolean hasOutgoingTransition(String transitionName);
-
- /** indicates if this activity has leaving transitions */
- boolean hasOutgoingTransitions();
-
- /** the leaving transitions, keyed by transition name. If a transition with
- * the same name occurs mutltiple times, the first one is returned.
- * Leaving transitions with a null value for their name are not included
- * in the map.
- * Beware: the actual member is returned. No copy is made. In fact, the
- * returned map is maintained as a cache. So updates to the map will
- * influence subsequent retrievals of outgoing transitions by name. */
- Map<String, Transition> getOutgoingTransitionsMap();
-
- /** searches for the given transitionName in this activity and then up the
- * parent chain. Returns null if no such transition is found. */
- Transition findOutgoingTransition(String transitionName);
-
- /** the list of arriving transitions.
- * Beware: the actual member is returned. No copy is made. */
- List<Transition> getIncomingTransitions();
-
- /** indicates if this activity has arriving transitions */
- boolean hasIncomingTransitions();
-
- /** retrieve the parent activity in the composite activity structure. This is
- * different from {@link ObservableElement#getParent()} in that it is restricted
- * to the parent activities. It doesn't take into account the process definition.
*/
- Activity getParentActivity();
-
- /** the type of this activity which corresponds to the xml tag */
- String getType();
-}
\ No newline at end of file
Modified:
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/ActivityImpl.java
===================================================================
---
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/ActivityImpl.java 2010-01-20
12:32:25 UTC (rev 6105)
+++
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/ActivityImpl.java 2010-01-20
15:55:02 UTC (rev 6106)
@@ -27,13 +27,15 @@
import java.util.Map;
import org.jbpm.api.activity.ActivityBehaviour;
+import org.jbpm.api.model.Activity;
+import org.jbpm.api.model.Transition;
import org.jbpm.pvm.internal.util.ReflectUtil;
import org.jbpm.pvm.internal.wire.Descriptor;
/**
* @author Tom Baeyens
*/
-public class ActivityImpl extends CompositeElementImpl implements Activity {
+public class ActivityImpl extends CompositeElementImpl implements Activity,
ObservableElement {
private static final long serialVersionUID = 1L;
Modified:
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/CompositeElement.java
===================================================================
---
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/CompositeElement.java 2010-01-20
12:32:25 UTC (rev 6105)
+++
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/CompositeElement.java 2010-01-20
15:55:02 UTC (rev 6106)
@@ -24,8 +24,10 @@
import java.util.List;
import java.util.Map;
+import org.jbpm.api.model.Activity;
+
/** activity container base class for {@link OpenProcessDefinition} and {@link
Activity}.
*
* @author Tom Baeyens
Modified:
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/CompositeElementImpl.java
===================================================================
---
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/CompositeElementImpl.java 2010-01-20
12:32:25 UTC (rev 6105)
+++
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/CompositeElementImpl.java 2010-01-20
15:55:02 UTC (rev 6106)
@@ -25,7 +25,9 @@
import java.util.List;
import java.util.Map;
+import org.jbpm.api.model.Activity;
+
/**
* @author Tom Baeyens
*/
Modified:
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/Condition.java
===================================================================
---
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/Condition.java 2010-01-20
12:32:25 UTC (rev 6105)
+++
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/Condition.java 2010-01-20
15:55:02 UTC (rev 6106)
@@ -24,6 +24,7 @@
import java.io.Serializable;
import org.jbpm.api.model.OpenExecution;
+import org.jbpm.api.model.Transition;
/** user code that reflects a runtime calculation of a boolean value.
* Used for {@link Transition#getCondition() transition guard conditions} and
Modified:
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/ExecutionImpl.java
===================================================================
---
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/ExecutionImpl.java 2010-01-20
12:32:25 UTC (rev 6105)
+++
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/ExecutionImpl.java 2010-01-20
15:55:02 UTC (rev 6106)
@@ -42,8 +42,10 @@
import org.jbpm.api.job.Job;
import org.jbpm.api.job.Timer;
import org.jbpm.api.listener.EventListenerExecution;
+import org.jbpm.api.model.Activity;
import org.jbpm.api.model.Event;
import org.jbpm.api.model.OpenExecution;
+import org.jbpm.api.model.Transition;
import org.jbpm.api.task.Assignable;
import org.jbpm.api.task.AssignmentHandler;
import org.jbpm.internal.log.Log;
Modified:
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/OpenProcessDefinition.java
===================================================================
---
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/OpenProcessDefinition.java 2010-01-20
12:32:25 UTC (rev 6105)
+++
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/OpenProcessDefinition.java 2010-01-20
15:55:02 UTC (rev 6106)
@@ -22,6 +22,7 @@
package org.jbpm.pvm.internal.model;
import org.jbpm.api.ProcessDefinition;
+import org.jbpm.api.model.Activity;
Modified:
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/ProcessModificationsImpl.java
===================================================================
---
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/ProcessModificationsImpl.java 2010-01-20
12:32:25 UTC (rev 6105)
+++
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/ProcessModificationsImpl.java 2010-01-20
15:55:02 UTC (rev 6106)
@@ -24,8 +24,10 @@
import java.io.Serializable;
import java.util.List;
+import org.jbpm.api.model.Activity;
+
/**
* @author Tom Baeyens
*/
Deleted:
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/Transition.java
===================================================================
---
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/Transition.java 2010-01-20
12:32:25 UTC (rev 6105)
+++
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/Transition.java 2010-01-20
15:55:02 UTC (rev 6106)
@@ -1,66 +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.jbpm.pvm.internal.model;
-
-
-/**
- * a transition in a {@link OpenProcessDefinition} graph.
- *
- * <h3 id="guardconditions">Guard conditions</h3>
- * <p>TODO</p>
- *
- * <h3 id="transitionsaswaitstates">Transitions as wait
states</h3>
- * <p>A wait condition indicates wether a transition is to be taken synchronously
- * or wether the transition will behave as a wait state.
- * </p>
- *
- * <p>Transitions that are wait states can occur when an analyst has
- * an actual state (e.g. 'making loss') and a desired state (e.g. 'making
profit')
- * and models a transition between those states. In that case the transition
- * might take a long time and hence it results into a wait state for the system.
- * </p>
- *
- * <p>If the wait condition is null or if it returns false, then the transition
- * will be taking synchronously. Otherwise the transition will behave as
- * a wait state and wait for a signal on the execution.
- * </p>
- *
- * <p>Transitions as wait states has every thing to do with matching the
- * process graph to transactions on the server. If the transition is taken
- * in one (the current) transaction, then the async condition should be empty
- * or evaluate to false. If the arrival of the execution in the destination
- * activity should occur in a separate execution
- *
- * @author Tom Baeyens
- */
-public interface Transition extends ObservableElement {
-
- /** the activity from which this transition leaves. */
- Activity getSource();
-
- /** the activity in which this transition arrives. */
- Activity getDestination();
-
- /** the general purpose condition that can be used in various ways by the
- * activities. */
- Condition getCondition();
-}
\ No newline at end of file
Modified:
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/TransitionImpl.java
===================================================================
---
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/TransitionImpl.java 2010-01-20
12:32:25 UTC (rev 6105)
+++
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/TransitionImpl.java 2010-01-20
15:55:02 UTC (rev 6106)
@@ -24,6 +24,7 @@
import java.util.List;
import org.jbpm.api.model.Event;
+import org.jbpm.api.model.Transition;
/**
Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/task/LifeCycle.java
===================================================================
---
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/task/LifeCycle.java 2010-01-20
12:32:25 UTC (rev 6105)
+++
jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/task/LifeCycle.java 2010-01-20
15:55:02 UTC (rev 6106)
@@ -25,8 +25,8 @@
import java.util.Map;
import org.jbpm.api.JbpmException;
+import org.jbpm.api.model.Activity;
import org.jbpm.pvm.internal.id.IdComposer;
-import org.jbpm.pvm.internal.model.Activity;
import org.jbpm.pvm.internal.model.ActivityImpl;
import org.jbpm.pvm.internal.model.ExecutionImpl;
import org.jbpm.pvm.internal.model.ProcessDefinitionImpl;
Modified: jbpm4/trunk/modules/pvm/src/test/java/org/jbpm/pvm/builder/BuilderTest.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/test/java/org/jbpm/pvm/builder/BuilderTest.java 2010-01-20
12:32:25 UTC (rev 6105)
+++ jbpm4/trunk/modules/pvm/src/test/java/org/jbpm/pvm/builder/BuilderTest.java 2010-01-20
15:55:02 UTC (rev 6106)
@@ -24,10 +24,10 @@
import java.util.List;
import java.util.Map;
+import org.jbpm.api.model.Transition;
import org.jbpm.pvm.internal.builder.ProcessDefinitionBuilder;
import org.jbpm.pvm.internal.client.ClientProcessDefinition;
import org.jbpm.pvm.internal.model.ActivityImpl;
-import org.jbpm.pvm.internal.model.Transition;
import org.jbpm.test.BaseJbpmTestCase;
Modified:
jbpm4/trunk/modules/test-cfg/src/test/java/org/jbpm/test/custombusinesscalendarimpl/CustomBusinessCalendar.java
===================================================================
---
jbpm4/trunk/modules/test-cfg/src/test/java/org/jbpm/test/custombusinesscalendarimpl/CustomBusinessCalendar.java 2010-01-20
12:32:25 UTC (rev 6105)
+++
jbpm4/trunk/modules/test-cfg/src/test/java/org/jbpm/test/custombusinesscalendarimpl/CustomBusinessCalendar.java 2010-01-20
15:55:02 UTC (rev 6106)
@@ -42,4 +42,8 @@
}
return null;
}
+
+ public Date subtract(Date date, String duration) {
+ return null;
+ }
}
Modified:
jbpm4/trunk/modules/test-pojo/src/main/java/org/jbpm/test/activities/EventTest.java
===================================================================
---
jbpm4/trunk/modules/test-pojo/src/main/java/org/jbpm/test/activities/EventTest.java 2010-01-20
12:32:25 UTC (rev 6105)
+++
jbpm4/trunk/modules/test-pojo/src/main/java/org/jbpm/test/activities/EventTest.java 2010-01-20
15:55:02 UTC (rev 6106)
@@ -33,7 +33,7 @@
import org.jbpm.pvm.internal.client.ClientExecution;
import org.jbpm.pvm.internal.client.ClientProcessDefinition;
import org.jbpm.pvm.internal.client.ClientProcessInstance;
-import org.jbpm.pvm.internal.model.Activity;
+import org.jbpm.pvm.internal.model.ActivityImpl;
import org.jbpm.pvm.internal.model.ExecutionImpl;
import org.jbpm.test.BaseJbpmTestCase;
@@ -179,7 +179,7 @@
signal((ExecutionImpl)execution, signal, parameters);
}
public void signal(ExecutionImpl execution, String signal, Map<String, ?>
parameters) throws Exception {
- Activity activity = execution.getActivity();
+ ActivityImpl activity = execution.getActivity();
if ( (signal!=null)
&& (activity!=null)
&& (activity.hasEvent(signal))
Modified:
jbpm4/trunk/modules/test-pojo/src/main/java/org/jbpm/test/activities/FunctionalActivityTest.java
===================================================================
---
jbpm4/trunk/modules/test-pojo/src/main/java/org/jbpm/test/activities/FunctionalActivityTest.java 2010-01-20
12:32:25 UTC (rev 6105)
+++
jbpm4/trunk/modules/test-pojo/src/main/java/org/jbpm/test/activities/FunctionalActivityTest.java 2010-01-20
15:55:02 UTC (rev 6106)
@@ -30,11 +30,11 @@
import org.jbpm.api.activity.ExternalActivityBehaviour;
import org.jbpm.api.listener.EventListener;
import org.jbpm.api.listener.EventListenerExecution;
+import org.jbpm.api.model.Activity;
import org.jbpm.api.model.OpenExecution;
import org.jbpm.pvm.internal.builder.ProcessDefinitionBuilder;
import org.jbpm.pvm.internal.client.ClientProcessDefinition;
import org.jbpm.pvm.internal.client.ClientProcessInstance;
-import org.jbpm.pvm.internal.model.Activity;
import org.jbpm.pvm.internal.model.ExecutionImpl;
import org.jbpm.test.BaseJbpmTestCase;
Modified:
jbpm4/trunk/modules/test-pojo/src/main/java/org/jbpm/test/activities/ScopeVariableDeclarationTest.java
===================================================================
---
jbpm4/trunk/modules/test-pojo/src/main/java/org/jbpm/test/activities/ScopeVariableDeclarationTest.java 2010-01-20
12:32:25 UTC (rev 6105)
+++
jbpm4/trunk/modules/test-pojo/src/main/java/org/jbpm/test/activities/ScopeVariableDeclarationTest.java 2010-01-20
15:55:02 UTC (rev 6106)
@@ -26,11 +26,11 @@
import org.jbpm.api.activity.ActivityExecution;
import org.jbpm.api.activity.ExternalActivityBehaviour;
+import org.jbpm.api.model.Activity;
import org.jbpm.api.model.OpenExecution;
import org.jbpm.pvm.internal.builder.ProcessDefinitionBuilder;
import org.jbpm.pvm.internal.client.ClientExecution;
import org.jbpm.pvm.internal.client.ClientProcessDefinition;
-import org.jbpm.pvm.internal.model.Activity;
import org.jbpm.pvm.internal.model.ExecutionImpl;
import org.jbpm.pvm.internal.wire.descriptor.StringDescriptor;
import org.jbpm.test.BaseJbpmTestCase;