diff options
| author | Andrew Branson <andrew.branson@cern.ch> | 2014-10-07 09:18:11 +0200 |
|---|---|---|
| committer | Andrew Branson <andrew.branson@cern.ch> | 2014-10-07 09:18:11 +0200 |
| commit | 0ed2c1124cf1b9e49a2ec1fa0126a8df09f9e758 (patch) | |
| tree | e3a56cee83865f8c703deb790c15d3e79e871a82 /src/main/java/com/c2kernel/lifecycle/instance/Join.java | |
| parent | 50aa8aaab42fa62267aa1ae6a6070013096f5082 (diff) | |
Repackage to org.cristalise
Diffstat (limited to 'src/main/java/com/c2kernel/lifecycle/instance/Join.java')
| -rw-r--r-- | src/main/java/com/c2kernel/lifecycle/instance/Join.java | 232 |
1 files changed, 0 insertions, 232 deletions
diff --git a/src/main/java/com/c2kernel/lifecycle/instance/Join.java b/src/main/java/com/c2kernel/lifecycle/instance/Join.java deleted file mode 100644 index 1a415d7..0000000 --- a/src/main/java/com/c2kernel/lifecycle/instance/Join.java +++ /dev/null @@ -1,232 +0,0 @@ -/**
- * This file is part of the CRISTAL-iSE kernel.
- * Copyright (c) 2001-2014 The CRISTAL Consortium. All rights reserved.
- *
- * This library 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 3 of the License, or (at
- * your option) any later version.
- *
- * This library is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; with out 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 library; if not, write to the Free Software Foundation,
- * Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
- *
- * http://www.fsf.org/licensing/licenses/lgpl.html
- */
-package com.c2kernel.lifecycle.instance;
-import java.util.Vector;
-
-import com.c2kernel.common.AccessRightsException;
-import com.c2kernel.common.InvalidDataException;
-import com.c2kernel.common.InvalidTransitionException;
-import com.c2kernel.common.ObjectAlreadyExistsException;
-import com.c2kernel.common.ObjectCannotBeUpdated;
-import com.c2kernel.common.ObjectNotFoundException;
-import com.c2kernel.common.PersistencyException;
-import com.c2kernel.graph.model.Vertex;
-import com.c2kernel.graph.traversal.GraphTraversal;
-import com.c2kernel.lookup.AgentPath;
-import com.c2kernel.lookup.ItemPath;
-/**
- * @version $Revision: 1.52 $ $Date: 2005/05/10 15:14:54 $
- * @author $Author: abranson $
- */
-public class Join extends WfVertex
-{
- public Vector<String> mErrors;
- /**
- * @see java.lang.Object#Object()
- */
- public Join()
- {
- super();
- mErrors = new Vector<String>(0, 1);
- }
- private boolean loopTested;
- public int counter = 0;
-
- /**
- * @throws InvalidDataException
- * @throws ObjectNotFoundException
- * @throws AccessRightsException
- * @throws InvalidTransitionException
- * @throws PersistencyException
- * @throws ObjectAlreadyExistsException
- * @throws ObjectCannotBeUpdated
- * @see com.c2kernel.lifecycle.instance.WfVertex#runNext()
- */
- @Override
- public void runNext(AgentPath agent, ItemPath item) throws InvalidDataException
- {
- AdvancementCalculator adv = new AdvancementCalculator();
- adv.calculate((CompositeActivity) getParent());
- if (adv.hasprevActive.get(String.valueOf(getID())) == null)
- {
- Vertex[] outVertices = getOutGraphables();
- if (outVertices.length > 0)
- {
- WfVertex nextAct = (WfVertex) outVertices[0];
- nextAct.run(agent, item);
- }
- else
- super.runNext(agent, item);
- }
- }
- /**
- * Method addNext.
- *
- * @param idNext
- */
- public void addNext(String idNext)
- {
- new Next(this, (WfVertex) getParent().search(idNext));
- }
- /**
- * @throws InvalidDataException
- * @see com.c2kernel.lifecycle.instance.WfVertex#reinit(int)
- */
- @Override
- public void reinit(int idLoop) throws InvalidDataException
- {
- Vertex[] outVertices = getOutGraphables();
- if (outVertices.length == 1)
- {
- WfVertex nextAct = (WfVertex) outVertices[0];
- nextAct.reinit(idLoop);
- }
- }
-
- @Override
- public boolean verify()
- {
- mErrors.removeAllElements();
- int nbOutEdges = getOutEdges().length;
- int nbInEdges = getInEdges().length;
- String type = (String) getProperties().get("Type");
- if (nbInEdges < 1)
- {
- mErrors.add("not enough previous");
- return false;
- }
- if (type != null && type.equals("Route"))
- {
- if (nbInEdges > 1)
- {
- mErrors.add("Bad nb of previous");
- return false;
- }
- }
- if (nbOutEdges > 1)
- {
- mErrors.add("too many next");
- return false;
- }
- if (nbOutEdges == 0)
- {
- if (!((CompositeActivity) getParent()).hasGoodNumberOfActivity())
- {
- mErrors.add("too many endpoints");
- return false;
- }
- }
- Vertex[] outV = getOutGraphables();
- Vertex[] anteVertices = GraphTraversal.getTraversal(getParent().getChildrenGraphModel(), this, GraphTraversal.kUp, false);
- boolean loop = false;
- boolean errInLoop = false;
- 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 Loop)
- {
- loop = true;
- j = anteVertices.length;
- i = outV.length;
- }
- else
- {
- errInLoop = true;
- }
- }
- }
- if (errInLoop && loop)
- {
- mErrors.add("Problem in Loop");
- return false;
- }
- return true;
- }
- /**
- * @see com.c2kernel.lifecycle.instance.WfVertex#getErrors()
- */
- @Override
- public String getErrors()
- {
- if (mErrors.size() == 0)
- return "No error";
- else
- return mErrors.elementAt(0);
- }
- /**
- * @throws InvalidDataException
- * @throws ObjectNotFoundException
- * @throws AccessRightsException
- * @throws InvalidTransitionException
- * @throws PersistencyException
- * @throws ObjectAlreadyExistsException
- * @throws ObjectCannotBeUpdated
- * @see com.c2kernel.lifecycle.instance.WfVertex#run()
- */
- @Override
- public void run(AgentPath agent, ItemPath item) throws InvalidDataException
- {
- runNext(agent, item);
- }
- /**
- * @see com.c2kernel.lifecycle.instance.WfVertex#addNext(com.c2kernel.lifecycle.instance.WfVertex)
- */
- @Override
- public Next addNext(WfVertex vertex)
- {
- return new Next(this, vertex);
- }
- /**
- * @see com.c2kernel.lifecycle.instance.WfVertex#loop()
- */
- @Override
- public boolean loop()
- {
- boolean loop2 = false;
- if (!loopTested)
- {
- loopTested = true;
- if (getOutGraphables().length != 0)
- loop2 = ((WfVertex) getOutGraphables()[0]).loop();
- }
- else
- loop2 = true;
- loopTested = false;
- return loop2;
- }
- @Override
- public void runFirst(AgentPath agent, ItemPath item) throws InvalidDataException
- {
- runNext(agent, item);
- }
- /*
- * (non-Javadoc)
- *
- * @see com.c2kernel.graph.model.Vertex#isJoin()
- */
- @Override
- public boolean isJoin()
- {
- return true;
- }
-}
|
