From 31b84df6af02b50c1e63ed8c7fbc26c67271a0a1 Mon Sep 17 00:00:00 2001 From: Ludovic Apvrille <ludovic.apvrille@telecom-paristech.fr> Date: Tue, 13 Oct 2009 15:07:12 +0000 Subject: [PATCH] Id and name to EBRDD components --- src/req/ebrdd/EBRDD.java | 14 +++++++------- src/req/ebrdd/EBRDDActionState.java | 3 ++- src/req/ebrdd/EBRDDChoice.java | 5 +++-- src/req/ebrdd/EBRDDComponent.java | 15 ++++++--------- src/req/ebrdd/EBRDDERC.java | 5 +++-- src/req/ebrdd/EBRDDGeneralComponent.java | 20 +++++++++++++++++--- src/req/ebrdd/EBRDDLoop.java | 3 ++- src/req/ebrdd/EBRDDSequence.java | 3 ++- src/req/ebrdd/EBRDDStart.java | 3 ++- src/req/ebrdd/EBRDDStop.java | 3 ++- src/req/ebrdd/ERB.java | 3 ++- src/req/ebrdd/ERCElement.java | 3 ++- src/req/ebrdd/ESO.java | 3 ++- src/ui/EBRDDTranslator.java | 21 ++++++++++++--------- 14 files changed, 64 insertions(+), 40 deletions(-) diff --git a/src/req/ebrdd/EBRDD.java b/src/req/ebrdd/EBRDD.java index 75623fe36e..c3901b307c 100644 --- a/src/req/ebrdd/EBRDD.java +++ b/src/req/ebrdd/EBRDD.java @@ -61,7 +61,7 @@ public class EBRDD extends ArrayList<EBRDDComponent> { public EBRDD(String _name) { name = _name; - ads = new EBRDDStart(); + ads = new EBRDDStart("Start", null); add(ads); } @@ -112,7 +112,7 @@ public class EBRDD extends ArrayList<EBRDDComponent> { for (i=0; i<size(); i++) { ad1 = get(i); for(j=0; j<ad1.getNbNext(); j++) { - if (ad1.getNext(j) == ad) { + if (ad1.getNextElement(j) == ad) { return ad1; } } @@ -141,21 +141,21 @@ public class EBRDD extends ArrayList<EBRDDComponent> { ((EBRDDERC)elt).exploreString(((EBRDDERC)elt).getRoot(), sb, tabLevel+1); } - if (elt.getRealNbOfNext() == 0) { + if (elt.getNbNext() == 0) { return; } - if (elt.getRealNbOfNext() == 1) { - exploreString(elt.getNext(0), sb, tabLevel); + if (elt.getNbNext() == 1) { + exploreString(elt.getNextElement(0), sb, tabLevel); return; } tabLevel ++; - for(int i=0; i<elt.getRealNbOfNext(); i++) { + for(int i=0; i<elt.getNbNext(); i++) { for(j=0; j<tabLevel; j++) { sb.append("\t"); } sb.append("#" + i + ":\n"); - exploreString(elt.getNext(i), sb, tabLevel+1); + exploreString(elt.getNextElement(i), sb, tabLevel+1); } } diff --git a/src/req/ebrdd/EBRDDActionState.java b/src/req/ebrdd/EBRDDActionState.java index 2f04aaeee9..61d6a2e21a 100644 --- a/src/req/ebrdd/EBRDDActionState.java +++ b/src/req/ebrdd/EBRDDActionState.java @@ -50,7 +50,8 @@ package req.ebrdd; public class EBRDDActionState extends EBRDDComponent { protected String action; - public EBRDDActionState() { + public EBRDDActionState(String _name, Object _referenceObject) { + super(_name, _referenceObject); } public String toString() { diff --git a/src/req/ebrdd/EBRDDChoice.java b/src/req/ebrdd/EBRDDChoice.java index 50b98444ff..22d0912ec5 100755 --- a/src/req/ebrdd/EBRDDChoice.java +++ b/src/req/ebrdd/EBRDDChoice.java @@ -52,7 +52,8 @@ import myutil.*; public class EBRDDChoice extends EBRDDComponent { private ArrayList<String> guards; - public EBRDDChoice() { + public EBRDDChoice(String _name, Object _referenceObject) { + super(_name, _referenceObject); nbNext = -1; guards = new ArrayList<String>(); } @@ -147,7 +148,7 @@ public class EBRDDChoice extends EBRDDComponent { // Put else at the end index = getElseGuard(); if ((index > -1) && (index != (getNbGuard() - 1))) { - next = getNext(index); + next = getNextElement(index); guard = getGuard(index); guards.remove(index); removeNext(index); diff --git a/src/req/ebrdd/EBRDDComponent.java b/src/req/ebrdd/EBRDDComponent.java index 4e24ca4bcc..99f487464b 100644 --- a/src/req/ebrdd/EBRDDComponent.java +++ b/src/req/ebrdd/EBRDDComponent.java @@ -52,12 +52,13 @@ public abstract class EBRDDComponent extends EBRDDGeneralComponent implements Cl protected ArrayList<EBRDDComponent> nexts; - public EBRDDComponent() { + public EBRDDComponent(String _name, Object _referenceObject) { + super(_name, _referenceObject); nexts = new ArrayList<EBRDDComponent>(); } - public EBRDDComponent getNext(int index) { + public EBRDDComponent getNextElement(int index) { if (index < nexts.size()) { return nexts.get(index); } else { @@ -65,19 +66,15 @@ public abstract class EBRDDComponent extends EBRDDGeneralComponent implements Cl } } - public int getRealNbOfNext() { + public int getNbNext() { return nexts.size(); } - public int getNbNext() { + public int getNormalizedNbNext() { return nbNext; } - public int realNbOfNext() { - return nexts.size(); - } - - public ArrayList<EBRDDComponent> getAllNext() { + public ArrayList<EBRDDComponent> getNexts() { return nexts; } diff --git a/src/req/ebrdd/EBRDDERC.java b/src/req/ebrdd/EBRDDERC.java index 3e03ea4098..c746af2772 100644 --- a/src/req/ebrdd/EBRDDERC.java +++ b/src/req/ebrdd/EBRDDERC.java @@ -52,7 +52,8 @@ public class EBRDDERC extends EBRDDComponent { protected ArrayList<ERCElement> treeElements; protected ESO root; - public EBRDDERC() { + public EBRDDERC(String _name, Object _referenceObject) { + super(_name, _referenceObject); treeElements = new ArrayList<ERCElement>(); } @@ -98,7 +99,7 @@ public class EBRDDERC extends EBRDDComponent { // Must add a new ESO System.out.println("Default ESO added to ERC"); - ESO eso = new ESO(); + ESO eso = new ESO("ESO", null); eso.addSon(elt); addTreeElement(eso); setRoot(eso); diff --git a/src/req/ebrdd/EBRDDGeneralComponent.java b/src/req/ebrdd/EBRDDGeneralComponent.java index 026d954fc8..771806f570 100644 --- a/src/req/ebrdd/EBRDDGeneralComponent.java +++ b/src/req/ebrdd/EBRDDGeneralComponent.java @@ -47,9 +47,23 @@ package req.ebrdd; import java.util.*; -public abstract class EBRDDGeneralComponent { - - public EBRDDGeneralComponent() { +import tmltranslator.*; + +public abstract class EBRDDGeneralComponent extends DIPLOElement { + protected Object referenceObject; + protected String name; + + public EBRDDGeneralComponent(String _name, Object _referenceObject) { + name = _name; + referenceObject = _referenceObject; + } + + public String getName() { + return name; + } + + public Object getReferenceObject() { + return referenceObject; } diff --git a/src/req/ebrdd/EBRDDLoop.java b/src/req/ebrdd/EBRDDLoop.java index 3e10bb503d..3218084b5a 100755 --- a/src/req/ebrdd/EBRDDLoop.java +++ b/src/req/ebrdd/EBRDDLoop.java @@ -52,7 +52,8 @@ public class EBRDDLoop extends EBRDDComponent { private String init, condition, increment; - public EBRDDLoop() { + public EBRDDLoop(String _name, Object _referenceObject) { + super(_name, _referenceObject); nbNext = 2; } diff --git a/src/req/ebrdd/EBRDDSequence.java b/src/req/ebrdd/EBRDDSequence.java index dfdf1383e2..ea81c08a5d 100644 --- a/src/req/ebrdd/EBRDDSequence.java +++ b/src/req/ebrdd/EBRDDSequence.java @@ -51,7 +51,8 @@ import java.util.*; public class EBRDDSequence extends EBRDDComponent{ private Vector indexes; - public EBRDDSequence() { + public EBRDDSequence(String _name, Object _referenceObject) { + super(_name, _referenceObject); nbNext = -1; indexes = new Vector(); } diff --git a/src/req/ebrdd/EBRDDStart.java b/src/req/ebrdd/EBRDDStart.java index 62440af46f..ee3414df19 100644 --- a/src/req/ebrdd/EBRDDStart.java +++ b/src/req/ebrdd/EBRDDStart.java @@ -49,7 +49,8 @@ package req.ebrdd; public class EBRDDStart extends EBRDDComponent { - public EBRDDStart() { + public EBRDDStart(String _name, Object _referenceObject) { + super(_name, _referenceObject); nbNext = 1; } diff --git a/src/req/ebrdd/EBRDDStop.java b/src/req/ebrdd/EBRDDStop.java index c78b902d50..5faf822f46 100644 --- a/src/req/ebrdd/EBRDDStop.java +++ b/src/req/ebrdd/EBRDDStop.java @@ -49,7 +49,8 @@ package req.ebrdd; public class EBRDDStop extends EBRDDComponent { - public EBRDDStop() { + public EBRDDStop(String _name, Object _referenceObject) { + super(_name, _referenceObject); nbNext = 0; } diff --git a/src/req/ebrdd/ERB.java b/src/req/ebrdd/ERB.java index 082506139c..8b667702ed 100644 --- a/src/req/ebrdd/ERB.java +++ b/src/req/ebrdd/ERB.java @@ -52,7 +52,8 @@ public class ERB extends ERCElement { protected String evt, condition, action; - public ERB() { + public ERB(String _name, Object _referenceObject) { + super(_name, _referenceObject); } public void setEvent(String _evt) { diff --git a/src/req/ebrdd/ERCElement.java b/src/req/ebrdd/ERCElement.java index ec71bf3383..5334b68e99 100644 --- a/src/req/ebrdd/ERCElement.java +++ b/src/req/ebrdd/ERCElement.java @@ -50,7 +50,8 @@ import java.util.*; public abstract class ERCElement extends EBRDDGeneralComponent implements Cloneable { protected boolean negated; - public ERCElement() { + public ERCElement(String _name, Object _referenceObject) { + super(_name, _referenceObject); } public void setNegated(boolean _negated) { diff --git a/src/req/ebrdd/ESO.java b/src/req/ebrdd/ESO.java index 56676c27ed..4ef1fd7700 100644 --- a/src/req/ebrdd/ESO.java +++ b/src/req/ebrdd/ESO.java @@ -59,7 +59,8 @@ public class ESO extends ERCElement { private Vector indexes; - public ESO() { + public ESO(String _name, Object _referenceObject) { + super(_name, _referenceObject); sons = new ArrayList<ERCElement>(); indexes = new Vector(); } diff --git a/src/ui/EBRDDTranslator.java b/src/ui/EBRDDTranslator.java index 239a1dae61..e25b79d45c 100755 --- a/src/ui/EBRDDTranslator.java +++ b/src/ui/EBRDDTranslator.java @@ -141,41 +141,44 @@ public class EBRDDTranslator { ERB erb; int i; + int cpt=0; + start = ebrdd.getStartState(); listE.addCor(start, tss); // Creation of other elements iterator = list.listIterator(); while(iterator.hasNext()) { + cpt++; tgc = (TGComponent)(iterator.next()); // Action if (tgc instanceof ui.ebrdd.EBRDDActionState) { - acst = new req.ebrdd.EBRDDActionState(); + acst = new req.ebrdd.EBRDDActionState("Action state"+cpt, tgc); acst.setAction(((ui.ebrdd.EBRDDActionState)tgc).getAction()); listE.addCor(acst, tgc); // Stop } else if (tgc instanceof ui.ebrdd.EBRDDStopState) { - stop = new req.ebrdd.EBRDDStop(); + stop = new req.ebrdd.EBRDDStop("Stop"+cpt, tgc); listE.addCor(stop, tgc); // Choice } else if (tgc instanceof ui.ebrdd.EBRDDChoice) { // guards are added later on - ch = new req.ebrdd.EBRDDChoice(); + ch = new req.ebrdd.EBRDDChoice("Choice"+cpt, tgc); listE.addCor(ch, tgc); // Sequence } else if (tgc instanceof ui.ebrdd.EBRDDSequence) { // guards are added later on - seq = new req.ebrdd.EBRDDSequence(); + seq = new req.ebrdd.EBRDDSequence("Sequence"+cpt, tgc); listE.addCor(seq, tgc); // Loop } else if (tgc instanceof ui.ebrdd.EBRDDForLoop) { // guards are added later on - loop = new req.ebrdd.EBRDDLoop(); + loop = new req.ebrdd.EBRDDLoop("Loop"+cpt, tgc); listE.addCor(loop, tgc); loop.setInit(((ui.ebrdd.EBRDDForLoop)tgc).getInit()); loop.setCondition(((ui.ebrdd.EBRDDForLoop)tgc).getCondition()); @@ -184,7 +187,7 @@ public class EBRDDTranslator { // ERC } else if (tgc instanceof ui.ebrdd.EBRDDERC) { // ERC's internal elements are built later on - erc = new req.ebrdd.EBRDDERC(); + erc = new req.ebrdd.EBRDDERC("ERC"+cpt, tgc); listE.addCor(erc, tgc); } } @@ -215,7 +218,7 @@ public class EBRDDTranslator { if (tgc1 instanceof ui.ebrdd.EBRDDESO) { System.out.println("ESO found"); esotgc = (ui.ebrdd.EBRDDESO)tgc1; - eso = new req.ebrdd.ESO(); + eso = new req.ebrdd.ESO("ESO"+cpt, esotgc); listE.addCor(eso, esotgc); eso.setID(esotgc.getID()); eso.setTimeout(esotgc.getTimeout()); @@ -227,7 +230,7 @@ public class EBRDDTranslator { } else if (tgc1 instanceof ui.ebrdd.EBRDDERB) { System.out.println("ERB found"); erbtgc = (ui.ebrdd.EBRDDERB)tgc1; - erb = new req.ebrdd.ERB(); + erb = new req.ebrdd.ERB("ERB" + cpt, erbtgc); listE.addCor(erb, erbtgc); erb.setEvent(erbtgc.getEvent()); erb.setAction(erbtgc.getAction()); @@ -349,7 +352,7 @@ public class EBRDDTranslator { } } else if (tgc instanceof ui.ebrdd.EBRDDForLoop) { loop = (req.ebrdd.EBRDDLoop)(listE.getEBRDDGeneralComponent(tgc)); - if (loop.realNbOfNext() != 2) { + if (loop.getNbNext() != 2) { CheckingError ce = new CheckingError(CheckingError.BEHAVIOR_ERROR, "Loop should have exactly two next elements"); ce.setTDiagramPanel(ebrddp); ce.setTGComponent(tgc); -- GitLab