[471114] Use OCLGenModelGeneratorAdapterFactory to workaround Bug 543870
diff --git a/plugins/org.eclipse.qvtd.compiler/src/org/eclipse/qvtd/compiler/GenModelGenerateCompilerStep.java b/plugins/org.eclipse.qvtd.compiler/src/org/eclipse/qvtd/compiler/GenModelGenerateCompilerStep.java
index 70839de..9d318ee 100644
--- a/plugins/org.eclipse.qvtd.compiler/src/org/eclipse/qvtd/compiler/GenModelGenerateCompilerStep.java
+++ b/plugins/org.eclipse.qvtd.compiler/src/org/eclipse/qvtd/compiler/GenModelGenerateCompilerStep.java
@@ -26,11 +26,9 @@
import org.eclipse.core.runtime.Path;
import org.eclipse.core.runtime.URIUtil;
import org.eclipse.emf.codegen.ecore.generator.GeneratorAdapterFactory;
-import org.eclipse.emf.codegen.ecore.generator.GeneratorAdapterFactory.Descriptor;
import org.eclipse.emf.codegen.ecore.genmodel.GenModel;
import org.eclipse.emf.codegen.ecore.genmodel.GenPackage;
import org.eclipse.emf.codegen.ecore.genmodel.generator.GenBaseGeneratorAdapter;
-import org.eclipse.emf.codegen.ecore.genmodel.generator.GenModelGeneratorAdapterFactory;
import org.eclipse.emf.common.util.BasicMonitor;
import org.eclipse.emf.common.util.Diagnostic;
import org.eclipse.emf.common.util.Monitor;
@@ -39,7 +37,7 @@
import org.eclipse.emf.ecore.resource.Resource;
import org.eclipse.jdt.annotation.NonNull;
import org.eclipse.ocl.examples.codegen.dynamic.JavaFileUtil;
-import org.eclipse.ocl.examples.codegen.oclinecore.OCLinEcoreGeneratorAdapterFactory;
+import org.eclipse.ocl.examples.codegen.genmodel.OCLGenModelUtil;
import org.eclipse.qvtd.compiler.internal.qvtr2qvtc.QVTr2QVTc;
import org.eclipse.qvtd.compiler.internal.utilities.CompilerUtil;
@@ -54,17 +52,11 @@
private final @NonNull Collection<GeneratorAdapterFactory> adapterFactories = new ArrayList<>();
public Generator() {
- // Replacement for EMF to fix BUG 485764, BUG 485089
- //addAdapterFactoryDescriptor(QVTdGenModelGeneratorAdapterFactory.DESCRIPTOR);
- addAdapterFactoryDescriptor(GenModelGeneratorAdapterFactory.DESCRIPTOR);
- // OCLinEcore embedded support
- addAdapterFactoryDescriptor(OCLinEcoreGeneratorAdapterFactory.DESCRIPTOR);
- }
-
- private void addAdapterFactoryDescriptor(Descriptor descriptor) {
- GeneratorAdapterFactory adapterFactory = descriptor.createAdapterFactory();
- adapterFactories.add(adapterFactory);
- adapterFactory.setGenerator(this);
+ for (GeneratorAdapterFactory.@NonNull Descriptor descriptor : OCLGenModelUtil.getGeneratorAdapterFactoryDescriptors()) {
+ GeneratorAdapterFactory adapterFactory = descriptor.createAdapterFactory();
+ adapterFactories.add(adapterFactory);
+ adapterFactory.setGenerator(this);
+ }
}
@Override