diff options
author | sboyko | 2016-02-01 14:14:20 +0000 |
---|---|---|
committer | sboyko | 2016-02-01 14:14:20 +0000 |
commit | 857814404a5ffda876c3beadaa7d41aeb818e6c2 (patch) | |
tree | 628600f3e51ff1fe5133c7830fa603a8f10ac212 /plugins/org.eclipse.m2m.qvt.oml.runtime/src/org/eclipse/m2m/internal | |
parent | fb8b4c769156b3bb8031159632c3975153770614 (diff) | |
download | org.eclipse.qvto-857814404a5ffda876c3beadaa7d41aeb818e6c2.tar.gz org.eclipse.qvto-857814404a5ffda876c3beadaa7d41aeb818e6c2.tar.xz org.eclipse.qvto-857814404a5ffda876c3beadaa7d41aeb818e6c2.zip |
[478006] Restore incremental execution mode
Diffstat (limited to 'plugins/org.eclipse.m2m.qvt.oml.runtime/src/org/eclipse/m2m/internal')
4 files changed, 16 insertions, 17 deletions
diff --git a/plugins/org.eclipse.m2m.qvt.oml.runtime/src/org/eclipse/m2m/internal/qvt/oml/runtime/launch/QvtBuilderLaunchConfigurationDelegate.java b/plugins/org.eclipse.m2m.qvt.oml.runtime/src/org/eclipse/m2m/internal/qvt/oml/runtime/launch/QvtBuilderLaunchConfigurationDelegate.java index 2dfbff5f8..0e34d90db 100644 --- a/plugins/org.eclipse.m2m.qvt.oml.runtime/src/org/eclipse/m2m/internal/qvt/oml/runtime/launch/QvtBuilderLaunchConfigurationDelegate.java +++ b/plugins/org.eclipse.m2m.qvt.oml.runtime/src/org/eclipse/m2m/internal/qvt/oml/runtime/launch/QvtBuilderLaunchConfigurationDelegate.java @@ -144,7 +144,7 @@ public class QvtBuilderLaunchConfigurationDelegate extends LaunchConfigurationDe } } - String traceFile = configuration.getAttribute(IQvtLaunchConstants.TRACE_FILE, ""); //$NON-NLS-1$ + String traceFile = QvtLaunchUtil.getTraceFileURI(configuration); if (traceFile != null) { URI traceUri = URI.createPlatformResourceURI(traceFile, false); if (traceUri != null) { diff --git a/plugins/org.eclipse.m2m.qvt.oml.runtime/src/org/eclipse/m2m/internal/qvt/oml/runtime/launch/QvtLaunchConfigurationDelegateBase.java b/plugins/org.eclipse.m2m.qvt.oml.runtime/src/org/eclipse/m2m/internal/qvt/oml/runtime/launch/QvtLaunchConfigurationDelegateBase.java index c858ec6ad..c3f00b780 100644 --- a/plugins/org.eclipse.m2m.qvt.oml.runtime/src/org/eclipse/m2m/internal/qvt/oml/runtime/launch/QvtLaunchConfigurationDelegateBase.java +++ b/plugins/org.eclipse.m2m.qvt.oml.runtime/src/org/eclipse/m2m/internal/qvt/oml/runtime/launch/QvtLaunchConfigurationDelegateBase.java @@ -56,9 +56,9 @@ public abstract class QvtLaunchConfigurationDelegateBase extends LaunchConfigura } public static IFile getModuleFile(ILaunchConfiguration configuration) throws CoreException { - String moduleFileName = configuration.getAttribute(IQvtLaunchConstants.MODULE, ""); //$NON-NLS-1$ - URI moduleUri = URI.createURI(moduleFileName); - IFile moduleFile = WorkspaceUtils.getWorkspaceFile(moduleUri); + String moduleFileName = QvtLaunchUtil.getTransformationURI(configuration); + URI moduleUri = EmfUtil.makeUri(moduleFileName); + IFile moduleFile = moduleUri != null ? WorkspaceUtils.getWorkspaceFile(moduleUri) : null; if(moduleFile == null) { //IStatus errorStatus = MiscUtil.makeErrorStatus( // NLS.bind(Messages.QvtLaunchConfigurationDelegate_transformationFileNotFound, moduleFileName)); @@ -70,9 +70,9 @@ public abstract class QvtLaunchConfigurationDelegateBase extends LaunchConfigura public static IStatus validate(QvtTransformation transformation, ILaunchConfiguration configuration) throws CoreException { List<TargetUriData> targetUris = QvtLaunchUtil.getTargetUris(configuration); - String traceFile = configuration.getAttribute(IQvtLaunchConstants.TRACE_FILE, ""); //$NON-NLS-1$ - boolean useTraceFile = configuration.getAttribute(IQvtLaunchConstants.USE_TRACE_FILE, false); - boolean isIncrementalUpdate = configuration.getAttribute(IQvtLaunchConstants.IS_INCREMENTAL_UPDATE, false); + String traceFile = QvtLaunchUtil.getTraceFileURI(configuration); + boolean useTraceFile = QvtLaunchUtil.shouldGenerateTraceFile(configuration); + boolean isIncrementalUpdate = QvtLaunchUtil.isIncrementalUpdate(configuration); try { return QvtValidator.validateTransformation(transformation, targetUris, traceFile, useTraceFile, diff --git a/plugins/org.eclipse.m2m.qvt.oml.runtime/src/org/eclipse/m2m/internal/qvt/oml/runtime/launch/QvtLaunchUtil.java b/plugins/org.eclipse.m2m.qvt.oml.runtime/src/org/eclipse/m2m/internal/qvt/oml/runtime/launch/QvtLaunchUtil.java index cb88978af..91ce1998a 100644 --- a/plugins/org.eclipse.m2m.qvt.oml.runtime/src/org/eclipse/m2m/internal/qvt/oml/runtime/launch/QvtLaunchUtil.java +++ b/plugins/org.eclipse.m2m.qvt.oml.runtime/src/org/eclipse/m2m/internal/qvt/oml/runtime/launch/QvtLaunchUtil.java @@ -38,6 +38,7 @@ import org.eclipse.m2m.internal.qvt.oml.common.MdaException; import org.eclipse.m2m.internal.qvt.oml.common.launch.IQvtLaunchConstants; import org.eclipse.m2m.internal.qvt.oml.common.launch.TargetUriData; import org.eclipse.m2m.internal.qvt.oml.common.launch.TargetUriData.TargetType; +import org.eclipse.m2m.internal.qvt.oml.emf.util.EmfUtil; import org.eclipse.m2m.internal.qvt.oml.emf.util.ModelContent; import org.eclipse.m2m.internal.qvt.oml.evaluator.QvtRuntimeException; import org.eclipse.m2m.internal.qvt.oml.runtime.QvtRuntimePlugin; @@ -206,11 +207,8 @@ public class QvtLaunchUtil { paramUris.add(data.getUri()); } - boolean saveTrace = configuration.getAttribute(IQvtLaunchConstants.USE_TRACE_FILE, false); - String traceFile = configuration.getAttribute(IQvtLaunchConstants.TRACE_FILE, ""); //$NON-NLS-1$ - boolean isIncrementalUpdate = configuration.getAttribute(IQvtLaunchConstants.IS_INCREMENTAL_UPDATE, false); - - doLaunch(transformation, paramUris, saveTrace ? toUri(traceFile) : null, context, isIncrementalUpdate); + String traceFile = getTraceFileURI(configuration); + doLaunch(transformation, paramUris, toUri(traceFile), context, shouldGenerateTraceFile(configuration), isIncrementalUpdate(configuration)); } @Deprecated @@ -248,13 +246,14 @@ public class QvtLaunchUtil { outConsole.add(consoleLogger.getBuffer().toString()); } - public static void doLaunch(final QvtTransformation transf, List<URI> paramUris, URI traceUri, ExecutionContext context, boolean isIncrementalUpdate) throws MdaException { + public static void doLaunch(final QvtTransformation transf, List<URI> paramUris, URI traceUri, ExecutionContext context, + boolean isSaveTrace, boolean isIncrementalUpdate) throws MdaException { TransformationRunner runner = new QvtTransformationRunner(transf, paramUris); - runner.setSaveTrace(traceUri != null); runner.setTraceFile(traceUri); - runner.setIncrementalUpdate(isIncrementalUpdate); + runner.setSaveTrace(isSaveTrace && traceUri != null); + runner.setIncrementalUpdate(isIncrementalUpdate && transf.getResourceSet().getURIConverter().exists(traceUri, Collections.emptyMap())); Diagnostic diag = runner.execute(context); @@ -274,7 +273,7 @@ public class QvtLaunchUtil { } private static URI toUri(String uriString) throws MdaException { - URI uri = URI.createURI(uriString); + URI uri = EmfUtil.makeUri(uriString); if(uri == null) { throw new MdaException(NLS.bind(Messages.QvtValidator_InvalidUri, uriString)); } diff --git a/plugins/org.eclipse.m2m.qvt.oml.runtime/src/org/eclipse/m2m/internal/qvt/oml/runtime/project/WorkspaceQvtModule.java b/plugins/org.eclipse.m2m.qvt.oml.runtime/src/org/eclipse/m2m/internal/qvt/oml/runtime/project/WorkspaceQvtModule.java index 206bad9bd..9affe917f 100644 --- a/plugins/org.eclipse.m2m.qvt.oml.runtime/src/org/eclipse/m2m/internal/qvt/oml/runtime/project/WorkspaceQvtModule.java +++ b/plugins/org.eclipse.m2m.qvt.oml.runtime/src/org/eclipse/m2m/internal/qvt/oml/runtime/project/WorkspaceQvtModule.java @@ -86,7 +86,7 @@ public class WorkspaceQvtModule extends QvtModule { } private final IFile myTransformationFile; - private Module myModule; + private volatile Module myModule; private CompiledUnit myUnit; private ResourceSet myResourceSet; } |