From 8b32fe15554c0103585321c3d397f6e46dd451b4 Mon Sep 17 00:00:00 2001 From: Andrew Branson Date: Tue, 17 Sep 2013 08:54:33 +0200 Subject: Merge and tidy after 2.4 --- .../com/c2kernel/lifecycle/instance/Activity.java | 14 ++++--- .../lifecycle/instance/AdvancementCalculator.java | 12 +----- .../lifecycle/instance/CompositeActivity.java | 7 +++- .../java/com/c2kernel/lifecycle/instance/Join.java | 2 +- .../com/c2kernel/lifecycle/instance/WfVertex.java | 2 +- .../instance/stateMachine/StateMachine.java | 2 +- .../instance/stateMachine/Transition.java | 44 +++++++++++----------- 7 files changed, 40 insertions(+), 43 deletions(-) (limited to 'src/main/java') diff --git a/src/main/java/com/c2kernel/lifecycle/instance/Activity.java b/src/main/java/com/c2kernel/lifecycle/instance/Activity.java index 71909a5..6e03d01 100644 --- a/src/main/java/com/c2kernel/lifecycle/instance/Activity.java +++ b/src/main/java/com/c2kernel/lifecycle/instance/Activity.java @@ -101,6 +101,10 @@ public class Activity extends WfVertex this.state = state; } + public boolean isFinished() throws InvalidDataException { + return getStateMachine().getState(state).isFinished(); + } + /** cf Item request * @throws ObjectNotFoundException @@ -303,10 +307,10 @@ public class Activity extends WfVertex * @throws InvalidDataException * @throws ObjectNotFoundException */ @Override - public void reinit(int idLoop) + public void reinit(int idLoop) throws InvalidDataException { Vertex[] outVertices = getOutGraphables(); - state = getStateMachine().getInitialState().getId(); + setState(getStateMachine().getInitialState().getId()); if (outVertices.length > 0) { WfVertex nextAct = (WfVertex) outVertices[0]; @@ -382,15 +386,15 @@ public class Activity extends WfVertex /** * returns the lists of jobs for the activity and children (cf com.c2kernel.entity.Job) */ - public ArrayList calculateJobs(AgentPath agent, int itemSysKey, boolean recurse) + public ArrayList calculateJobs(AgentPath agent, int itemSysKey, boolean recurse) throws ObjectNotFoundException, InvalidDataException { return calculateJobsBase(agent, itemSysKey, false); } // - public ArrayList calculateAllJobs(AgentPath agent, int itemSysKey, boolean recurse) + public ArrayList calculateAllJobs(AgentPath agent, int itemSysKey, boolean recurse) throws ObjectNotFoundException, InvalidDataException { return calculateJobsBase(agent, itemSysKey, true); } - private ArrayList calculateJobsBase(AgentPath agent, int itemSysKey, boolean includeInactive) + private ArrayList calculateJobsBase(AgentPath agent, int itemSysKey, boolean includeInactive) throws ObjectNotFoundException, InvalidDataException { Logger.msg(7, "calculateJobs - " + getPath()); ArrayList jobs = new ArrayList(); diff --git a/src/main/java/com/c2kernel/lifecycle/instance/AdvancementCalculator.java b/src/main/java/com/c2kernel/lifecycle/instance/AdvancementCalculator.java index 982d951..6011c13 100644 --- a/src/main/java/com/c2kernel/lifecycle/instance/AdvancementCalculator.java +++ b/src/main/java/com/c2kernel/lifecycle/instance/AdvancementCalculator.java @@ -4,7 +4,6 @@ import java.io.Serializable; import java.util.Hashtable; import com.c2kernel.graph.model.Vertex; -import com.c2kernel.lifecycle.instance.stateMachine.States; //import com.c2kernel.utils.Logger; /** @author XSeb74 */ public class AdvancementCalculator implements Serializable @@ -87,20 +86,11 @@ public class AdvancementCalculator implements Serializable { current.mCurrentNbActExp += 1; current.mMaximuNbActexp += 1; - if (act.getCurrentState() == States.FINISHED) + if (act.isFinished()) { current.mNbActpassed += 1; current.mNbActpassedWithCurrent += 1; } - else if (act.getActive()&&act.getState() calculateJobs(AgentPath agent, int itemSysKey, boolean recurse) + public ArrayList calculateJobs(AgentPath agent, int itemSysKey, boolean recurse) throws ObjectNotFoundException, InvalidDataException { ArrayList jobs = new ArrayList(); boolean childActive = false; @@ -318,7 +321,7 @@ public class CompositeActivity extends Activity } @Override - public ArrayList calculateAllJobs(AgentPath agent, int itemSysKey, boolean recurse) + public ArrayList calculateAllJobs(AgentPath agent, int itemSysKey, boolean recurse) throws ObjectNotFoundException, InvalidDataException { ArrayList jobs = new ArrayList(); if (recurse) diff --git a/src/main/java/com/c2kernel/lifecycle/instance/Join.java b/src/main/java/com/c2kernel/lifecycle/instance/Join.java index b643ff8..173f57c 100644 --- a/src/main/java/com/c2kernel/lifecycle/instance/Join.java +++ b/src/main/java/com/c2kernel/lifecycle/instance/Join.java @@ -58,7 +58,7 @@ public class Join extends WfVertex * @see com.c2kernel.lifecycle.instance.WfVertex#reinit(int) */ @Override - public void reinit(int idLoop) + public void reinit(int idLoop) throws InvalidDataException { Vertex[] outVertices = getOutGraphables(); if (outVertices.length == 1) diff --git a/src/main/java/com/c2kernel/lifecycle/instance/WfVertex.java b/src/main/java/com/c2kernel/lifecycle/instance/WfVertex.java index fba00b3..b0872c2 100644 --- a/src/main/java/com/c2kernel/lifecycle/instance/WfVertex.java +++ b/src/main/java/com/c2kernel/lifecycle/instance/WfVertex.java @@ -61,7 +61,7 @@ public abstract class WfVertex extends GraphableVertex * @throws InvalidDataException * @throws ObjectNotFoundException */ - public abstract void reinit( int idLoop ); + public abstract void reinit( int idLoop ) throws InvalidDataException; /** * Method verify. diff --git a/src/main/java/com/c2kernel/lifecycle/instance/stateMachine/StateMachine.java b/src/main/java/com/c2kernel/lifecycle/instance/stateMachine/StateMachine.java index 6d8033c..f9cf144 100644 --- a/src/main/java/com/c2kernel/lifecycle/instance/stateMachine/StateMachine.java +++ b/src/main/java/com/c2kernel/lifecycle/instance/stateMachine/StateMachine.java @@ -132,7 +132,7 @@ public class StateMachine implements DescriptionObject State currentState = getState(act.getState()); if (transition.originState.equals(currentState)) { transition.getPerformingRole(act, agent); - return transition.terminalState; + return transition.targetState; } else throw new InvalidTransitionException(); diff --git a/src/main/java/com/c2kernel/lifecycle/instance/stateMachine/Transition.java b/src/main/java/com/c2kernel/lifecycle/instance/stateMachine/Transition.java index b88ddab..9815889 100644 --- a/src/main/java/com/c2kernel/lifecycle/instance/stateMachine/Transition.java +++ b/src/main/java/com/c2kernel/lifecycle/instance/stateMachine/Transition.java @@ -19,17 +19,17 @@ public class Transition implements Serializable { int id; String name; - int originStateCode; - int terminalStateCode; + int originStateId; + int targetStateId; State originState; - State terminalState; + State targetState; String reservation; String enabledProp; // Boolean property that permits this transition e.g. 'Skippable' // activation properties boolean requiresActive = true; // Whether the activity must be active for this transition to be available - boolean finishing; // whether the terminal state is a finishing state; + boolean finishing; // whether the target state is a finishing state; // permissions String roleOverride; @@ -56,13 +56,13 @@ public class Transition implements Serializable { this.originState = originState; } - public State getTerminalState() { - return terminalState; + public State getTargetState() { + return targetState; } - public void setTerminalState(State terminalState) { - this.terminalState = terminalState; - finishing = terminalState.finished; + public void setTargetState(State targetState) { + this.targetState = targetState; + finishing = targetState.finished; } public String getEnabledProp() { @@ -119,25 +119,25 @@ public class Transition implements Serializable { protected boolean resolveStates(HashMap states) { boolean allFound = true; - if (states.keySet().contains(originStateCode)) { - originState = states.get(originStateCode); + if (states.keySet().contains(originStateId)) { + originState = states.get(originStateId); originState.addPossibleTransition(this); } else allFound = false; - if (states.keySet().contains(terminalStateCode)) - terminalState = states.get(terminalStateCode); + if (states.keySet().contains(targetStateId)) + targetState = states.get(targetStateId); else allFound = false; return allFound; } - public int getOriginStateCode() { - return originStateCode; + public int getOriginStateId() { + return originStateId; } - public void setOriginStateCode(int originStateCode) { - this.originStateCode = originStateCode; + public void setOriginStateId(int originStateId) { + this.originStateId = originStateId; } public int getId() { @@ -148,12 +148,12 @@ public class Transition implements Serializable { this.id = id; } - public int getTerminalStateCode() { - return terminalStateCode; + public int getTargetStateId() { + return targetStateId; } - public void setTerminalStateCode(int terminalStateCode) { - this.terminalStateCode = terminalStateCode; + public void setTargetStateId(int targetStateId) { + this.targetStateId = targetStateId; } public String getPerformingRole(Activity act, AgentPath agent) throws ObjectNotFoundException, AccessRightsException { @@ -209,7 +209,7 @@ public class Transition implements Serializable { public String getReservation(Activity act, AgentPath agent) { if (reservation == null || reservation.length() == 0) - reservation = terminalState.finished?"clear":"set"; + reservation = targetState.finished?"clear":"set"; String reservedAgent = act.getCurrentAgentName(); if (reservation.equals("set")) -- cgit v1.2.3