diff options
author | Ed Willink | 2017-05-09 08:58:16 +0000 |
---|---|---|
committer | Ed Willink | 2017-05-15 17:36:54 +0000 |
commit | c873823bb8a0e6d759a24c3d0c058b037836a7e0 (patch) | |
tree | b7f289256cc8925c18c86187a0750010f69f08f2 | |
parent | d20c4e86637043952c8ff45d674771eca5f3a998 (diff) | |
download | org.eclipse.qvtd-c873823bb8a0e6d759a24c3d0c058b037836a7e0.tar.gz org.eclipse.qvtd-c873823bb8a0e6d759a24c3d0c058b037836a7e0.tar.xz org.eclipse.qvtd-c873823bb8a0e6d759a24c3d0c058b037836a7e0.zip |
[514590] Fail with transformation compilation failures
-rw-r--r-- | plugins/org.eclipse.qvtd.cs2as.compiler/src/org/eclipse/qvtd/cs2as/compiler/internal/CS2ASJavaCompilerImpl.java | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/plugins/org.eclipse.qvtd.cs2as.compiler/src/org/eclipse/qvtd/cs2as/compiler/internal/CS2ASJavaCompilerImpl.java b/plugins/org.eclipse.qvtd.cs2as.compiler/src/org/eclipse/qvtd/cs2as/compiler/internal/CS2ASJavaCompilerImpl.java index a7842e89d..e1d1302f2 100644 --- a/plugins/org.eclipse.qvtd.cs2as.compiler/src/org/eclipse/qvtd/cs2as/compiler/internal/CS2ASJavaCompilerImpl.java +++ b/plugins/org.eclipse.qvtd.cs2as.compiler/src/org/eclipse/qvtd/cs2as/compiler/internal/CS2ASJavaCompilerImpl.java @@ -56,6 +56,7 @@ import org.eclipse.qvtd.codegen.qvti.java.QVTiGlobalContext; import org.eclipse.qvtd.codegen.qvticgmodel.CGGuardVariable; import org.eclipse.qvtd.codegen.qvticgmodel.CGMapping; import org.eclipse.qvtd.codegen.utilities.QVTiCGUtil; +import org.eclipse.qvtd.compiler.CompilerChainException; import org.eclipse.qvtd.compiler.internal.utilities.CompilerUtil; import org.eclipse.qvtd.cs2as.compiler.CS2ASJavaCompiler; import org.eclipse.qvtd.cs2as.compiler.CS2ASJavaCompilerParameters; @@ -446,7 +447,10 @@ public class CS2ASJavaCompilerImpl implements CS2ASJavaCompiler { protected Class<? extends CS2ASTransformer> compileTransformation(@NonNull File explicitClassPath, @NonNull QVTiCodeGenerator cg) throws Exception { String qualifiedClassName = cg.getQualifiedName(); String javaCodeSource = cg.generateClassFile(); - OCL2JavaFileObject.saveClass(String.valueOf(explicitClassPath), qualifiedClassName, javaCodeSource); + String problem = OCL2JavaFileObject.saveClass(String.valueOf(explicitClassPath), qualifiedClassName, javaCodeSource); + if (problem != null) { + throw new CompilerChainException(problem); + } @SuppressWarnings("unchecked") Class<? extends CS2ASTransformer> txClass = (Class<? extends CS2ASTransformer>) OCL2JavaFileObject.loadExplicitClass(explicitClassPath, qualifiedClassName); return txClass; |