Missing code
diff --git a/bundles/org.eclipse.wst.xsl.launching/src/org/eclipse/wst/xsl/launching/XSLLaunchConfigurationConstants.java b/bundles/org.eclipse.wst.xsl.launching/src/org/eclipse/wst/xsl/launching/XSLLaunchConfigurationConstants.java
index 3c4904d..1c226a4 100644
--- a/bundles/org.eclipse.wst.xsl.launching/src/org/eclipse/wst/xsl/launching/XSLLaunchConfigurationConstants.java
+++ b/bundles/org.eclipse.wst.xsl.launching/src/org/eclipse/wst/xsl/launching/XSLLaunchConfigurationConstants.java
@@ -34,4 +34,8 @@
* @since 1.0
*/
public static final String ATTR_FORMAT_FILE = LaunchingPlugin.PLUGIN_ID + ".ATTR_FORMAT_FILE"; //$NON-NLS-1$
+ /**
+ * @since 1.0
+ */
+ public static final String ATTR_WORKING_DIR = LaunchingPlugin.PLUGIN_ID + ".ATTR_WORKING_DIR"; //$NON-NLS-1$;
}
diff --git a/bundles/org.eclipse.wst.xsl.launching/src/org/eclipse/wst/xsl/launching/config/BaseLaunchHelper.java b/bundles/org.eclipse.wst.xsl.launching/src/org/eclipse/wst/xsl/launching/config/BaseLaunchHelper.java
index e8ab855..c8b8f79 100644
--- a/bundles/org.eclipse.wst.xsl.launching/src/org/eclipse/wst/xsl/launching/config/BaseLaunchHelper.java
+++ b/bundles/org.eclipse.wst.xsl.launching/src/org/eclipse/wst/xsl/launching/config/BaseLaunchHelper.java
@@ -41,9 +41,11 @@
private int generatePort = -1;
private final boolean openFileOnCompletion;
private final boolean formatFileOnCompletion;
+ private final IPath workingDir;
public BaseLaunchHelper(ILaunchConfiguration configuration) throws CoreException
{
+ workingDir = hydrateWorkingDir(configuration);
source = hydrateSourceFileURL(configuration);
target = hydrateOutputFile(configuration);
pipeline = hydratePipeline(configuration);
@@ -86,6 +88,11 @@
{
return target;
}
+
+ public IPath getWorkingDir()
+ {
+ return workingDir;
+ }
private static LaunchPipeline hydratePipeline(ILaunchConfiguration configuration) throws CoreException
{
@@ -105,6 +112,12 @@
return pathToURL(sourceFile);
}
+ private static IPath hydrateWorkingDir(ILaunchConfiguration configuration) throws CoreException
+ {
+ String expr = configuration.getAttribute(XSLLaunchConfigurationConstants.ATTR_WORKING_DIR, (String) null);
+ return getSubstitutedPath(expr);
+ }
+
private static IPath hydrateSourceFile(ILaunchConfiguration configuration) throws CoreException
{
String sourceFileExpr = configuration.getAttribute(XSLLaunchConfigurationConstants.ATTR_INPUT_FILE, (String) null);