From 652e0406afe29d53423059561d1d4f8672001fcf Mon Sep 17 00:00:00 2001 From: dblouin <dominique.blouin@telecom-paristech.fr> Date: Fri, 27 Jul 2018 15:57:45 +0200 Subject: [PATCH] Code cleanup --- .../proverifspec/ProVerifResultTrace.java | 4 +- .../java/ui/AttackTreePanelTranslator.java | 8 +- src/main/java/ui/AvatarDesignPanel.java | 74 +- .../java/ui/AvatarDesignPanelTranslator.java | 913 +++++++++--------- src/main/java/ui/DesignPanelTranslator.java | 24 +- src/main/java/ui/GTURTLEModeling.java | 30 +- src/main/java/ui/MainGUI.java | 25 +- src/main/java/ui/TGComponent.java | 15 +- src/main/java/ui/avatarbd/AvatarBDBlock.java | 95 +- src/main/java/ui/avatarbd/AvatarBDPanel.java | 171 ++-- .../avatarbd/AvatarBDPerformancePragma.java | 21 +- src/main/java/ui/avatarbd/AvatarBDPragma.java | 1 + .../avatarbd/AvatarBDStateMachineOwner.java | 20 +- .../java/ui/avatarsmd/AvatarSMDConnector.java | 1 - .../ui/avatarsmd/AvatarSMDExpireTimer.java | 35 +- .../ui/avatarsmd/AvatarSMDReceiveSignal.java | 53 +- .../ui/avatarsmd/AvatarSMDResetTimer.java | 43 +- .../ui/avatarsmd/AvatarSMDSendSignal.java | 52 +- .../java/ui/avatarsmd/AvatarSMDSetTimer.java | 36 +- .../ui/avatarsmd/AvatarSMDTransitionInfo.java | 14 +- .../java/ui/window/JDialogAvatarBlock.java | 21 +- .../java/ui/window/JDialogAvatarSignal.java | 31 +- .../java/ui/window/JDialogAvatarTimer.java | 42 +- .../ui/window/JDialogAvatarTransition.java | 38 +- .../java/ui/window/JDialogModelChecking.java | 25 +- .../ui/window/JDialogPerformancePragma.java | 22 +- src/main/java/ui/window/JDialogPragma.java | 27 +- .../java/ui/window/JDialogSafetyPragma.java | 27 +- .../ui/window/JDialogSelectAvatarBlock.java | 26 +- .../ui/window/JDialogSignalAssociation.java | 55 +- 30 files changed, 1045 insertions(+), 904 deletions(-) diff --git a/src/main/java/proverifspec/ProVerifResultTrace.java b/src/main/java/proverifspec/ProVerifResultTrace.java index 1dbf4c6c64..80cc8c1284 100644 --- a/src/main/java/proverifspec/ProVerifResultTrace.java +++ b/src/main/java/proverifspec/ProVerifResultTrace.java @@ -191,7 +191,7 @@ public class ProVerifResultTrace { } } - public ProVerifResultTrace(LinkedList<String> proverifProcess) + public ProVerifResultTrace(List<String> proverifProcess) { this.proverifProcess = proverifProcess; this.trace = new LinkedList<ProVerifResultTraceStep> (); @@ -271,7 +271,7 @@ public class ProVerifResultTrace { else { // TODO: is it possible that subtype is itself composed ? - LinkedList<TAttribute> types = adp.getAvatarBDPanel().getAttributesOfDataType(attr.getTypeOther()); + List<TAttribute> types = adp.getAvatarBDPanel().getAttributesOfDataType(attr.getTypeOther()); if (types.size() > 1) attrPart = attrName[0] + "." + attrName[1]; else diff --git a/src/main/java/ui/AttackTreePanelTranslator.java b/src/main/java/ui/AttackTreePanelTranslator.java index cd1642f894..b9de2310ee 100644 --- a/src/main/java/ui/AttackTreePanelTranslator.java +++ b/src/main/java/ui/AttackTreePanelTranslator.java @@ -57,10 +57,10 @@ public class AttackTreePanelTranslator { protected AttackTree at; protected AttackTreePanel atp; - protected LinkedList<CheckingError> checkingErrors, warnings; + protected List<CheckingError> checkingErrors, warnings; protected CorrespondanceTGElement listE; // usual list //protected CorrespondanceTGElement listB; // list for particular element -> first element of group of blocks - protected LinkedList<TDiagramPanel> panels; + protected List<TDiagramPanel> panels; public AttackTreePanelTranslator(AttackTreePanel _atp) { @@ -75,11 +75,11 @@ public class AttackTreePanelTranslator { panels = new LinkedList<TDiagramPanel>(); } - public LinkedList<CheckingError> getCheckingErrors() { + public List<CheckingError> getCheckingErrors() { return checkingErrors; } - public LinkedList<CheckingError> getWarnings() { + public List<CheckingError> getWarnings() { return warnings; } diff --git a/src/main/java/ui/AvatarDesignPanel.java b/src/main/java/ui/AvatarDesignPanel.java index bda2bf683f..dbf621edbb 100644 --- a/src/main/java/ui/AvatarDesignPanel.java +++ b/src/main/java/ui/AvatarDesignPanel.java @@ -36,9 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui; import avatartranslator.AvatarAttribute; @@ -65,8 +62,12 @@ import javax.swing.*; import javax.swing.event.ChangeEvent; import javax.swing.event.ChangeListener; import java.awt.*; -import java.util.*; +import java.util.HashMap; +import java.util.Iterator; +import java.util.LinkedList; import java.util.List; +import java.util.Map; +import java.util.Vector; /** * Class AvatarDesignPanel @@ -77,8 +78,8 @@ import java.util.List; * @see MainGUI */ public class AvatarDesignPanel extends TURTLEPanel { - public AvatarBDPanel abdp; - + + public AvatarBDPanel abdp; public AvatarDesignPanel(MainGUI _mgui) { super(_mgui); @@ -103,13 +104,13 @@ public class AvatarDesignPanel extends TURTLEPanel { } - public void setValidated(LinkedList<AvatarBDStateMachineOwner> _validated) { + public void setValidated( List<AvatarBDStateMachineOwner> _validated) { if (abdp != null) { abdp.setValidated(_validated); } } - public void setIgnored(LinkedList<AvatarBDStateMachineOwner> _ignored) { + public void setIgnored( List<AvatarBDStateMachineOwner> _ignored) { if (abdp != null) { abdp.setIgnored(_ignored); } @@ -121,14 +122,14 @@ public class AvatarDesignPanel extends TURTLEPanel { } } - public LinkedList<AvatarBDStateMachineOwner> getValidated() { + public List<AvatarBDStateMachineOwner> getValidated() { if (abdp != null) { return abdp.getValidated(); } return null; } - public LinkedList<AvatarBDStateMachineOwner> getIgnored() { + public List<AvatarBDStateMachineOwner> getIgnored() { if (abdp != null) { return abdp.getIgnored(); } @@ -179,6 +180,7 @@ public class AvatarDesignPanel extends TURTLEPanel { return; } + @Override public void init() { // Class Diagram toolbar @@ -209,37 +211,41 @@ public class AvatarDesignPanel extends TURTLEPanel { } - public LinkedList<AvatarBDLibraryFunction> getAllLibraryFunctions(String _name) { + public List<AvatarBDLibraryFunction> getAllLibraryFunctions(String _name) { return abdp.getAllLibraryFunctionsForBlock (_name); } - public LinkedList<TAttribute> getAllAttributes(String _name) { + public List<TAttribute> getAllAttributes(String _name) { return abdp.getAllAttributesOfBlock(_name); } - public LinkedList<AvatarMethod> getAllMethods(String _name) { + public List<AvatarMethod> getAllMethods(String _name) { return abdp.getAllMethodsOfBlock(_name); } - public LinkedList<AvatarSignal> getAllSignals(String _name) { + public List<AvatarSignal> getAllSignals(String _name) { return abdp.getAllSignalsOfBlock(_name); } - public LinkedList<String> getAllTimers(String _name) { + public List<String> getAllTimers(String _name) { return abdp.getAllTimersOfBlock(_name); } + @Override public String saveHeaderInXml(String extensionToName) { - if (extensionToName == null) { - return "<Modeling type=\"AVATAR Design\" nameTab=\"" + mgui.getTabName(this) + "\" >\n"; - } - return "<Modeling type=\"AVATAR Design\" nameTab=\"" + mgui.getTabName(this) + extensionToName + "\" >\n"; + if (extensionToName == null) { + return "<Modeling type=\"AVATAR Design\" nameTab=\"" + mgui.getTabName(this) + "\" >\n"; + } + + return "<Modeling type=\"AVATAR Design\" nameTab=\"" + mgui.getTabName(this) + extensionToName + "\" >\n"; } + @Override public String saveTailInXml() { return "</Modeling>\n\n\n"; } + @Override public String toString() { return mgui.getTitleAt(this) + " (Design)"; } @@ -260,13 +266,11 @@ public class AvatarDesignPanel extends TURTLEPanel { } - - - public LinkedList<TGComponent> getListOfComponentsInMutex() { + public List<TGComponent> getListOfComponentsInMutex() { TGComponent tgc; TDiagramPanel tdp; - LinkedList<TGComponent> list = new LinkedList<TGComponent>(); + List<TGComponent> list = new LinkedList<TGComponent>(); for(int i=0; i<panels.size(); i++) { tdp = panels.get(i); @@ -337,8 +341,8 @@ public class AvatarDesignPanel extends TURTLEPanel { } - public LinkedList<String> getPropertyPragmas() { - LinkedList<String> result = new LinkedList<String> (); + public List<String> getPropertyPragmas() { + List<String> result = new LinkedList<String> (); for (Object tgc: abdp.getComponentList()) { if (tgc instanceof AvatarBDPragma) { result.addAll(((AvatarBDPragma) tgc).getProperties()); @@ -348,8 +352,8 @@ public class AvatarDesignPanel extends TURTLEPanel { return result; } - public LinkedList<String> getModelPragmas() { - LinkedList<String> result = new LinkedList<String> (); + public List<String> getModelPragmas() { + List<String> result = new LinkedList<String> (); for (Object tgc: abdp.getComponentList()) { if (tgc instanceof AvatarBDPragma) { result.addAll(((AvatarBDPragma) tgc).getModels()); @@ -359,7 +363,6 @@ public class AvatarDesignPanel extends TURTLEPanel { return result; } - public void resetModelBacktracingProVerif() { if (abdp == null) { return; @@ -445,7 +448,6 @@ public class AvatarDesignPanel extends TURTLEPanel { } } - public void modelBacktracingProVerif(ProVerifOutputAnalyzer pvoa) { if (abdp == null) { @@ -456,8 +458,8 @@ public class AvatarDesignPanel extends TURTLEPanel { // Confidential attributes Map<AvatarPragmaSecret, ProVerifQueryResult> confResults = pvoa.getConfidentialityResults(); - HashMap<AvatarAttribute, AvatarPragma> secretAttributes = new HashMap<AvatarAttribute, AvatarPragma> (); - HashMap<AvatarAttribute, AvatarPragma> nonSecretAttributes = new HashMap<AvatarAttribute, AvatarPragma> (); + Map<AvatarAttribute, AvatarPragma> secretAttributes = new HashMap<AvatarAttribute, AvatarPragma> (); + Map<AvatarAttribute, AvatarPragma> nonSecretAttributes = new HashMap<AvatarAttribute, AvatarPragma> (); for (AvatarPragmaSecret pragma: confResults.keySet()) { ProVerifQueryResult result = confResults.get(pragma); @@ -473,7 +475,7 @@ public class AvatarDesignPanel extends TURTLEPanel { for (AvatarBDBlock bdBlock: abdp.getFullBlockList ()) for (TAttribute tattr: bdBlock.getAttributeList ()) { if (tattr.getType () == TAttribute.OTHER) { - LinkedList<TAttribute> types = abdp.getAttributesOfDataType (tattr.getTypeOther ()); + List<TAttribute> types = abdp.getAttributesOfDataType (tattr.getTypeOther ()); int toBeFound = types.size (); boolean ko = false; for (TAttribute type: types) { @@ -584,7 +586,7 @@ public class AvatarDesignPanel extends TURTLEPanel { if (! tattrA.getTypeOther ().equals (tattrB.getTypeOther ())) continue; - LinkedList<TAttribute> types = abdp.getAttributesOfDataType (tattrA.getTypeOther ()); + List<TAttribute> types = abdp.getAttributesOfDataType (tattrA.getTypeOther ()); int toBeFound = types.size (); boolean ko = false; boolean weakKo = false; @@ -711,13 +713,11 @@ public class AvatarDesignPanel extends TURTLEPanel { } } - public ArrayList<String> getAllNonMappedAvatarBlockNames(String _name, ADDDiagramPanel _tadp, boolean ref, String name) { + public List<String> getAllNonMappedAvatarBlockNames(String _name, ADDDiagramPanel _tadp, boolean ref, String name) { return abdp.getAllNonMappedAvatarBlockNames(_name, _tadp, ref, name); } - public ArrayList<String> getAllNonMappedAvatarChannelNames(String _name, ADDDiagramPanel _tadp, boolean ref, String name) { + public List<String> getAllNonMappedAvatarChannelNames(String _name, ADDDiagramPanel _tadp, boolean ref, String name) { return abdp.getAllNonMappedAvatarChannelNames(_name, _tadp); } - - } diff --git a/src/main/java/ui/AvatarDesignPanelTranslator.java b/src/main/java/ui/AvatarDesignPanelTranslator.java index a0dc17705e..a0bab6e8d3 100644 --- a/src/main/java/ui/AvatarDesignPanelTranslator.java +++ b/src/main/java/ui/AvatarDesignPanelTranslator.java @@ -36,9 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui; import avatartranslator.*; @@ -57,24 +54,24 @@ import java.util.*; */ public class AvatarDesignPanelTranslator { - protected AvatarDesignPanel adp; - protected List<CheckingError> checkingErrors, warnings; - protected CorrespondanceTGElement listE; // usual list + private final AvatarDesignPanel adp; + private final List<CheckingError> checkingErrors, warnings; + private final CorrespondanceTGElement listE; // usual list //protected CorrespondanceTGElement listB; // list for particular element -> first element of group of blocks - protected List <TDiagramPanel> panels; - protected Map<String, List<TAttribute>> typeAttributesMap; - protected Map<String, String> nameTypeMap; + //protected List <TDiagramPanel> panels; + private Map<String, List<TAttribute>> typeAttributesMap; + private Map<String, String> nameTypeMap; public AvatarDesignPanelTranslator(AvatarDesignPanel _adp) { adp = _adp; - reinit(); - } + // reinit(); + // } - public void reinit() { + //public void reinit() { checkingErrors = new LinkedList<CheckingError> (); warnings = new LinkedList<CheckingError> (); listE = new CorrespondanceTGElement(); - panels = new LinkedList <TDiagramPanel>(); + //panels = new LinkedList <TDiagramPanel>(); } public List<CheckingError> getErrors() { @@ -130,19 +127,21 @@ public class AvatarDesignPanelTranslator { public class ErrorAccumulator extends avatartranslator.ErrorAccumulator { private TGComponent tgc; private TDiagramPanel tdp; - private AvatarBlock ab; + // private AvatarBlock ab; - public ErrorAccumulator (TGComponent tgc, TDiagramPanel tdp, AvatarBlock ab) { - this.tgc = tgc; - this.tdp = tdp; - this.ab = ab; - } +// public ErrorAccumulator (TGComponent tgc, TDiagramPanel tdp, AvatarBlock ab) { +// this.tgc = tgc; +// this.tdp = tdp; +// this.ab = ab; +// } public ErrorAccumulator (TGComponent tgc, TDiagramPanel tdp) { - this (tgc, tdp, null); + this.tgc = tgc; + this.tdp = tdp; +// this (tgc, tdp, null); } - public CheckingError createError (String msg) { + public CheckingError createError(String msg) { UICheckingError ce = new UICheckingError (CheckingError.BEHAVIOR_ERROR, msg); ce.setTGComponent (this.tgc); ce.setTDiagramPanel (this.tdp); @@ -167,7 +166,7 @@ public class AvatarDesignPanelTranslator { } } - public void createPragmas(AvatarSpecification _as, List<AvatarBDBlock> _blocks) { + private void createPragmas(AvatarSpecification _as, List<AvatarBDBlock> _blocks) { Iterator<TGComponent> iterator = adp.getAvatarBDPanel().getComponentList().listIterator(); TGComponent tgc; AvatarBDPragma tgcn; @@ -240,7 +239,7 @@ public class AvatarDesignPanelTranslator { } } - public AvatarPragmaLatency checkPerformancePragma(String _pragma, List<AvatarBDBlock> _blocks, AvatarSpecification as, TGComponent tgc){ + public AvatarPragmaLatency checkPerformancePragma(String _pragma, List<AvatarBDBlock> _blocks, AvatarSpecification as, TGComponent tgc){ if (_pragma.contains("=") || (!_pragma.contains(">") && !_pragma.contains("<") && !_pragma.contains("?")) || !_pragma.contains("Latency(")){ UICheckingError ce = new UICheckingError(CheckingError.STRUCTURE_ERROR, "No latency expression found in pragma "+ _pragma); ce.setTDiagramPanel(adp.getAvatarBDPanel()); @@ -416,7 +415,8 @@ public class AvatarDesignPanelTranslator { } - public boolean checkSafetyPragma(String _pragma, List<AvatarBDBlock> _blocks, AvatarSpecification as, TGComponent tgc){ + + private boolean checkSafetyPragma(String _pragma, List<AvatarBDBlock> _blocks, AvatarSpecification as, TGComponent tgc){ //Todo: check types //Todo: handle complex types _pragma = _pragma.trim(); @@ -466,7 +466,8 @@ public class AvatarDesignPanelTranslator { } return true; } - public boolean statementParser(String state, AvatarSpecification as, String _pragma, TGComponent tgc){ + + private boolean statementParser(String state, AvatarSpecification as, String _pragma, TGComponent tgc){ //check the syntax of a single statement @@ -659,243 +660,243 @@ public class AvatarDesignPanelTranslator { } return true; } - public String reworkPragma(String _pragma, LinkedList<AvatarBDBlock> _blocks) { - String ret = ""; - int i; - - // Identify first keyword - _pragma = _pragma.trim(); - - int index = _pragma.indexOf(" "); - - if (index == -1) { - return null; - } - - String header = _pragma.substring(0, index).trim(); - - for(i=0; i<AvatarPragma.PRAGMAS.length; i++) { - if (header.compareTo(AvatarPragma.PRAGMAS[i]) == 0) { - break; - } - } - - // Invalid header? - if (i == AvatarPragma.PRAGMAS.length) { - TraceManager.addDev("Invalid Pragma " + 0); - return null; - } - - - - ret = AvatarPragma.PRAGMAS_TRANSLATION[i] + " "; - - // Checking for arguments - - - boolean b = ret.startsWith("Authenticity "); - boolean b1 = ret.startsWith("PrivatePublicKeys "); - String arguments [] = _pragma.substring(index+1, _pragma.length()).trim().split(" "); - String tmp; - String blockName, stateName, paramName = ""; - boolean found = false; - LinkedList<TAttribute> types; - AvatarBDBlock block; - TAttribute ta; - // AvatarBlock ab; - String myBlockName = ""; - - - - - for(i=0; i<arguments.length; i++) { - tmp = arguments[i]; - TraceManager.addDev("arguments #=" + arguments.length + " pragma=" + _pragma + " tmp=" + tmp); - - if (b1) { - - // Private Public keys? - if (i == 0) { - // Must be a block name - // Look for at least a block - found = false; - for(Object o: _blocks) { - block = (AvatarBDBlock)o; - //TraceManager.addDev("Comparing " + block.getBlockName() + " with " + tmp); - if (block.getBlockName().compareTo(tmp) ==0) { - myBlockName = block.getBlockName(); - found = true; - ret = ret + tmp; - break; - } - /*for(Object oo: block.getAttributeList()) { - ta = (TAttribute)oo; - if (ta.getId().compareTo(tmp) == 0) { - found = true; - - if ((ta.getType() == TAttribute.NATURAL) || (ta.getType() == TAttribute.INTEGER) || (ta.getType() == TAttribute.BOOLEAN)) { - ret = ret + tmp + " "; - } else if (ta.getType() == TAttribute.OTHER) { - // Must find all subsequent types - types = adp.getAvatarBDPanel().getAttributesOfDataType(ta.getTypeOther()); - if (types == null) { - TraceManager.addDev("Invalid Pragma " + 1); - return null; - - } else { - for(int j=0; j<types.size(); j++) { - ret = ret + tmp + "__" + ((TAttribute)(types.elementAt(j))).getId() + " "; - } - } - } - - } - }*/ - } - if (found == false) { - TraceManager.addDev("Invalid Pragma " + 2); - return null; - } - - } else if ((i == 1) || (i == 2)) { - // Shall be an attribute - TraceManager.addDev("i= " + i); - for(Object o: _blocks) { - block = (AvatarBDBlock)o; - TraceManager.addDev("block= " + block.getBlockName() + " my block name=" + myBlockName); - if (block.getBlockName().compareTo(myBlockName) == 0) { - TraceManager.addDev("Found the block " + ret); - for(Object oo: block.getAttributeList()) { - ta = (TAttribute)oo; - TraceManager.addDev("Attribute: " + ta.getId()); - if (ta.getId().compareTo(tmp) == 0) { - paramName = ta.getId(); - found = true; - TraceManager.addDev("Pragma " + ret + " found=" + found); - if ((ta.getType() == TAttribute.NATURAL) || (ta.getType() == TAttribute.INTEGER) || (ta.getType() == TAttribute.BOOLEAN)) { - ret = ret + " " + paramName + " "; - } else if (ta.getType() == TAttribute.OTHER) { - // Must find all subsequent types - types = adp.getAvatarBDPanel().getAttributesOfDataType(ta.getTypeOther()); - if (types == null) { - TraceManager.addDev("Invalid Pragma " + 3); - return null; - } else { - TraceManager.addDev("Pragma " + ret + " types size=" + types.size()); - for (TAttribute type: types) - ret = ret + " " + paramName + "__" + type.getId() + " "; - } - - } else { - TraceManager.addDev("Invalid Pragma " + 4); - return null; - } - - break; - } - } - } - } - } else { - // Badly formatted - TraceManager.addDev("Invalid Pragma " + 5); - return null; - } - - // Other than PrivatePublicKeys - } else { - index = tmp.indexOf("."); - if (index == -1) { - return null; - } - blockName = tmp.substring(0, index); - - //TraceManager.addDev("blockName=" + blockName); - // Search for the block - for(Object o: _blocks) { - block = (AvatarBDBlock)o; - if (block.getBlockName().compareTo(blockName) == 0) { - - if (b) { - // Authenticity - stateName = tmp.substring(index+1, tmp.length()); - //TraceManager.addDev("stateName=" + stateName); - index = stateName.indexOf("."); - if (index == -1) { - return null; - } - paramName = stateName.substring(index+1, stateName.length()); - stateName = stateName.substring(0, index); - - for(Object oo: block.getAttributeList()) { - ta = (TAttribute)oo; - if (ta.getId().compareTo(paramName) == 0) { - found = true; - - if ((ta.getType() == TAttribute.NATURAL) || (ta.getType() == TAttribute.INTEGER) || (ta.getType() == TAttribute.BOOLEAN)) { - ret = ret + blockName + "." + stateName + "." + paramName + " "; - } else if (ta.getType() == TAttribute.OTHER) { - // Must find all subsequent types - types = adp.getAvatarBDPanel().getAttributesOfDataType(ta.getTypeOther()); - if (types == null) { - return null; - } else { - for (TAttribute type: types) - ret = ret + blockName + "." + stateName + "." + paramName + "__" + type.getId() + " "; - } - - } else { - return null; - } - - break; - } - } - - } else { - // Other: confidentiality, initial system knowledge, initial session knowledge, constant - - paramName = tmp.substring(index+1, tmp.length()); - for(Object oo: block.getAttributeList()) { - ta = (TAttribute)oo; - if (ta.getId().compareTo(paramName) == 0) { - found = true; - - if ((ta.getType() == TAttribute.NATURAL) || (ta.getType() == TAttribute.INTEGER) || (ta.getType() == TAttribute.BOOLEAN)) { - ret = ret + blockName + "." + paramName + " "; - } else if (ta.getType() == TAttribute.OTHER) { - // Must find all subsequent types - types = adp.getAvatarBDPanel().getAttributesOfDataType(ta.getTypeOther()); - if (types == null) { - return null; - } else { - for (TAttribute type: types) - ret = ret + blockName + "." + paramName + "__" + type.getId() + " "; - } - - } else { - return null; - } - - break; - } - } - - } - } - } - } - - if (!found) { - return null; - } - - } - - TraceManager.addDev("Reworked pragma: " + ret); - - return ret.trim(); - } +// public String reworkPragma(String _pragma, LinkedList<AvatarBDBlock> _blocks) { +// String ret = ""; +// int i; +// +// // Identify first keyword +// _pragma = _pragma.trim(); +// +// int index = _pragma.indexOf(" "); +// +// if (index == -1) { +// return null; +// } +// +// String header = _pragma.substring(0, index).trim(); +// +// for(i=0; i<AvatarPragma.PRAGMAS.length; i++) { +// if (header.compareTo(AvatarPragma.PRAGMAS[i]) == 0) { +// break; +// } +// } +// +// // Invalid header? +// if (i == AvatarPragma.PRAGMAS.length) { +// TraceManager.addDev("Invalid Pragma " + 0); +// return null; +// } +// +// +// +// ret = AvatarPragma.PRAGMAS_TRANSLATION[i] + " "; +// +// // Checking for arguments +// +// +// boolean b = ret.startsWith("Authenticity "); +// boolean b1 = ret.startsWith("PrivatePublicKeys "); +// String arguments [] = _pragma.substring(index+1, _pragma.length()).trim().split(" "); +// String tmp; +// String blockName, stateName, paramName = ""; +// boolean found = false; +// LinkedList<TAttribute> types; +// AvatarBDBlock block; +// TAttribute ta; +// // AvatarBlock ab; +// String myBlockName = ""; +// +// +// +// +// for(i=0; i<arguments.length; i++) { +// tmp = arguments[i]; +// TraceManager.addDev("arguments #=" + arguments.length + " pragma=" + _pragma + " tmp=" + tmp); +// +// if (b1) { +// +// // Private Public keys? +// if (i == 0) { +// // Must be a block name +// // Look for at least a block +// found = false; +// for(Object o: _blocks) { +// block = (AvatarBDBlock)o; +// //TraceManager.addDev("Comparing " + block.getBlockName() + " with " + tmp); +// if (block.getBlockName().compareTo(tmp) ==0) { +// myBlockName = block.getBlockName(); +// found = true; +// ret = ret + tmp; +// break; +// } +// /*for(Object oo: block.getAttributeList()) { +// ta = (TAttribute)oo; +// if (ta.getId().compareTo(tmp) == 0) { +// found = true; +// +// if ((ta.getType() == TAttribute.NATURAL) || (ta.getType() == TAttribute.INTEGER) || (ta.getType() == TAttribute.BOOLEAN)) { +// ret = ret + tmp + " "; +// } else if (ta.getType() == TAttribute.OTHER) { +// // Must find all subsequent types +// types = adp.getAvatarBDPanel().getAttributesOfDataType(ta.getTypeOther()); +// if (types == null) { +// TraceManager.addDev("Invalid Pragma " + 1); +// return null; +// +// } else { +// for(int j=0; j<types.size(); j++) { +// ret = ret + tmp + "__" + ((TAttribute)(types.elementAt(j))).getId() + " "; +// } +// } +// } +// +// } +// }*/ +// } +// if (found == false) { +// TraceManager.addDev("Invalid Pragma " + 2); +// return null; +// } +// +// } else if ((i == 1) || (i == 2)) { +// // Shall be an attribute +// TraceManager.addDev("i= " + i); +// for(Object o: _blocks) { +// block = (AvatarBDBlock)o; +// TraceManager.addDev("block= " + block.getBlockName() + " my block name=" + myBlockName); +// if (block.getBlockName().compareTo(myBlockName) == 0) { +// TraceManager.addDev("Found the block " + ret); +// for(Object oo: block.getAttributeList()) { +// ta = (TAttribute)oo; +// TraceManager.addDev("Attribute: " + ta.getId()); +// if (ta.getId().compareTo(tmp) == 0) { +// paramName = ta.getId(); +// found = true; +// TraceManager.addDev("Pragma " + ret + " found=" + found); +// if ((ta.getType() == TAttribute.NATURAL) || (ta.getType() == TAttribute.INTEGER) || (ta.getType() == TAttribute.BOOLEAN)) { +// ret = ret + " " + paramName + " "; +// } else if (ta.getType() == TAttribute.OTHER) { +// // Must find all subsequent types +// types = adp.getAvatarBDPanel().getAttributesOfDataType(ta.getTypeOther()); +// if (types == null) { +// TraceManager.addDev("Invalid Pragma " + 3); +// return null; +// } else { +// TraceManager.addDev("Pragma " + ret + " types size=" + types.size()); +// for (TAttribute type: types) +// ret = ret + " " + paramName + "__" + type.getId() + " "; +// } +// +// } else { +// TraceManager.addDev("Invalid Pragma " + 4); +// return null; +// } +// +// break; +// } +// } +// } +// } +// } else { +// // Badly formatted +// TraceManager.addDev("Invalid Pragma " + 5); +// return null; +// } +// +// // Other than PrivatePublicKeys +// } else { +// index = tmp.indexOf("."); +// if (index == -1) { +// return null; +// } +// blockName = tmp.substring(0, index); +// +// //TraceManager.addDev("blockName=" + blockName); +// // Search for the block +// for(Object o: _blocks) { +// block = (AvatarBDBlock)o; +// if (block.getBlockName().compareTo(blockName) == 0) { +// +// if (b) { +// // Authenticity +// stateName = tmp.substring(index+1, tmp.length()); +// //TraceManager.addDev("stateName=" + stateName); +// index = stateName.indexOf("."); +// if (index == -1) { +// return null; +// } +// paramName = stateName.substring(index+1, stateName.length()); +// stateName = stateName.substring(0, index); +// +// for(Object oo: block.getAttributeList()) { +// ta = (TAttribute)oo; +// if (ta.getId().compareTo(paramName) == 0) { +// found = true; +// +// if ((ta.getType() == TAttribute.NATURAL) || (ta.getType() == TAttribute.INTEGER) || (ta.getType() == TAttribute.BOOLEAN)) { +// ret = ret + blockName + "." + stateName + "." + paramName + " "; +// } else if (ta.getType() == TAttribute.OTHER) { +// // Must find all subsequent types +// types = adp.getAvatarBDPanel().getAttributesOfDataType(ta.getTypeOther()); +// if (types == null) { +// return null; +// } else { +// for (TAttribute type: types) +// ret = ret + blockName + "." + stateName + "." + paramName + "__" + type.getId() + " "; +// } +// +// } else { +// return null; +// } +// +// break; +// } +// } +// +// } else { +// // Other: confidentiality, initial system knowledge, initial session knowledge, constant +// +// paramName = tmp.substring(index+1, tmp.length()); +// for(Object oo: block.getAttributeList()) { +// ta = (TAttribute)oo; +// if (ta.getId().compareTo(paramName) == 0) { +// found = true; +// +// if ((ta.getType() == TAttribute.NATURAL) || (ta.getType() == TAttribute.INTEGER) || (ta.getType() == TAttribute.BOOLEAN)) { +// ret = ret + blockName + "." + paramName + " "; +// } else if (ta.getType() == TAttribute.OTHER) { +// // Must find all subsequent types +// types = adp.getAvatarBDPanel().getAttributesOfDataType(ta.getTypeOther()); +// if (types == null) { +// return null; +// } else { +// for (TAttribute type: types) +// ret = ret + blockName + "." + paramName + "__" + type.getId() + " "; +// } +// +// } else { +// return null; +// } +// +// break; +// } +// } +// +// } +// } +// } +// } +// +// if (!found) { +// return null; +// } +// +// } +// +// TraceManager.addDev("Reworked pragma: " + ret); +// +// return ret.trim(); +// } private AvatarAttribute createRegularAttribute (AvatarStateMachineOwner _ab, TAttribute _a, String _preName) { AvatarType type = AvatarType.UNDEFINED; @@ -914,11 +915,11 @@ public class AvatarDesignPanelTranslator { return aa; } - public void addRegularAttribute(AvatarBlock _ab, TAttribute _a, String _preName) { + private void addRegularAttribute(AvatarBlock _ab, TAttribute _a, String _preName) { _ab.addAttribute(this.createRegularAttribute (_ab, _a, _preName)); } - public void createLibraryFunctions (AvatarSpecification _as, List<AvatarBDLibraryFunction> _libraryFunctions) { + private void createLibraryFunctions (AvatarSpecification _as, List<AvatarBDLibraryFunction> _libraryFunctions) { for (AvatarBDLibraryFunction libraryFunction: _libraryFunctions) { AvatarLibraryFunction alf = new AvatarLibraryFunction (libraryFunction.getFunctionName (), _as, libraryFunction); _as.addLibraryFunction (alf); @@ -934,7 +935,7 @@ public class AvatarDesignPanelTranslator { alf.addParameter (this.createRegularAttribute (alf, attr, "")); else { // other - LinkedList<TAttribute> types = adp.getAvatarBDPanel ().getAttributesOfDataType (attr.getTypeOther ()); + List<TAttribute> types = adp.getAvatarBDPanel ().getAttributesOfDataType (attr.getTypeOther ()); if (types == null) { UICheckingError ce = new UICheckingError(CheckingError.STRUCTURE_ERROR, "Unknown data type: " + attr.getTypeOther() + " used in " + alf.getName()); // TODO: adapt @@ -964,7 +965,7 @@ public class AvatarDesignPanelTranslator { alf.addReturnAttribute (this.createRegularAttribute (alf, attr, "")); else { // other - LinkedList<TAttribute> types = adp.getAvatarBDPanel ().getAttributesOfDataType (attr.getTypeOther ()); + List<TAttribute> types = adp.getAvatarBDPanel ().getAttributesOfDataType (attr.getTypeOther ()); if (types == null) { UICheckingError ce = new UICheckingError(CheckingError.STRUCTURE_ERROR, "Unknown data type: " + attr.getTypeOther() + " used in " + alf.getName()); ce.setTDiagramPanel(adp.getAvatarBDPanel()); @@ -993,7 +994,7 @@ public class AvatarDesignPanelTranslator { alf.addAttribute (this.createRegularAttribute (alf, attr, "")); else { // other - LinkedList<TAttribute> types = adp.getAvatarBDPanel ().getAttributesOfDataType (attr.getTypeOther ()); + List<TAttribute> types = adp.getAvatarBDPanel ().getAttributesOfDataType (attr.getTypeOther ()); if (types == null) { UICheckingError ce = new UICheckingError(CheckingError.STRUCTURE_ERROR, "Unknown data type: " + attr.getTypeOther() + " used in " + alf.getName()); ce.setTDiagramPanel(adp.getAvatarBDPanel()); @@ -1036,7 +1037,7 @@ public class AvatarDesignPanelTranslator { } } - public void createBlocks(AvatarSpecification _as, List<AvatarBDBlock> _blocks) { + private void createBlocks(AvatarSpecification _as, List<AvatarBDBlock> _blocks) { for(AvatarBDBlock block: _blocks) { AvatarBlock ab = new AvatarBlock(block.getBlockName(), _as, block); _as.addBlock(ab); @@ -1056,7 +1057,7 @@ public class AvatarDesignPanelTranslator { } else { // other // TraceManager.addDev(" -> Other type found: " + a.getTypeOther()); - LinkedList<TAttribute> types = adp.getAvatarBDPanel().getAttributesOfDataType(a.getTypeOther()); + List<TAttribute> types = adp.getAvatarBDPanel().getAttributesOfDataType(a.getTypeOther()); if (types == null) { UICheckingError ce = new UICheckingError(CheckingError.STRUCTURE_ERROR, "Unknown data type: " + a.getTypeOther() + " used in " + ab.getName()); ce.setTDiagramPanel(adp.getAvatarBDPanel()); @@ -1117,7 +1118,7 @@ public class AvatarDesignPanelTranslator { } } - public void makeBlockStateMachines(AvatarSpecification _as) { + private void makeBlockStateMachines(AvatarSpecification _as) { // Make state machine of blocks for(AvatarBlock block: _as.getListOfBlocks()) this.makeStateMachine(_as, block); @@ -1127,7 +1128,7 @@ public class AvatarDesignPanelTranslator { this.makeStateMachine (_as, libraryFunction); } - public void makeReturnParameters(AvatarStateMachineOwner _ab, AvatarBDStateMachineOwner _block, avatartranslator.AvatarMethod _atam, ui.AvatarMethod _uiam) { + private void makeReturnParameters(AvatarStateMachineOwner _ab, AvatarBDStateMachineOwner _block, avatartranslator.AvatarMethod _atam, ui.AvatarMethod _uiam) { String rt = _uiam.getReturnType().trim(); AvatarAttribute aa; AvatarType type = AvatarType.UNDEFINED; @@ -1140,7 +1141,7 @@ public class AvatarDesignPanelTranslator { aa = new AvatarAttribute("return__0", AvatarType.getType(rt), _ab, _block); _atam.addReturnParameter(aa); } else { - LinkedList<TAttribute> types = adp.getAvatarBDPanel().getAttributesOfDataType(rt); + List<TAttribute> types = adp.getAvatarBDPanel().getAttributesOfDataType(rt); if (types == null) { UICheckingError ce = new UICheckingError(CheckingError.STRUCTURE_ERROR, "Unknown data type: " + rt + " declared as a return parameter of a method of " + _block.getOwnerName()); // TODO: adapt @@ -1167,12 +1168,12 @@ public class AvatarDesignPanelTranslator { } - public void makeParameters(AvatarStateMachineOwner _block, avatartranslator.AvatarMethod _atam, ui.AvatarMethod _uiam) { + private void makeParameters(AvatarStateMachineOwner _block, avatartranslator.AvatarMethod _atam, ui.AvatarMethod _uiam) { String typeIds[] = _uiam.getTypeIds(); String types[] = _uiam.getTypes(); for(int i=0; i<types.length; i++) { - LinkedList<TAttribute> v = adp.getAvatarBDPanel().getAttributesOfDataType(types[i]); + List<TAttribute> v = adp.getAvatarBDPanel().getAttributesOfDataType(types[i]); if (v == null) { if (AvatarType.getType(types[i]) == AvatarType.UNDEFINED) { UICheckingError ce = new UICheckingError(CheckingError.STRUCTURE_ERROR, "Unknown data type: \"" + types[i] + "\" declared in method " + _atam + " of block " + _block.getName()); @@ -1202,7 +1203,7 @@ public class AvatarDesignPanelTranslator { } } - public void manageAttribute (String _name, AvatarStateMachineOwner _ab, AvatarActionOnSignal _aaos, TDiagramPanel _tdp, TGComponent _tgc, String _idOperator) { + private void manageAttribute (String _name, AvatarStateMachineOwner _ab, AvatarActionOnSignal _aaos, TDiagramPanel _tdp, TGComponent _tgc, String _idOperator) { TAttribute ta = adp.getAvatarBDPanel().getAttribute(_name, _ab.getName()); if (ta == null) { UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formed parameter: " + _name + " in signal expression: " + _idOperator); @@ -1217,7 +1218,7 @@ public class AvatarDesignPanelTranslator { //TraceManager.addDev("Found: " + ta.getId()); - LinkedList<String> v = new LinkedList<String> (); + List<String> v = new LinkedList<String> (); if (ta.getType() == TAttribute.OTHER) for (TAttribute tatmp: adp.getAvatarBDPanel().getAttributesOfDataType(ta.getTypeOther())) @@ -1236,81 +1237,81 @@ public class AvatarDesignPanelTranslator { ce.setTGComponent(_tgc); addCheckingError(ce); return ; - } else { + }// else { //TraceManager.addDev("-> Adding attr in action on signal in block " + _ab.getName() + ":" + _name + "__" + tatmp.getId()); - _aaos.addValue(name); - } + _aaos.addValue(name); + //} } } private void translateAvatarSMDSendSignal (TDiagramPanel tdp, AvatarSpecification _as, AvatarStateMachineOwner _ab, AvatarSMDSendSignal asmdss) throws CheckingError { - AvatarStateMachine asm = _ab.getStateMachine (); - avatartranslator.AvatarSignal atas = _ab.getAvatarSignalWithName (asmdss.getSignalName ()); - if (atas == null) - throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Unknown signal: " + asmdss.getSignalName()); - - // Get relation of that signal - if (_ab instanceof AvatarBlock) { - // Note that for library functions, signals are just placeholders so they don't need to be connected to anything - AvatarRelation ar = _as.getAvatarRelationWithSignal (atas); - if (ar == null) { - if (atas.getReferenceObject() instanceof ui.AvatarSignal) { - //TraceManager.addDev("Send/ Setting as attached " + atas); - ((ui.AvatarSignal) atas.getReferenceObject()).attachedToARelation = false; - } - //TraceManager.addDev("Spec:" + _as.toString()); - throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Signal used for sending in " + asmdss.getValue() + " is not connected to a channel"); - } - if (atas.getReferenceObject() instanceof ui.AvatarSignal) { - //TraceManager.addDev("Send/ Setting as attached " + atas); - ((ui.AvatarSignal) atas.getReferenceObject()).attachedToARelation = true; - } - } - - AvatarActionOnSignal aaos = new AvatarActionOnSignal ("action_on_signal", atas, asmdss); - if (asmdss.hasCheckedAccessibility()) - aaos.setCheckable(); - - if (asmdss.hasCheckedAccessibility()) - aaos.setChecked(); - - if (aaos.isReceiving ()) - throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "A receiving signal is used for sending: " + asmdss.getValue()); - - if (asmdss.getNbOfValues() == -1) - throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formed signal: " + asmdss.getValue()); - - for(int i=0; i<asmdss.getNbOfValues(); i++) { - String tmp = asmdss.getValue(i); - if (tmp.isEmpty ()) - throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "Empty parameter in signal expression: " + asmdss.getValue()); - - this.manageAttribute (tmp, _ab, aaos, tdp, asmdss, asmdss.getValue()); - } - - if (aaos.getNbOfValues () != atas.getListOfAttributes ().size ()) - throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Badly formed signal sending: " + asmdss.getValue() + " -> nb of parameters does not match definition"); - - // Checking expressions passed as parameter - for (int i=0; i<aaos.getNbOfValues(); i++) { - String theVal = aaos.getValue(i); - if (atas.getListOfAttributes ().get (i).isInt ()) { - if (AvatarSyntaxChecker.isAValidIntExpr (_as, _ab, theVal) < 0) - throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Badly formed signal receiving: " + asmdss.getValue() + " -> value at index #" + i + " does not match definition"); - } else { - // We assume it is a bool attribute - if (AvatarSyntaxChecker.isAValidBoolExpr(_as, _ab, theVal) < 0) - throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formed signal receiving: " + asmdss.getValue() + " -> value at index #" + i + " does not match definition"); - } - } - - this.listE.addCor (aaos, asmdss); - asmdss.setAVATARID (aaos.getID()); - if (asmdss.getCheckLatency()){ - aaos.setCheckLatency(true); - _as.checkedIDs.add(asmdss.getName()+"-"+ asmdss.getSignalName()+":"+aaos.getID()); - } - asm.addElement (aaos); + AvatarStateMachine asm = _ab.getStateMachine (); + avatartranslator.AvatarSignal atas = _ab.getAvatarSignalWithName (asmdss.getSignalName ()); + if (atas == null) + throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Unknown signal: " + asmdss.getSignalName()); + + // Get relation of that signal + if (_ab instanceof AvatarBlock) { + // Note that for library functions, signals are just placeholders so they don't need to be connected to anything + AvatarRelation ar = _as.getAvatarRelationWithSignal (atas); + if (ar == null) { + if (atas.getReferenceObject() instanceof ui.AvatarSignal) { + //TraceManager.addDev("Send/ Setting as attached " + atas); + ((ui.AvatarSignal) atas.getReferenceObject()).attachedToARelation = false; + } + //TraceManager.addDev("Spec:" + _as.toString()); + throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Signal used for sending in " + asmdss.getValue() + " is not connected to a channel"); + } + if (atas.getReferenceObject() instanceof ui.AvatarSignal) { + //TraceManager.addDev("Send/ Setting as attached " + atas); + ((ui.AvatarSignal) atas.getReferenceObject()).attachedToARelation = true; + } + } + + AvatarActionOnSignal aaos = new AvatarActionOnSignal ("action_on_signal", atas, asmdss); + if (asmdss.hasCheckedAccessibility()) + aaos.setCheckable(); + + if (asmdss.hasCheckedAccessibility()) + aaos.setChecked(); + + if (aaos.isReceiving ()) + throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "A receiving signal is used for sending: " + asmdss.getValue()); + + if (asmdss.getNbOfValues() == -1) + throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formed signal: " + asmdss.getValue()); + + for(int i=0; i<asmdss.getNbOfValues(); i++) { + String tmp = asmdss.getValue(i); + if (tmp.isEmpty ()) + throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "Empty parameter in signal expression: " + asmdss.getValue()); + + this.manageAttribute (tmp, _ab, aaos, tdp, asmdss, asmdss.getValue()); + } + + if (aaos.getNbOfValues () != atas.getListOfAttributes ().size ()) + throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Badly formed signal sending: " + asmdss.getValue() + " -> nb of parameters does not match definition"); + + // Checking expressions passed as parameter + for (int i=0; i<aaos.getNbOfValues(); i++) { + String theVal = aaos.getValue(i); + if (atas.getListOfAttributes ().get (i).isInt ()) { + if (AvatarSyntaxChecker.isAValidIntExpr (_as, _ab, theVal) < 0) + throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Badly formed signal receiving: " + asmdss.getValue() + " -> value at index #" + i + " does not match definition"); + } else { + // We assume it is a bool attribute + if (AvatarSyntaxChecker.isAValidBoolExpr(_as, _ab, theVal) < 0) + throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formed signal receiving: " + asmdss.getValue() + " -> value at index #" + i + " does not match definition"); + } + } + + this.listE.addCor (aaos, asmdss); + asmdss.setAVATARID (aaos.getID()); + if (asmdss.getCheckLatency()){ + aaos.setCheckLatency(true); + _as.checkedIDs.add(asmdss.getName()+"-"+ asmdss.getSignalName()+":"+aaos.getID()); + } + asm.addElement (aaos); } private void translateAvatarSMDLibraryFunctionCall (TDiagramPanel tdp, AvatarSpecification _as, AvatarStateMachineOwner _ab, AvatarSMDLibraryFunctionCall asmdlfc) throws CheckingError { @@ -1330,7 +1331,7 @@ public class AvatarDesignPanelTranslator { AvatarLibraryFunctionCall alfc = new AvatarLibraryFunctionCall ("library_function_call", aLibraryFunction, asmdlfc); /* Get the list of parameters passed to the function */ - LinkedList<TAttribute> parameters = asmdlfc.getParameters (); + List<TAttribute> parameters = asmdlfc.getParameters (); /* If the number of parameters does not match raise an error */ if (parameters.size () != libraryFunction.getParameters ().size ()) throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Calling library function " + libraryFunction.getFunctionName () + " requires " + libraryFunction.getParameters ().size () + "parameters (" + parameters.size () + " provided)"); @@ -1349,14 +1350,14 @@ public class AvatarDesignPanelTranslator { throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Type of parameter #" + i + " when calling library function " + libraryFunction.getFunctionName () + " does not match"); /* Creates all the parameters corresponding to this parameter */ - LinkedList<String> parameterNames = new LinkedList<String> (); + List<String> parameterNames = new LinkedList<String> (); if (ta.getType() == TAttribute.INTEGER || ta.getType() == TAttribute.NATURAL || ta.getType() == TAttribute.BOOLEAN || ta.getType() == TAttribute.TIMER) parameterNames.add (ta.getId ()); else { - LinkedList<TAttribute> types = adp.getAvatarBDPanel ().getAttributesOfDataType (ta.getTypeOther ()); + List<TAttribute> types = adp.getAvatarBDPanel ().getAttributesOfDataType (ta.getTypeOther ()); if (types == null || types.isEmpty ()) throw new CheckingError (CheckingError.STRUCTURE_ERROR, "Unknown data type: " + ta.getTypeOther () + " when calling " + libraryFunction.getFunctionName ()); @@ -1376,7 +1377,7 @@ public class AvatarDesignPanelTranslator { } /* Get the list of signals mapped to the function's placeholders */ - LinkedList<ui.AvatarSignal> signals = asmdlfc.getSignals (); + List<ui.AvatarSignal> signals = asmdlfc.getSignals (); /* If the number of signals does not match raise an error */ if (signals.size () != libraryFunction.getSignals ().size ()) throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Calling library function " + libraryFunction.getFunctionName () + " requires " + libraryFunction.getSignals ().size () + " signals (" + signals.size () + " mapped)"); @@ -1403,7 +1404,7 @@ public class AvatarDesignPanelTranslator { } /* Get the list of return attributes passed to the function */ - LinkedList<TAttribute> returnAttributes = asmdlfc.getReturnAttributes (); + List<TAttribute> returnAttributes = asmdlfc.getReturnAttributes (); /* If the number of return attributes is greater that what the function can return raise an error */ if (returnAttributes.size () > libraryFunction.getReturnAttributes ().size ()) throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Calling library function " + libraryFunction.getFunctionName () + " can only return " + libraryFunction.getReturnAttributes ().size () + " values (" + returnAttributes.size () + " expected)"); @@ -1411,7 +1412,7 @@ public class AvatarDesignPanelTranslator { /* Loop through the return attributes */ i=0; for (TAttribute ta: returnAttributes) { - LinkedList<AvatarAttribute> attrs = new LinkedList<AvatarAttribute> (); + List<AvatarAttribute> attrs = new LinkedList<AvatarAttribute> (); /* If return attribute has not be filled in, add a dummy one */ if (ta == null) { TAttribute returnTA = libraryFunction.getReturnAttributes ().get (i); @@ -1429,7 +1430,7 @@ public class AvatarDesignPanelTranslator { } attrs.add (attr); } else { - LinkedList<TAttribute> types = adp.getAvatarBDPanel ().getAttributesOfDataType (returnTA.getTypeOther ()); + List<TAttribute> types = adp.getAvatarBDPanel ().getAttributesOfDataType (returnTA.getTypeOther ()); if (types == null || types.isEmpty ()) throw new CheckingError (CheckingError.STRUCTURE_ERROR, "Unknown data type: " + returnTA.getTypeOther () + " when calling " + libraryFunction.getFunctionName ()); @@ -1450,14 +1451,14 @@ public class AvatarDesignPanelTranslator { throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Type of return attribute #" + (i+1) + " when calling library function " + libraryFunction.getFunctionName () + " does not match"); /* Creates all the attributes corresponding to this return attribute */ - LinkedList<String> attributeNames = new LinkedList<String> (); + List<String> attributeNames = new LinkedList<String> (); if (ta.getType() == TAttribute.INTEGER || ta.getType() == TAttribute.NATURAL || ta.getType() == TAttribute.BOOLEAN || ta.getType() == TAttribute.TIMER) attributeNames.add (ta.getId ()); else { - LinkedList<TAttribute> types = adp.getAvatarBDPanel ().getAttributesOfDataType (ta.getTypeOther ()); + List<TAttribute> types = adp.getAvatarBDPanel ().getAttributesOfDataType (ta.getTypeOther ()); if (types == null || types.isEmpty ()) throw new CheckingError (CheckingError.STRUCTURE_ERROR, "Unknown data type: " + ta.getTypeOther () + " when calling " + libraryFunction.getFunctionName ()); @@ -1485,7 +1486,7 @@ public class AvatarDesignPanelTranslator { TAttribute returnTA = libraryFunction.getReturnAttributes ().get (i); String dummyName = "__dummy_return_attribute_" + returnTA.getId (); - LinkedList<AvatarAttribute> attrs = new LinkedList<AvatarAttribute> (); + List<AvatarAttribute> attrs = new LinkedList<AvatarAttribute> (); /* Creates all the attributes corresponding to this return attribute */ if (returnTA.getType() == TAttribute.INTEGER || returnTA.getType() == TAttribute.NATURAL @@ -1498,7 +1499,7 @@ public class AvatarDesignPanelTranslator { } attrs.add (attr); } else { - LinkedList<TAttribute> types = adp.getAvatarBDPanel ().getAttributesOfDataType (returnTA.getTypeOther ()); + List<TAttribute> types = adp.getAvatarBDPanel ().getAttributesOfDataType (returnTA.getTypeOther ()); if (types == null || types.isEmpty ()) throw new CheckingError (CheckingError.STRUCTURE_ERROR, "Unknown data type: " + returnTA.getTypeOther () + " when calling " + libraryFunction.getFunctionName ()); @@ -1524,75 +1525,75 @@ public class AvatarDesignPanelTranslator { private void translateAvatarSMDReceiveSignal (TDiagramPanel tdp, AvatarSpecification _as, AvatarStateMachineOwner _ab, AvatarSMDReceiveSignal asmdrs) throws CheckingError { - AvatarStateMachine asm = _ab.getStateMachine (); - avatartranslator.AvatarSignal atas = _ab.getAvatarSignalWithName (asmdrs.getSignalName ()); - if (atas == null) - throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Unknown signal: " + asmdrs.getSignalName()); - - // Get relation of that signal - if (_ab instanceof AvatarBlock) { - // Note that for library functions, signals are just placeholders so they don't need to be connected to anything - AvatarRelation ar = _as.getAvatarRelationWithSignal (atas); - if (ar == null) { - if (atas.getReferenceObject() instanceof ui.AvatarSignal) { - //TraceManager.addDev("Receive/ Setting as attached " + atas); - ((ui.AvatarSignal) atas.getReferenceObject()).attachedToARelation = false; - } - throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Signal used for receiving in " + asmdrs.getValue() + " is not connected to a channel"); - } - if (atas.getReferenceObject() instanceof ui.AvatarSignal) { - //TraceManager.addDev("Receive/ Setting as attached " + atas); - ((ui.AvatarSignal) atas.getReferenceObject()).attachedToARelation = true; - } - } - if (atas.getReferenceObject() instanceof ui.AvatarSignal) { - ((ui.AvatarSignal) atas.getReferenceObject()).attachedToARelation = true; - } - - AvatarActionOnSignal aaos = new AvatarActionOnSignal ("action_on_signal", atas, asmdrs); - if (asmdrs.hasCheckableAccessibility()) - aaos.setCheckable(); - - if (asmdrs.hasCheckedAccessibility()) - aaos.setChecked(); - - if (aaos.isSending()) - throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "A sending signal is used for receiving: " + asmdrs.getValue()); - - if (asmdrs.getNbOfValues() == -1) - throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formed signal: " + asmdrs.getValue()); - - for(int i=0; i<asmdrs.getNbOfValues(); i++) { - String tmp = asmdrs.getValue(i); - if (tmp.isEmpty ()) - throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "Empty parameter in signal expression: " + asmdrs.getValue()); - - this.manageAttribute (tmp, _ab, aaos, tdp, asmdrs, asmdrs.getValue()); - } - - if (aaos.getNbOfValues () != atas.getListOfAttributes ().size ()) - throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Badly formed signal receiving: " + asmdrs.getValue() + " -> nb of parameters does not match definition"); - - // Checking expressions passed as parameter - for (int i=0; i<aaos.getNbOfValues(); i++) { - String theVal = aaos.getValue(i); - if (atas.getListOfAttributes ().get (i).isInt ()) { - if (AvatarSyntaxChecker.isAValidIntExpr (_as, _ab, theVal) < 0) - throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Badly formed signal receiving: " + asmdrs.getValue() + " -> value at index #" + i + " does not match definition"); - } else { - // We assume it is a bool attribute - if (AvatarSyntaxChecker.isAValidBoolExpr(_as, _ab, theVal) < 0) - throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formed signal receiving: " + asmdrs.getValue() + " -> value at index #" + i + " does not match definition"); - } - } - - this.listE.addCor (aaos, asmdrs); - asmdrs.setAVATARID (aaos.getID()); - asm.addElement (aaos); - if (asmdrs.getCheckLatency()){ - aaos.setCheckLatency(true); - _as.checkedIDs.add(asmdrs.getName()+"-"+asmdrs.getSignalName()+":"+aaos.getID()); - } + AvatarStateMachine asm = _ab.getStateMachine (); + avatartranslator.AvatarSignal atas = _ab.getAvatarSignalWithName (asmdrs.getSignalName ()); + if (atas == null) + throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Unknown signal: " + asmdrs.getSignalName()); + + // Get relation of that signal + if (_ab instanceof AvatarBlock) { + // Note that for library functions, signals are just placeholders so they don't need to be connected to anything + AvatarRelation ar = _as.getAvatarRelationWithSignal (atas); + if (ar == null) { + if (atas.getReferenceObject() instanceof ui.AvatarSignal) { + //TraceManager.addDev("Receive/ Setting as attached " + atas); + ((ui.AvatarSignal) atas.getReferenceObject()).attachedToARelation = false; + } + throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Signal used for receiving in " + asmdrs.getValue() + " is not connected to a channel"); + } + if (atas.getReferenceObject() instanceof ui.AvatarSignal) { + //TraceManager.addDev("Receive/ Setting as attached " + atas); + ((ui.AvatarSignal) atas.getReferenceObject()).attachedToARelation = true; + } + } + if (atas.getReferenceObject() instanceof ui.AvatarSignal) { + ((ui.AvatarSignal) atas.getReferenceObject()).attachedToARelation = true; + } + + AvatarActionOnSignal aaos = new AvatarActionOnSignal ("action_on_signal", atas, asmdrs); + if (asmdrs.hasCheckableAccessibility()) + aaos.setCheckable(); + + if (asmdrs.hasCheckedAccessibility()) + aaos.setChecked(); + + if (aaos.isSending()) + throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "A sending signal is used for receiving: " + asmdrs.getValue()); + + if (asmdrs.getNbOfValues() == -1) + throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formed signal: " + asmdrs.getValue()); + + for(int i=0; i<asmdrs.getNbOfValues(); i++) { + String tmp = asmdrs.getValue(i); + if (tmp.isEmpty ()) + throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "Empty parameter in signal expression: " + asmdrs.getValue()); + + this.manageAttribute (tmp, _ab, aaos, tdp, asmdrs, asmdrs.getValue()); + } + + if (aaos.getNbOfValues () != atas.getListOfAttributes ().size ()) + throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Badly formed signal receiving: " + asmdrs.getValue() + " -> nb of parameters does not match definition"); + + // Checking expressions passed as parameter + for (int i=0; i<aaos.getNbOfValues(); i++) { + String theVal = aaos.getValue(i); + if (atas.getListOfAttributes ().get (i).isInt ()) { + if (AvatarSyntaxChecker.isAValidIntExpr (_as, _ab, theVal) < 0) + throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Badly formed signal receiving: " + asmdrs.getValue() + " -> value at index #" + i + " does not match definition"); + } else { + // We assume it is a bool attribute + if (AvatarSyntaxChecker.isAValidBoolExpr(_as, _ab, theVal) < 0) + throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formed signal receiving: " + asmdrs.getValue() + " -> value at index #" + i + " does not match definition"); + } + } + + this.listE.addCor (aaos, asmdrs); + asmdrs.setAVATARID (aaos.getID()); + asm.addElement (aaos); + if (asmdrs.getCheckLatency()){ + aaos.setCheckLatency(true); + _as.checkedIDs.add(asmdrs.getName()+"-"+asmdrs.getSignalName()+":"+aaos.getID()); + } } private void translateAvatarSMDState (TDiagramPanel tdp, AvatarSpecification _as, AvatarStateMachineOwner _ab, AvatarSMDState tgc) throws CheckingError { @@ -1886,21 +1887,21 @@ public class AvatarDesignPanelTranslator { at.setDelays(tmp1, tmp2); // Compute min and max - tmp1 = modifyString (asmdco.getComputeMinDelay ()); - error = AvatarSyntaxChecker.isAValidIntExpr (_as, _ab, tmp1); - if (error < 0) { - this.makeError (error, tdp, _ab, tgc, "compute min ", tmp1); - tmp1 = null; - } - tmp2 = modifyString(asmdco.getComputeMaxDelay()); - error = AvatarSyntaxChecker.isAValidIntExpr(_as, _ab, tmp2); - if (error < 0) { - this.makeError (error, tdp, _ab, tgc, "compute max ", tmp2); - tmp2 = null; - } - - if (tmp1 != null && tmp2 != null) - at.setComputes(tmp1, tmp2); +// tmp1 = modifyString (asmdco.getComputeMinDelay ()); +// error = AvatarSyntaxChecker.isAValidIntExpr (_as, _ab, tmp1); +// if (error < 0) { +// this.makeError (error, tdp, _ab, tgc, "compute min ", tmp1); +// tmp1 = null; +// } +// tmp2 = modifyString(asmdco.getComputeMaxDelay()); +// error = AvatarSyntaxChecker.isAValidIntExpr(_as, _ab, tmp2); +// if (error < 0) { +// this.makeError (error, tdp, _ab, tgc, "compute max ", tmp2); +// tmp2 = null; +// } +// +// if (tmp1 != null && tmp2 != null) +// at.setComputes(tmp1, tmp2); // Probability tmp1 = asmdco.getProbability (); @@ -2018,15 +2019,14 @@ public class AvatarDesignPanelTranslator { return null; } - - public void createRelationsBetweenBlocks(AvatarSpecification _as, List<AvatarBDBlock> _blocks) { + private void createRelationsBetweenBlocks(AvatarSpecification _as, List<AvatarBDBlock> _blocks) { adp.getAvatarBDPanel().updateAllSignalsOnConnectors(); Iterator<TGComponent> iterator = adp.getAvatarBDPanel().getComponentList().listIterator(); TGComponent tgc; AvatarBDPortConnector port; AvatarBDBlock block1, block2; - LinkedList<String> l1, l2; + List<String> l1, l2; int i; String name1, name2; AvatarRelation r; @@ -2094,16 +2094,16 @@ public class AvatarDesignPanelTranslator { } private void addCheckingError(CheckingError ce) { - if (checkingErrors == null) { - checkingErrors = new LinkedList<CheckingError> (); - } +// if (checkingErrors == null) { +// checkingErrors = new LinkedList<CheckingError> (); +// } checkingErrors.add (ce); } private void addWarning(CheckingError ce) { - if (warnings == null) { - warnings = new LinkedList<CheckingError> (); - } +// if (warnings == null) { +// warnings = new LinkedList<CheckingError> (); +// } warnings.add (ce); } @@ -2190,7 +2190,7 @@ public class AvatarDesignPanelTranslator { return s; } - public boolean isAVariableAssignation (String _input) { + private boolean isAVariableAssignation (String _input) { int index = _input.indexOf('='); if (index == -1) { return false; @@ -2216,11 +2216,8 @@ public class AvatarDesignPanelTranslator { return !(TAttribute.isAValidId(tmp, false, false)); } - - public void checkForAfterOnCompositeTransition() { - - } - - - +// +// public void checkForAfterOnCompositeTransition() { +// +// } } diff --git a/src/main/java/ui/DesignPanelTranslator.java b/src/main/java/ui/DesignPanelTranslator.java index 82c6fef4c4..ec674a54c8 100755 --- a/src/main/java/ui/DesignPanelTranslator.java +++ b/src/main/java/ui/DesignPanelTranslator.java @@ -60,11 +60,11 @@ import java.util.Vector; */ public class DesignPanelTranslator { protected TURTLEDesignPanelInterface dp; - protected LinkedList<CheckingError> checkingErrors, warnings; + protected List<CheckingError> checkingErrors, warnings; protected CorrespondanceTGElement listE; // usual list protected CorrespondanceTGElement listB; // list for particular element -> first element of group of blocks - protected LinkedList <TDiagramPanel> panels; - protected LinkedList <ActivityDiagram> activities; + protected List <TDiagramPanel> panels; + protected List <ActivityDiagram> activities; public DesignPanelTranslator(TURTLEDesignPanelInterface _dp) { dp = _dp; @@ -80,11 +80,11 @@ public class DesignPanelTranslator { activities = new LinkedList <ActivityDiagram>(); } - public LinkedList<CheckingError> getErrors() { + public List<CheckingError> getErrors() { return checkingErrors; } - public LinkedList<CheckingError> getWarnings() { + public List<CheckingError> getWarnings() { return warnings; } @@ -93,7 +93,7 @@ public class DesignPanelTranslator { } public TURTLEModeling generateTURTLEModeling() { - LinkedList<TClassInterface> tclasses = new LinkedList<TClassInterface>(); + List<TClassInterface> tclasses = new LinkedList<TClassInterface>(); for (Object tgc: dp.getStructurePanel ().getComponentList ()) if (tgc instanceof TClassInterface) @@ -102,7 +102,7 @@ public class DesignPanelTranslator { return generateTURTLEModeling(tclasses, ""); } - public TURTLEModeling generateTURTLEModeling(LinkedList<TClassInterface> tclasses, String preName) { + public TURTLEModeling generateTURTLEModeling(List<TClassInterface> tclasses, String preName) { TURTLEModeling tmodel = new TURTLEModeling(); addTClasses(dp, tclasses, preName, tmodel); addRelations(dp, tmodel); @@ -124,7 +124,7 @@ public class DesignPanelTranslator { } - public void addTClasses(TURTLEDesignPanelInterface dp, LinkedList<TClassInterface> tclasses, String preName, TURTLEModeling tm) { + public void addTClasses(TURTLEDesignPanelInterface dp, List<TClassInterface> tclasses, String preName, TURTLEModeling tm) { TDiagramPanel tdp; // search for class diagram panels tdp = dp.panelAt(0); @@ -135,8 +135,8 @@ public class DesignPanelTranslator { addTClassesFromPanel(tdp, (ClassDiagramPanelInterface)tdp, tclasses, preName, tm); } - private void addTClassesFromPanel(TDiagramPanel diag, ClassDiagramPanelInterface tdp, LinkedList<TClassInterface> tclasses, String preName, TURTLEModeling tm) { - // LinkedList list = tdp.getComponentList(); + private void addTClassesFromPanel(TDiagramPanel diag, ClassDiagramPanelInterface tdp, List<TClassInterface> tclasses, String preName, TURTLEModeling tm) { + // List list = tdp.getComponentList(); // search for tclasses for (Object tgc: tdp.getComponentList ()) @@ -1156,7 +1156,7 @@ public class DesignPanelTranslator { return -1; } - private void setGatesOf(Relation r, LinkedList<TTwoAttributes> gates, TClass tc1, TClass tc2) { + private void setGatesOf(Relation r, List<TTwoAttributes> gates, TClass tc1, TClass tc2) { Gate g1, g2; for (TTwoAttributes tt: gates) { @@ -1174,7 +1174,7 @@ public class DesignPanelTranslator { * Seems like we can't instantiate TCDWatchdogOperator * and the setWatchdogGatesOf function is buggy: it uses * TTwoAttributes as if they were TAttribute. - private void setWatchdogGatesOf(Relation r, LinkedList<TTwoAttributes> gates, TClass tc1, TClass tc2) { + private void setWatchdogGatesOf(Relation r, List<TTwoAttributes> gates, TClass tc1, TClass tc2) { for (TTwoAttributes t: gates) { Gate g1 = tc1.getGateByName(((TAttribute) t).getId()); diff --git a/src/main/java/ui/GTURTLEModeling.java b/src/main/java/ui/GTURTLEModeling.java index 445d871d33..7cab795552 100644 --- a/src/main/java/ui/GTURTLEModeling.java +++ b/src/main/java/ui/GTURTLEModeling.java @@ -58,8 +58,6 @@ import org.w3c.dom.Node; import org.w3c.dom.NodeList; import org.xml.sax.SAXException; import proverifspec.ProVerifOutputAnalyzer; -import proverifspec.ProVerifQueryAuthResult; -import proverifspec.ProVerifQueryResult; import proverifspec.ProVerifSpec; import req.ebrdd.EBRDD; import sddescription.HMSC; @@ -744,11 +742,11 @@ outerloop: List<HwLink> links = map.getTMLArchitecture().getHwLinks(); List<HwNode> found = new ArrayList<HwNode>(); List<HwNode> done = new ArrayList<HwNode>(); - List<HwNode> path = new ArrayList<HwNode>(); + //List<HwNode> path = new ArrayList<HwNode>(); HwExecutionNode node1 = (HwExecutionNode) map.getHwNodeOf(t1); - Map<HwNode, List<HwNode>> pathMap = new HashMap<HwNode, List<HwNode>>(); + //Map<HwNode, List<HwNode>> pathMap = new HashMap<HwNode, List<HwNode>>(); for (HwLink link : links) { if (link.hwnode == node1) { found.add(link.bus); @@ -819,7 +817,7 @@ outerloop: TraceManager.addDev("Found firewall " + firewallNode.getName()); TMLCPrimitiveComponent firewallComp = null; TMLADStartState adStart = null; - TMLADForEverLoop adLoop = null; + //TMLADForEverLoop adLoop = null; TMLADChoice adChoice = null; TMLADChoice adChoice2 = null; TMLADChoice adChoiceMain = null; @@ -1334,7 +1332,7 @@ outerloop: xpos = wr.getX(); ypos = wr.getY(); fromStart = tad.findTGConnectorEndingAt(wr.getTGConnectingPointAtIndex(0)); - TGConnectingPoint point = fromStart.getTGConnectingPointP2(); + //TGConnectingPoint point = fromStart.getTGConnectingPointP2(); int yShift = 50; TMLADSendRequest sendreq = new TMLADSendRequest(xpos, ypos, tad.getMinX(), tad.getMaxX(), tad.getMinY(), tad.getMaxY(), false, null, tad); @@ -2518,7 +2516,7 @@ memloop: } // Assume the inputData is in AUT format: generated by RTL or CADP - public String performProjection(String inputData, LinkedList<TClassAndGateDS> gates) { + public String performProjection(String inputData, List<TClassAndGateDS> gates) { StringBuffer result = new StringBuffer(""); StringReader sr = new StringReader(inputData); BufferedReader br = new BufferedReader(sr); @@ -2940,7 +2938,7 @@ memloop: // BUILDING A TURTLE MODELING AND CHECKING IT - public boolean checkTURTLEModeling(LinkedList<TClassInterface> tclasses, DesignPanel dp, boolean overideSyntaxChecking) { + public boolean checkTURTLEModeling(List<TClassInterface> tclasses, DesignPanel dp, boolean overideSyntaxChecking) { // Builds a TURTLE modeling from diagrams //warnings = new Vector(); //checkingErrors = null; @@ -2980,7 +2978,7 @@ memloop: } // BUILDING An AVATAR Design AND CHECKING IT - public boolean checkAvatarDesign(LinkedList<AvatarBDStateMachineOwner> blocks, AvatarDesignPanel adp, boolean _optimize) { + public boolean checkAvatarDesign( List<AvatarBDStateMachineOwner> blocks, AvatarDesignPanel adp, boolean _optimize) { // Builds a TURTLE modeling from diagrams //warnings = new Vector(); //checkingErrors = null; @@ -3042,14 +3040,14 @@ memloop: } // Building the list of all states in the mutex - LinkedList<TGComponent> compInMutex = adp.getListOfComponentsInMutex(); + List<TGComponent> compInMutex = adp.getListOfComponentsInMutex(); TraceManager.addDev("Nb of elements in mutex:" + compInMutex.size()); if (compInMutex.size() == 0) { return -2; } - LinkedList<TGComponent> comps; + List<TGComponent> comps; boolean found; int nbOfFound; int cpt = 0; @@ -3300,7 +3298,7 @@ memloop: if (tgc instanceof AvatarBDBlock) { AvatarSMDPanel asmdp = mgui.getAvatarSMDPanel(mgui.getCurrentSelectedIndex(), tgc.getValue()); s.append(asmdp.saveInXML()); - LinkedList<AvatarBDBlock> list = ((AvatarBDBlock) tgc).getFullBlockList(); + List<AvatarBDBlock> list = ((AvatarBDBlock) tgc).getFullBlockList(); for (AvatarBDBlock b : list) { asmdp = mgui.getAvatarSMDPanel(mgui.getCurrentSelectedIndex(), b.getValue()); s.append(asmdp.saveInXML()); @@ -7093,7 +7091,7 @@ memloop: boolean latencyCheck = false; boolean invariant = false; boolean breakpoint = false; - boolean hidden = false; + //boolean hidden = false; boolean masterMutex = false; boolean enable = true; @@ -7119,8 +7117,8 @@ memloop: } else if (elt.getTagName().equals("infoparam")) { myName = elt.getAttribute("name"); myValue = elt.getAttribute("value"); - } else if (elt.getTagName().equals("hidden")) { - hidden = elt.getAttribute("value").equals("true"); +// } else if (elt.getTagName().equals("hidden")) { +// hidden = elt.getAttribute("value").equals("true"); } else if (elt.getTagName().equals("enabled")) { enable = elt.getAttribute("value").equals("true"); } else if (elt.getTagName().equals("TGConnectingPoint")) { @@ -7811,7 +7809,7 @@ memloop: dp2 = art.getDesignPanel(); final Iterator<TGComponent> iterator2 = dp2.tcdp.getComponentList().listIterator(); - LinkedList<TClassInterface> tclasses = new LinkedList<TClassInterface>(); + List<TClassInterface> tclasses = new LinkedList<TClassInterface>(); while (iterator2.hasNext()) { tgc = iterator2.next(); if (tgc instanceof TClassInterface) { diff --git a/src/main/java/ui/MainGUI.java b/src/main/java/ui/MainGUI.java index 0ee2defe06..2c4bdc9acb 100644 --- a/src/main/java/ui/MainGUI.java +++ b/src/main/java/ui/MainGUI.java @@ -110,8 +110,6 @@ import java.util.*; import java.util.List; import java.util.concurrent.ConcurrentHashMap; -import static myutil.FileUtils.checkFileForOpen; - // AVATAR /** @@ -172,7 +170,7 @@ public class MainGUI implements ActionListener, WindowListener, KeyListener, Per public KeyListener keyHandler; // Validation - public LinkedList<TClassInterface> tclassesToValidate = new LinkedList<TClassInterface>(); + public List<TClassInterface> tclassesToValidate = new LinkedList<TClassInterface>(); // Status bar private JLabel status; @@ -3458,7 +3456,7 @@ public class MainGUI implements ActionListener, WindowListener, KeyListener, Per DesignPanel dp = (DesignPanel) tp; JDialogModelChecking.validated = dp.validated; JDialogModelChecking.ignored = dp.ignored; - LinkedList<TClassInterface> tclassesToValidate = new LinkedList<TClassInterface>(); + List<TClassInterface> tclassesToValidate = new LinkedList<TClassInterface>(); JDialogModelChecking jdmc = new JDialogModelChecking(frame, tclassesToValidate, dp.tcdp.getComponentList(), "Choosing Tclasses to validate"); if (!automatic) { GraphicLib.centerOnParent(jdmc); @@ -3570,7 +3568,7 @@ public class MainGUI implements ActionListener, WindowListener, KeyListener, Per AvatarDesignPanel adp = (AvatarDesignPanel) tp; //JDialogModelChecking.validated = adp.validated; //JDialogModelChecking.ignored = adp.ignored; - LinkedList<AvatarBDStateMachineOwner> blocksToValidate = new LinkedList<AvatarBDStateMachineOwner>(); + List<AvatarBDStateMachineOwner> blocksToValidate = new LinkedList<AvatarBDStateMachineOwner>(); JDialogSelectAvatarBlock jdmc = new JDialogSelectAvatarBlock(frame, blocksToValidate, adp.getAvatarBDPanel().getFullStateMachineOwnerList(), "Choosing blocks to validate", adp.getValidated(), adp.getIgnored(), adp.getOptimized()); if (!automatic) { GraphicLib.centerOnParent(jdmc); @@ -3630,7 +3628,7 @@ public class MainGUI implements ActionListener, WindowListener, KeyListener, Per //JDialogModelChecking.validated = adp.validated; //JDialogModelChecking.ignored = adp.ignored; - LinkedList<AvatarBDStateMachineOwner> blocksToValidate = new LinkedList<AvatarBDStateMachineOwner>(); + List<AvatarBDStateMachineOwner> blocksToValidate = new LinkedList<AvatarBDStateMachineOwner>(); JDialogSelectAvatarBlock jdmc = new JDialogSelectAvatarBlock(frame, blocksToValidate, adp.getAvatarBDPanel().getFullStateMachineOwnerList(), "Choosing blocks to validate", adp.getValidated(), adp.getIgnored(), adp.getOptimized()); if (!automatic) { GraphicLib.centerOnParent(jdmc); @@ -4018,14 +4016,14 @@ public class MainGUI implements ActionListener, WindowListener, KeyListener, Per return ret; } - public LinkedList<TAttribute> getAllAttributes() { + public List<TAttribute> getAllAttributes() { TURTLEPanel tp = getCurrentTURTLEPanel(); String name = getCurrentTDiagramPanel().getName(); return this.getAllAttributes(tp, name); } - public LinkedList<TAttribute> getAllAttributes(TURTLEPanel tp, String name) { + public List<TAttribute> getAllAttributes(TURTLEPanel tp, String name) { if (tp == null) { return null; } @@ -4038,8 +4036,7 @@ public class MainGUI implements ActionListener, WindowListener, KeyListener, Per return adp.getAllAttributes(name); } - - public LinkedList<AvatarMethod> getAllMethods() { + public List<AvatarMethod> getAllMethods() { TURTLEPanel tp = getCurrentTURTLEPanel(); if (tp == null) { return null; @@ -4055,13 +4052,13 @@ public class MainGUI implements ActionListener, WindowListener, KeyListener, Per return adp.getAllMethods(name); } - public LinkedList<AvatarSignal> getAllSignals() { + public List<AvatarSignal> getAllSignals() { TURTLEPanel tp = getCurrentTURTLEPanel(); String name = getCurrentTDiagramPanel().getName(); return this.getAllSignals(tp, name); } - public LinkedList<AvatarSignal> getAllSignals(TURTLEPanel tp, String name) { + public List<AvatarSignal> getAllSignals(TURTLEPanel tp, String name) { if (tp == null) { return null; } @@ -4315,7 +4312,7 @@ public class MainGUI implements ActionListener, WindowListener, KeyListener, Per return tmlcomp.getAllOutRequests(name); } - public LinkedList<String> getAllTimers() { + public List<String> getAllTimers() { TURTLEPanel tp = getCurrentTURTLEPanel(); if (tp == null) { return null; @@ -8329,7 +8326,7 @@ public class MainGUI implements ActionListener, WindowListener, KeyListener, Per AvatarDesignPanelTranslator avdesigntranslator = new AvatarDesignPanelTranslator(designDiagramPanel); - LinkedList<AvatarBDStateMachineOwner> adp = designDiagramPanel.getAvatarBDPanel().getFullStateMachineOwnerList(); + List<AvatarBDStateMachineOwner> adp = designDiagramPanel.getAvatarBDPanel().getFullStateMachineOwnerList(); AvatarSpecification avaspec = avdesigntranslator.generateAvatarSpecification(adp); // Generator for block tasks and application main file diff --git a/src/main/java/ui/TGComponent.java b/src/main/java/ui/TGComponent.java index e94e968e40..3d48762e9b 100755 --- a/src/main/java/ui/TGComponent.java +++ b/src/main/java/ui/TGComponent.java @@ -59,12 +59,17 @@ import ui.tmldd.TMLArchiFirewallNode; import ui.util.IconManager; import javax.swing.*; -import java.awt.*; + +import java.awt.Color; +import java.awt.Font; +import java.awt.Graphics; +import java.awt.Point; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.geom.Point2D; import java.util.ArrayList; import java.util.LinkedList; +import java.util.List; import java.util.Vector; /** @@ -482,13 +487,14 @@ public abstract class TGComponent implements CDElement, GenericTree { latencyCheck = b; } - public LinkedList<TGComponent> getAllCheckableInvariant() { - LinkedList<TGComponent> list = new LinkedList<TGComponent>(); + public List<TGComponent> getAllCheckableInvariant() { + List<TGComponent> list = new LinkedList<TGComponent>(); getAllCheckableInvariant(list); + return list; } - public void getAllCheckableInvariant(LinkedList<TGComponent> _list) { + public void getAllCheckableInvariant( List<TGComponent> _list) { if (invariant) { _list.add(this); } @@ -606,7 +612,6 @@ public abstract class TGComponent implements CDElement, GenericTree { GraphicLib.dashedRect(g, x + width + s2 + s3, y + s3, w + 15, h - 12); } - public void drawAttributes(Graphics g, String attr) { if (attr == null) { return; diff --git a/src/main/java/ui/avatarbd/AvatarBDBlock.java b/src/main/java/ui/avatarbd/AvatarBDBlock.java index e5e3297669..5edc8eddbf 100644 --- a/src/main/java/ui/avatarbd/AvatarBDBlock.java +++ b/src/main/java/ui/avatarbd/AvatarBDBlock.java @@ -36,7 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - package ui.avatarbd; import myutil.Conversion; @@ -57,16 +56,20 @@ import java.io.InputStreamReader; import java.io.OutputStreamWriter; import java.io.PipedInputStream; import java.io.PipedOutputStream; +import java.awt.Color; +import java.awt.Font; +import java.awt.Graphics; import java.io.BufferedReader; import java.io.BufferedWriter; import javax.swing.*; -import java.awt.*; import java.util.ArrayList; import java.util.Arrays; import java.util.Iterator; import java.util.LinkedList; +import java.util.List; +import java.util.Map; import java.util.HashMap; import proverifspec.ProVerifResultTrace; import proverifspec.ProVerifResultTraceStep; @@ -89,8 +92,8 @@ public class AvatarBDBlock extends TGCScalableWithInternalComponent implements S private static String stereotype = "block"; private static String stereotypeCrypto = "cryptoblock"; - protected static ArrayList<String> BLOCK_TYPE_STR = new ArrayList<String>(Arrays.asList("block", "cryptoblock")); - protected static ArrayList<Color> BLOCK_TYPE_COLOR = new ArrayList<Color>(Arrays.asList(ColorManager.AVATAR_BLOCK, ColorManager.AVATAR_BLOCK)); + protected static List<String> BLOCK_TYPE_STR = new ArrayList<String>(Arrays.asList("block", "cryptoblock")); + protected static List<Color> BLOCK_TYPE_COLOR = new ArrayList<Color>(Arrays.asList(ColorManager.AVATAR_BLOCK, ColorManager.AVATAR_BLOCK)); private int typeStereotype = 0; // <<block>> by default private int maxFontSize = 12; @@ -111,13 +114,13 @@ public class AvatarBDBlock extends TGCScalableWithInternalComponent implements S // TAttribute, AvatarMethod, AvatarSignal - protected LinkedList<TAttribute> myAttributes; - protected LinkedList<AvatarMethod> myMethods; - protected LinkedList<AvatarSignal> mySignals; + protected List<TAttribute> myAttributes; + protected List<AvatarMethod> myMethods; + protected List<AvatarSignal> mySignals; protected String[] globalCode; - protected HashMap<TAttribute, ProVerifResultTrace> attrTraceMap = new HashMap<TAttribute, ProVerifResultTrace>(); - protected HashMap<TAttribute, Integer> attrLocMap = new HashMap<TAttribute, Integer>(); + protected Map<TAttribute, ProVerifResultTrace> attrTraceMap = new HashMap<TAttribute, ProVerifResultTrace>(); + protected Map<TAttribute, Integer> attrLocMap = new HashMap<TAttribute, Integer>(); public String oldValue; @@ -195,7 +198,7 @@ public class AvatarBDBlock extends TGCScalableWithInternalComponent implements S this.mySignals.add(sig); } - public void internalDrawingAux(Graphics graph) { + private void internalDrawingAux(Graphics graph) { //TraceManager.addDev("Block drawing aux = " + this); @@ -595,7 +598,7 @@ public class AvatarBDBlock extends TGCScalableWithInternalComponent implements S } - + @Override public TGComponent isOnOnlyMe(int x1, int y1) { if (GraphicLib.isInRectangle(x1, y1, x, y, width, height)) { return this; @@ -621,6 +624,7 @@ public class AvatarBDBlock extends TGCScalableWithInternalComponent implements S return result; } + @Override public boolean editOndoubleClick(JFrame frame, int _x, int _y) { int textX = (int) (this.textX * this.tdp.getZoom()); if (iconIsDrawn) { @@ -814,16 +818,18 @@ public class AvatarBDBlock extends TGCScalableWithInternalComponent implements S _jdab.enableJavaKeyword(false); } - + @Override public int getType() { return TGComponentManager.AVATARBD_BLOCK; } + @Override public boolean acceptSwallowedTGComponent(TGComponent tgc) { return tgc instanceof AvatarBDBlock || tgc instanceof AvatarBDLibraryFunction; } + @Override public boolean addSwallowedTGComponent(TGComponent tgc, int x, int y) { boolean swallowed = false; @@ -871,6 +877,7 @@ public class AvatarBDBlock extends TGCScalableWithInternalComponent implements S return true; } + @Override public void removeSwallowedTGComponent(TGComponent tgc) { removeMyInternalComponent(tgc, false); } @@ -908,6 +915,7 @@ public class AvatarBDBlock extends TGCScalableWithInternalComponent implements S return false; } + @Override protected String translateExtraParam() { StringBuffer sb = new StringBuffer("<extraparam>\n"); sb.append("<blockType data=\""); @@ -1123,7 +1131,6 @@ public class AvatarBDBlock extends TGCScalableWithInternalComponent implements S } //TraceManager.addDev("LEP End Block = " + this); - } public boolean addStereotype(String s, int rgb) { @@ -1191,7 +1198,7 @@ public class AvatarBDBlock extends TGCScalableWithInternalComponent implements S return ret; } - + @Override public void hasBeenResized() { for (int i = 0; i < nbInternalTGComponent; i++) { if (tgcomponent[i] instanceof AvatarBDBlock) { @@ -1207,6 +1214,7 @@ public class AvatarBDBlock extends TGCScalableWithInternalComponent implements S } + @Override public void resizeWithFather() { if ((father != null) && (father instanceof AvatarBDBlock)) { // Too large to fit in the father? -> resize it! @@ -1217,8 +1225,8 @@ public class AvatarBDBlock extends TGCScalableWithInternalComponent implements S } } - public LinkedList<AvatarBDBlock> getBlockList() { - LinkedList<AvatarBDBlock> list = new LinkedList<AvatarBDBlock>(); + public List<AvatarBDBlock> getBlockList() { + List<AvatarBDBlock> list = new LinkedList<AvatarBDBlock>(); for (int i = 0; i < nbInternalTGComponent; i++) { if (tgcomponent[i] instanceof AvatarBDBlock) { list.add((AvatarBDBlock) (tgcomponent[i])); @@ -1227,8 +1235,8 @@ public class AvatarBDBlock extends TGCScalableWithInternalComponent implements S return list; } - public LinkedList<AvatarBDBlock> getFullBlockList() { - LinkedList<AvatarBDBlock> list = new LinkedList<AvatarBDBlock>(); + public List<AvatarBDBlock> getFullBlockList() { + List<AvatarBDBlock> list = new LinkedList<AvatarBDBlock>(); for (int i = 0; i < nbInternalTGComponent; i++) { if (tgcomponent[i] instanceof AvatarBDBlock) { list.add((AvatarBDBlock) (tgcomponent[i])); @@ -1238,8 +1246,8 @@ public class AvatarBDBlock extends TGCScalableWithInternalComponent implements S return list; } - public LinkedList<AvatarBDLibraryFunction> getFullLibraryFunctionList() { - LinkedList<AvatarBDLibraryFunction> list = new LinkedList<AvatarBDLibraryFunction>(); + public List<AvatarBDLibraryFunction> getFullLibraryFunctionList() { + List<AvatarBDLibraryFunction> list = new LinkedList<AvatarBDLibraryFunction>(); for (int i = 0; i < nbInternalTGComponent; i++) { if (this.tgcomponent[i] instanceof AvatarBDLibraryFunction) list.add((AvatarBDLibraryFunction) this.tgcomponent[i]); @@ -1251,13 +1259,13 @@ public class AvatarBDBlock extends TGCScalableWithInternalComponent implements S } public boolean hasInternalBlockWithName(String name) { - LinkedList<AvatarBDBlock> list = getFullBlockList(); + List<AvatarBDBlock> list = getFullBlockList(); for (AvatarBDBlock b : list) { if (b.getValue().compareTo(name) == 0) { return true; } } - LinkedList<AvatarBDLibraryFunction> llist = getFullLibraryFunctionList(); + List<AvatarBDLibraryFunction> llist = getFullLibraryFunctionList(); for (AvatarBDLibraryFunction b : llist) { if (b.getFunctionName().compareTo(name) == 0) { return true; @@ -1267,12 +1275,12 @@ public class AvatarBDBlock extends TGCScalableWithInternalComponent implements S return false; } - + @Override public int getDefaultConnector() { return TGComponentManager.AVATARBD_PORT_CONNECTOR; } - public LinkedList<TAttribute> getAttributeList() { + public List<TAttribute> getAttributeList() { return this.myAttributes; } @@ -1287,54 +1295,54 @@ public class AvatarBDBlock extends TGCScalableWithInternalComponent implements S this.myAttributes.add(ta); } - public LinkedList<AvatarMethod> getMethodList() { + public List<AvatarMethod> getMethodList() { return this.myMethods; } - public LinkedList<AvatarSignal> getSignalList() { + public List<AvatarSignal> getSignalList() { return this.mySignals; } - public LinkedList<AvatarSignal> getOutSignalList() { - LinkedList<AvatarSignal> v = new LinkedList<AvatarSignal>(); + public List<AvatarSignal> getOutSignalList() { + List<AvatarSignal> v = new LinkedList<AvatarSignal>(); for (AvatarSignal s : this.mySignals) if (s.getInOut() == AvatarSignal.OUT) v.add(s); return v; } - public LinkedList<AvatarSignal> getInSignalList() { - LinkedList<AvatarSignal> v = new LinkedList<AvatarSignal>(); + public List<AvatarSignal> getInSignalList() { + List<AvatarSignal> v = new LinkedList<AvatarSignal>(); for (AvatarSignal s : this.mySignals) if (s.getInOut() == AvatarSignal.IN) v.add(s); return v; } - public LinkedList<AvatarMethod> getAllMethodList() { + public List<AvatarMethod> getAllMethodList() { if (getFather() == null) { return this.myMethods; } - LinkedList<AvatarMethod> v = new LinkedList<AvatarMethod>(); + List<AvatarMethod> v = new LinkedList<AvatarMethod>(); v.addAll(this.myMethods); v.addAll(((AvatarBDBlock) getFather()).getAllMethodList()); return v; } - public LinkedList<AvatarSignal> getAllSignalList() { + public List<AvatarSignal> getAllSignalList() { if (getFather() == null) { return this.mySignals; } - LinkedList<AvatarSignal> v = new LinkedList<AvatarSignal>(); + List<AvatarSignal> v = new LinkedList<AvatarSignal>(); v.addAll(this.mySignals); v.addAll(((AvatarBDBlock) getFather()).getAllSignalList()); return v; } - public LinkedList<String> getAllTimerList() { - LinkedList<String> v = new LinkedList<String>(); + public List<String> getAllTimerList() { + List<String> v = new LinkedList<String>(); for (TAttribute a : this.myAttributes) if (a.getType() == TAttribute.TIMER) @@ -1349,19 +1357,18 @@ public class AvatarBDBlock extends TGCScalableWithInternalComponent implements S return null; } - public LinkedList<AvatarSignal> getListOfAvailableSignals() { + public List<AvatarSignal> getListOfAvailableSignals() { return ((AvatarBDPanel) (tdp)).getListOfAvailableSignals(this); } - public LinkedList<AvatarSignal> getListOfAvailableOutSignals() { + public List<AvatarSignal> getListOfAvailableOutSignals() { return ((AvatarBDPanel) (tdp)).getListOfAvailableOutSignals(this); } - public LinkedList<AvatarSignal> getListOfAvailableInSignals() { + public List<AvatarSignal> getListOfAvailableInSignals() { return ((AvatarBDPanel) (tdp)).getListOfAvailableInSignals(this); } - // _id may contain the full signal public AvatarSignal getSignalNameBySignalDef(String _id) { int index0 = _id.indexOf('('); @@ -1494,6 +1501,7 @@ public class AvatarBDBlock extends TGCScalableWithInternalComponent implements S return -1; } + @Override public ImageIcon getImageIcon() { return myImageIcon; } @@ -1507,11 +1515,11 @@ public class AvatarBDBlock extends TGCScalableWithInternalComponent implements S return this.getBlockName(); } + @Override public String toString() { return "Block: " + getValue(); } - public String getAttributes() { String attr = ""; for (TAttribute a: myAttributes) { @@ -1525,9 +1533,4 @@ public class AvatarBDBlock extends TGCScalableWithInternalComponent implements S } return attr; } - - - - - } diff --git a/src/main/java/ui/avatarbd/AvatarBDPanel.java b/src/main/java/ui/avatarbd/AvatarBDPanel.java index 9d2e308199..70c04c5758 100644 --- a/src/main/java/ui/avatarbd/AvatarBDPanel.java +++ b/src/main/java/ui/avatarbd/AvatarBDPanel.java @@ -36,12 +36,8 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.avatarbd; - import myutil.Conversion; import myutil.TraceManager; import org.w3c.dom.Element; @@ -61,7 +57,8 @@ import java.util.*; * @author Ludovic APVRILLE */ public class AvatarBDPanel extends TDiagramPanel { - private LinkedList<AvatarBDStateMachineOwner> validated, ignored; + + private List<AvatarBDStateMachineOwner> validated, ignored; private String val = null, ign = null; private boolean optimized = true; @@ -78,6 +75,7 @@ public class AvatarBDPanel extends TDiagramPanel { addMouseMotionListener(tdmm);*/ } + @Override public boolean actionOnDoubleClick(TGComponent tgc) { // if (tgc instanceof AvatarBDBlock) { @@ -94,6 +92,7 @@ public class AvatarBDPanel extends TDiagramPanel { return false; } + @Override public boolean actionOnAdd(TGComponent tgc) { if (tgc instanceof AvatarBDBlock) { AvatarBDBlock abdb = (AvatarBDBlock)(tgc); @@ -109,12 +108,13 @@ public class AvatarBDPanel extends TDiagramPanel { return false; } + @Override public boolean actionOnRemove(TGComponent tgc) { if (tgc instanceof AvatarBDStateMachineOwner) { AvatarBDStateMachineOwner abdb = (AvatarBDStateMachineOwner) tgc; this.mgui.removeAvatarBlock (tp, abdb.getOwnerName()); if (tgc instanceof AvatarBDBlock) { - LinkedList<AvatarBDBlock> list = ((AvatarBDBlock) abdb).getFullBlockList(); + List<AvatarBDBlock> list = ((AvatarBDBlock) abdb).getFullBlockList(); for(AvatarBDBlock b: list) mgui.removeAvatarBlock(tp, b.getBlockName()); @@ -130,44 +130,46 @@ public class AvatarBDPanel extends TDiagramPanel { public void updateSignalAttachement(AvatarBDBlock _b, AvatarBDPortConnector _conn) { - - // Set all signals of B as non connected - _b.setSignalsAsNonAttached(); - - - Iterator iterator = getComponentList().listIterator(); - while(iterator.hasNext()) { - TGComponent tgc = (TGComponent)(iterator.next()); - if (tgc instanceof AvatarBDPortConnector) { - AvatarBDPortConnector port = (AvatarBDPortConnector)tgc; - AvatarBDBlock block1 = port.getAvatarBDBlock1(); - AvatarBDBlock block2 = port.getAvatarBDBlock2(); - if ((block1 != null) && (block2 != null)) { - if ((_b == block1) || (_b == block2)) { - //TraceManager.addDev("Relation found"); - LinkedList<String> l; - if (_b == block1) { - l = port.getListOfSignalsOrigin(); - } else { - l = port.getListOfSignalsDestination(); - } - - for(String name: l) { - name = AvatarSignal.getSignalNameFromFullSignalString(name); - //TraceManager.addDev("Searching for " + name + " in block " + _b); - AvatarSignal sig = _b.getAvatarSignalFromName(name); - if (sig != null) { - //TraceManager.addDev("Sig " + name + " is attached to a relation"); - sig.attachedToARelation = true; - } - } - } - } - } - } - } - - + // Set all signals of B as non connected + _b.setSignalsAsNonAttached(); + + Iterator<TGComponent> iterator = getComponentList().listIterator(); + + while(iterator.hasNext()) { + TGComponent tgc = iterator.next(); + + if (tgc instanceof AvatarBDPortConnector) { + AvatarBDPortConnector port = (AvatarBDPortConnector)tgc; + AvatarBDBlock block1 = port.getAvatarBDBlock1(); + AvatarBDBlock block2 = port.getAvatarBDBlock2(); + + if ((block1 != null) && (block2 != null)) { + if ((_b == block1) || (_b == block2)) { + //TraceManager.addDev("Relation found"); + List<String> l; + + if (_b == block1) { + l = port.getListOfSignalsOrigin(); + } else { + l = port.getListOfSignalsDestination(); + } + + for(String name: l) { + name = AvatarSignal.getSignalNameFromFullSignalString(name); + //TraceManager.addDev("Searching for " + name + " in block " + _b); + AvatarSignal sig = _b.getAvatarSignalFromName(name); + if (sig != null) { + //TraceManager.addDev("Sig " + name + " is attached to a relation"); + sig.attachedToARelation = true; + } + } + } + } + } + } + } + + @Override public boolean actionOnValueChanged(TGComponent tgc) { if (tgc instanceof AvatarBDBlock) { //updateAllSignalsOnConnectors(); @@ -240,7 +242,7 @@ public class AvatarBDPanel extends TDiagramPanel { public String displayParam() { String s = ""; String [] tmp = Conversion.wrapText(mainCode); - String tmps; + //String tmps; int i; for(i=0; i<tmp.length; i++) { @@ -369,10 +371,10 @@ public class AvatarBDPanel extends TDiagramPanel { } } - public LinkedList<AvatarSignal> getListOfAvailableSignals(AvatarBDBlock _block) { - LinkedList<AvatarSignal> v = new LinkedList<AvatarSignal> (); + public List<AvatarSignal> getListOfAvailableSignals(AvatarBDBlock _block) { + List<AvatarSignal> v = new LinkedList<AvatarSignal> (); - LinkedList<AvatarSignal> listOfBlock = _block.getSignalList(); + List<AvatarSignal> listOfBlock = _block.getSignalList(); if (listOfBlock.size() == 0) return v; @@ -382,11 +384,11 @@ public class AvatarBDPanel extends TDiagramPanel { if (tgc instanceof AvatarBDPortConnector) { AvatarBDPortConnector port = (AvatarBDPortConnector) tgc; if (port.getAvatarBDBlock1() == _block) { - LinkedList<String> ll = port.getListOfSignalsOrigin(); + List<String> ll = port.getListOfSignalsOrigin(); removeSignals(v, ll); } if (port.getAvatarBDBlock2() == _block) { - LinkedList<String> ll = port.getListOfSignalsDestination(); + List<String> ll = port.getListOfSignalsDestination(); removeSignals(v, ll); } } @@ -394,10 +396,10 @@ public class AvatarBDPanel extends TDiagramPanel { return v; } - public LinkedList<AvatarSignal> getListOfAvailableOutSignals (AvatarBDBlock _block) { - LinkedList<AvatarSignal> v = new LinkedList<AvatarSignal> (); + public List<AvatarSignal> getListOfAvailableOutSignals (AvatarBDBlock _block) { + List<AvatarSignal> v = new LinkedList<AvatarSignal> (); - LinkedList<AvatarSignal> listOfBlock = _block.getOutSignalList(); + List<AvatarSignal> listOfBlock = _block.getOutSignalList(); if (listOfBlock.size() == 0) return v; @@ -407,11 +409,11 @@ public class AvatarBDPanel extends TDiagramPanel { if (tgc instanceof AvatarBDPortConnector) { AvatarBDPortConnector port = (AvatarBDPortConnector)tgc; if (port.getAvatarBDBlock1() == _block) { - LinkedList<String> ll = port.getListOfSignalsOrigin(); + List<String> ll = port.getListOfSignalsOrigin(); removeSignals(v, ll); } if (port.getAvatarBDBlock2() == _block) { - LinkedList<String> ll = port.getListOfSignalsDestination(); + List<String> ll = port.getListOfSignalsDestination(); removeSignals(v, ll); } } @@ -419,10 +421,10 @@ public class AvatarBDPanel extends TDiagramPanel { return v; } - public LinkedList<AvatarSignal> getListOfAvailableInSignals(AvatarBDBlock _block) { - LinkedList<AvatarSignal> v = new LinkedList<AvatarSignal> (); + public List<AvatarSignal> getListOfAvailableInSignals(AvatarBDBlock _block) { + List<AvatarSignal> v = new LinkedList<AvatarSignal> (); - LinkedList<AvatarSignal> listOfBlock = _block.getInSignalList(); + List<AvatarSignal> listOfBlock = _block.getInSignalList(); if (listOfBlock.size() == 0) return v; @@ -432,11 +434,11 @@ public class AvatarBDPanel extends TDiagramPanel { if (tgc instanceof AvatarBDPortConnector) { AvatarBDPortConnector port = (AvatarBDPortConnector)tgc; if (port.getAvatarBDBlock1() == _block) { - LinkedList<String> ll = port.getListOfSignalsOrigin(); + List<String> ll = port.getListOfSignalsOrigin(); removeSignals(v, ll); } if (port.getAvatarBDBlock2() == _block) { - LinkedList<String> ll = port.getListOfSignalsDestination(); + List<String> ll = port.getListOfSignalsDestination(); removeSignals(v, ll); } } @@ -445,7 +447,7 @@ public class AvatarBDPanel extends TDiagramPanel { } // Remove AvatarSignals of v which name is provided in list - private static void removeSignals(List<AvatarSignal> v, LinkedList<String> list) { + private static void removeSignals(List<AvatarSignal> v, List<String> list) { for(String s: list) { Iterator<AvatarSignal> iterator = v.iterator (); while (iterator.hasNext ()) { @@ -458,8 +460,8 @@ public class AvatarBDPanel extends TDiagramPanel { } } - public HashMap<String, List<String>> getBlockStrings(boolean addAttributes, boolean addStates, boolean addSignals){ - HashMap<String,List<String>> blockStringMap = new HashMap<String, List<String>>(); + public Map<String, List<String>> getBlockStrings(boolean addAttributes, boolean addStates, boolean addSignals){ + Map<String,List<String>> blockStringMap = new HashMap<String, List<String>>(); for (AvatarBDBlock block: getFullBlockList()){ List<String> strs = new ArrayList<String>(); if (addAttributes){ @@ -481,8 +483,8 @@ public class AvatarBDPanel extends TDiagramPanel { return blockStringMap; } - public LinkedList<AvatarBDStateMachineOwner> getFullStateMachineOwnerList() { - LinkedList<AvatarBDStateMachineOwner> list = new LinkedList<AvatarBDStateMachineOwner>(); + public List<AvatarBDStateMachineOwner> getFullStateMachineOwnerList() { + List<AvatarBDStateMachineOwner> list = new LinkedList<AvatarBDStateMachineOwner>(); for (TGComponent tgc: this.componentList) if (tgc instanceof AvatarBDStateMachineOwner) { @@ -496,8 +498,8 @@ public class AvatarBDPanel extends TDiagramPanel { return list; } - public LinkedList<AvatarBDBlock> getFullBlockList () { - LinkedList<AvatarBDBlock> list = new LinkedList<AvatarBDBlock> (); + public List<AvatarBDBlock> getFullBlockList () { + List<AvatarBDBlock> list = new LinkedList<AvatarBDBlock> (); for (TGComponent tgc: this.componentList) if (tgc instanceof AvatarBDBlock) { @@ -538,8 +540,8 @@ public class AvatarBDPanel extends TDiagramPanel { return null; } - public LinkedList<AvatarBDLibraryFunction> getFullLibraryFunctionList () { - LinkedList<AvatarBDLibraryFunction> list = new LinkedList<AvatarBDLibraryFunction> (); + public List<AvatarBDLibraryFunction> getFullLibraryFunctionList () { + List<AvatarBDLibraryFunction> list = new LinkedList<AvatarBDLibraryFunction> (); for (TGComponent tgc: this.componentList) if (tgc instanceof AvatarBDLibraryFunction) @@ -548,8 +550,8 @@ public class AvatarBDPanel extends TDiagramPanel { return list; } - public LinkedList<AvatarBDLibraryFunction> getAllLibraryFunctionsForBlock (String _name) { - LinkedList<AvatarBDLibraryFunction> list = new LinkedList<AvatarBDLibraryFunction> (); + public List<AvatarBDLibraryFunction> getAllLibraryFunctionsForBlock (String _name) { + List<AvatarBDLibraryFunction> list = new LinkedList<AvatarBDLibraryFunction> (); for(AvatarBDStateMachineOwner block: getFullStateMachineOwnerList()) { @@ -561,7 +563,7 @@ public class AvatarBDPanel extends TDiagramPanel { } public TAttribute getAttributeByBlockName(String _blockName, String attributeName) { - TAttribute a; + //TAttribute a; for(AvatarBDStateMachineOwner block: getFullStateMachineOwnerList()) if (block.getOwnerName().equals (_blockName)) return block.getAttributeByName(attributeName); @@ -569,8 +571,8 @@ public class AvatarBDPanel extends TDiagramPanel { return null; } - public LinkedList<TAttribute> getAllAttributesOfBlock (String _name) { - LinkedList<AvatarBDStateMachineOwner> list = getFullStateMachineOwnerList (); + public List<TAttribute> getAllAttributesOfBlock (String _name) { + List<AvatarBDStateMachineOwner> list = getFullStateMachineOwnerList (); for(AvatarBDStateMachineOwner block: list) if (block.getOwnerName ().equals (_name)) return block.getAttributeList (); @@ -578,7 +580,7 @@ public class AvatarBDPanel extends TDiagramPanel { return new LinkedList<TAttribute> (); } - public LinkedList<AvatarMethod> getAllMethodsOfBlock(String _name) { + public List<AvatarMethod> getAllMethodsOfBlock(String _name) { for(AvatarBDStateMachineOwner block: getFullStateMachineOwnerList()) if (block.getOwnerName().equals (_name)) return block.getAllMethodList(); @@ -586,7 +588,7 @@ public class AvatarBDPanel extends TDiagramPanel { return null; } - public LinkedList<AvatarSignal> getAllSignalsOfBlock(String _name) { + public List<AvatarSignal> getAllSignalsOfBlock(String _name) { for(AvatarBDStateMachineOwner block: getFullStateMachineOwnerList()) if (block.getOwnerName().equals (_name)) return block.getAllSignalList(); @@ -594,7 +596,7 @@ public class AvatarBDPanel extends TDiagramPanel { return null; } - public LinkedList<String> getAllTimersOfBlock(String _name) { + public List<String> getAllTimersOfBlock(String _name) { for(AvatarBDStateMachineOwner block: getFullStateMachineOwnerList()) if (block.getOwnerName().equals (_name)) return block.getAllTimerList(); @@ -602,7 +604,7 @@ public class AvatarBDPanel extends TDiagramPanel { return null; } - public LinkedList<TAttribute> getAttributesOfDataType(String _name) { + public List<TAttribute> getAttributesOfDataType(String _name) { for (TGComponent tgc: this.componentList) if (tgc instanceof AvatarBDDataType) { AvatarBDDataType adt = (AvatarBDDataType)tgc; @@ -628,14 +630,14 @@ public class AvatarBDPanel extends TDiagramPanel { return mainCode; } - public LinkedList<AvatarBDStateMachineOwner> getValidated() { + public List<AvatarBDStateMachineOwner> getValidated() { if ((val != null) && (validated == null)) { makeValidated(); } return validated; } - public LinkedList<AvatarBDStateMachineOwner> getIgnored() { + public List<AvatarBDStateMachineOwner> getIgnored() { if ((ign != null) && (ignored == null)) { makeIgnored(); } @@ -646,12 +648,11 @@ public class AvatarBDPanel extends TDiagramPanel { return optimized; } - - public void setValidated(LinkedList<AvatarBDStateMachineOwner> _validated) { + public void setValidated( List<AvatarBDStateMachineOwner> _validated) { validated = _validated; } - public void setIgnored(LinkedList<AvatarBDStateMachineOwner> _ignored) { + public void setIgnored( List<AvatarBDStateMachineOwner> _ignored) { ignored = _ignored; } @@ -662,7 +663,7 @@ public class AvatarBDPanel extends TDiagramPanel { public void makeValidated() { TraceManager.addDev("Making validated with val=" + val); validated = new LinkedList<AvatarBDStateMachineOwner> (); - LinkedList<AvatarBDStateMachineOwner> list = getFullStateMachineOwnerList(); + List<AvatarBDStateMachineOwner> list = getFullStateMachineOwnerList(); String tmp; String split[] = val.split(";"); @@ -683,7 +684,7 @@ public class AvatarBDPanel extends TDiagramPanel { public void makeIgnored() { TraceManager.addDev("Making ignored with ign=" + val); ignored = new LinkedList<AvatarBDStateMachineOwner> (); - LinkedList<AvatarBDStateMachineOwner> list = getFullStateMachineOwnerList(); + List<AvatarBDStateMachineOwner> list = getFullStateMachineOwnerList(); String tmp; String split[] = ign.split(";"); diff --git a/src/main/java/ui/avatarbd/AvatarBDPerformancePragma.java b/src/main/java/ui/avatarbd/AvatarBDPerformancePragma.java index e09477549c..e1b2a7f95f 100644 --- a/src/main/java/ui/avatarbd/AvatarBDPerformancePragma.java +++ b/src/main/java/ui/avatarbd/AvatarBDPerformancePragma.java @@ -36,7 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - package ui.avatarbd; import myutil.Conversion; @@ -49,10 +48,14 @@ import ui.util.IconManager; import ui.window.JDialogPerformancePragma; import javax.swing.*; -import java.awt.*; + +import java.awt.Color; +import java.awt.Font; +import java.awt.Graphics; import java.util.ArrayList; import java.util.HashMap; import java.util.LinkedList; +import java.util.List; import java.util.Map; /** @@ -66,7 +69,7 @@ import java.util.Map; public class AvatarBDPerformancePragma extends TGCScalableWithoutInternalComponent { protected String[] values; - protected LinkedList<String> properties; + protected List<String> properties; protected int textX = 40; protected int textY = 5; protected int marginY = 20; @@ -74,7 +77,7 @@ public class AvatarBDPerformancePragma extends TGCScalableWithoutInternalCompone protected int limit = 15; protected int lockX = 1; protected int lockY = 5; - public ArrayList<String> syntaxErrors; + public List<String> syntaxErrors; protected Graphics myg; protected Color myColor; @@ -83,7 +86,7 @@ public class AvatarBDPerformancePragma extends TGCScalableWithoutInternalCompone // private int maxFontSize = 30; // private int minFontSize = 4; private int currentFontSize = -1; - private final String[] pPragma = {"A[]", "A<>", "E[]", "E<>"}; + // private final String[] pPragma = {"A[]", "A<>", "E[]", "E<>"}; public Map<String, String> verifMap = new HashMap<String, String>(); protected Graphics graphics; @@ -129,10 +132,11 @@ public class AvatarBDPerformancePragma extends TGCScalableWithoutInternalCompone return values; } - public LinkedList<String> getProperties() { + public List<String> getProperties() { return properties; } + @Override public void internalDrawing(Graphics g) { Font f = g.getFont(); Font fold = f; @@ -255,7 +259,7 @@ public class AvatarBDPerformancePragma extends TGCScalableWithoutInternalCompone } }*/ - + @Override public boolean editOndoubleClick(JFrame frame) { String oldValue = value; @@ -283,6 +287,7 @@ public class AvatarBDPerformancePragma extends TGCScalableWithoutInternalCompone return null; } + @Override public void rescale(double scaleFactor) { /*dlineHeight = (lineHeight + dlineHeight) / oldScaleFactor * scaleFactor; lineHeight = (int)(dlineHeight); @@ -294,10 +299,12 @@ public class AvatarBDPerformancePragma extends TGCScalableWithoutInternalCompone super.rescale(scaleFactor); } + @Override public int getType() { return TGComponentManager.PERFORMANCE_PRAGMA; } + @Override protected String translateExtraParam() { if (values == null) { makeValue(); diff --git a/src/main/java/ui/avatarbd/AvatarBDPragma.java b/src/main/java/ui/avatarbd/AvatarBDPragma.java index 7dd4d58ffc..f3b9419132 100755 --- a/src/main/java/ui/avatarbd/AvatarBDPragma.java +++ b/src/main/java/ui/avatarbd/AvatarBDPragma.java @@ -405,6 +405,7 @@ public class AvatarBDPragma extends TGCScalableWithoutInternalComponent { } + @Override public boolean editOndoubleClick(JFrame frame) { String oldValue = value; diff --git a/src/main/java/ui/avatarbd/AvatarBDStateMachineOwner.java b/src/main/java/ui/avatarbd/AvatarBDStateMachineOwner.java index f26e17890a..13b68cefd4 100755 --- a/src/main/java/ui/avatarbd/AvatarBDStateMachineOwner.java +++ b/src/main/java/ui/avatarbd/AvatarBDStateMachineOwner.java @@ -36,19 +36,15 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.avatarbd; +import java.util.List; + import ui.AvatarMethod; import ui.AvatarSignal; import ui.TAttribute; import ui.avatarsmd.AvatarSMDPanel; -import java.util.LinkedList; - - /** * This interface represent block diagram elements that are associated to a state machine. * It defines the functions so that a state machine can deal transparently no matter if @@ -59,14 +55,14 @@ import java.util.LinkedList; */ public interface AvatarBDStateMachineOwner { - LinkedList<TAttribute> getAttributeList(); - LinkedList<String> getAllTimerList(); + List<TAttribute> getAttributeList(); + List<String> getAllTimerList(); TAttribute getAttributeByName(String _name); - LinkedList<AvatarSignal> getSignalList(); - LinkedList<AvatarSignal> getAllSignalList(); + List<AvatarSignal> getSignalList(); + List<AvatarSignal> getAllSignalList(); AvatarSignal getSignalNameBySignalDef(String _id); - LinkedList<AvatarMethod> getMethodList(); - LinkedList<AvatarMethod> getAllMethodList(); + List<AvatarMethod> getMethodList(); + List<AvatarMethod> getAllMethodList(); String getOwnerName(); AvatarSMDPanel getAvatarSMDPanel(); diff --git a/src/main/java/ui/avatarsmd/AvatarSMDConnector.java b/src/main/java/ui/avatarsmd/AvatarSMDConnector.java index e12766e20c..127a1e7912 100644 --- a/src/main/java/ui/avatarsmd/AvatarSMDConnector.java +++ b/src/main/java/ui/avatarsmd/AvatarSMDConnector.java @@ -109,7 +109,6 @@ public class AvatarSMDConnector extends TGConnectorWithCommentConnectionPoints i } }*/ - public void setTransitionInfo(String guard, String action) { AvatarSMDTransitionInfo tgc = (AvatarSMDTransitionInfo) getInternalTGComponent(0); if (!guard.isEmpty()) { diff --git a/src/main/java/ui/avatarsmd/AvatarSMDExpireTimer.java b/src/main/java/ui/avatarsmd/AvatarSMDExpireTimer.java index 802ff5f9fc..c4e16b68cd 100644 --- a/src/main/java/ui/avatarsmd/AvatarSMDExpireTimer.java +++ b/src/main/java/ui/avatarsmd/AvatarSMDExpireTimer.java @@ -36,22 +36,30 @@ * knowledge of the CeCILL license and that you accept its terms. */ +package ui.avatarsmd; +import java.awt.Color; +import java.awt.Graphics; +import java.awt.geom.Line2D; +import java.util.List; - -package ui.avatarsmd; +import javax.swing.JFrame; +import javax.swing.JOptionPane; import myutil.GraphicLib; import myutil.TraceManager; -import ui.*; +import ui.AvatarSignal; +import ui.BasicErrorHighlight; +import ui.ColorManager; +import ui.ErrorHighlight; +import ui.PartOfInvariant; +import ui.TDiagramPanel; +import ui.TGComponent; +import ui.TGComponentManager; +import ui.TGConnectingPoint; import ui.util.IconManager; import ui.window.JDialogAvatarTimer; -import javax.swing.*; -import java.awt.*; -import java.awt.geom.Line2D; -import java.util.LinkedList; - /** * Class AvatarSMDExpireTimer * Action of waiting for the expiration of a timer @@ -97,8 +105,8 @@ public class AvatarSMDExpireTimer extends AvatarSMDBasicComponent implements Bas myImageIcon = IconManager.imgic904; } + @Override public void internalDrawing(Graphics g) { - int w = g.getFontMetrics().stringWidth(value); int w1 = Math.max(minWidth, w + 2 * textX + linebreak); if ((w1 != width) & (!tdp.isScaled())) { @@ -106,7 +114,6 @@ public class AvatarSMDExpireTimer extends AvatarSMDBasicComponent implements Bas width = w1; //updateConnectingPoints(); } - if (stateOfError > 0) { Color c = g.getColor(); switch(stateOfError) { @@ -170,6 +177,7 @@ public class AvatarSMDExpireTimer extends AvatarSMDBasicComponent implements Bas } + @Override public TGComponent isOnMe(int _x, int _y) { if (GraphicLib.isInRectangle(_x, _y, x, y, width + hourglassSpace + hourglassWidth, height)) { return this; @@ -182,15 +190,16 @@ public class AvatarSMDExpireTimer extends AvatarSMDBasicComponent implements Bas return null; } - public void makeValue() { - } +// public void makeValue() { +// } public String getTimerName() { return AvatarSignal.getValue(value, 0); } + @Override public boolean editOndoubleClick(JFrame frame) { - LinkedList<String> timers = tdp.getMGUI().getAllTimers(); + List<String> timers = tdp.getMGUI().getAllTimers(); TraceManager.addDev("Nb of timers:" + timers.size()); JDialogAvatarTimer jdat = new JDialogAvatarTimer(frame, "Timer expiration", getTimerName(), "", timers, false); diff --git a/src/main/java/ui/avatarsmd/AvatarSMDReceiveSignal.java b/src/main/java/ui/avatarsmd/AvatarSMDReceiveSignal.java index ad21ef15f3..97637c4760 100644 --- a/src/main/java/ui/avatarsmd/AvatarSMDReceiveSignal.java +++ b/src/main/java/ui/avatarsmd/AvatarSMDReceiveSignal.java @@ -36,29 +36,36 @@ * knowledge of the CeCILL license and that you accept its terms. */ +package ui.avatarsmd; +import java.awt.Color; +import java.awt.Graphics; +import java.awt.geom.Line2D; +import java.util.List; +import java.util.Vector; +import java.util.concurrent.ConcurrentHashMap; - -package ui.avatarsmd; +import javax.swing.JFrame; +import javax.swing.JOptionPane; import myutil.GraphicLib; import myutil.TraceManager; -import ui.*; -import ui.util.IconManager; -import ui.window.JDialogAvatarSignal; - -import java.util.concurrent.ConcurrentHashMap; - -import javax.swing.*; -import java.awt.*; -import java.awt.geom.Line2D; -import java.util.LinkedList; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.Vector; +import ui.AvatarSignal; +import ui.BasicErrorHighlight; +import ui.CheckableAccessibility; +import ui.CheckableLatency; +import ui.ColorManager; +import ui.ErrorHighlight; +import ui.LinkedReference; +import ui.PartOfInvariant; +import ui.TDiagramPanel; +import ui.TGComponent; +import ui.TGComponentManager; +import ui.TGConnectingPoint; import ui.avatarrd.AvatarRDRequirement; - import ui.tmlad.TMLADReadChannel; +import ui.util.IconManager; +import ui.window.JDialogAvatarSignal; /** * Class AvatarSMDReceiveSignal * Action of receiving a signal @@ -112,11 +119,12 @@ public class AvatarSMDReceiveSignal extends AvatarSMDBasicComponent implements C //latencyVals.put("sendChannel: sensorData", "15"); } - public void addLatency(String name, String num){ latencyVals.put(name,num); } - public void internalDrawing(Graphics g) { + + @Override + public void internalDrawing(Graphics g) { int w = g.getFontMetrics().stringWidth(value + textX1); int w1 = Math.max(minWidth, w + 2 * textX); @@ -360,14 +368,14 @@ public class AvatarSMDReceiveSignal extends AvatarSMDBasicComponent implements C return nParam; }*/ - + + @Override public boolean editOndoubleClick(JFrame frame) { - // - LinkedList<AvatarSignal> signals = tdp.getMGUI().getAllSignals(); + List<AvatarSignal> signals = tdp.getMGUI().getAllSignals(); TraceManager.addDev("Nb of signals:" + signals.size()); - ArrayList<TGComponent> comps = tdp.getMGUI().getAllLatencyChecks(); + List<TGComponent> comps = tdp.getMGUI().getAllLatencyChecks(); Vector<TGComponent> refs = new Vector<TGComponent>(); for (TGComponent req: tdp.getMGUI().getAllRequirements()){ // @@ -380,6 +388,7 @@ public class AvatarSMDReceiveSignal extends AvatarSMDBasicComponent implements C refs.add(tg); } } + JDialogAvatarSignal jdas = new JDialogAvatarSignal(frame, "Setting receive signal", value, signals, false, reference, refs); //jdas.setSize(350, 300); GraphicLib.centerOnParent(jdas, 550, 300); diff --git a/src/main/java/ui/avatarsmd/AvatarSMDResetTimer.java b/src/main/java/ui/avatarsmd/AvatarSMDResetTimer.java index 2498e1f818..a65555c45f 100644 --- a/src/main/java/ui/avatarsmd/AvatarSMDResetTimer.java +++ b/src/main/java/ui/avatarsmd/AvatarSMDResetTimer.java @@ -36,22 +36,30 @@ * knowledge of the CeCILL license and that you accept its terms. */ +package ui.avatarsmd; +import java.awt.Color; +import java.awt.Graphics; +import java.awt.geom.Line2D; +import java.util.List; - -package ui.avatarsmd; +import javax.swing.JFrame; +import javax.swing.JOptionPane; import myutil.GraphicLib; import myutil.TraceManager; -import ui.*; +import ui.AvatarSignal; +import ui.BasicErrorHighlight; +import ui.ColorManager; +import ui.ErrorHighlight; +import ui.PartOfInvariant; +import ui.TDiagramPanel; +import ui.TGComponent; +import ui.TGComponentManager; +import ui.TGConnectingPoint; import ui.util.IconManager; import ui.window.JDialogAvatarTimer; -import javax.swing.*; -import java.awt.*; -import java.awt.geom.Line2D; -import java.util.LinkedList; - /** * Class AvatarSMDResetTimer * Action of resetting a timer @@ -166,6 +174,7 @@ public class AvatarSMDResetTimer extends AvatarSMDBasicComponent implements Basi } + @Override public TGComponent isOnMe(int _x, int _y) { if (GraphicLib.isInRectangle(_x, _y, x, y, width + hourglassSpace + hourglassWidth, height)) { return this; @@ -178,15 +187,16 @@ public class AvatarSMDResetTimer extends AvatarSMDBasicComponent implements Basi return null; } - public void makeValue() { - } +// public void makeValue() { +// } public String getTimerName() { return AvatarSignal.getValue(value, 0); } + @Override public boolean editOndoubleClick(JFrame frame) { - LinkedList<String> timers = tdp.getMGUI().getAllTimers(); + List<String> timers = tdp.getMGUI().getAllTimers(); TraceManager.addDev("Nb of timers:" + timers.size()); JDialogAvatarTimer jdat = new JDialogAvatarTimer(frame, "Reset timer", getTimerName(), "", timers, false); @@ -212,20 +222,19 @@ public class AvatarSMDResetTimer extends AvatarSMDBasicComponent implements Basi value = "reset(" + val0 + ")"; return true; - } - - - + @Override public int getType() { return TGComponentManager.AVATARSMD_RESET_TIMER; } - public int getDefaultConnector() { - return TGComponentManager.AVATARSMD_CONNECTOR; + @Override + public int getDefaultConnector() { + return TGComponentManager.AVATARSMD_CONNECTOR; } + @Override public void setStateAction(int _stateAction) { stateOfError = _stateAction; } diff --git a/src/main/java/ui/avatarsmd/AvatarSMDSendSignal.java b/src/main/java/ui/avatarsmd/AvatarSMDSendSignal.java index b9000b58a5..55fd6ffca7 100644 --- a/src/main/java/ui/avatarsmd/AvatarSMDSendSignal.java +++ b/src/main/java/ui/avatarsmd/AvatarSMDSendSignal.java @@ -36,27 +36,35 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.avatarsmd; -import myutil.GraphicLib; -import ui.*; -import ui.util.IconManager; -import ui.window.JDialogAvatarSignal; - -import javax.swing.*; -import java.awt.*; +import java.awt.Color; +import java.awt.Graphics; import java.awt.geom.Line2D; -import java.util.LinkedList; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.concurrent.ConcurrentHashMap; +import java.util.List; import java.util.Vector; -import ui.avatarrd.AvatarRDRequirement; +import java.util.concurrent.ConcurrentHashMap; + +import javax.swing.JFrame; +import javax.swing.JOptionPane; +import myutil.GraphicLib; +import ui.AvatarSignal; +import ui.BasicErrorHighlight; +import ui.CheckableAccessibility; +import ui.CheckableLatency; +import ui.ColorManager; +import ui.ErrorHighlight; +import ui.LinkedReference; +import ui.PartOfInvariant; +import ui.TDiagramPanel; +import ui.TGComponent; +import ui.TGComponentManager; +import ui.TGConnectingPoint; +import ui.avatarrd.AvatarRDRequirement; import ui.tmlad.TMLADWriteChannel; +import ui.util.IconManager; +import ui.window.JDialogAvatarSignal; /** * Class AvatarSMDSendSignal * Action of sending a signal @@ -105,11 +113,13 @@ public class AvatarSMDSendSignal extends AvatarSMDBasicComponent implements Chec myImageIcon = IconManager.imgic904; latencyVals = new ConcurrentHashMap<String, String>(); } + public void addLatency(String name, String num){ latencyVals.put(name,num); } + + @Override public void internalDrawing(Graphics g) { - int w = g.getFontMetrics().stringWidth(value); int w1 = Math.max(minWidth, w + 2 * textX); if ((w1 != width) & (!tdp.isScaled())) { @@ -289,6 +299,7 @@ public class AvatarSMDSendSignal extends AvatarSMDBasicComponent implements Chec } } + @Override public TGComponent isOnMe(int _x, int _y) { if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { return this; @@ -353,10 +364,11 @@ public class AvatarSMDSendSignal extends AvatarSMDBasicComponent implements Chec return AvatarSignal.getValue(value, _index); } + @Override public boolean editOndoubleClick(JFrame frame) { - LinkedList<AvatarSignal> signals = tdp.getMGUI().getAllSignals(); + List<AvatarSignal> signals = tdp.getMGUI().getAllSignals(); //TraceManager.addDev("Nb of signals:" + signals.size()); - ArrayList<TGComponent> comps = tdp.getMGUI().getAllLatencyChecks(); + List<TGComponent> comps = tdp.getMGUI().getAllLatencyChecks(); Vector<TGComponent> refs = new Vector<TGComponent>(); for (TGComponent req: tdp.getMGUI().getAllRequirements()){ @@ -466,15 +478,17 @@ public class AvatarSMDSendSignal extends AvatarSMDBasicComponent implements Chec makeValue(); }*/ - + @Override public int getType() { return TGComponentManager.AVATARSMD_SEND_SIGNAL; } + @Override public int getDefaultConnector() { return TGComponentManager.AVATARSMD_CONNECTOR; } + @Override public void setStateAction(int _stateAction) { stateOfError = _stateAction; } diff --git a/src/main/java/ui/avatarsmd/AvatarSMDSetTimer.java b/src/main/java/ui/avatarsmd/AvatarSMDSetTimer.java index ee71ee4865..952f1039cc 100644 --- a/src/main/java/ui/avatarsmd/AvatarSMDSetTimer.java +++ b/src/main/java/ui/avatarsmd/AvatarSMDSetTimer.java @@ -36,22 +36,30 @@ * knowledge of the CeCILL license and that you accept its terms. */ +package ui.avatarsmd; +import java.awt.Color; +import java.awt.Graphics; +import java.awt.geom.Line2D; +import java.util.List; - -package ui.avatarsmd; +import javax.swing.JFrame; +import javax.swing.JOptionPane; import myutil.GraphicLib; import myutil.TraceManager; -import ui.*; +import ui.AvatarSignal; +import ui.BasicErrorHighlight; +import ui.ColorManager; +import ui.ErrorHighlight; +import ui.PartOfInvariant; +import ui.TDiagramPanel; +import ui.TGComponent; +import ui.TGComponentManager; +import ui.TGConnectingPoint; import ui.util.IconManager; import ui.window.JDialogAvatarTimer; -import javax.swing.*; -import java.awt.*; -import java.awt.geom.Line2D; -import java.util.LinkedList; - /** * Class AvatarSMDSetTimer * Action of setting a timer @@ -97,9 +105,9 @@ public class AvatarSMDSetTimer extends AvatarSMDBasicComponent implements BasicE myImageIcon = IconManager.imgic904; } + @Override public void internalDrawing(Graphics g) { - - int w = g.getFontMetrics().stringWidth(value); + int w = g.getFontMetrics().stringWidth(value); int w1 = Math.max(minWidth, w + 2 * textX); if ((w1 != width) & (!tdp.isScaled())) { setCd(x + width/2 - w1/2, y); @@ -168,6 +176,7 @@ public class AvatarSMDSetTimer extends AvatarSMDBasicComponent implements BasicE } + @Override public TGComponent isOnMe(int _x, int _y) { if (GraphicLib.isInRectangle(_x, _y, x, y, width + hourglassSpace + hourglassWidth, height)) { return this; @@ -180,8 +189,8 @@ public class AvatarSMDSetTimer extends AvatarSMDBasicComponent implements BasicE return null; } - public void makeValue() { - } +// public void makeValue() { +// } public String getTimerName() { return AvatarSignal.getValue(value, 0); @@ -191,8 +200,9 @@ public class AvatarSMDSetTimer extends AvatarSMDBasicComponent implements BasicE return AvatarSignal.getValue(value, 1); } + @Override public boolean editOndoubleClick(JFrame frame) { - LinkedList<String> timers = tdp.getMGUI().getAllTimers(); + List<String> timers = tdp.getMGUI().getAllTimers(); TraceManager.addDev("Nb of timers:" + timers.size()); JDialogAvatarTimer jdat = new JDialogAvatarTimer(frame, "Setting timer set", getTimerName(), getTimerValue(), timers, true); diff --git a/src/main/java/ui/avatarsmd/AvatarSMDTransitionInfo.java b/src/main/java/ui/avatarsmd/AvatarSMDTransitionInfo.java index b4652293ed..2b06c17854 100755 --- a/src/main/java/ui/avatarsmd/AvatarSMDTransitionInfo.java +++ b/src/main/java/ui/avatarsmd/AvatarSMDTransitionInfo.java @@ -49,11 +49,10 @@ import ui.util.IconManager; import ui.window.JDialogAvatarTransition; import javax.swing.*; -import java.awt.*; -import java.util.LinkedList; -import java.util.Vector; -//import java.awt.geom.*; +import java.awt.Graphics; +import java.util.List; +import java.util.Vector; /** * Class AvatarSMDTransitionInfo @@ -69,7 +68,6 @@ public class AvatarSMDTransitionInfo extends TGCWithoutInternalComponent impleme // private static String FILE_INFO = "(user files specified)"; // private static String CODE_INFO = "(user code specified)"; - protected String guard; protected String afterMin; protected String afterMax; @@ -279,13 +277,15 @@ public class AvatarSMDTransitionInfo extends TGCWithoutInternalComponent impleme return null; } + @Override public boolean isInRectangle(int x1, int y1, int width, int height) { return !((getX() < x1) || (getY() < y1) || ((getX() + this.width) > (x1 + width)) || ((getY() + this.height) > (y1 + height))); } + @Override public boolean editOndoubleClick(JFrame frame) { - LinkedList<TAttribute> attributes = tdp.getMGUI().getAllAttributes(); - LinkedList<AvatarMethod> methods = tdp.getMGUI().getAllMethods(); + List<TAttribute> attributes = tdp.getMGUI().getAllAttributes(); + List<AvatarMethod> methods = tdp.getMGUI().getAllMethods(); JDialogAvatarTransition jdat = new JDialogAvatarTransition(frame, "Setting transition parameters", guard, afterMin, afterMax, computeMin, computeMax, listOfActions, attributes, methods, filesToInclude, codeToInclude, probability); // jdat.setSize(600, 550); GraphicLib.centerOnParent(jdat, 600, 550); diff --git a/src/main/java/ui/window/JDialogAvatarBlock.java b/src/main/java/ui/window/JDialogAvatarBlock.java index 1990712faa..c3bdb5e325 100644 --- a/src/main/java/ui/window/JDialogAvatarBlock.java +++ b/src/main/java/ui/window/JDialogAvatarBlock.java @@ -48,10 +48,19 @@ import ui.TAttribute; import javax.swing.*; import javax.swing.event.ListSelectionEvent; import javax.swing.event.ListSelectionListener; -import java.awt.*; + +import java.awt.BorderLayout; +import java.awt.Container; +import java.awt.Dimension; +import java.awt.Font; +import java.awt.Frame; +import java.awt.GridBagConstraints; +import java.awt.GridBagLayout; +import java.awt.Insets; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.util.LinkedList; +import java.util.List; /** @@ -64,10 +73,10 @@ import java.util.LinkedList; */ public class JDialogAvatarBlock extends JDialogBase implements ActionListener, ListSelectionListener { - private LinkedList<TAttribute> attributes, attributesPar, forbidden; - private LinkedList<Boolean> initValues; - private LinkedList<AvatarMethod> methods, methodsPar; - private LinkedList<AvatarSignal> signals, signalsPar; + private List<TAttribute> attributes, attributesPar, forbidden; + private List<Boolean> initValues; + private List<AvatarMethod> methods, methodsPar; + private List<AvatarSignal> signals, signalsPar; private boolean checkKeyword, checkJavaKeyword; private boolean cancelled = true; @@ -122,7 +131,7 @@ public class JDialogAvatarBlock extends JDialogBase implements ActionListener, L /** * Creates new form */ - public JDialogAvatarBlock(LinkedList<TAttribute> _attributes, LinkedList<AvatarMethod> _methods, LinkedList<AvatarSignal> _signals, LinkedList<TAttribute> _forbidden, Frame f, String title, String attrib, int _tab, String[] _globalCode, boolean _hasGlobalCode, String _mainCode) { + public JDialogAvatarBlock( List<TAttribute> _attributes, List<AvatarMethod> _methods, List<AvatarSignal> _signals, List<TAttribute> _forbidden, Frame f, String title, String attrib, int _tab, String[] _globalCode, boolean _hasGlobalCode, String _mainCode) { super(f, title, true); frame = f; attributesPar = _attributes; diff --git a/src/main/java/ui/window/JDialogAvatarSignal.java b/src/main/java/ui/window/JDialogAvatarSignal.java index c463100117..555e36aa46 100644 --- a/src/main/java/ui/window/JDialogAvatarSignal.java +++ b/src/main/java/ui/window/JDialogAvatarSignal.java @@ -38,19 +38,29 @@ package ui.window; -import ui.AvatarSignal; -import ui.util.IconManager; -import ui.TGComponent; -import myutil.TraceManager; - -import javax.swing.*; -import java.awt.*; +import java.awt.BorderLayout; +import java.awt.Container; +import java.awt.Font; +import java.awt.Frame; +import java.awt.GridBagConstraints; +import java.awt.GridBagLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.util.LinkedList; import java.util.List; import java.util.Vector; +import javax.swing.JButton; +import javax.swing.JComboBox; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JTextField; + +import myutil.TraceManager; +import ui.AvatarSignal; +import ui.TGComponent; + /** * Class JDialogAvatarSignal @@ -61,8 +71,8 @@ import java.util.Vector; */ public class JDialogAvatarSignal extends JDialogBase implements ActionListener { - private LinkedList<AvatarSignal> signals, realSignals; - private LinkedList<String> showSignals; + private List<AvatarSignal> signals, realSignals; + private List<String> showSignals; private String currentSignal; private boolean isOut; @@ -81,7 +91,7 @@ public class JDialogAvatarSignal extends JDialogBase implements ActionListener private JTextField signal; /** Creates new form */ - public JDialogAvatarSignal(Frame _f, String _title, String _currentSignal, LinkedList<AvatarSignal> _signals, boolean _isOut, TGComponent _reference, Vector<TGComponent> _refs) { + public JDialogAvatarSignal(Frame _f, String _title, String _currentSignal, List<AvatarSignal> _signals, boolean _isOut, TGComponent _reference, Vector<TGComponent> _refs) { super(_f, _title, true); @@ -100,7 +110,6 @@ public class JDialogAvatarSignal extends JDialogBase implements ActionListener pack(); } - private void makeSignals() { showSignals = new LinkedList<String> (); realSignals = new LinkedList<AvatarSignal> (); diff --git a/src/main/java/ui/window/JDialogAvatarTimer.java b/src/main/java/ui/window/JDialogAvatarTimer.java index 845172d98b..913b268c5a 100644 --- a/src/main/java/ui/window/JDialogAvatarTimer.java +++ b/src/main/java/ui/window/JDialogAvatarTimer.java @@ -36,18 +36,25 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.window; -import ui.util.IconManager; - -import javax.swing.*; -import java.awt.*; +import java.awt.Container; +import java.awt.Dimension; +import java.awt.Font; +import java.awt.Frame; +import java.awt.GridBagConstraints; +import java.awt.GridBagLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; -import java.util.LinkedList; +import java.util.List; + +import javax.swing.JButton; +import javax.swing.JComboBox; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JTextField; +import javax.swing.border.TitledBorder; /** * Class JDialogAvatarTimer @@ -58,7 +65,7 @@ import java.util.LinkedList; */ public class JDialogAvatarTimer extends JDialogBase implements ActionListener { - private LinkedList<String> timers; + private List<String> timers; private boolean cancelled = true; private JPanel panel1, panel2; @@ -77,8 +84,7 @@ public class JDialogAvatarTimer extends JDialogBase implements ActionListener { /** Creates new form */ - public JDialogAvatarTimer(Frame _f, String _title, String _timer, String _value, LinkedList<String> _timers, boolean _setValue) { - + public JDialogAvatarTimer(Frame _f, String _title, String _timer, String _value, List<String> _timers, boolean _setValue) { super(_f, _title, true); timers = _timers; @@ -87,13 +93,13 @@ public class JDialogAvatarTimer extends JDialogBase implements ActionListener { setValue = _setValue; initComponents(); - myInitComponents(); + // myInitComponents(); pack(); } - - - private void myInitComponents() { - } +// +// +// private void myInitComponents() { +// } private void initComponents() { Container c = getContentPane(); @@ -102,7 +108,7 @@ public class JDialogAvatarTimer extends JDialogBase implements ActionListener { GridBagLayout gridbag2 = new GridBagLayout(); GridBagConstraints c0 = new GridBagConstraints(); GridBagConstraints c1 = new GridBagConstraints(); - GridBagConstraints c2 = new GridBagConstraints(); + //GridBagConstraints c2 = new GridBagConstraints(); setFont(new Font("Helvetica", Font.PLAIN, 14)); c.setLayout(gridbag0); @@ -112,7 +118,7 @@ public class JDialogAvatarTimer extends JDialogBase implements ActionListener { panel1 = new JPanel(); panel1.setLayout(gridbag1); - panel1.setBorder(new javax.swing.border.TitledBorder("Timer")); + panel1.setBorder(new TitledBorder("Timer")); panel1.setPreferredSize(new Dimension(300, 150)); diff --git a/src/main/java/ui/window/JDialogAvatarTransition.java b/src/main/java/ui/window/JDialogAvatarTransition.java index fa6a477218..e1847f538c 100644 --- a/src/main/java/ui/window/JDialogAvatarTransition.java +++ b/src/main/java/ui/window/JDialogAvatarTransition.java @@ -36,24 +36,35 @@ * knowledge of the CeCILL license and that you accept its terms. */ +package ui.window; +import java.awt.BorderLayout; +import java.awt.Container; +import java.awt.Font; +import java.awt.Frame; +import java.awt.GridBagConstraints; +import java.awt.GridBagLayout; +import java.awt.Insets; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.util.List; +import java.util.Vector; - -package ui.window; +import javax.swing.JButton; +import javax.swing.JComboBox; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JScrollPane; +import javax.swing.JTabbedPane; +import javax.swing.JTextArea; +import javax.swing.JTextField; import myutil.Conversion; import myutil.GraphicLib; import ui.AvatarMethod; -import ui.util.IconManager; import ui.TAttribute; -import javax.swing.*; -import java.awt.*; -import java.awt.event.ActionEvent; -import java.awt.event.ActionListener; -import java.util.LinkedList; -import java.util.Vector; - /** * Class JDialogAvatarTransition * Dialog for managing transitions between states @@ -65,8 +76,8 @@ public class JDialogAvatarTransition extends JDialogBase implements ActionListen private Vector<String> actions; private String guard, afterMin, afterMax, computeMin, computeMax, probability; - private LinkedList<TAttribute> myAttributes; - private LinkedList<AvatarMethod> myMethods; + private List<TAttribute> myAttributes; + private List<AvatarMethod> myMethods; private Vector<String> allElements, insertElements; protected String [] filesToInclude; @@ -91,7 +102,7 @@ public class JDialogAvatarTransition extends JDialogBase implements ActionListen // arrayDelay: [0] -> minDelay ; [1] -> maxDelay public JDialogAvatarTransition(Frame _f, String _title, String _guard, String _afterMin, String _afterMax, String _computeMin, String _computeMax, Vector<String> _actions, - LinkedList<TAttribute> _myAttributes, LinkedList<AvatarMethod> _myMethods, + List<TAttribute> _myAttributes, List<AvatarMethod> _myMethods, String[] _filesToInclude, String[] _codeToInclude, String _probability) { super(_f, _title, true); @@ -407,5 +418,4 @@ public class JDialogAvatarTransition extends JDialogBase implements ActionListen public String[] getCodeToInclude() { return codeToInclude; } - } diff --git a/src/main/java/ui/window/JDialogModelChecking.java b/src/main/java/ui/window/JDialogModelChecking.java index 93fb37d7bb..c6978e3a90 100644 --- a/src/main/java/ui/window/JDialogModelChecking.java +++ b/src/main/java/ui/window/JDialogModelChecking.java @@ -46,11 +46,20 @@ import ui.util.IconManager; import javax.swing.*; import javax.swing.event.ListSelectionEvent; import javax.swing.event.ListSelectionListener; -import java.awt.*; + +import java.awt.BorderLayout; +import java.awt.Container; +import java.awt.Dimension; +import java.awt.FlowLayout; +import java.awt.Font; +import java.awt.Frame; +import java.awt.GridBagConstraints; +import java.awt.GridBagLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.util.Iterator; import java.util.LinkedList; +import java.util.List; /** * Class JDialogModelChecking @@ -61,10 +70,10 @@ import java.util.LinkedList; * @version 1.0 13/12/2003 */ public class JDialogModelChecking extends JDialogBase implements ActionListener, ListSelectionListener { - public static java.util.List<TClassInterface> validated, ignored; + public static List<TClassInterface> validated, ignored; private static boolean overideSyntaxChecking = false; - private java.util.List<TClassInterface> val, ign, back; + private List<TClassInterface> val, ign, back; //subpanels private JPanel panel1, panel2, panel3, panel4, panel5, panel6; @@ -79,7 +88,7 @@ public class JDialogModelChecking extends JDialogBase implements ActionListener, /** * Creates new form */ - public JDialogModelChecking(Frame f, LinkedList<TClassInterface> _back, java.util.List<TGComponent> componentList, String title) { + public JDialogModelChecking(Frame f, List<TClassInterface> _back, List<TGComponent> componentList, String title) { super(f, title, true); back = _back; @@ -101,8 +110,8 @@ public class JDialogModelChecking extends JDialogBase implements ActionListener, pack(); } - private java.util.List<TClassInterface> makeNewVal(java.util.List<TGComponent> list) { - java.util.List<TClassInterface> v = new LinkedList<TClassInterface>(); + private List<TClassInterface> makeNewVal(List<TGComponent> list) { + List<TClassInterface> v = new LinkedList<TClassInterface>(); for (TGComponent tgc : list) if (tgc instanceof TClassInterface) @@ -111,7 +120,7 @@ public class JDialogModelChecking extends JDialogBase implements ActionListener, return v; } - private void checkTClasses(java.util.List<TClassInterface> tobeChecked, java.util.List<TGComponent> source) { + private void checkTClasses( List<TClassInterface> tobeChecked, List<TGComponent> source) { Iterator<TClassInterface> iter = tobeChecked.iterator(); while (iter.hasNext()) { TClassInterface t = iter.next(); @@ -120,7 +129,7 @@ public class JDialogModelChecking extends JDialogBase implements ActionListener, } } - public void addNewTclasses(java.util.List<TClassInterface> added, java.util.List<TGComponent> source, java.util.List<TClassInterface> notSource) { + public void addNewTclasses(List<TClassInterface> added, List<TGComponent> source, List<TClassInterface> notSource) { for (TGComponent tgc : source) if ((tgc instanceof TClassInterface) && (!added.contains(tgc)) && (!notSource.contains(tgc))) added.add((TClassInterface) tgc); diff --git a/src/main/java/ui/window/JDialogPerformancePragma.java b/src/main/java/ui/window/JDialogPerformancePragma.java index ab990ef7b2..f204f13efe 100644 --- a/src/main/java/ui/window/JDialogPerformancePragma.java +++ b/src/main/java/ui/window/JDialogPerformancePragma.java @@ -43,10 +43,21 @@ import ui.util.IconManager; import javax.swing.*; import javax.swing.text.BadLocationException; -import java.awt.*; + +import java.awt.BorderLayout; +import java.awt.Color; +import java.awt.ComponentOrientation; +import java.awt.Container; +import java.awt.Dimension; +import java.awt.Font; +import java.awt.Frame; +import java.awt.Insets; +import java.awt.Point; import java.awt.event.*; import java.util.ArrayList; import java.util.HashMap; +import java.util.List; +import java.util.Map; /** * Class JDialogPragma @@ -67,7 +78,7 @@ public class JDialogPerformancePragma extends JDialogBase implements ActionListe protected JMenuBar menuBar; protected JMenu help; protected JPopupMenu helpPopup; - public HashMap<String, java.util.List<String>> blockAttributeMap = new HashMap<String, java.util.List<String>>(); + public Map<String, List<String>> blockAttributeMap = new HashMap<String, java.util.List<String>>(); /** * Creates new form @@ -85,7 +96,7 @@ public class JDialogPerformancePragma extends JDialogBase implements ActionListe //Form list of all blocks //For each block, create a list of all states and signals - private JList list; + private JList<String> list; private JPopupMenu popupMenu; private String subWord; private final int insertionPosition; @@ -112,8 +123,8 @@ public class JDialogPerformancePragma extends JDialogBase implements ActionListe } } - private JList createSuggestionList(int linePosition, final int position, final String subWord) { - ArrayList<String> matches = new ArrayList<String>(); + private JList<String> createSuggestionList(int linePosition, final int position, final String subWord) { + List<String> matches = new ArrayList<String>(); if (linePosition < 6) { matches.add("Latency("); } else if (!subWord.contains(".")) { @@ -257,7 +268,6 @@ public class JDialogPerformancePragma extends JDialogBase implements ActionListe } protected void initComponents() { - Container c = getContentPane(); Font f = new Font("Helvetica", Font.PLAIN, 14); setFont(f); diff --git a/src/main/java/ui/window/JDialogPragma.java b/src/main/java/ui/window/JDialogPragma.java index b9918ad98d..21d864dcef 100644 --- a/src/main/java/ui/window/JDialogPragma.java +++ b/src/main/java/ui/window/JDialogPragma.java @@ -36,17 +36,27 @@ * knowledge of the CeCILL license and that you accept its terms. */ - package ui.window; import ui.util.IconManager; import javax.swing.*; import javax.swing.text.BadLocationException; -import java.awt.*; + +import java.awt.BorderLayout; +import java.awt.Color; +import java.awt.ComponentOrientation; +import java.awt.Container; +import java.awt.Dimension; +import java.awt.Font; +import java.awt.Frame; +import java.awt.Insets; +import java.awt.Point; import java.awt.event.*; import java.util.ArrayList; import java.util.HashMap; +import java.util.List; +import java.util.Map; import java.util.regex.Matcher; import java.util.regex.Pattern; @@ -68,8 +78,8 @@ public class JDialogPragma extends JDialogBase implements ActionListener { protected JButton cancel; protected JMenu help; private JPopupMenu helpPopup; - public HashMap<String, java.util.List<String>> blockAttributeMap = new HashMap<>(); - public HashMap<String, java.util.List<String>> blockStateMap = new HashMap<>(); + public Map<String, java.util.List<String>> blockAttributeMap = new HashMap<>(); + public Map<String, java.util.List<String>> blockStateMap = new HashMap<>(); /** * Creates new form @@ -85,7 +95,7 @@ public class JDialogPragma extends JDialogBase implements ActionListener { public class SuggestionPanel { private final String[] pragma = {"#Authenticity", "#Confidentiality", "#PublicConstant", "#PrivateConstant", "#InitialSessionKnowledge", "#InitialSystemKnowledge", "#PrivatePublicKeys", "#Public", "#SecrecyAssumption", "#Secret"}; - private JList list; + private JList<String> list; private JPopupMenu popupMenu; private String subWord; private final int insertionPosition; @@ -111,8 +121,8 @@ public class JDialogPragma extends JDialogBase implements ActionListener { } } - private JList createSuggestionList(final int position, final String subWord, String header) { - ArrayList<String> matches = new ArrayList<>(); + private JList<String> createSuggestionList(final int position, final String subWord, String header) { + List<String> matches = new ArrayList<>(); if (subWord.startsWith("#")) { for (String p : pragma) { if (p.startsWith(subWord)) { @@ -291,7 +301,6 @@ public class JDialogPragma extends JDialogBase implements ActionListener { } protected void initComponents() { - Container c = getContentPane(); Font f = new Font("Helvetica", Font.PLAIN, 14); setFont(f); @@ -358,12 +367,10 @@ public class JDialogPragma extends JDialogBase implements ActionListener { } }); - JScrollPane jsp = new JScrollPane(textarea, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS); jsp.setPreferredSize(new Dimension(300, 300)); c.add(jsp, BorderLayout.CENTER); - close = new JButton("Ok", IconManager.imgic25); cancel = new JButton("Cancel", IconManager.imgic27); diff --git a/src/main/java/ui/window/JDialogSafetyPragma.java b/src/main/java/ui/window/JDialogSafetyPragma.java index 66fe30d12f..bb9afff2fe 100644 --- a/src/main/java/ui/window/JDialogSafetyPragma.java +++ b/src/main/java/ui/window/JDialogSafetyPragma.java @@ -43,10 +43,21 @@ import ui.util.IconManager; import javax.swing.*; import javax.swing.text.BadLocationException; -import java.awt.*; + +import java.awt.BorderLayout; +import java.awt.Color; +import java.awt.ComponentOrientation; +import java.awt.Container; +import java.awt.Dimension; +import java.awt.Font; +import java.awt.Frame; +import java.awt.Insets; +import java.awt.Point; import java.awt.event.*; import java.util.ArrayList; import java.util.HashMap; +import java.util.List; +import java.util.Map; /** * Class JDialogPragma @@ -67,7 +78,7 @@ public class JDialogSafetyPragma extends JDialogBase implements ActionListener { protected JMenuBar menuBar; protected JMenu help; protected JPopupMenu helpPopup; - public HashMap<String, java.util.List<String>> blockAttributeMap = new HashMap<String, java.util.List<String>>(); + public Map<String, List<String>> blockAttributeMap = new HashMap<String, java.util.List<String>>(); /** * Creates new form @@ -86,7 +97,7 @@ public class JDialogSafetyPragma extends JDialogBase implements ActionListener { //Form list of all blocks //For each block, create a list of all attribute strings and states - private JList list; + private JList<String> list; private JPopupMenu popupMenu; private String subWord; private final int insertionPosition; @@ -113,8 +124,8 @@ public class JDialogSafetyPragma extends JDialogBase implements ActionListener { } } - private JList createSuggestionList(int linePosition, final int position, final String subWord) { - ArrayList<String> matches = new ArrayList<String>(); + private JList<String> createSuggestionList(int linePosition, final int position, final String subWord) { + List<String> matches = new ArrayList<String>(); if (linePosition < 3) { for (String p : pragma) { if (p.startsWith(subWord)) { @@ -264,8 +275,6 @@ public class JDialogSafetyPragma extends JDialogBase implements ActionListener { } protected void initComponents() { - - Container c = getContentPane(); Font f = new Font("Helvetica", Font.PLAIN, 14); setFont(f); @@ -364,6 +373,7 @@ public class JDialogSafetyPragma extends JDialogBase implements ActionListener { c.add(jp, BorderLayout.SOUTH); } + @Override public void actionPerformed(ActionEvent evt) { String command = evt.getActionCommand(); @@ -373,7 +383,6 @@ public class JDialogSafetyPragma extends JDialogBase implements ActionListener { } else if (command.equals("Ok")) { close(); } - } public void cancel() { @@ -396,6 +405,4 @@ public class JDialogSafetyPragma extends JDialogBase implements ActionListener { public String getText() { return text; } - - } diff --git a/src/main/java/ui/window/JDialogSelectAvatarBlock.java b/src/main/java/ui/window/JDialogSelectAvatarBlock.java index 98cb245ad0..2e7eef1348 100644 --- a/src/main/java/ui/window/JDialogSelectAvatarBlock.java +++ b/src/main/java/ui/window/JDialogSelectAvatarBlock.java @@ -45,11 +45,19 @@ import ui.util.IconManager; import javax.swing.*; import javax.swing.event.ListSelectionEvent; import javax.swing.event.ListSelectionListener; -import java.awt.*; + +import java.awt.BorderLayout; +import java.awt.Container; +import java.awt.Dimension; +import java.awt.Font; +import java.awt.Frame; +import java.awt.GridBagConstraints; +import java.awt.GridBagLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.util.Iterator; import java.util.LinkedList; +import java.util.List; /** @@ -61,10 +69,10 @@ import java.util.LinkedList; * @version 1.0 18/05/2010 */ public class JDialogSelectAvatarBlock extends JDialogBase implements ActionListener, ListSelectionListener { - public LinkedList<AvatarBDStateMachineOwner> validated, ignored; + public List<AvatarBDStateMachineOwner> validated, ignored; private boolean optimized = true; - private LinkedList<AvatarBDStateMachineOwner> val, ign, back; + private List<AvatarBDStateMachineOwner> val, ign, back; private JList<AvatarBDStateMachineOwner> listIgnored; private JList<AvatarBDStateMachineOwner> listValidated; @@ -79,7 +87,7 @@ public class JDialogSelectAvatarBlock extends JDialogBase implements ActionListe /** * Creates new form */ - public JDialogSelectAvatarBlock(Frame f, LinkedList<AvatarBDStateMachineOwner> _back, LinkedList<AvatarBDStateMachineOwner> componentList, String title, LinkedList<AvatarBDStateMachineOwner> _validated, LinkedList<AvatarBDStateMachineOwner> _ignored, boolean _optimized) { + public JDialogSelectAvatarBlock(Frame f, List<AvatarBDStateMachineOwner> _back, List<AvatarBDStateMachineOwner> componentList, String title, List<AvatarBDStateMachineOwner> _validated, List<AvatarBDStateMachineOwner> _ignored, boolean _optimized) { super(f, title, true); back = _back; @@ -103,7 +111,7 @@ public class JDialogSelectAvatarBlock extends JDialogBase implements ActionListe pack(); } - private void checkTask(LinkedList<AvatarBDStateMachineOwner> tobeChecked, LinkedList<AvatarBDStateMachineOwner> source) { + private void checkTask( List<AvatarBDStateMachineOwner> tobeChecked, List<AvatarBDStateMachineOwner> source) { Iterator<AvatarBDStateMachineOwner> iterator = tobeChecked.iterator(); while (iterator.hasNext()) { @@ -113,7 +121,7 @@ public class JDialogSelectAvatarBlock extends JDialogBase implements ActionListe } } - private void addNewTask(LinkedList<AvatarBDStateMachineOwner> added, LinkedList<AvatarBDStateMachineOwner> source, LinkedList<AvatarBDStateMachineOwner> notSource) { + private void addNewTask( List<AvatarBDStateMachineOwner> added, List<AvatarBDStateMachineOwner> source, List<AvatarBDStateMachineOwner> notSource) { for (AvatarBDStateMachineOwner tgc : source) if (!added.contains(tgc) && !notSource.contains(tgc)) added.add(tgc); @@ -262,6 +270,7 @@ public class JDialogSelectAvatarBlock extends JDialogBase implements ActionListe } + @Override public void actionPerformed(ActionEvent evt) { String command = evt.getActionCommand(); @@ -380,7 +389,6 @@ public class JDialogSelectAvatarBlock extends JDialogBase implements ActionListe } } - public void valueChanged(ListSelectionEvent e) { setButtons(); } @@ -393,11 +401,11 @@ public class JDialogSelectAvatarBlock extends JDialogBase implements ActionListe return hasBeenCancelled; } - public LinkedList<AvatarBDStateMachineOwner> getValidated() { + public List<AvatarBDStateMachineOwner> getValidated() { return validated; } - public LinkedList<AvatarBDStateMachineOwner> getIgnored() { + public List<AvatarBDStateMachineOwner> getIgnored() { return ignored; } } diff --git a/src/main/java/ui/window/JDialogSignalAssociation.java b/src/main/java/ui/window/JDialogSignalAssociation.java index 084e1046c1..b87fd0fe74 100644 --- a/src/main/java/ui/window/JDialogSignalAssociation.java +++ b/src/main/java/ui/window/JDialogSignalAssociation.java @@ -36,27 +36,39 @@ * knowledge of the CeCILL license and that you accept its terms. */ +package ui.window; +import java.awt.Container; +import java.awt.Dimension; +import java.awt.Font; +import java.awt.Frame; +import java.awt.GridBagConstraints; +import java.awt.GridBagLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.util.List; +import java.util.Vector; - -package ui.window; +import javax.swing.ButtonGroup; +import javax.swing.JButton; +import javax.swing.JCheckBox; +import javax.swing.JComboBox; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JList; +import javax.swing.JPanel; +import javax.swing.JRadioButton; +import javax.swing.JScrollPane; +import javax.swing.JTextField; +import javax.swing.ListSelectionModel; +import javax.swing.event.ListSelectionEvent; +import javax.swing.event.ListSelectionListener; import myutil.TraceManager; import ui.AvatarSignal; -import ui.util.IconManager; import ui.avatarbd.AvatarBDBlock; import ui.avatarbd.AvatarBDPortConnector; -import javax.swing.*; -import javax.swing.event.ListSelectionEvent; -import javax.swing.event.ListSelectionListener; -import java.awt.*; -import java.awt.event.ActionEvent; -import java.awt.event.ActionListener; -import java.util.LinkedList; -import java.util.Vector; - - /** * Class JDialogSignalAssociation * Dialog for managing associations between signals (AVATAR profile) @@ -67,7 +79,7 @@ import java.util.Vector; public class JDialogSignalAssociation extends JDialogBase implements ActionListener, ListSelectionListener { private Vector<String> signalAssociation, localSignalAssociations; private AvatarBDBlock block1, block2; - private LinkedList<AvatarSignal> available1, available2; + private List<AvatarSignal> available1, available2; private AvatarBDPortConnector connector; private JRadioButton synchronous, asynchronous; @@ -88,7 +100,6 @@ public class JDialogSignalAssociation extends JDialogBase implements ActionListe private JButton downButton; private JButton removeButton; - /** Creates new form */ public JDialogSignalAssociation(Frame _f, AvatarBDBlock _block1, AvatarBDBlock _block2, Vector<String> _signalAssociation, AvatarBDPortConnector _connector, String _title) { super(_f, _title, true); @@ -100,13 +111,13 @@ public class JDialogSignalAssociation extends JDialogBase implements ActionListe localSignalAssociations.addAll(signalAssociation); // Available signals - if (block1 != block2) { - available1 = block1.getListOfAvailableSignals(); - available2 = block2.getListOfAvailableSignals(); - } else { - available1 = block1.getListOfAvailableOutSignals(); - available2 = block2.getListOfAvailableInSignals(); - } + if (block1 != block2) { + available1 = block1.getListOfAvailableSignals(); + available2 = block2.getListOfAvailableSignals(); + } else { + available1 = block1.getListOfAvailableOutSignals(); + available2 = block2.getListOfAvailableInSignals(); + } initComponents(); myInitComponents(); -- GitLab