diff --git a/.idea/.gitignore b/.idea/.gitignore index 838c2fb85d2911b98a49f23071f655443955c8b8..f4e040b119822b5e6545c07a703b0e465d6b7e17 100644 --- a/.idea/.gitignore +++ b/.idea/.gitignore @@ -1,2 +1,3 @@ /workspace.xml /tasks.xml +/uiDesigner.xml diff --git a/.idea/inspectionProfiles/Project_Default.xml b/.idea/inspectionProfiles/Project_Default.xml index bd7bce65a51de0fb5e5e904c16b29a84ac427536..c6526892eb8d90c330871093fd22fa80248489ba 100644 --- a/.idea/inspectionProfiles/Project_Default.xml +++ b/.idea/inspectionProfiles/Project_Default.xml @@ -7,7 +7,9 @@ <inspection_tool class="OverlyStrongTypeCast" enabled="true" level="WARNING" enabled_by_default="true"> <option name="ignoreInMatchingInstanceof" value="false" /> </inspection_tool> - <inspection_tool class="SystemOutErr" enabled="true" level="WARNING" enabled_by_default="true" /> + <inspection_tool class="SystemOutErr" enabled="true" level="WARNING" enabled_by_default="false"> + <scope name="Prod" level="WARNING" enabled="true" /> + </inspection_tool> <inspection_tool class="TypeMayBeWeakened" enabled="true" level="WARNING" enabled_by_default="true"> <option name="useRighthandTypeAsWeakestTypeInAssignments" value="true" /> <option name="useParameterizedTypeForCollectionMethods" value="true" /> diff --git a/.idea/scopes/Prod.xml b/.idea/scopes/Prod.xml new file mode 100644 index 0000000000000000000000000000000000000000..d2c93f106f299a1b0b9d70a5168379eae5483324 --- /dev/null +++ b/.idea/scopes/Prod.xml @@ -0,0 +1,3 @@ +<component name="DependencyValidationManager"> + <scope name="Prod" pattern="src[shared]:*..*" /> +</component> \ No newline at end of file diff --git a/rundse/build.gradle b/rundse/build.gradle index 5d0ddf0add1e681703923d671b6cc2a2a0bc3acb..183d2292bc5033027721e1be982e4e948bb108ec 100644 --- a/rundse/build.gradle +++ b/rundse/build.gradle @@ -4,11 +4,20 @@ apply plugin: 'application' sourceSets { main { java { + srcDir "${rootProject.absPath}/src/main/java" } } } dependencies { + compileOnly name: 'opencloud' + compileOnly name: 'JavaPlot' + compileOnly name: 'derbynet' + compileOnly name: 'commons-codec-1.10' + compileOnly name: 'commons-io-2.5-javadoc' + compileOnly name: 'commons-io-2.5' + compileOnly name: 'jsoup-1.8.1' + compileOnly name: 'gs-core-1.3' } jar { diff --git a/settings.gradle b/settings.gradle index c1f2cdb71339e2efa8865f5255692d28d249d9e2..40cf4a1845d3235e81e142ed5b234ab1b8fa0709 100644 --- a/settings.gradle +++ b/settings.gradle @@ -20,6 +20,8 @@ include 'launcher' include 'graphminimize' include 'graphshow' include 'tiftranslator' +include 'tmltranslator' +include 'rundse' include 'simulationcontrol' include 'webcrawler-client' include 'webcrawler-server' diff --git a/src/main/java/ddtranslator/DDTranslator.java b/src/main/java/ddtranslator/DDTranslator.java index c83b230de97a8a6c68326e5c8c8064641ba469a2..fd27d6dfcc35a942f28e60e6a20ea4c30a1be2af 100755 --- a/src/main/java/ddtranslator/DDTranslator.java +++ b/src/main/java/ddtranslator/DDTranslator.java @@ -51,6 +51,7 @@ import ui.*; import ui.cd.TCDTClass; import ui.dd.TDDNode; import ui.dd.TGConnectorLinkNode; +import ui.CorrespondanceTGElement; import java.util.Iterator; import java.util.LinkedList; diff --git a/src/main/java/dseengine/DSEConfiguration.java b/src/main/java/dseengine/DSEConfiguration.java index fa315cbd58405aaac9b48e258ba3a9ceaf14c2ae..47b37df05fabe9b7fa3279ff3fd27b0b1c29630d 100755 --- a/src/main/java/dseengine/DSEConfiguration.java +++ b/src/main/java/dseengine/DSEConfiguration.java @@ -54,6 +54,7 @@ import tmltranslator.tomappingsystemc2.DiploSimulatorFactory; import tmltranslator.tomappingsystemc2.IDiploSimulatorCodeGenerator; import ui.GTMLModeling; import ui.MainGUI; +import ui.TGComponent; import ui.TMLArchiPanel; import ui.TMLComponentDesignPanel; import ui.tmldd.*; @@ -110,8 +111,8 @@ public class DSEConfiguration implements Runnable { public TMLComponentDesignPanel tmlcdp; public TMLArchiPanel tmlap; - private TMLMapping tmap; - private TMLModeling tmlm; + private TMLMapping<TGComponent> tmap; + private TMLModeling<TGComponent> tmlm; // private TMLModeling stmlm; @@ -142,9 +143,9 @@ public class DSEConfiguration implements Runnable { private int minNbOfCoresPerCPU = 1; private int maxNbOfCoresPerCPU = 2; private int nbOfSimulationsPerMapping = 1; - private TMLModeling taskModel = null; + private TMLModeling<TGComponent> taskModel = null; // private TMLModeling secModel = null; - private Vector<TMLMapping> mappings; + private Vector<TMLMapping<TGComponent>> mappings; private DSEMappingSimulationResults dsemapresults; List<Integer[]> latencyIds =new ArrayList<Integer[]>(); public MainGUI mainGUI; @@ -464,7 +465,7 @@ public class DSEConfiguration implements Runnable { boolean ret = false; //System.out.println("load"); String inputData = FileUtils.loadFileData(mappingFile); - TMLMappingTextSpecification spec = new TMLMappingTextSpecification("LoadedSpecification"); + TMLMappingTextSpecification<TGComponent> spec = new TMLMappingTextSpecification<>("LoadedSpecification"); ret = spec.makeTMLMapping(inputData, modelPath); TraceManager.addDev("load ended"); List<TMLError> warnings; @@ -516,7 +517,7 @@ public class DSEConfiguration implements Runnable { boolean ret = false; //System.out.println("load"); String inputData = FileUtils.loadFileData(taskModelFile); - TMLTextSpecification tmlts = new TMLTextSpecification("LoadedTaskModel"); + TMLTextSpecification<TGComponent> tmlts = new TMLTextSpecification<>("LoadedTaskModel"); ret = tmlts.makeTMLModeling(inputData); TraceManager.addDev("Load of task model done"); List<TMLError> warnings; @@ -714,7 +715,7 @@ public class DSEConfiguration implements Runnable { public int generateSecMapping(){ return 0; } - public int generateAndCompileMappingCode(TMLMapping _tmlmap, boolean _debug, boolean _optimize) { + public int generateAndCompileMappingCode(TMLMapping<TGComponent> _tmlmap, boolean _debug, boolean _optimize) { // Generating code TraceManager.addDev("\n\n\n**** Generating simulation code from mapping..."); @@ -1342,7 +1343,7 @@ public class DSEConfiguration implements Runnable { } } - for(TMLMapping tmla: mappings) { + for(TMLMapping<TGComponent> tmla: mappings) { TraceManager.addDev("Handling mapping #" + cpt); progression = cpt * 100 / (mappings.size()); @@ -1393,7 +1394,7 @@ public class DSEConfiguration implements Runnable { System.out.println("tmlcdp " + tmlcdp); // //Repeat for secured mapping - TMLMapping secMapping = mainGUI.gtm.autoSecure(mainGUI, "mapping" +(cpt-1),tmla, newArch, encComp, overhead, decComp,true,false,false); + TMLMapping<TGComponent> secMapping = mainGUI.gtm.autoSecure(mainGUI, "mapping" +(cpt-1),tmla, newArch, encComp, overhead, decComp,true,false,false); //Run simulations on this mapping if (generateAndCompileMappingCode(secMapping, _debug, _optimize) >= 0) { @@ -1433,7 +1434,7 @@ public class DSEConfiguration implements Runnable { } return 0; } - public TMLArchiPanel drawMapping(TMLMapping map, String name){ + public TMLArchiPanel drawMapping(TMLMapping<TGComponent> map, String name){ //Map<HwNode, TGConnectingPoint> connectMap; Map<HwNode, TMLArchiNode> objMap = new HashMap<HwNode, TMLArchiNode>(); /*int index =*/ mainGUI.createTMLArchitecture(name); @@ -1480,7 +1481,7 @@ public class DSEConfiguration implements Runnable { TMLArchiConnectorNode conn = new TMLArchiConnectorNode(x, y, ap.getMinX(), ap.getMaxX(), ap.getMinY(), ap.getMaxY(), false, null, ap, n1.getTGConnectingPointAtIndex(0), n2.getTGConnectingPointAtIndex(0), new Vector<Point>()); ap.addComponent(conn,x,y,false,true); } - for (TMLTask task:map.getTMLModeling().getTasks()){ + for (TMLTask task: map.getTMLModeling().getTasks()){ HwNode node = map.getHwNodeOf(task); TMLArchiArtifact art = new TMLArchiArtifact(objMap.get(node).getX(), objMap.get(node).getY(), ap.getMinX(), ap.getMaxX(), ap.getMinY(), ap.getMaxY(), false, objMap.get(node), ap); ap.addComponent(art,objMap.get(node).getX(),objMap.get(node).getY(),true,true); @@ -1597,7 +1598,7 @@ public class DSEConfiguration implements Runnable { return 0; } - public Vector<TMLMapping> generateAllMappings(TMLModeling _tmlm) { + public Vector<TMLMapping<TGComponent>> generateAllMappings(TMLModeling<TGComponent> _tmlm) { TraceManager.addDev("Generate all mappings"); if (_tmlm == null) { TraceManager.addDev("Null mapping"); @@ -1619,7 +1620,7 @@ public class DSEConfiguration implements Runnable { max = min + 1; } - Vector<TMLMapping> maps = new Vector<TMLMapping>(); + Vector<TMLMapping<TGComponent>> maps = new Vector<>(); for(int cpt=min; cpt<=max; cpt++) { dseID = 0; @@ -1634,8 +1635,8 @@ public class DSEConfiguration implements Runnable { return maps; } - private void addMemories(Vector<TMLMapping> maps){ - for (TMLMapping map: maps){ + private void addMemories(Vector<TMLMapping<TGComponent>> maps){ + for (TMLMapping<TGComponent> map: maps){ TMLArchitecture arch = map.getArch(); List<HwNode> nodes = arch.getCPUs(); for (HwNode node:nodes){ @@ -1656,7 +1657,7 @@ public class DSEConfiguration implements Runnable { } } } - private void generateMappings(TMLModeling _tmlm, Vector<TMLMapping> maps, int nbOfCPUs) { + private void generateMappings(TMLModeling<TGComponent> _tmlm, Vector<TMLMapping<TGComponent>> maps, int nbOfCPUs) { List<TMLTask> tasks = _tmlm.getTasks(); CPUWithTasks cpus_tasks[] = new CPUWithTasks[nbOfCPUs]; @@ -1687,7 +1688,7 @@ public class DSEConfiguration implements Runnable { TraceManager.addDev("Nb of computed mappings:" + maps.size()); } - private void computeMappings(Vector<TMLTask> remainingTasks, CPUWithTasks[] cpus_tasks, Vector<TMLMapping> maps, TMLModeling _tmlm) { + private void computeMappings(Vector<TMLTask> remainingTasks, CPUWithTasks[] cpus_tasks, Vector<TMLMapping<TGComponent>> maps, TMLModeling<TGComponent> _tmlm) { if (remainingTasks.size() == 0) { // Can generate the mapping from cpus_tasks makeMapping(cpus_tasks, maps, _tmlm); @@ -1740,9 +1741,9 @@ public class DSEConfiguration implements Runnable { } - private void makeMapping(CPUWithTasks[] cpus_tasks, Vector<TMLMapping> maps, TMLModeling _tmlm) { + private void makeMapping(CPUWithTasks[] cpus_tasks, Vector<TMLMapping<TGComponent>> maps, TMLModeling<TGComponent> _tmlm) { TMLArchitecture tmla = new TMLArchitecture(); - TMLMapping tmap = new TMLMapping(_tmlm, tmla, true); + TMLMapping<TGComponent> tmap = new TMLMapping<>(_tmlm, tmla, true); DIPLOElement.setGeneralID(_tmlm.computeMaxID() + 1); HwCPU cpu; @@ -1774,7 +1775,7 @@ public class DSEConfiguration implements Runnable { _dseresults.computeGrades(tapValues); } - private void computeCoresOfMappings(Vector<TMLMapping> maps) { + private void computeCoresOfMappings(Vector<TMLMapping<TGComponent>> maps) { } public void resetProgression() { diff --git a/src/main/java/tmltranslator/TMLCheckingError.java b/src/main/java/tmltranslator/TMLCheckingError.java index 70773ffb33f431a0a876f4b6cddc42d2dd32ad2f..d70cfc82a15b8eb265375c7bef453e76e2892e08 100755 --- a/src/main/java/tmltranslator/TMLCheckingError.java +++ b/src/main/java/tmltranslator/TMLCheckingError.java @@ -52,6 +52,8 @@ public class TMLCheckingError extends CheckingError { private TMLTask tmlt; + private TMLActivityElement tmlae; + public TMLCheckingError(int _type, String _message) { super(_type, _message); } @@ -64,6 +66,14 @@ public class TMLCheckingError extends CheckingError { return tmlt; } + public void setTMLActivityElement(TMLActivityElement tmlae) { + this.tmlae = tmlae; + } + + public TMLActivityElement getTMLActivityElement() { + return tmlae; + } + @Override public String toString() { if (tmlt != null) { diff --git a/src/main/java/tmltranslator/TMLMapping.java b/src/main/java/tmltranslator/TMLMapping.java index b554cc71acc587db23c9e6e88d20aec730e5c00a..2a3ade5063d33827d1ade9ea6fb42c38781ccbea 100755 --- a/src/main/java/tmltranslator/TMLMapping.java +++ b/src/main/java/tmltranslator/TMLMapping.java @@ -48,22 +48,22 @@ package tmltranslator; import myutil.TraceManager; import tmltranslator.toproverif.TML2ProVerif; -import ui.CorrespondanceTGElement; import ui.TMLArchiPanel; import ui.TMLComponentDesignPanel; +import ui.util.CorrespondanceElement; import java.util.*; -public class TMLMapping { +public class TMLMapping<E> { - private TMLModeling tmlm; + private TMLModeling<E> tmlm; private TMLArchitecture tmla; // private TMLCP tmlcp; private List<HwExecutionNode> onnodes; private List<TMLTask> mappedtasks; private List<HwCommunicationNode> oncommnodes; public List<TMLElement> mappedcommelts; - public CorrespondanceTGElement listE; + public CorrespondanceElement<E> listE; public boolean firewall = false; //private List<TMLCP> mappedCPs; // private List<TMLElement> commEltsMappedOnCPs; @@ -77,7 +77,7 @@ public class TMLMapping { private boolean hashCodeComputed = false; private TMLComponentDesignPanel tmldp; public TMLArchiPanel tmlap; - public TMLMapping(TMLModeling _tmlm, TMLArchitecture _tmla, boolean reset) { + public TMLMapping(TMLModeling<E> _tmlm, TMLArchitecture _tmla, boolean reset) { tmlm = _tmlm; tmla = _tmla; @@ -395,10 +395,10 @@ public class TMLMapping { } } - public TMLModeling getTMLModeling() { + public TMLModeling<E> getTMLModeling() { return tmlm; } - public void setTMLModeling(TMLModeling _tmlm){ + public void setTMLModeling(TMLModeling<E> _tmlm){ tmlm=_tmlm; } public TMLArchitecture getTMLArchitecture() { @@ -407,7 +407,7 @@ public class TMLMapping { private void computeHashCode() { hashCode = tmlm.getHashCode() + tmla.getHashCode(); - TMLMappingTextSpecification tmaptxt = new TMLMappingTextSpecification("spec.tmap"); + TMLMappingTextSpecification<E> tmaptxt = new TMLMappingTextSpecification<>("spec.tmap"); hashCode += tmaptxt.toTextFormat(this).hashCode(); } @@ -1475,4 +1475,4 @@ public class TMLMapping { public TMLComponentDesignPanel getTMLCDesignPanel(){ return tmldp; } -} //End of class +} diff --git a/src/main/java/tmltranslator/TMLMappingTextSpecification.java b/src/main/java/tmltranslator/TMLMappingTextSpecification.java index ed288cd17472b2b8ce7bede6669c197c32d34d1e..736c399a03fd0f34133c6052532b26bb95b7fc00 100755 --- a/src/main/java/tmltranslator/TMLMappingTextSpecification.java +++ b/src/main/java/tmltranslator/TMLMappingTextSpecification.java @@ -57,18 +57,18 @@ import java.io.StringReader; import java.util.ArrayList; import java.util.List; -public class TMLMappingTextSpecification { +public class TMLMappingTextSpecification<E> { public final static String CR = "\n"; public final static String SP = " "; public final static String CR2 = "\n\n"; public final static String SC = ";"; - private TMLTextSpecification tmlmtxt; + private TMLTextSpecification<E> tmlmtxt; private TMLArchiTextSpecification tmlatxt; private String spec; private String title; - private TMLMapping tmlmap; + private TMLMapping<E> tmlmap; private ArrayList<TMLTXTError> errors; private ArrayList<TMLTXTError> warnings; @@ -97,7 +97,7 @@ public class TMLMappingTextSpecification { FileUtils.saveFile(path + filename + ".tmap", indent(header + spec)); } - public TMLMapping getTMLMapping() { + public TMLMapping<E> getTMLMapping() { return tmlmap; } @@ -165,7 +165,7 @@ public class TMLMappingTextSpecification { return spec; } - public String toTextFormat(TMLMapping _tmlmap) { + public String toTextFormat(TMLMapping<E> _tmlmap) { tmlmap = _tmlmap; tmlmap.handleCPs(); makeTML(tmlmap); @@ -175,17 +175,17 @@ public class TMLMappingTextSpecification { //indent(); } - public void makeTML(TMLMapping tmlmap) { - tmlmtxt = new TMLTextSpecification(title); + public void makeTML(TMLMapping<E> tmlmap) { + tmlmtxt = new TMLTextSpecification<>(title); tmlmtxt.toTextFormat(tmlmap.getTMLModeling()); } - public void makeArchi(TMLMapping tmlmap) { + public void makeArchi(TMLMapping<E> tmlmap) { tmlatxt = new TMLArchiTextSpecification(/*title*/); tmlatxt.toTextFormat(tmlmap.getTMLArchitecture()); } - public void makeMapping(TMLMapping tmlmap) { + public void makeMapping(TMLMapping<E> tmlmap) { spec = CR; spec +="TMLMAPPING" + CR; spec += makeMappingNodes(tmlmap); @@ -193,7 +193,7 @@ public class TMLMappingTextSpecification { spec += "ENDTMLMAPPING" + CR; } - public String makeMappingNodes(TMLMapping tmlmap) { + public String makeMappingNodes(TMLMapping<E> tmlmap) { String tmp = ""; List<HwExecutionNode> nodes = tmlmap.getNodes(); List<TMLTask> tasks = tmlmap.getMappedTasks(); @@ -213,7 +213,7 @@ public class TMLMappingTextSpecification { return tmp; } - public String makeMappingCommunicationNodes(TMLMapping tmlmap) { + public String makeMappingCommunicationNodes(TMLMapping<E> tmlmap) { String tmp = ""; List<HwCommunicationNode> nodes = tmlmap.getCommunicationNodes(); List<TMLElement> elts = tmlmap.getMappedCommunicationElement(); @@ -389,7 +389,7 @@ public class TMLMappingTextSpecification { //System.out.println(spec); - TMLModeling tmlm = makeTMLModeling(); + TMLModeling<E> tmlm = makeTMLModeling(); //System.out.println("TML modeling:" + tmlm); TMLArchitecture tarchi = makeArchitectureModeling(); @@ -398,7 +398,7 @@ public class TMLMappingTextSpecification { return false; } - tmlmap = new TMLMapping(tmlm, tarchi, false); + tmlmap = new TMLMapping<>(tmlm, tarchi, false); TraceManager.addDev("Compiling mapping..."); @@ -408,8 +408,8 @@ public class TMLMappingTextSpecification { } - public TMLModeling makeTMLModeling() { - TMLTextSpecification t = new TMLTextSpecification("from file"); + public TMLModeling<E> makeTMLModeling() { + TMLTextSpecification<E> t = new TMLTextSpecification<>("from file"); // Import errors and warnings diff --git a/src/main/java/tmltranslator/TMLModeling.java b/src/main/java/tmltranslator/TMLModeling.java index c33db2b7d951835fcfe9cf701eb34d7f94e58d54..3908fc36aa910c584acaaee2d69960bc62930732 100755 --- a/src/main/java/tmltranslator/TMLModeling.java +++ b/src/main/java/tmltranslator/TMLModeling.java @@ -54,14 +54,13 @@ import proverifspec.ProVerifOutputAnalyzer; import proverifspec.ProVerifQueryAuthResult; import proverifspec.ProVerifQueryResult; import ui.TAttribute; -import ui.TGComponent; import ui.tmlcompd.TMLCPrimitiveComponent; import ui.tmlcompd.TMLCPrimitivePort; import java.util.*; -public class TMLModeling { +public class TMLModeling<E> { public final String SEP1 = "_S_"; private List<TMLTask> tasks; @@ -76,7 +75,7 @@ public class TMLModeling { public Map<String, List<String>> secChannelMap = new HashMap<String, List<String>>(); public Map<SecurityPattern, List<TMLTask>> securityTaskMap = new HashMap<SecurityPattern, List<TMLTask>>(); private String[] ops = {">", "<", "+", "-", "*", "/", "[", "]", "(", ")", ":", "=", "==", ","}; - private Map<TGComponent, String> checkedActivities = new HashMap<TGComponent, String>(); + private Map<E, String> checkedActivities = new HashMap<>(); private int hashCode; private boolean hashCodeComputed = false; @@ -97,11 +96,11 @@ public class TMLModeling { } } - public void addCheckedActivity(TGComponent tgc, String s){ + public void addCheckedActivity(E tgc, String s){ checkedActivities.put(tgc,s); } - public Map<TGComponent, String> getCheckedComps(){ + public Map<E, String> getCheckedComps(){ return checkedActivities; } @@ -114,9 +113,9 @@ public class TMLModeling { return null; } - public TMLMapping getDefaultMapping() { - TMLMapping tmlmapping; - tmlmapping = new TMLMapping(this, new TMLArchitecture(), false); + public TMLMapping<E> getDefaultMapping() { + TMLMapping<E> tmlmapping; + tmlmapping = new TMLMapping<>(this, new TMLArchitecture(), false); tmlmapping.makeMinimumMapping(); return tmlmapping; @@ -215,7 +214,7 @@ public class TMLModeling { } private void computeHashCode() { - TMLTextSpecification tmltxt = new TMLTextSpecification("spec.tml"); + TMLTextSpecification<E> tmltxt = new TMLTextSpecification<>("spec.tml"); String s = tmltxt.toTextFormat(this); int index = s.indexOf("// Channels"); @@ -1262,7 +1261,7 @@ public class TMLModeling { } } - public void mergeWith(TMLModeling tmlm) { + public void mergeWith(TMLModeling<E> tmlm) { channels.addAll(tmlm.getChannels()); events.addAll(tmlm.getEvents()); requests.addAll(tmlm.getRequests()); @@ -1273,7 +1272,7 @@ public class TMLModeling { } // Elements with same names are not duplicated - public void advancedMergeWith(TMLModeling tmlm) { + public void advancedMergeWith(TMLModeling<E> tmlm) { TraceManager.addDev("**************** Advanced merge!"); for(TMLChannel ch: tmlm.getChannels()) { if (!(hasSameChannelName(ch))) { @@ -1309,7 +1308,7 @@ public class TMLModeling { } securityTaskMap.putAll(tmlm.securityTaskMap); - for (TGComponent tgc: tmlm.getCheckedComps().keySet()){ + for (E tgc: tmlm.getCheckedComps().keySet()){ if (!checkedActivities.containsKey(tgc)){ checkedActivities.put(tgc, tmlm.getCheckedComps().get(tgc)); } diff --git a/src/main/java/tmltranslator/TMLSyntaxChecking.java b/src/main/java/tmltranslator/TMLSyntaxChecking.java index 141659b62f3454a6b436cdb26c1a583ccfe30758..8962f996dfd73d70f56f6afbc0d00d404652422b 100755 --- a/src/main/java/tmltranslator/TMLSyntaxChecking.java +++ b/src/main/java/tmltranslator/TMLSyntaxChecking.java @@ -76,15 +76,15 @@ public class TMLSyntaxChecking { private ArrayList<TMLError> errors; private ArrayList<TMLError> warnings; - private TMLModeling tmlm; - private TMLMapping mapping; + private TMLModeling<?> tmlm; + private TMLMapping<?> mapping; - public TMLSyntaxChecking(TMLModeling _tmlm) { + public TMLSyntaxChecking(TMLModeling<?> _tmlm) { tmlm = _tmlm; } - public TMLSyntaxChecking(TMLMapping _mapping) { + public TMLSyntaxChecking(TMLMapping<?> _mapping) { mapping = _mapping; tmlm = mapping.getTMLModeling(); } diff --git a/src/main/java/tmltranslator/TMLTextSpecification.java b/src/main/java/tmltranslator/TMLTextSpecification.java index 152569474906ba99fc9c9635bac20cc2b70ce48b..05c9119c8cbfbc39f8efca25c9d9c1f158dab0bb 100755 --- a/src/main/java/tmltranslator/TMLTextSpecification.java +++ b/src/main/java/tmltranslator/TMLTextSpecification.java @@ -57,7 +57,7 @@ import java.io.StringReader; import java.util.ArrayList; import java.util.Date; -public class TMLTextSpecification { +public class TMLTextSpecification<E> { public final static String CR = "\n"; public final static String SP = " "; public final static String CR2 = "\n\n"; @@ -67,7 +67,7 @@ public class TMLTextSpecification { private String spec; private String title; - private TMLModeling tmlm; + private TMLModeling<E> tmlm; private ArrayList<TMLTXTError> errors; private ArrayList<TMLTXTError> warnings; @@ -107,7 +107,7 @@ public class TMLTextSpecification { FileUtils.saveFile(path + filename, spec); } - public TMLModeling getTMLModeling() { + public TMLModeling<E> getTMLModeling() { return tmlm; } @@ -180,7 +180,7 @@ public class TMLTextSpecification { return spec; } - public String toTextFormat(TMLModeling tmlm) { + public String toTextFormat(TMLModeling<E> tmlm) { tmlm.removeForksAndJoins(); tmlm.sortByName(); spec = makeDeclarations(tmlm); @@ -189,7 +189,7 @@ public class TMLTextSpecification { return spec; } - public String makeDeclarations(TMLModeling tmlm) { + public String makeDeclarations(TMLModeling<E> tmlm) { int i; String sb = ""; sb += "// TML Application - FORMAT 0.1" + CR; @@ -283,7 +283,7 @@ public class TMLTextSpecification { } - public String makeTasks(TMLModeling tmlm) { + public String makeTasks(TMLModeling<E> tmlm) { String sb = ""; for(TMLTask task: tmlm.getTasks()) { sb += "TASK" + SP + task.getName() + CR; @@ -519,7 +519,7 @@ public class TMLTextSpecification { public boolean makeTMLModeling(String _spec) { spec = _spec; - tmlm = new TMLModeling(); + tmlm = new TMLModeling<>(); errors = new ArrayList<TMLTXTError>(); warnings = new ArrayList<TMLTXTError>(); diff --git a/src/main/java/tmltranslator/modelcompiler/TMLModelCompiler.java b/src/main/java/tmltranslator/modelcompiler/TMLModelCompiler.java index 29130c07c37a97411ad2c465f0c6b1aeac747bf7..6ac81d068630c65456efa827f40a7c23ce90ead5 100755 --- a/src/main/java/tmltranslator/modelcompiler/TMLModelCompiler.java +++ b/src/main/java/tmltranslator/modelcompiler/TMLModelCompiler.java @@ -79,9 +79,9 @@ public class TMLModelCompiler { private String SC = ";"; // private String COLON = ","; - private TMLMapping tmap; + private TMLMapping<?> tmap; // private TMLCP tmlcp; - private TMLModeling tmlm; + private TMLModeling<?> tmlm; private TMLArchitecture tmla; private String applicationName; private StringBuffer mainFileString; @@ -110,7 +110,7 @@ public class TMLModelCompiler { public JFrame frame; //Main Frame - public TMLModelCompiler( String _title, String _applicationName, JFrame _frame, List<TMLCommunicationPatternPanel> _tmlcpps, TMLMapping _tmap ) { + public TMLModelCompiler( String _title, String _applicationName, JFrame _frame, List<TMLCommunicationPatternPanel> _tmlcpps, TMLMapping<?> _tmap ) { title = _title; applicationName = _applicationName; frame = _frame; diff --git a/src/main/java/tmltranslator/modelcompiler/TMLModelCompilerParser.java b/src/main/java/tmltranslator/modelcompiler/TMLModelCompilerParser.java index fc1fa24d8979e6933aa68bc729ceba6c65cd0479..880832805fada213429f7cb78289168058affda1 100755 --- a/src/main/java/tmltranslator/modelcompiler/TMLModelCompilerParser.java +++ b/src/main/java/tmltranslator/modelcompiler/TMLModelCompilerParser.java @@ -62,8 +62,8 @@ public class TMLModelCompilerParser { public TMLActivityElement element; private List<TMLModelCompilerError> errors; // private ArrayList<TMLTask> mappedTasks; - private TMLMapping tmap; - private TMLModeling tmlm; + private TMLMapping<?> tmap; + private TMLModeling<?> tmlm; //private TMLArchitecture tmla; private List<TMLCPLib> mappedCPLibs; @@ -75,7 +75,7 @@ public class TMLModelCompilerParser { public String message; public TMLTask task; - public TMLModelCompilerParser( TMLMapping _tmap, TMLModeling _tmlm, TMLArchitecture _tmla ) { + public TMLModelCompilerParser( TMLMapping<?> _tmap, TMLModeling<?> _tmlm, TMLArchitecture _tmla ) { //mappedTasks = _mappedTasks; errors = new ArrayList<TMLModelCompilerError>(); tmap = _tmap; diff --git a/src/main/java/tmltranslator/toautomata/TML2AUT.java b/src/main/java/tmltranslator/toautomata/TML2AUT.java index ed5a9a5bc4da5a324e80a799228c8c20a14931f6..38144f501be9ff45e1e70947424564a08f008b54 100755 --- a/src/main/java/tmltranslator/toautomata/TML2AUT.java +++ b/src/main/java/tmltranslator/toautomata/TML2AUT.java @@ -62,7 +62,7 @@ public class TML2AUT { //private static int gateId; - private TMLModeling tmlmodeling; + private TMLModeling<?> tmlmodeling; private LinkedList<Automata> automatas; //private boolean debug; @@ -72,7 +72,7 @@ public class TML2AUT { public static String IMM = "imm__"; - public TML2AUT(TMLModeling _tmlmodeling) { + public TML2AUT(TMLModeling<?> _tmlmodeling) { tmlmodeling = _tmlmodeling; } diff --git a/src/main/java/tmltranslator/toautomata/TML2AUTviaLOTOS.java b/src/main/java/tmltranslator/toautomata/TML2AUTviaLOTOS.java index 4e52fa7bcb37733d8954f6f54cf77e8328bbc7b8..2986cf0c8a93fc077ebb4b9ab228f103456e2942 100755 --- a/src/main/java/tmltranslator/toautomata/TML2AUTviaLOTOS.java +++ b/src/main/java/tmltranslator/toautomata/TML2AUTviaLOTOS.java @@ -62,7 +62,7 @@ public class TML2AUTviaLOTOS { //private static int gateId; - private TMLModeling tmlmodeling; + private TMLModeling<?> tmlmodeling; private TURTLEModeling tm; private List<Automata> automatas; private List<String> specs; /* name, then spec, then name, then spec. All specs are in LOTOS !*/ @@ -74,7 +74,7 @@ public class TML2AUTviaLOTOS { public static String IMM = "imm__"; - public TML2AUTviaLOTOS(TMLModeling _tmlmodeling, TURTLEModeling _tm) { + public TML2AUTviaLOTOS(TMLModeling<?> _tmlmodeling, TURTLEModeling _tm) { tmlmodeling = _tmlmodeling; tm = _tm; if (_tm == null) { diff --git a/src/main/java/tmltranslator/toavatar/TML2Avatar.java b/src/main/java/tmltranslator/toavatar/TML2Avatar.java index 902cb85a2ddf8c16d1706f43c5ccf4a7152db995..461e5a58f6e3f65717ef20dd9cd843ca5aaf3e9b 100644 --- a/src/main/java/tmltranslator/toavatar/TML2Avatar.java +++ b/src/main/java/tmltranslator/toavatar/TML2Avatar.java @@ -58,8 +58,8 @@ import java.util.regex.Matcher; import java.util.regex.Pattern; public class TML2Avatar { - private TMLMapping tmlmap; - private TMLModeling tmlmodel; + private TMLMapping<?> tmlmap; + private TMLModeling<?> tmlmodel; private Map<SecurityPattern, List<AvatarAttribute>> symKeys = new HashMap<SecurityPattern, List<AvatarAttribute>>(); private Map<SecurityPattern, List<AvatarAttribute>> pubKeys = new HashMap<SecurityPattern, List<AvatarAttribute>>(); @@ -90,7 +90,7 @@ public class TML2Avatar { List<String> allStates; boolean mc = false; boolean security=false; - public TML2Avatar(TMLMapping tmlmap, boolean modelcheck, boolean sec) { + public TML2Avatar(TMLMapping<?> tmlmap, boolean modelcheck, boolean sec) { this.tmlmap = tmlmap; this.tmlmodel = tmlmap.getTMLModeling(); allStates = new ArrayList<String>(); diff --git a/src/main/java/tmltranslator/tomappingsystemc/TML2MappingSystemC.java b/src/main/java/tmltranslator/tomappingsystemc/TML2MappingSystemC.java index 51fa8f598a2fa45d11ca1362b67a4de168705eec..4058e375cf94805048fd2b36d1d0f1df409c003f 100755 --- a/src/main/java/tmltranslator/tomappingsystemc/TML2MappingSystemC.java +++ b/src/main/java/tmltranslator/tomappingsystemc/TML2MappingSystemC.java @@ -68,8 +68,8 @@ public class TML2MappingSystemC { private final static int MAX_EVENT = 1024; - private TMLModeling tmlmodeling; - private TMLMapping tmlmapping; + private TMLModeling<?> tmlmodeling; + private TMLMapping<?> tmlmapping; private boolean debug; @@ -78,7 +78,7 @@ public class TML2MappingSystemC { private ArrayList<MappedSystemCTask> tasks; - public TML2MappingSystemC(TMLModeling _tmlm) { + public TML2MappingSystemC(TMLModeling<?> _tmlm) { tmlmodeling = _tmlm; TMLArchitecture tmla = new TMLArchitecture(); HwCPU cpu = new HwCPU("cpu0"); @@ -90,7 +90,7 @@ public class TML2MappingSystemC { cpu.execiTime = 1; tmla.addHwNode(cpu); - tmlmapping = new TMLMapping(tmlmodeling, tmla, false); + tmlmapping = new TMLMapping<>(tmlmodeling, tmla, false); Iterator<TMLTask> iterator = _tmlm.getTasks().listIterator(); TMLTask t; @@ -100,7 +100,7 @@ public class TML2MappingSystemC { } } - public TML2MappingSystemC(TMLMapping _tmlmapping) { + public TML2MappingSystemC(TMLMapping<?> _tmlmapping) { tmlmapping = _tmlmapping; } diff --git a/src/main/java/tmltranslator/tomappingsystemc2/DiploSimulatorCodeGenerator.java b/src/main/java/tmltranslator/tomappingsystemc2/DiploSimulatorCodeGenerator.java index 7c88f70d05b00bdad220027d275298d8e47b066a..a9b50ba00130a8ba4adc7e7f503dd2e45bd6928a 100644 --- a/src/main/java/tmltranslator/tomappingsystemc2/DiploSimulatorCodeGenerator.java +++ b/src/main/java/tmltranslator/tomappingsystemc2/DiploSimulatorCodeGenerator.java @@ -68,8 +68,8 @@ public class DiploSimulatorCodeGenerator implements IDiploSimulatorCodeGenerator private static final String SPACE = " "; - private TMLModeling tmlmodeling; - private TMLMapping tmlmapping; + private TMLModeling<?> tmlmodeling; + private TMLMapping<?> tmlmapping; private boolean debug; private boolean optimize; @@ -83,7 +83,7 @@ public class DiploSimulatorCodeGenerator implements IDiploSimulatorCodeGenerator private final NamesGenerationHelper namesGen; - DiploSimulatorCodeGenerator(TMLModeling _tmlm) { + DiploSimulatorCodeGenerator(TMLModeling<?> _tmlm) { this( _tmlm.getDefaultMapping() ); tmlmodeling = _tmlm; @@ -92,7 +92,7 @@ public class DiploSimulatorCodeGenerator implements IDiploSimulatorCodeGenerator // tepeTranslator = new SystemCTEPE(new ArrayList<TEPE>(), this); } - DiploSimulatorCodeGenerator(TMLMapping _tmlmapping) { + DiploSimulatorCodeGenerator(TMLMapping<?> _tmlmapping) { // tmlmapping = _tmlmapping; // tmlmapping.handleCPs(); // tmlmapping.removeForksAndJoins(); @@ -101,7 +101,7 @@ public class DiploSimulatorCodeGenerator implements IDiploSimulatorCodeGenerator this( _tmlmapping, null, new ArrayList<TEPE>() ); } - DiploSimulatorCodeGenerator(TMLModeling _tmlm, List<EBRDD> _ebrdds, List<TEPE> _tepes) { + DiploSimulatorCodeGenerator(TMLModeling<?> _tmlm, List<EBRDD> _ebrdds, List<TEPE> _tepes) { this( _tmlm.getDefaultMapping(), _ebrdds, _tepes ); tmlmodeling = _tmlm; @@ -109,7 +109,7 @@ public class DiploSimulatorCodeGenerator implements IDiploSimulatorCodeGenerator // tepeTranslator = new SystemCTEPE(_tepes, this); } - DiploSimulatorCodeGenerator(TMLMapping _tmlmapping, List<EBRDD> _ebrdds, List<TEPE> _tepes) { + DiploSimulatorCodeGenerator(TMLMapping<?> _tmlmapping, List<EBRDD> _ebrdds, List<TEPE> _tepes) { tmlmapping = _tmlmapping; if ( tmlmapping == null ) { diff --git a/src/main/java/tmltranslator/tomappingsystemc2/MappedSystemCTask.java b/src/main/java/tmltranslator/tomappingsystemc2/MappedSystemCTask.java index f3a5aa774ef06afa35589f42dbebc1debfdbd818..6b00802882e78781a5f464a21aca8bddf0a94f78 100644 --- a/src/main/java/tmltranslator/tomappingsystemc2/MappedSystemCTask.java +++ b/src/main/java/tmltranslator/tomappingsystemc2/MappedSystemCTask.java @@ -64,7 +64,7 @@ public class MappedSystemCTask { private List<TMLChannel> channels; private List<TMLEvent> events; private List<TMLRequest> requests; - private TMLMapping tmlmapping; + private TMLMapping<?> tmlmapping; private int commentNum; private boolean debug; // private boolean optimize; @@ -82,7 +82,7 @@ public class MappedSystemCTask { // private final static String EF = "}"; - public MappedSystemCTask(TMLTask _task, List<TMLChannel> _channels, List<TMLEvent> _events, List<TMLRequest> _requests, TMLMapping _tmlmapping, Set<Integer> _depChannels) { + public MappedSystemCTask(TMLTask _task, List<TMLChannel> _channels, List<TMLEvent> _events, List<TMLRequest> _requests, TMLMapping<?> _tmlmapping, Set<Integer> _depChannels) { task = _task; channels = _channels; events = _events; diff --git a/src/main/java/tmltranslator/tomappingsystemc2/SystemCEBRDD.java b/src/main/java/tmltranslator/tomappingsystemc2/SystemCEBRDD.java index 6ca05877e67aaedb5784c8379f859b5db68cc379..953cf4dd097ac2a51d8e03e4d26b1ff4affec65a 100644 --- a/src/main/java/tmltranslator/tomappingsystemc2/SystemCEBRDD.java +++ b/src/main/java/tmltranslator/tomappingsystemc2/SystemCEBRDD.java @@ -61,8 +61,8 @@ public class SystemCEBRDD { private String ETclasses; //, ETdeclare, ETInit; private boolean debug; - TMLModeling tmlmodeling; - TMLMapping tmlmapping; + TMLModeling<?> tmlmodeling; + TMLMapping<?> tmlmapping; private final static String [] events = {"transexecuted", "cmdentered", "cmdstarted", "cmdexecuted", "cmdfinished", "taskstarted", "taskfinished", "readtrans", "writetrans", "simstarted", "simfinished"}; private final static String DOTH = ".h"; @@ -75,7 +75,7 @@ public class SystemCEBRDD { private final static String EF = "}"; - public SystemCEBRDD(EBRDD _ebrdd, TMLModeling _tmlmodeling, TMLMapping _tmlmapping) { + public SystemCEBRDD(EBRDD _ebrdd, TMLModeling<?> _tmlmodeling, TMLMapping<?> _tmlmapping) { ebrdd = _ebrdd; reference = ebrdd.getName(); cppcode = ""; diff --git a/src/main/java/tmltranslator/tomappingsystemc2/TML2MappingSystemC.java b/src/main/java/tmltranslator/tomappingsystemc2/TML2MappingSystemC.java index 2646ce7ffa05f2c711307affab614191f8460fef..27f81757cc151f1d41d382ffe1676d38cd46770a 100644 --- a/src/main/java/tmltranslator/tomappingsystemc2/TML2MappingSystemC.java +++ b/src/main/java/tmltranslator/tomappingsystemc2/TML2MappingSystemC.java @@ -66,8 +66,8 @@ public class TML2MappingSystemC implements IDiploSimulatorCodeGenerator { // private final static String EF = "}"; //private final static int MAX_EVENT = 1024; - private TMLModeling tmlmodeling; - private TMLMapping tmlmapping; + private TMLModeling<?> tmlmodeling; + private TMLMapping<?> tmlmapping; private boolean debug; private boolean optimize; @@ -79,14 +79,14 @@ public class TML2MappingSystemC implements IDiploSimulatorCodeGenerator { SystemCTEPE tepeTranslator; //private ArrayList<SystemCEBRDD> systemCebrdds = new ArrayList<SystemCEBRDD>(); - public TML2MappingSystemC(TMLModeling _tmlm) { + public TML2MappingSystemC(TMLModeling<?> _tmlm) { tmlmodeling = _tmlm; tmlmodeling.removeForksAndJoins(); tmlmapping = tmlmodeling.getDefaultMapping(); tepeTranslator = new SystemCTEPE(new ArrayList<TEPE>(), this); } - public TML2MappingSystemC(TMLMapping _tmlmapping) { + public TML2MappingSystemC(TMLMapping<?> _tmlmapping) { tmlmapping = _tmlmapping; tmlmapping.handleCPs(); tmlmapping.removeForksAndJoins(); @@ -94,7 +94,7 @@ public class TML2MappingSystemC implements IDiploSimulatorCodeGenerator { tepeTranslator = new SystemCTEPE(new ArrayList<TEPE>(), this); } - public TML2MappingSystemC(TMLModeling _tmlm, List<EBRDD> _ebrdds, List<TEPE> _tepes) { + public TML2MappingSystemC(TMLModeling<?> _tmlm, List<EBRDD> _ebrdds, List<TEPE> _tepes) { tmlmodeling = _tmlm; //ebrdds = _ebrdds; tmlmapping = tmlmodeling.getDefaultMapping(); @@ -102,7 +102,7 @@ public class TML2MappingSystemC implements IDiploSimulatorCodeGenerator { //tepeTranslator.generateTEPEs(); } - public TML2MappingSystemC(TMLMapping _tmlmapping, List<EBRDD> _ebrdds, List<TEPE> _tepes) { + public TML2MappingSystemC(TMLMapping<?> _tmlmapping, List<EBRDD> _ebrdds, List<TEPE> _tepes) { tmlmapping = _tmlmapping; tmlmapping.handleCPs(); tmlmapping.removeForksAndJoins(); diff --git a/src/main/java/tmltranslator/toproverif/TML2ProVerif.java b/src/main/java/tmltranslator/toproverif/TML2ProVerif.java index 98654a6bf877e427bb796b44850daa480c27278c..d9e3f0a25d69530ae86f20a0556c5ddd03c02d7e 100644 --- a/src/main/java/tmltranslator/toproverif/TML2ProVerif.java +++ b/src/main/java/tmltranslator/toproverif/TML2ProVerif.java @@ -98,14 +98,14 @@ public class TML2ProVerif { private final static Integer channelPrivate = 1; private final static Integer channelUnreachable = 2; private ProVerifSpec spec; - private TMLMapping tmlmap; - private TMLModeling tmlmodel; + private TMLMapping<?> tmlmap; + private TMLModeling<?> tmlmodel; // private boolean stateReachability; // private Vector warnings; public Map<String, Integer> channelMap = new HashMap<String,Integer>(); - public TML2ProVerif(TMLMapping _tmlmap) { + public TML2ProVerif(TMLMapping<?> _tmlmap) { this.tmlmap = _tmlmap; this.spec = null; this.tmlmodel= tmlmap.getTMLModeling(); @@ -247,7 +247,7 @@ public class TML2ProVerif { // return this.warnings; // } - public TMLMapping getMapping () { + public TMLMapping<?> getMapping () { return this.tmlmap; } diff --git a/src/main/java/tmltranslator/tosystemc/TML2SystemC.java b/src/main/java/tmltranslator/tosystemc/TML2SystemC.java index 0c237d979cf8520bbf1d5f3d37c5e9ba426dd068..9883192f3d5e582642898731574be40f52d12d2e 100755 --- a/src/main/java/tmltranslator/tosystemc/TML2SystemC.java +++ b/src/main/java/tmltranslator/tosystemc/TML2SystemC.java @@ -59,7 +59,7 @@ public class TML2SystemC { //private static int gateId; - private TMLModeling tmlmodeling; + private TMLModeling<?> tmlmodeling; private List<SystemCTask> tasks; // private boolean debug; @@ -76,7 +76,7 @@ public class TML2SystemC { private String endClass, mainFunction; - public TML2SystemC(TMLModeling _tmlmodeling) { + public TML2SystemC(TMLModeling<?> _tmlmodeling) { tmlmodeling = _tmlmodeling; } diff --git a/src/main/java/tmltranslator/toturtle/Mapping2TIF.java b/src/main/java/tmltranslator/toturtle/Mapping2TIF.java index c9e07474778aaa0dc57ba13ff9a4b2ec73575ada..c349e9042d16ad050f7987b5cbcea9d7f9c77460 100755 --- a/src/main/java/tmltranslator/toturtle/Mapping2TIF.java +++ b/src/main/java/tmltranslator/toturtle/Mapping2TIF.java @@ -49,8 +49,6 @@ import myutil.TraceManager; import tmltranslator.*; import translator.*; import translator.CheckingError; -import ui.TGComponent; -import ui.UICheckingError; import java.util.ArrayList; import java.util.LinkedList; @@ -70,8 +68,8 @@ public class Mapping2TIF { // private static String nameRequest = "Request__"; - private TMLMapping tmlmapping; - private TMLModeling tmlmodeling; + private TMLMapping<?> tmlmapping; + private TMLModeling<?> tmlmodeling; private TMLArchitecture tmlarchitecture; private TURTLEModeling tm; @@ -113,7 +111,7 @@ public class Mapping2TIF { private ADJunction beforeCommManager; private ADJunction afterCommManager; - public Mapping2TIF(TMLMapping _tmlmapping) { + public Mapping2TIF(TMLMapping<?> _tmlmapping) { tmlmapping = _tmlmapping; tmlmodeling = tmlmapping.getTMLModeling(); tmlarchitecture = tmlmapping.getTMLArchitecture(); @@ -3246,18 +3244,18 @@ public class Mapping2TIF { if (((param1 = paramAnalyzer(action1, tcpu)) == null)) { TraceManager.addDev("Param Error"); - UICheckingError error = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "Parameter undeclared in loop " + action1); + TMLCheckingError error = new TMLCheckingError(CheckingError.BEHAVIOR_ERROR, "Parameter undeclared in loop " + action1); error.setTClass(tcpu); - error.setTGComponent((TGComponent)(element.getReferenceObject())); - checkingErrors.add(error); + error.setTMLActivityElement(element); + this.checkingErrors.add(error); return makeCPUADTaskBehaviorComponent(tcpu, cpu, ad, stateChoice, endJunction, task, cpt, tasks, stateId, branchStateId, element.getNextElement(0)); } if (((param3 = paramAnalyzer(action3, tcpu)) == null)) { - UICheckingError error = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "Parameter undeclared in loop" + action3); + TMLCheckingError error = new TMLCheckingError(CheckingError.BEHAVIOR_ERROR, "Parameter undeclared in loop" + action3); error.setTClass(tcpu); - error.setTGComponent((TGComponent)(element.getReferenceObject())); - checkingErrors.add(error); + error.setTMLActivityElement(element); + this.checkingErrors.add(error); return makeCPUADTaskBehaviorComponent(tcpu, cpu, ad, stateChoice, endJunction, task, cpt, tasks, stateId, branchStateId, element.getNextElement(0)); } diff --git a/src/main/java/tmltranslator/toturtle/TML2TURTLE.java b/src/main/java/tmltranslator/toturtle/TML2TURTLE.java index 814e37f0a4dfabeb8c556c6b1e0fcb41b821deae..8c00a52df069e63ce47226a9e89c4594f364be92 100755 --- a/src/main/java/tmltranslator/toturtle/TML2TURTLE.java +++ b/src/main/java/tmltranslator/toturtle/TML2TURTLE.java @@ -67,13 +67,13 @@ public class TML2TURTLE { private static String nameRequest = "Request__"; - private TMLModeling tmlmodeling; + private TMLModeling<?> tmlmodeling; private TURTLEModeling tm; private Vector<CheckingError> checkingErrors; private int nbClass; - public TML2TURTLE(TMLModeling _tmlmodeling) { + public TML2TURTLE(TMLModeling<?> _tmlmodeling) { //System.out.println("New TURTLE modeling"); tmlmodeling = _tmlmodeling; } diff --git a/src/main/java/tmltranslator/touppaal/TML2UPPAAL.java b/src/main/java/tmltranslator/touppaal/TML2UPPAAL.java index 849e44726559217c8e93826cba6ab3b3e88c6fae..356b913b866333fb72fefed307360c217f46a8d2 100755 --- a/src/main/java/tmltranslator/touppaal/TML2UPPAAL.java +++ b/src/main/java/tmltranslator/touppaal/TML2UPPAAL.java @@ -60,7 +60,7 @@ public class TML2UPPAAL { //private static int gateId; - private TMLModeling tmlmodeling; + private TMLModeling<?> tmlmodeling; private UPPAALSpec spec; private RelationTMLUPPAAL rtu; private UPPAALTemplate lossTemplate; @@ -86,7 +86,7 @@ public class TML2UPPAAL { public static final int DEFAULT_INFINITE_FIFO_SIZE = 8; - public TML2UPPAAL(TMLModeling _tmlmodeling) { + public TML2UPPAAL(TMLModeling<?> _tmlmodeling) { tmlmodeling = _tmlmodeling; TraceManager.addDev("TML2UPPAAL"); } diff --git a/src/main/java/ui/AnalysisPanelTranslator.java b/src/main/java/ui/AnalysisPanelTranslator.java index 1123e27fe43717d0c0c4efb671eb97bdea6f2063..75183d8302d29300be45ba79712b9e23c325a6ee 100755 --- a/src/main/java/ui/AnalysisPanelTranslator.java +++ b/src/main/java/ui/AnalysisPanelTranslator.java @@ -52,7 +52,6 @@ import sddescription.*; import translator.CheckingError; import ui.iod.*; import ui.sd.*; -import ui.UICheckingError; import java.util.Iterator; import java.util.LinkedList; diff --git a/src/main/java/ui/CorrespondanceTGElement.java b/src/main/java/ui/CorrespondanceTGElement.java index 9e729ca2286d587b771d40d0eec548532968ffd7..b3dcd435388fee704c1191b6ee8cf89b605c261d 100755 --- a/src/main/java/ui/CorrespondanceTGElement.java +++ b/src/main/java/ui/CorrespondanceTGElement.java @@ -62,12 +62,13 @@ import tmltranslator.TMLActivityElement; import translator.ADComponent; import translator.TClass; import ui.cd.TCDTClass; +import ui.util.CorrespondanceElement; import java.awt.*; import java.util.ArrayList; import java.util.Vector; -public class CorrespondanceTGElement { +public class CorrespondanceTGElement implements CorrespondanceElement<TGComponent> { private Vector<TGComponent> tg; //tgelement private Vector<String> names; //prename private Vector<Object> data; // turtle modeling elements @@ -75,7 +76,7 @@ public class CorrespondanceTGElement { //It is more natural than using indexes and easyer to use in a recursive context public CorrespondanceTGElement() { - tg = new Vector<TGComponent>(); + tg = new Vector<>(); data = new Vector<Object>(); names = new Vector<String>(); panelNames=new Vector<String>(); @@ -92,7 +93,8 @@ public class CorrespondanceTGElement { data.addAll(ce.getData()); panelNames.addAll(ce.getPanelNames()); } - + + @Override public void addCor(Object o, TGComponent tgc) { addCor(o, tgc, ""); } @@ -131,7 +133,7 @@ public class CorrespondanceTGElement { /* - * Returns the ADComponent coresponding to the first TGComponent founded named "name" + * Returns the ADComponent coresponding to the first TGComponent founded named "name" * @author Emil Salageanu */ public ADComponent getADComponentByName(String name, String panelName) @@ -474,7 +476,8 @@ public class CorrespondanceTGElement { return null; } - public void useDIPLOIDs() { + @Override + public void useDIPLOIDs() { ArrayList<TGComponent> list = new ArrayList<TGComponent>(); Object o0, o1; DIPLOElement de; diff --git a/src/main/java/ui/GNCModeling.java b/src/main/java/ui/GNCModeling.java index 97a9616a6f4daac3ebd4019995232ea740121b35..e18bc585b3433e1c6df66aa7e95f33257c8ff6e8 100755 --- a/src/main/java/ui/GNCModeling.java +++ b/src/main/java/ui/GNCModeling.java @@ -51,7 +51,6 @@ import myutil.TreeCell; import nc.*; import translator.CheckingError; import ui.ncdd.*; -import ui.UICheckingError; import java.util.ArrayList; import java.util.LinkedList; diff --git a/src/main/java/ui/GTMLModeling.java b/src/main/java/ui/GTMLModeling.java index 629af29562613868834c6f40ec40de6515c1ea50..0014aefdb1fe3cfe8fea069702e57a8ccb95f4bc 100755 --- a/src/main/java/ui/GTMLModeling.java +++ b/src/main/java/ui/GTMLModeling.java @@ -81,7 +81,7 @@ public class GTMLModeling { private TMLDesignPanel tmldp; private TMLComponentDesignPanel tmlcdp; private TMLArchiPanel tmlap; - private TMLModeling tmlm; + private TMLModeling<TGComponent> tmlm; private List<CheckingError> checkingErrors, warnings; private List<? extends TGComponent> tasksToTakeIntoAccount; private List<? extends TGComponent> componentsToTakeIntoAccount; @@ -93,7 +93,7 @@ public class GTMLModeling { //private ArrayList<HwNode> nodesToTakeIntoAccount; private List<TGComponent> nodesToTakeIntoAccount; - private TMLMapping map; + private TMLMapping<TGComponent> map; private TMLArchitecture archi; //Attributes specific to Communication Patterns @@ -142,7 +142,7 @@ public class GTMLModeling { } } - public TMLModeling translateToTMLModeling(boolean _resetID) { + public TMLModeling<TGComponent> translateToTMLModeling(boolean _resetID) { return translateToTMLModeling(false, _resetID); } @@ -150,8 +150,8 @@ public class GTMLModeling { putPrefixName = _b; } - public TMLModeling translateToTMLModeling(boolean onlyTakenIntoAccount, boolean _resetID) { - tmlm = new TMLModeling(_resetID); + public TMLModeling<TGComponent> translateToTMLModeling(boolean onlyTakenIntoAccount, boolean _resetID) { + tmlm = new TMLModeling<>(_resetID); checkingErrors = new LinkedList<CheckingError> (); warnings = new LinkedList<CheckingError> (); @@ -2338,11 +2338,11 @@ public class GTMLModeling { } } - public TMLMapping translateToTMLMapping() { + public TMLMapping<TGComponent> translateToTMLMapping() { - tmlm = new TMLModeling(true); + tmlm = new TMLModeling<>(true); archi = new TMLArchitecture(); //filled by makeArchitecture - map = new TMLMapping(tmlm, archi, false); + map = new TMLMapping<>(tmlm, archi, false); map.tmlap = tmlap; checkingErrors = new LinkedList<CheckingError> (); warnings = new LinkedList<CheckingError> (); @@ -3203,7 +3203,7 @@ public class GTMLModeling { TraceManager.addDev("Nb of panels regular:" + panels.size() + " components" + cpanels.size()); // For each panel, construct a TMLModeling - TMLModeling tmpm; + TMLModeling<TGComponent> tmpm; GTMLModeling gtml; String s; index = 0; diff --git a/src/main/java/ui/GTURTLEModeling.java b/src/main/java/ui/GTURTLEModeling.java index 679ec241b7833b3b42e621dde1975e4ff78bc872..61b61a942d5ff15be41e4dc02b1821c37ae61fe4 100755 --- a/src/main/java/ui/GTURTLEModeling.java +++ b/src/main/java/ui/GTURTLEModeling.java @@ -168,9 +168,9 @@ public class GTURTLEModeling { private boolean optimizeAvatar; private int tmState; // 0:generated, 1: to be generated from mapping, 2: to be generated from TML modeling - private TMLModeling tmlm; - private TMLMapping artificialtmap; - private TMLMapping tmap; + private TMLModeling<TGComponent> tmlm; + private TMLMapping<TGComponent> artificialtmap; + private TMLMapping<TGComponent> tmap; private TMLCP tmlcp; private TML2Avatar t2a; private RequirementModeling rm; @@ -496,7 +496,7 @@ public class GTURTLEModeling { //This branch is activated if doing the syntax check from the architecture panel. //It generates the text TML for the architecture and the application + mapping information if (tmap != null) { - TMLMappingTextSpecification spec = new TMLMappingTextSpecification( _title ); + TMLMappingTextSpecification<TGComponent> spec = new TMLMappingTextSpecification<>( _title ); spec.toTextFormat( tmap ); //TMLMapping try { //TraceManager.addDev( "*** " + ConfigurationTTool.TMLCodeDirectory + File.separator ); @@ -554,7 +554,7 @@ public class GTURTLEModeling { //This branch is activated if doing the syntax check from the application panel. //It only generates the application TML text if( tmap == null ) { - TMLTextSpecification spec = new TMLTextSpecification( _title ); + TMLTextSpecification<TGComponent> spec = new TMLTextSpecification<>( _title ); spec.toTextFormat( tmlm ); //TMLModeling try { spec.saveFile( ConfigurationTTool.TMLCodeDirectory + File.separator, "spec.tml" ); @@ -660,7 +660,7 @@ public class GTURTLEModeling { return overhead; } - public boolean channelAllowed(TMLMapping map, TMLChannel chan){ + public boolean channelAllowed(TMLMapping<TGComponent> map, TMLChannel chan){ TMLTask orig = chan.getOriginTask(); TMLTask dest = chan.getDestinationTask(); List<HwNode> path = getPath(map,orig, dest); @@ -680,7 +680,7 @@ public class GTURTLEModeling { return true; } - public List<HwNode> getPath(TMLMapping map, TMLTask t1, TMLTask t2){ + public List<HwNode> getPath(TMLMapping<TGComponent> map, TMLTask t1, TMLTask t2){ HwNode node1 = map.getHwNodeOf(t1); HwNode node2 = map.getHwNodeOf(t2); List<HwNode> path = new ArrayList<HwNode>(); @@ -732,10 +732,10 @@ public class GTURTLEModeling { } return path; } - public TMLMapping drawFirewall(TMLMapping map){ + public TMLMapping<TGComponent> drawFirewall(TMLMapping<TGComponent> map){ System.out.println("DRAWING FIREWALL"); TMLComponentDesignPanel tmlcdp = map.getTMLCDesignPanel(); - TMLModeling tmlm = map.getTMLModeling(); + TMLModeling<TGComponent> tmlm = map.getTMLModeling(); TMLActivityDiagramPanel firewallADP = null; TMLComponentTaskDiagramPanel tcdp = tmlcdp.tmlctdp; if (TraceManager.devPolicy == TraceManager.TO_CONSOLE){ @@ -1927,7 +1927,7 @@ public class GTURTLEModeling { } - public TMLMapping autoSecure(MainGUI gui, boolean autoConf, boolean autoWeakAuth, boolean autoStrongAuth){ + public TMLMapping<TGComponent> autoSecure(MainGUI gui, boolean autoConf, boolean autoWeakAuth, boolean autoStrongAuth){ //TODO add more options // if (tmap==null){ @@ -1938,14 +1938,14 @@ public class GTURTLEModeling { TMLArchiPanel newarch = (TMLArchiPanel) gui.tabs.get(gui.tabs.size()-1); return autoSecure(gui, "enc", tmap,newarch,autoConf,autoWeakAuth, autoStrongAuth); } - public TMLMapping autoSecure(MainGUI gui, String name, TMLMapping map, TMLArchiPanel newarch){ + public TMLMapping<TGComponent> autoSecure(MainGUI gui, String name, TMLMapping<TGComponent> map, TMLArchiPanel newarch){ return autoSecure(gui,name,map,newarch,"100","0","100",true,false,false); } - public TMLMapping autoSecure(MainGUI gui, String name, TMLMapping map, TMLArchiPanel newarch, boolean autoConf, boolean autoWeakAuth, boolean autoStrongAuth){ + public TMLMapping<TGComponent> autoSecure(MainGUI gui, String name, TMLMapping<TGComponent> map, TMLArchiPanel newarch, boolean autoConf, boolean autoWeakAuth, boolean autoStrongAuth){ return autoSecure(gui,name,map,newarch,"100","0","100",autoConf,autoWeakAuth, autoStrongAuth); } - public TMLMapping autoSecure(MainGUI gui, String encComp, String overhead, String decComp){ + public TMLMapping<TGComponent> autoSecure(MainGUI gui, String encComp, String overhead, String decComp){ if (tmap==null){ return null; } @@ -1955,7 +1955,7 @@ public class GTURTLEModeling { return autoSecure(gui,"enc", tmap,newarch,encComp, overhead,decComp,true,false,false); } - public TMLMapping autoSecure(MainGUI gui, String encComp, String overhead, String decComp, boolean autoConf, boolean autoWeakAuth, boolean autoStrongAuth){ + public TMLMapping<TGComponent> autoSecure(MainGUI gui, String encComp, String overhead, String decComp, boolean autoConf, boolean autoWeakAuth, boolean autoStrongAuth){ if (tmap==null){ return null; } @@ -1964,11 +1964,11 @@ public class GTURTLEModeling { TMLArchiPanel newarch = (TMLArchiPanel) gui.tabs.get(gui.tabs.size()-1); return autoSecure(gui,"enc", tmap,newarch,encComp, overhead,decComp,autoConf,autoWeakAuth, autoStrongAuth); } - public TMLMapping autoSecure(MainGUI gui, String name, TMLMapping map, TMLArchiPanel newarch, String encComp, String overhead, String decComp){ + public TMLMapping<TGComponent> autoSecure(MainGUI gui, String name, TMLMapping<TGComponent> map, TMLArchiPanel newarch, String encComp, String overhead, String decComp){ return autoSecure(gui,name, tmap,newarch,encComp, overhead,decComp,true,false, false); } - public void proverifAnalysis(TMLMapping map, ArrayList<String> nonAuthChans, ArrayList<String> nonSecChans){ + public void proverifAnalysis(TMLMapping<TGComponent> map, ArrayList<String> nonAuthChans, ArrayList<String> nonSecChans){ if (map==null){ TraceManager.addDev("No mapping"); return; @@ -2025,7 +2025,7 @@ public class GTURTLEModeling { } } - public TMLMapping autoSecure(MainGUI gui, String name, TMLMapping map, TMLArchiPanel newarch, String encComp, String overhead, String decComp, boolean autoConf, boolean autoWeakAuth, boolean autoStrongAuth){ + public TMLMapping<TGComponent> autoSecure(MainGUI gui, String name, TMLMapping<TGComponent> map, TMLArchiPanel newarch, String encComp, String overhead, String decComp, boolean autoConf, boolean autoWeakAuth, boolean autoStrongAuth){ HashMap<TMLTask, java.util.List<TMLTask>> toSecure = new HashMap<TMLTask, java.util.List<TMLTask>>(); HashMap<TMLTask, java.util.List<TMLTask>> toSecureRev = new HashMap<TMLTask, java.util.List<TMLTask>>(); HashMap<TMLTask, java.util.List<String>> secOutChannels = new HashMap<TMLTask, java.util.List<String>>(); @@ -2042,7 +2042,7 @@ public class GTURTLEModeling { proverifAnalysis(map, nonAuthChans, nonSecChans); - TMLModeling tmlmodel = map.getTMLModeling(); + TMLModeling<TGComponent> tmlmodel = map.getTMLModeling(); java.util.List<TMLChannel> channels = tmlmodel.getChannels(); for (TMLChannel channel: channels){ for (TMLCPrimitivePort p: channel.ports){ @@ -2603,7 +2603,7 @@ public class GTURTLEModeling { } } GTMLModeling gtm = new GTMLModeling(t, false); - TMLModeling newmodel = gtm.translateToTMLModeling(false,false); + TMLModeling<TGComponent> newmodel = gtm.translateToTMLModeling(false,false); for (TMLTask task:newmodel.getTasks()){ task.setName(tabName+"_"+name+"__"+task.getName()); } @@ -2623,7 +2623,7 @@ public class GTURTLEModeling { map.setTMLModeling(newmodel); return map; } - public boolean securePath(TMLMapping map, TMLTask t1, TMLTask t2){ + public boolean securePath(TMLMapping<TGComponent> map, TMLTask t1, TMLTask t2){ //Check if a path between two tasks is secure boolean secure=true; java.util.List<HwLink> links = map.getTMLArchitecture().getHwLinks(); @@ -2698,7 +2698,7 @@ public class GTURTLEModeling { } java.util.List<HwLink> links = tmap.getArch().getHwLinks(); //Find all Security Patterns, if they don't have an associated memory at encrypt and decrypt, map them - TMLModeling tmlm = tmap.getTMLModeling(); + TMLModeling<TGComponent> tmlm = tmap.getTMLModeling(); if (tmlm.securityTaskMap ==null){ return; } @@ -3474,17 +3474,17 @@ public class GTURTLEModeling { return tmState; } - public TMLModeling getTMLModeling() { + public TMLModeling<TGComponent> getTMLModeling() { return tmlm; } public TML2Avatar getTML2Avatar(){ return t2a; } - public TMLMapping getArtificialTMLMapping() { + public TMLMapping<TGComponent> getArtificialTMLMapping() { return artificialtmap; } - public TMLMapping getTMLMapping() { + public TMLMapping<TGComponent> getTMLMapping() { return tmap; } diff --git a/src/main/java/ui/TURTLEModelChecker.java b/src/main/java/ui/TURTLEModelChecker.java index e2936d404077d16f3d73323a4ec32b8e6160166c..7aabe9eeaf49dce2db798f0cfd9626eea889c867 100755 --- a/src/main/java/ui/TURTLEModelChecker.java +++ b/src/main/java/ui/TURTLEModelChecker.java @@ -51,8 +51,6 @@ import compiler.tmlparser.TMLExprParser; import compiler.tmlparser.TokenMgrError; import myutil.TraceManager; import translator.*; -import ui.CorrespondanceTGElement; -import ui.TGComponent; import java.io.StringReader; import java.util.ArrayList; diff --git a/src/main/java/ui/interactivesimulation/JFrameInteractiveSimulation.java b/src/main/java/ui/interactivesimulation/JFrameInteractiveSimulation.java index bb017d648b81be7bad457d4f7db79d773fbfcae8..5eaa120e7ecf0612b48cc6e822da33be2c24601a 100755 --- a/src/main/java/ui/interactivesimulation/JFrameInteractiveSimulation.java +++ b/src/main/java/ui/interactivesimulation/JFrameInteractiveSimulation.java @@ -217,7 +217,7 @@ public class JFrameInteractiveSimulation extends JFrame implements ActionListene public MouseHandler mouseHandler; public KeyListener keyHandler; - private TMLMapping tmap; + private TMLMapping<TGComponent> tmap; private int hashCode; private boolean hashOK = true; @@ -232,7 +232,7 @@ public class JFrameInteractiveSimulation extends JFrame implements ActionListene private Map<String, List<String>> transTimes = new HashMap<String, List<String>>(); private Vector<SimulationLatency> latencies = new Vector<SimulationLatency>(); - public JFrameInteractiveSimulation(Frame _f, MainGUI _mgui, String _title, String _hostSystemC, String _pathExecute, TMLMapping _tmap, List<Point> _points) { + public JFrameInteractiveSimulation(Frame _f, MainGUI _mgui, String _title, String _hostSystemC, String _pathExecute, TMLMapping<TGComponent> _tmap, List<Point> _points) { super(_title); // f = _f; diff --git a/src/main/java/ui/interactivesimulation/TaskTableModel.java b/src/main/java/ui/interactivesimulation/TaskTableModel.java index 11a3a088ab18136b2542f5b5fe564b0e807d32b1..52364a9976f159ccb14a6c3e71ee7ee92f8af80e 100755 --- a/src/main/java/ui/interactivesimulation/TaskTableModel.java +++ b/src/main/java/ui/interactivesimulation/TaskTableModel.java @@ -48,19 +48,20 @@ package ui.interactivesimulation; import tmltranslator.TMLModeling; import tmltranslator.TMLTask; +import ui.TGComponent; import javax.swing.table.AbstractTableModel; import java.util.Hashtable; public class TaskTableModel extends AbstractTableModel { - private TMLModeling tmlm; + private TMLModeling<TGComponent> tmlm; private Hashtable <Integer, String> valueTable; private Hashtable <Integer, Integer> rowTable; private int nbOfRows; //private String [] names; - public TaskTableModel(TMLModeling _tmlm, Hashtable<Integer, String> _valueTable, Hashtable <Integer, Integer> _rowTable) { + public TaskTableModel(TMLModeling<TGComponent> _tmlm, Hashtable<Integer, String> _valueTable, Hashtable <Integer, Integer> _rowTable) { tmlm = _tmlm; valueTable = _valueTable; rowTable = _rowTable; diff --git a/src/main/java/ui/interactivesimulation/TaskVariableTableModel.java b/src/main/java/ui/interactivesimulation/TaskVariableTableModel.java index ab73931c3689fa4efe89f7f98c1bae4919064d95..6ed0f6bbcdd30d815a09a8f448ba390afa488c68 100755 --- a/src/main/java/ui/interactivesimulation/TaskVariableTableModel.java +++ b/src/main/java/ui/interactivesimulation/TaskVariableTableModel.java @@ -48,19 +48,20 @@ package ui.interactivesimulation; import tmltranslator.TMLModeling; import tmltranslator.TMLTask; +import ui.TGComponent; import javax.swing.table.AbstractTableModel; import java.util.Hashtable; public class TaskVariableTableModel extends AbstractTableModel { - private TMLModeling tmlm; + private TMLModeling<TGComponent> tmlm; private Hashtable <Integer, String> valueTable; private Hashtable <Integer, Integer> rowTable; private int nbOfRows; //private String [] names; - public TaskVariableTableModel(TMLModeling _tmlm, Hashtable<Integer, String> _valueTable, Hashtable <Integer, Integer> _rowTable) { + public TaskVariableTableModel(TMLModeling<TGComponent> _tmlm, Hashtable<Integer, String> _valueTable, Hashtable <Integer, Integer> _rowTable) { tmlm = _tmlm; valueTable = _valueTable; rowTable = _rowTable; diff --git a/src/main/java/ui/tree/JDiagramTree.java b/src/main/java/ui/tree/JDiagramTree.java index 919bfbac6b0741159e99d3f9f9bdca7de6151a23..ded1a79cc0a7b3b3ec0724827abc128b7a36b102 100755 --- a/src/main/java/ui/tree/JDiagramTree.java +++ b/src/main/java/ui/tree/JDiagramTree.java @@ -354,6 +354,10 @@ public class JDiagramTree extends javax.swing.JTree implements ActionListener, M mgui.selectTab(ce.getTClass().getName()); } else if(ce.getRelation() != null) { mgui.selectTab("Class diagram"); + } else if (ce instanceof TMLCheckingError && ((TMLCheckingError) ce).getTMLActivityElement() != null) { + TGComponent tgc = (TGComponent) ((TMLCheckingError) ce).getTMLActivityElement().getReferenceObject(); + tgc.getTDiagramPanel().highlightTGComponent(tgc); + mgui.selectTDiagramPanel(tgc.getTDiagramPanel()); } else if (ce instanceof TMLCheckingError && ((TMLCheckingError) ce).getTMLTask() != null) { mgui.selectTab(((TMLCheckingError) ce).getTMLTask().getName()); } diff --git a/src/main/java/ui/util/CorrespondanceElement.java b/src/main/java/ui/util/CorrespondanceElement.java new file mode 100644 index 0000000000000000000000000000000000000000..318bdd5e734ff74fe6abe69ee4059326f3a0a961 --- /dev/null +++ b/src/main/java/ui/util/CorrespondanceElement.java @@ -0,0 +1,50 @@ +/* Copyright or (C) or Copr. GET / ENST, Telecom-Paris, Ludovic Apvrille + + * ludovic.apvrille AT enst.fr + * + * This software is a computer program whose purpose is to allow the + * edition of TURTLE analysis, design and deployment diagrams, to + * allow the generation of RT-LOTOS or Java code from this diagram, + * and at last to allow the analysis of formal validation traces + * obtained from external tools, e.g. RTL from LAAS-CNRS and CADP + * from INRIA Rhone-Alpes. + * + * This software is governed by the CeCILL license under French law and + * abiding by the rules of distribution of free software. You can use, + * modify and/ or redistribute the software under the terms of the CeCILL + * license as circulated by CEA, CNRS and INRIA at the following URL + * "http://www.cecill.info". + * + * As a counterpart to the access to the source code and rights to copy, + * modify and redistribute granted by the license, users are provided only + * with a limited warranty and the software's author, the holder of the + * economic rights, and the successive licensors have only limited + * liability. + * + * In this respect, the user's attention is drawn to the risks associated + * with loading, using, modifying and/or developing or reproducing the + * software by the user in light of its specific status of free software, + * that may mean that it is complicated to manipulate, and that also + * therefore means that it is reserved for developers and experienced + * professionals having in-depth computer knowledge. Users are therefore + * encouraged to load and test the software's suitability as regards their + * requirements in conditions enabling the security of their systems and/or + * data to be ensured and, more generally, to use and operate it in the + * same conditions as regards security. + * + * The fact that you are presently reading this means that you have had + * knowledge of the CeCILL license and that you accept its terms. + */ + +package ui.util; + +/** + * Interface CorrespondanceElement + * Creation: 13/06/2017 + * @version 1.0 13/06/2017 + * @author Florian LUGOU + */ +public interface CorrespondanceElement<E> { + void addCor(Object o, E tgc); + void useDIPLOIDs(); +} \ No newline at end of file diff --git a/tmltranslator/build.gradle b/tmltranslator/build.gradle index 0f46f2e6380024b2a461055f01018fe4a760a0e4..8d96490753cfcce4deb8de9dd38e0be188cfe27e 100644 --- a/tmltranslator/build.gradle +++ b/tmltranslator/build.gradle @@ -4,28 +4,20 @@ apply plugin: 'application' sourceSets { main { java { - srcDir "${rootProject.absPath}/src/main/java/myutil" - srcDir "${rootProject.absPath}/src/main/java/ui/util" - srcDir "${rootProject.absPath}/src/main/java/translator" - exclude "tojava/**" - exclude "tosimujava/**" - srcDir "${rootProject.absPath}/src/main/java/tpndescription" - srcDir "${rootProject.absPath}/src/main/java/uppaaldesc" - exclude "tmltouppaal/**" - srcDir "${rootProject.absPath}/src/main/java/tmltranslator" - exclude "toautomata/**" - exclude "toavatar/**" - exclude "tomappingsystemc/**" - exclude "toproverif/**" - exclude "tosystemc/**" + srcDir "${rootProject.absPath}/src/main/java" } } } dependencies { + compileOnly name: 'opencloud' + compileOnly name: 'JavaPlot' + compileOnly name: 'derbynet' + compileOnly name: 'commons-codec-1.10' + compileOnly name: 'commons-io-2.5-javadoc' compileOnly name: 'commons-io-2.5' compileOnly name: 'jsoup-1.8.1' - compileOnly name: 'commons-codec-1.10' + compileOnly name: 'gs-core-1.3' } jar { diff --git a/tmltranslator/src/main/java/TMLTranslator.java b/tmltranslator/src/main/java/TMLTranslator.java index 47a203dc5ee2416d40ea50573861a7ce4754b6fa..5acc1d65eb26870f0a87ecc584b604c25aed7ecb 100755 --- a/tmltranslator/src/main/java/TMLTranslator.java +++ b/tmltranslator/src/main/java/TMLTranslator.java @@ -1,4 +1,4 @@ -/**Copyright or (C) or Copr. GET / ENST, Telecom-Paris, Ludovic Apvrille, Andrea Enrici +/* Copyright or (C) or Copr. GET / ENST, Telecom-Paris, Ludovic Apvrille, Andrea Enrici ludovic.apvrille AT telecom-paritech.fr andrea.enrici AT telecom-paristech.fr @@ -35,18 +35,15 @@ The fact that you are presently reading this means that you have had knowledge of the CeCILL license and that you accept its terms. - - /** - * Class TIFTranslator - * Linecommand application for translating TIF to other languages - * Creation: 29/06/2007 - * @version 1.1 30/05/2014 - * @author Ludovic APVRILLE, Andrea ENRICI - * @see */ import myutil.FileUtils; -import tmltranslator.*; +import tmltranslator.TMLError; +import tmltranslator.TMLMapping; +import tmltranslator.TMLMappingTextSpecification; +import tmltranslator.TMLModeling; +import tmltranslator.TMLSyntaxChecking; +import tmltranslator.TMLTextSpecification; import tmltranslator.tomappingsystemc2.DiploSimulatorFactory; import tmltranslator.tomappingsystemc2.IDiploSimulatorCodeGenerator; import tmltranslator.toturtle.Mapping2TIF; @@ -59,6 +56,13 @@ import java.io.File; import java.io.FileOutputStream; import java.util.List; +/** + * Class TIFTranslator + * Linecommand application for translating TIF to other languages + * Creation: 29/06/2007 + * @version 1.1 30/05/2014 + * @author Ludovic APVRILLE, Andrea ENRICI + */ public class TMLTranslator { // 0 -> LOTOS // 1 -> UPPAAL @@ -67,19 +71,18 @@ public class TMLTranslator { // 4 -> TML // 5 -> Systemc3 - public static int conversionType; - public static File inputFile; - public static File outputFile; - public static String outputFileName; - public static String inputData; - public static String outputData; - public static TMLModeling tmlm; - public static TMLMapping tmap; - public static boolean debug = false; - public static boolean optimize = false; + private static int conversionType; + private static File outputFile; + private static String outputFileName; + private static String inputData; + private static String outputData; + private static TMLModeling<Object> tmlm; + private static TMLMapping<Object> tmap; + private static boolean debug = false; + private static boolean optimize = false; - public static void printCopyright() { + private static void printCopyright() { System.out.println("TMLTranslator: (C) GET/ENST, Ludovic APVRILLE, Andrea ENRICI\n{ludovic.apvrille, andrea.enrici}@telecom-paristech.fr"); System.out.println("TMLTranslator is released under a CECILL License. See http://www.cecill.info/index.en.html"); System.out.println("For more information on TURTLE related technologies, please consult http://ttool.telecom-paristech.fr/"); @@ -87,7 +90,7 @@ public class TMLTranslator { System.out.println("Enjoy!!!\n"); } - public static void printUsage() { + private static void printUsage() { System.out.println("TMLTranlator: usage"); System.out.println("TMLTranlator <options> <language> <inputfile> [<outputfile> or <outputdirectory>]"); System.out.println("<options> are optional. There might be : -debug or -optimize"); @@ -98,35 +101,20 @@ public class TMLTranslator { System.out.println("<outputfile> or <outputdirectory> should be writeable"); } - public static boolean checkArgs(String [] args) { + private static boolean checkArgs(String [] args) { return !(args.length < 3); } - public static boolean hasDebug(String [] args) { - if (args[0].equals("-debug")) { - return true; - } - - if (args[1].equals("-debug")) { - return true; - } - - return false; + private static boolean hasDebug(String [] args) { + return args[0].equals("-debug") || args[1].equals("-debug"); } - public static boolean hasOptimize(String [] args) { - if (args[0].equals("-optimize")) { - return true; - } - - if (args[1].equals("-optimize")) { - return true; - } + private static boolean hasOptimize(String[] args) { + return args[0].equals("-optimize") || args[1].equals("-optimize"); - return false; } - public static boolean analyseArgs(String [] args) { + private static boolean analyseArgs(String[] args) { System.out.println("Converting to " + args[0]); if (args[0].toUpperCase().equals("LOTOS")) { @@ -145,9 +133,9 @@ public class TMLTranslator { return true; } - public static boolean prepareFiles(String args[]) { + private static boolean prepareFiles(String args[]) { - inputFile = new File(args[1]); + File inputFile = new File(args[1]); outputFile = new File(args[2]); outputFileName = args[2]; try { @@ -172,16 +160,16 @@ public class TMLTranslator { return true; } - public static boolean checkSyntax(TMLSyntaxChecking syntax) { + private static boolean checkSyntax(TMLSyntaxChecking syntax) { System.out.println("Syntax checking phase"); syntax.checkSyntax(); return (syntax.hasErrors() == 0); } - public static boolean loadMapping(String title, String path) { - boolean ret = false; + private static boolean loadMapping(String title, String path) { + boolean ret; //System.out.println("load"); - TMLMappingTextSpecification spec = new TMLMappingTextSpecification(title); + TMLMappingTextSpecification<Object> spec = new TMLMappingTextSpecification<>(title); ret = spec.makeTMLMapping(inputData, path); System.out.println("load ended"); List<TMLError> warnings; @@ -224,11 +212,11 @@ public class TMLTranslator { return ret; } - public static boolean loadTML(String title) { - boolean ret = false; + private static boolean loadTML(String title) { + boolean ret; List<TMLError> warnings; //System.out.println("load"); - TMLTextSpecification spec = new TMLTextSpecification(title, true); + TMLTextSpecification<Object> spec = new TMLTextSpecification<>(title, true); ret = spec.makeTMLModeling(inputData); //System.out.println("load ended"); tmlm = spec.getTMLModeling(); @@ -261,7 +249,7 @@ public class TMLTranslator { return ret; } - public static boolean convertToLOTOSFromMapping() { + private static boolean convertToLOTOSFromMapping() { Mapping2TIF m2tif = new Mapping2TIF(tmap); m2tif.setShowSampleChannels(false); m2tif.setShowChannels(true); @@ -296,7 +284,7 @@ public class TMLTranslator { return true; } - public static boolean convertToLOTOS() { + private static boolean convertToLOTOS() { TML2TURTLE totif = new TML2TURTLE(tmlm); TURTLEModeling tm = totif.generateTURTLEModeling(); TURTLETranslator tt = new TURTLETranslator(tm); @@ -312,7 +300,7 @@ public class TMLTranslator { return true; } - public static boolean convertToUPPAAL() { + private static boolean convertToUPPAAL() { TML2UPPAAL toup = new TML2UPPAAL(tmlm); toup.generateUPPAAL(debug); try { @@ -324,7 +312,7 @@ public class TMLTranslator { return true; } - public static boolean convertToSystemC() { + private static boolean convertToSystemC() { tmltranslator.tomappingsystemc.TML2MappingSystemC map; if (tmap == null) { map = new tmltranslator.tomappingsystemc.TML2MappingSystemC(tmlm); @@ -342,7 +330,7 @@ public class TMLTranslator { return true; } - public static boolean convertToSystemC2() { + private static boolean convertToSystemC2() { //System.out.println("Converting to SystemC2 ... yo!"); final IDiploSimulatorCodeGenerator map; // tmltranslator.tomappingsystemc2.TML2MappingSystemC map; @@ -390,10 +378,10 @@ public class TMLTranslator { return true; }*/ - public static boolean convertToTML() { + private static boolean convertToTML() { if (tmap == null) { - TMLTextSpecification tspec = new TMLTextSpecification("spec"); + TMLTextSpecification<Object> tspec = new TMLTextSpecification<>("spec"); tspec.toTextFormat(tmlm); try { tspec.saveFile(outputFileName, "spec"); @@ -402,7 +390,7 @@ public class TMLTranslator { return false; } } else { - TMLMappingTextSpecification mapspec = new TMLMappingTextSpecification("spec"); + TMLMappingTextSpecification<Object> mapspec = new TMLMappingTextSpecification<>("spec"); mapspec.toTextFormat(tmap); try { mapspec.saveFile(outputFileName, "spec"); @@ -414,7 +402,7 @@ public class TMLTranslator { return true; } - public static boolean saveData() { + private static boolean saveData() { try { FileOutputStream fos = new FileOutputStream(outputFile); fos.write(outputData.getBytes()); @@ -449,9 +437,7 @@ public class TMLTranslator { if (nbOfOptions > 0) { debug = true; tmp = new String[args.length - nbOfOptions]; - for(int i=nbOfOptions; i<args.length; i++) { - tmp[i-nbOfOptions] = args[i]; - } + System.arraycopy(args, nbOfOptions, tmp, 0, args.length - nbOfOptions); args = tmp; } @@ -525,11 +511,11 @@ public class TMLTranslator { System.out.println("Conversion done"); - /*if (!saveData()) { + if (!saveData()) { return; - }*/ + } - //System.out.println("Specification written in " + outputFile.getName() + ": " + outputData.length() + " bytes"); + System.out.println("Specification written in " + outputFile.getName() + ": " + outputData.length() + " bytes"); }