diff options
Diffstat (limited to 'source/com/c2kernel/lifecycle/AndSplitDef.java')
| -rw-r--r-- | source/com/c2kernel/lifecycle/AndSplitDef.java | 114 |
1 files changed, 0 insertions, 114 deletions
diff --git a/source/com/c2kernel/lifecycle/AndSplitDef.java b/source/com/c2kernel/lifecycle/AndSplitDef.java deleted file mode 100644 index af87b18..0000000 --- a/source/com/c2kernel/lifecycle/AndSplitDef.java +++ /dev/null @@ -1,114 +0,0 @@ -package com.c2kernel.lifecycle;
-
-import java.util.Vector;
-
-import com.c2kernel.graph.model.Vertex;
-import com.c2kernel.graph.traversal.GraphTraversal;
-import com.c2kernel.lifecycle.instance.AndSplit;
-import com.c2kernel.lifecycle.instance.WfVertex;
-/**
- * @version $Revision: 1.19 $ $Date: 2005/09/29 10:18:31 $
- * @author $Author: abranson $
- */
-
-public class AndSplitDef extends WfVertexDef
-{
- /**
- * @see java.lang.Object#Object()
- */
- public AndSplitDef()
- {
- mErrors = new Vector<String>(0, 1);
- getProperties().put("RoutingScriptName", "");
- getProperties().put("RoutingScriptVersion", "");
- }
-
- /**
- * @see com.c2kernel.lifecycle.WfVertexDef#verify()
- */
- @Override
- public boolean verify()
- {
- mErrors.removeAllElements();
- boolean err = true;
- int nbInEdges = getInEdges().length;
- if (nbInEdges == 0 && this.getID() != getParent().getChildrenGraphModel().getStartVertexId())
- {
- mErrors.add("Unreachable");
- err = false;
- }
- else if (nbInEdges > 1)
- {
- mErrors.add("Bad nb of previous");
- err = false;
- }
- else
- {
- if (getOutEdges().length <= 1)
- {
- mErrors.add("not enough next");
- err = false;
- }
- else if (!(this instanceof LoopDef))
- {
- Vertex[] outV = getOutGraphables();
- Vertex[] anteVertices =
- GraphTraversal.getTraversal(getParent().getChildrenGraphModel(), this, GraphTraversal.kUp, false);
- boolean loop = false;
- boolean errInLoop = true;
- for (int i = 0; i < outV.length; i++)
- {
- for (int j = 0; j < anteVertices.length; j++)
- if (!loop && outV[i].getID() == anteVertices[j].getID())
- {
- if (outV[i] instanceof LoopDef)
- {
- loop = true;
- j = anteVertices.length;
- i = outV.length;
- }
- else
- {
- errInLoop = false;
- }
- }
- }
- if (errInLoop && loop)
- {
- mErrors.add("Problem in Loop");
- err = false;
- }
- }
- }
- return err;
- }
-
- @Override
- public boolean loop()
- {
- boolean loop2 = false;
- if (!loopTested)
- {
- loopTested = true;
- if (getOutGraphables().length != 0)
- {
- Vertex[] outVertices = getOutGraphables();
- for (int i = 0; i < outVertices.length; i++)
- {
- WfVertexDef tmp = (WfVertexDef) getOutGraphables()[i];
- loop2 = loop2 || tmp.loop();
- }
- }
- }
- loopTested = false;
- return loop2;
- }
-
- @Override
- public WfVertex instantiate() {
- AndSplit newSplit = new AndSplit();
- configureInstance(newSplit);
- return newSplit;
- }
-
-}
|
