1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105
| package classes;
import java.io.IOException;
import java.util.Collections;
import java.util.List;
import java.util.Map;
import javax.swing.SwingUtilities;
import javax.swing.UIManager;
import org.eclipse.core.runtime.IStatus;
import org.eclipse.emf.common.notify.Notifier;
import org.eclipse.emf.common.util.BasicDiagnostic;
import org.eclipse.emf.common.util.Diagnostic;
import org.eclipse.emf.common.util.EList;
import org.eclipse.emf.common.util.TreeIterator;
import org.eclipse.emf.common.util.URI;
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.Resource.Factory;
import org.eclipse.emf.ecore.resource.Resource.Factory.Registry;
import org.eclipse.emf.ecore.resource.impl.ResourceFactoryImpl;
import org.eclipse.emf.ecore.resource.impl.ResourceFactoryRegistryImpl;
import org.eclipse.emf.ecore.resource.impl.ResourceImpl;
import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl;
import org.eclipse.m2m.qvt.oml.BasicModelExtent;
import org.eclipse.m2m.qvt.oml.ExecutionContextImpl;
import org.eclipse.m2m.qvt.oml.ExecutionDiagnostic;
import org.eclipse.m2m.qvt.oml.ModelExtent;
import org.eclipse.m2m.qvt.oml.TransformationExecutor;
public class onto2smd {
public onto2smd(){
URI transformationURI = URI.createURI("platform:/resource/tests/transforms/OntoL_ecore_2_SMDuml.qvto");
TransformationExecutor executor = new TransformationExecutor(transformationURI);
ResourceSet resourceSet = new ResourceSetImpl();
URI inURI = URI.createURI("platform:/resource/tests/model/M.ecore",true);
Resource inResource = new ResourceImpl(inURI);
EList<EObject> inObjects = inResource.getContents();
ModelExtent input = new BasicModelExtent(inObjects);
ModelExtent output = new BasicModelExtent();
ExecutionContextImpl context = new ExecutionContextImpl();
context.setConfigProperty("keepModeling",true);
ExecutionDiagnostic result = executor.execute(context, input, output);
if(result.getSeverity()== Diagnostic.OK) {
List<EObject> outObjects = output.getContents();
ResourceSet resourceSet2 = new ResourceSetImpl();
Resource outResource = resourceSet2.getResource(
URI.createURI("platform:/resource/tests/model/M.uml"), true);
outResource.getContents().addAll(outObjects);
try {
outResource.save(Collections.emptyMap());
} catch (IOException e) {
e.printStackTrace();
}
} else {
IStatus status = BasicDiagnostic.toIStatus(result);
System.err.println("ERREUR chargement du mod���le ");
}
}
public static void main(String[] args) {
try {
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
}
catch(Exception e) {
e.printStackTrace();
}
new onto2smd();
}
} |
Partager