Commit 3253b82a authored by Philip Makedonski's avatar Philip Makedonski
Browse files

* switched standalone to new TTCN-3 renderer

parent 6df62ec0
Loading
Loading
Loading
Loading
+16 −8
Original line number Diff line number Diff line
@@ -2,6 +2,7 @@ package org.etsi.mts.tdl.standalone;

import java.io.File;
import java.io.FilenameFilter;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.util.ArrayList;
@@ -11,9 +12,12 @@ import java.util.function.Consumer;
import java.util.stream.Collectors;

import org.eclipse.emf.common.util.EList;
import org.eclipse.emf.common.util.URI;
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.ecore.resource.Resource;
import org.eclipse.emf.ecore.resource.ResourceSet;
import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl;
import org.eclipse.emf.ecore.util.EcoreUtil;
import org.eclipse.epsilon.evl.execute.UnsatisfiedConstraint;
import org.eclipse.ocl.pivot.ExpressionInOCL;
@@ -30,9 +34,11 @@ import org.etsi.mts.tdl.Extension;
import org.etsi.mts.tdl.GateType;
import org.etsi.mts.tdl.Message;
import org.etsi.mts.tdl.Package;
import org.etsi.mts.tdl.SimpleDataType;
import org.etsi.mts.tdl.StructuredDataType;
import org.etsi.mts.tdl.TestConfiguration;
import org.etsi.mts.tdl.TestDescription;
import org.etsi.mts.tdl.tdlFactory;
import org.etsi.mts.tdl.tdlPackage;
import org.etsi.mts.tdl.asn2tdl.ASN2TDLTranslator;
import org.etsi.mts.tdl.constraints.evl.Validator;
@@ -44,7 +50,8 @@ import org.etsi.mts.tdl.openapi2tdl.next.doc.Doc;
import org.etsi.mts.tdl.resources.ResourceHandler;
import org.etsi.mts.tdl.tools.to.docx.poi.Generator;
import org.etsi.mts.tdl.transform.AbstractTranslator;
import org.etsi.mts.tdl.ttcn3.Transform;
import org.etsi.mts.tdl.ttcn3.TTCN3Renderer;
import org.etsi.mts.tdl.util.tdlResourceFactoryImpl;
import org.etsi.mts.tdl.yang2tdl.Yang2TDLTranslator;

import de.ugoe.cs.swe.TTCN3StandaloneSetup;
@@ -598,13 +605,14 @@ public class Standalone {
		try {
			new TTCN3StandaloneSetup().createInjectorAndDoEMFRegistration();
			Resource resource = ResourceHandler.load(path);
			Transform transformer = new Transform();
			Resource ir = ResourceHandler.create(path+"-generated.ttcn3m");
			transformer.transform(resource, ir);
			//This is important otherwise ghost references may occur
			ir.unload();
			Resource tr = ResourceHandler.create(path+"-generated.ttcn3");
			transformer.transform(resource, tr);
			TTCN3Renderer ttcn3 = new TTCN3Renderer();
			List<Package> packages = EcoreUtil2.getAllContentsOfType(resource, Package.class);
			for (Package p : packages) {
				String output = ""; 
				output += ttcn3.render(p, "  ");
				Files.writeString(Path.of(Path.of(path).getParent().toString(), p.getName()+".ttcn3"), output);
	
			}
		} catch (Exception e) {
			e.printStackTrace();
		}