Loading plugins/org.etsi.mts.tdl.standalone/src/org/etsi/mts/tdl/standalone/Standalone.java +32 −23 Original line number Diff line number Diff line Loading @@ -28,6 +28,7 @@ import org.eclipse.ocl.pivot.utilities.OCL; import org.eclipse.ocl.pivot.utilities.ParserException; import org.eclipse.ocl.pivot.utilities.Query; import org.eclipse.xtext.EcoreUtil2; import org.eclipse.xtext.nodemodel.util.NodeModelUtils; import org.etsi.mts.tdl.ComponentInstance; import org.etsi.mts.tdl.ComponentInstanceRole; import org.etsi.mts.tdl.Extension; Loading @@ -48,6 +49,7 @@ import org.etsi.mts.tdl.tdlPackage; import org.etsi.mts.tdl.asn2tdl.ASN2TDLTranslator; import org.etsi.mts.tdl.constraints.evl.Validator; import org.etsi.mts.tdl.helper.TDLHelper; import org.etsi.mts.tdl.impl.CompoundBehaviourImpl; import org.etsi.mts.tdl.json2tdl.JSON2TDLTranslator; import org.etsi.mts.tdl.json2tdl.TDL2JSONTranslator; import org.etsi.mts.tdl.openapi2tdl.next.OpenAPI2TDLTranslatorNext; Loading Loading @@ -434,6 +436,7 @@ public class Standalone { e1 = e0; e0 = e; } //TODO: ports need to be configuration prefixed if only one diagram String c = ""+e0.getComponent().getName()+"_"+e0.getGate().getName()+"" +" <--> " +""+e1.getComponent().getName()+"_"+e1.getGate().getName()+"" Loading @@ -456,11 +459,11 @@ public class Standalone { private void generateBehaviour(String path, EObject model) { List<TestDescription> testDescriptions = EcoreUtil2.getAllContentsOfType(model, TestDescription.class); String d = ""; for (TestDescription td : testDescriptions) { String d = "@startuml\n"; d += "@startuml\n"; d += "hide footbox\n"; d+="title Foot Box removed\n"; d += "title "+td.getName()+"\n"; TestConfiguration tc = td.getTestConfiguration(); for (var i : tc.getComponentInstance()) { if (i.getRole() == ComponentInstanceRole.TESTER) { Loading @@ -487,25 +490,21 @@ public class Standalone { if (td.getBehaviourDescription()!= null) { var b = td.getBehaviourDescription().getBehaviour(); try { d += processBehaviour(castObject(b.getClass(), b)); } catch (Exception e) { System.out.println("Error: "+e.getMessage()); } d += processBehaviour(b); } d += "@enduml"; d += "@enduml\n"; //TODO: need to split behaviours.. } System.out.println(d); try { //TODO: make configurable Files.writeString(Path.of(path+"-"+td.getName()+"-behaviour.md"), d); Files.writeString(Path.of(path+"-behaviour.md"), d); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } } } private <T> T castObject(Class<T> clazz, Object object) { return (T) object; Loading @@ -513,14 +512,23 @@ public class Standalone { private String processBehaviour(Behaviour b) { String d = "' Not supported yet: "+b.getClass().getName(); System.out.println(d); return d+"\n"; switch (b.eClass().getClassifierID()) { case tdlPackage.COMPOUND_BEHAVIOUR: d = processBehaviour((CompoundBehaviour)b); break; case tdlPackage.MESSAGE: d = processBehaviour((Message)b); break; default: break; } return d; } private String processBehaviour(CompoundBehaviour b) { String d = ""; for (var nested : b.getBlock().getBehaviour()) { d+=processBehaviour(castObject(nested.getClass(), nested)); d += processBehaviour(nested); } //TODO: handle prefixes and indentation? return d; Loading @@ -533,8 +541,9 @@ public class Standalone { var t = tc.container().getName()+"_"+tc.getName(); var a = b.getArgument(); String d = ""; String at = NodeModelUtils.findActualNodeFor(a).getText(); //TODO: use node model untils to get text (needs processing) d += c+" -> "+t+" : "+b.toString()+"\n"; d += c+" -> "+t+" : "+at.replaceAll("\n", "\\n")+"\n"; return d; } Loading Loading
plugins/org.etsi.mts.tdl.standalone/src/org/etsi/mts/tdl/standalone/Standalone.java +32 −23 Original line number Diff line number Diff line Loading @@ -28,6 +28,7 @@ import org.eclipse.ocl.pivot.utilities.OCL; import org.eclipse.ocl.pivot.utilities.ParserException; import org.eclipse.ocl.pivot.utilities.Query; import org.eclipse.xtext.EcoreUtil2; import org.eclipse.xtext.nodemodel.util.NodeModelUtils; import org.etsi.mts.tdl.ComponentInstance; import org.etsi.mts.tdl.ComponentInstanceRole; import org.etsi.mts.tdl.Extension; Loading @@ -48,6 +49,7 @@ import org.etsi.mts.tdl.tdlPackage; import org.etsi.mts.tdl.asn2tdl.ASN2TDLTranslator; import org.etsi.mts.tdl.constraints.evl.Validator; import org.etsi.mts.tdl.helper.TDLHelper; import org.etsi.mts.tdl.impl.CompoundBehaviourImpl; import org.etsi.mts.tdl.json2tdl.JSON2TDLTranslator; import org.etsi.mts.tdl.json2tdl.TDL2JSONTranslator; import org.etsi.mts.tdl.openapi2tdl.next.OpenAPI2TDLTranslatorNext; Loading Loading @@ -434,6 +436,7 @@ public class Standalone { e1 = e0; e0 = e; } //TODO: ports need to be configuration prefixed if only one diagram String c = ""+e0.getComponent().getName()+"_"+e0.getGate().getName()+"" +" <--> " +""+e1.getComponent().getName()+"_"+e1.getGate().getName()+"" Loading @@ -456,11 +459,11 @@ public class Standalone { private void generateBehaviour(String path, EObject model) { List<TestDescription> testDescriptions = EcoreUtil2.getAllContentsOfType(model, TestDescription.class); String d = ""; for (TestDescription td : testDescriptions) { String d = "@startuml\n"; d += "@startuml\n"; d += "hide footbox\n"; d+="title Foot Box removed\n"; d += "title "+td.getName()+"\n"; TestConfiguration tc = td.getTestConfiguration(); for (var i : tc.getComponentInstance()) { if (i.getRole() == ComponentInstanceRole.TESTER) { Loading @@ -487,25 +490,21 @@ public class Standalone { if (td.getBehaviourDescription()!= null) { var b = td.getBehaviourDescription().getBehaviour(); try { d += processBehaviour(castObject(b.getClass(), b)); } catch (Exception e) { System.out.println("Error: "+e.getMessage()); } d += processBehaviour(b); } d += "@enduml"; d += "@enduml\n"; //TODO: need to split behaviours.. } System.out.println(d); try { //TODO: make configurable Files.writeString(Path.of(path+"-"+td.getName()+"-behaviour.md"), d); Files.writeString(Path.of(path+"-behaviour.md"), d); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } } } private <T> T castObject(Class<T> clazz, Object object) { return (T) object; Loading @@ -513,14 +512,23 @@ public class Standalone { private String processBehaviour(Behaviour b) { String d = "' Not supported yet: "+b.getClass().getName(); System.out.println(d); return d+"\n"; switch (b.eClass().getClassifierID()) { case tdlPackage.COMPOUND_BEHAVIOUR: d = processBehaviour((CompoundBehaviour)b); break; case tdlPackage.MESSAGE: d = processBehaviour((Message)b); break; default: break; } return d; } private String processBehaviour(CompoundBehaviour b) { String d = ""; for (var nested : b.getBlock().getBehaviour()) { d+=processBehaviour(castObject(nested.getClass(), nested)); d += processBehaviour(nested); } //TODO: handle prefixes and indentation? return d; Loading @@ -533,8 +541,9 @@ public class Standalone { var t = tc.container().getName()+"_"+tc.getName(); var a = b.getArgument(); String d = ""; String at = NodeModelUtils.findActualNodeFor(a).getText(); //TODO: use node model untils to get text (needs processing) d += c+" -> "+t+" : "+b.toString()+"\n"; d += c+" -> "+t+" : "+at.replaceAll("\n", "\\n")+"\n"; return d; } Loading