From ad91082694f9344ae3020e16cf9351e48b751b0b Mon Sep 17 00:00:00 2001 From: Peter Donald Date: Sun, 27 Jan 2002 02:32:05 +0000 Subject: [PATCH] Made Execute2 only take Commandlin objects rather than an arrya of strings git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@270932 13f79535-47bb-0310-9956-ffa450edef68 --- .../java/org/apache/antlib/cvslib/Cvs.java | 2 +- .../org/apache/antlib/nativelib/Exec.java | 2 +- .../apache/antlib/security/GenerateKey.java | 2 +- .../org/apache/antlib/security/SignJar.java | 2 +- .../org/apache/tools/ant/taskdefs/Java.java | 8 ++-- .../org/apache/tools/ant/taskdefs/Patch.java | 2 +- .../compilers/DefaultCompilerAdapter.java | 3 +- .../tools/ant/taskdefs/exec/Execute2.java | 16 ++++---- .../tools/ant/taskdefs/javadoc/Javadoc.java | 2 +- .../tools/ant/taskdefs/optional/ANTLR.java | 5 ++- .../tools/ant/taskdefs/optional/Cab.java | 2 +- .../ant/taskdefs/optional/ccm/Continuus.java | 2 +- .../optional/clearcase/ClearCase.java | 2 +- .../taskdefs/optional/dotnet/NetCommand.java | 2 +- .../optional/ejb/BorlandDeploymentTool.java | 2 +- .../optional/ejb/BorlandGenerateClient.java | 2 +- .../ant/taskdefs/optional/javacc/JJTree.java | 3 +- .../ant/taskdefs/optional/javacc/JavaCC.java | 14 ++++--- .../optional/jdepend/JDependTask.java | 4 +- .../taskdefs/optional/junit/JUnitTask.java | 3 +- .../metamata/AbstractMetamataTask.java | 4 +- .../taskdefs/optional/metamata/MParse.java | 17 +++------ .../taskdefs/optional/perforce/P4Base.java | 2 +- .../ant/taskdefs/optional/pvcs/Pvcs.java | 4 +- .../taskdefs/optional/sitraka/CovMerge.java | 2 +- .../taskdefs/optional/sitraka/CovReport.java | 2 +- .../taskdefs/optional/sitraka/Coverage.java | 2 +- .../ant/taskdefs/optional/vss/MSVSS.java | 2 +- .../apache/tools/ant/taskdefs/unix/Rpm.java | 2 +- .../apache/tools/ant/types/Commandline.java | 37 +++++++++++-------- .../org/apache/tools/ant/taskdefs/Java.java | 8 ++-- .../org/apache/tools/ant/taskdefs/Patch.java | 2 +- .../compilers/DefaultCompilerAdapter.java | 3 +- .../tools/ant/taskdefs/exec/Execute2.java | 16 ++++---- .../tools/ant/taskdefs/javadoc/Javadoc.java | 2 +- .../tools/ant/taskdefs/optional/ANTLR.java | 5 ++- .../tools/ant/taskdefs/optional/Cab.java | 2 +- .../ant/taskdefs/optional/ccm/Continuus.java | 2 +- .../optional/clearcase/ClearCase.java | 2 +- .../taskdefs/optional/dotnet/NetCommand.java | 2 +- .../optional/ejb/BorlandDeploymentTool.java | 2 +- .../optional/ejb/BorlandGenerateClient.java | 2 +- .../ant/taskdefs/optional/javacc/JJTree.java | 3 +- .../ant/taskdefs/optional/javacc/JavaCC.java | 14 ++++--- .../optional/jdepend/JDependTask.java | 4 +- .../taskdefs/optional/junit/JUnitTask.java | 3 +- .../metamata/AbstractMetamataTask.java | 4 +- .../taskdefs/optional/metamata/MParse.java | 17 +++------ .../taskdefs/optional/perforce/P4Base.java | 2 +- .../ant/taskdefs/optional/pvcs/Pvcs.java | 4 +- .../taskdefs/optional/sitraka/CovMerge.java | 2 +- .../taskdefs/optional/sitraka/CovReport.java | 2 +- .../taskdefs/optional/sitraka/Coverage.java | 2 +- .../ant/taskdefs/optional/vss/MSVSS.java | 2 +- .../apache/tools/ant/taskdefs/unix/Rpm.java | 2 +- .../apache/tools/ant/types/Commandline.java | 37 +++++++++++-------- 56 files changed, 156 insertions(+), 144 deletions(-) diff --git a/proposal/myrmidon/src/java/org/apache/antlib/cvslib/Cvs.java b/proposal/myrmidon/src/java/org/apache/antlib/cvslib/Cvs.java index f5ece5f66..e9dc8b94e 100644 --- a/proposal/myrmidon/src/java/org/apache/antlib/cvslib/Cvs.java +++ b/proposal/myrmidon/src/java/org/apache/antlib/cvslib/Cvs.java @@ -153,7 +153,7 @@ public class Cvs } exe.setWorkingDirectory( m_dest ); - exe.setCommandline( command.getCommandline() ); + exe.setCommandline( command ); exe.setEnvironment( env ); try { diff --git a/proposal/myrmidon/src/java/org/apache/antlib/nativelib/Exec.java b/proposal/myrmidon/src/java/org/apache/antlib/nativelib/Exec.java index 188938bee..00c8db960 100644 --- a/proposal/myrmidon/src/java/org/apache/antlib/nativelib/Exec.java +++ b/proposal/myrmidon/src/java/org/apache/antlib/nativelib/Exec.java @@ -176,7 +176,7 @@ public class Exec exe.setWorkingDirectory( m_dir ); exe.setNewenvironment( m_newEnvironment ); exe.setEnvironment( environment ); - exe.setCommandline( m_command.getCommandline() ); + exe.setCommandline( m_command ); return exe; } diff --git a/proposal/myrmidon/src/java/org/apache/antlib/security/GenerateKey.java b/proposal/myrmidon/src/java/org/apache/antlib/security/GenerateKey.java index bf6d28f4d..f2a5e8c1c 100644 --- a/proposal/myrmidon/src/java/org/apache/antlib/security/GenerateKey.java +++ b/proposal/myrmidon/src/java/org/apache/antlib/security/GenerateKey.java @@ -121,7 +121,7 @@ public class GenerateKey final Commandline cmd = createCommand(); final Execute2 exe = new Execute2(); exe.setWorkingDirectory( getBaseDirectory() ); - exe.setCommandline( cmd.getCommandline() ); + exe.setCommandline( cmd ); try { exe.execute(); diff --git a/proposal/myrmidon/src/java/org/apache/antlib/security/SignJar.java b/proposal/myrmidon/src/java/org/apache/antlib/security/SignJar.java index 84c560c0a..f4d68f020 100644 --- a/proposal/myrmidon/src/java/org/apache/antlib/security/SignJar.java +++ b/proposal/myrmidon/src/java/org/apache/antlib/security/SignJar.java @@ -295,7 +295,7 @@ public class SignJar final Commandline cmd = buildCommand( jarTarget, jarSource ); final Execute2 exe = new Execute2(); setupLogger( exe ); - exe.setCommandline( cmd.getCommandline() ); + exe.setCommandline( cmd ); try { exe.execute(); diff --git a/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/Java.java b/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/Java.java index 2b88decdd..ee8b25a43 100644 --- a/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/Java.java +++ b/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/Java.java @@ -11,11 +11,11 @@ import java.io.File; import java.io.IOException; import java.io.PrintStream; import java.util.ArrayList; -import org.apache.myrmidon.api.TaskException; import org.apache.myrmidon.api.AbstractTask; - +import org.apache.myrmidon.api.TaskException; import org.apache.tools.ant.taskdefs.exec.Execute2; import org.apache.tools.ant.types.Argument; +import org.apache.tools.ant.types.Commandline; import org.apache.tools.ant.types.CommandlineJava; import org.apache.tools.ant.types.EnvironmentVariable; import org.apache.tools.ant.types.Path; @@ -159,7 +159,7 @@ public class Java { getLogger().debug( "Forking " + m_cmdl.toString() ); - return run( m_cmdl.getCommandline() ); + return run( new Commandline( m_cmdl.getCommandline() ) ); } else { @@ -214,7 +214,7 @@ public class Java /** * Executes the given classname with the given arguments in a separate VM. */ - private int run( final String[] command ) + private int run( final Commandline command ) throws TaskException { final Execute2 exe = new Execute2(); diff --git a/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/Patch.java b/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/Patch.java index b9b863541..02ad35f04 100644 --- a/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/Patch.java +++ b/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/Patch.java @@ -113,7 +113,7 @@ public class Patch setupLogger( exe ); final Commandline cmd = buildCommand(); - exe.setCommandline( cmd.getCommandline() ); + exe.setCommandline( cmd ); try { diff --git a/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/compilers/DefaultCompilerAdapter.java b/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/compilers/DefaultCompilerAdapter.java index ab6fb2597..37489efd4 100644 --- a/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/compilers/DefaultCompilerAdapter.java +++ b/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/compilers/DefaultCompilerAdapter.java @@ -363,7 +363,8 @@ public abstract class DefaultCompilerAdapter final Execute2 exe = new Execute2(); setupLogger( exe ); exe.setWorkingDirectory( m_baseDir ); - exe.setCommandline( commandArray ); + final String[] commandline = commandArray; + exe.setCommandline( new Commandline( commandline ) ); return exe.execute(); } catch( IOException e ) diff --git a/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/exec/Execute2.java b/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/exec/Execute2.java index 6ae62eb94..1be5491c1 100644 --- a/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/exec/Execute2.java +++ b/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/exec/Execute2.java @@ -19,6 +19,7 @@ import org.apache.avalon.framework.logger.AbstractLogEnabled; import org.apache.myrmidon.api.TaskException; import org.apache.myrmidon.framework.factorys.ExecManagerFactory; import org.apache.myrmidon.services.ServiceException; +import org.apache.tools.ant.types.Commandline; /** * Runs an external program. @@ -28,18 +29,13 @@ import org.apache.myrmidon.services.ServiceException; public class Execute2 extends AbstractLogEnabled { - private String[] m_command; + private Commandline m_command; private Properties m_environment = new Properties(); private File m_workingDirectory = new File( "." ); private boolean m_newEnvironment; private ExecOutputHandler m_handler; private long m_timeout; - /** - * Controls whether the VM is used to launch commands, where possible - */ - private boolean m_useVMLauncher = true; - public void setTimeout( final long timeout ) { m_timeout = timeout; @@ -55,9 +51,9 @@ public class Execute2 * * @param commandline the commandline of the subprocess to launch */ - public void setCommandline( final String[] commandline ) + public void setCommandline( final Commandline command ) { - m_command = commandline; + m_command = command; } public void setEnvironment( final Properties environment ) @@ -109,8 +105,10 @@ public class Execute2 final ExecManagerFactory factory = new ExecManagerFactory(); final ExecManager manager = (ExecManager)factory.createService(); + final String[] command = m_command.getCommandline(); + final ExecMetaData metaData = - new ExecMetaData( m_command, m_environment, + new ExecMetaData( command, m_environment, m_workingDirectory, m_newEnvironment ); return manager.execute( metaData, m_handler, m_timeout ); diff --git a/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/javadoc/Javadoc.java b/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/javadoc/Javadoc.java index c067ac170..52bd90716 100644 --- a/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/javadoc/Javadoc.java +++ b/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/javadoc/Javadoc.java @@ -824,7 +824,7 @@ public class Javadoc exe.setWorkingDirectory( null ); try { - exe.setCommandline( cmd.getCommandline() ); + exe.setCommandline( cmd ); final int ret = exe.execute(); if( ret != 0 ) { diff --git a/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/optional/ANTLR.java b/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/optional/ANTLR.java index da8b2f3af..9b3320f56 100644 --- a/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/optional/ANTLR.java +++ b/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/optional/ANTLR.java @@ -19,6 +19,7 @@ import org.apache.tools.ant.taskdefs.exec.Execute2; import org.apache.tools.ant.types.Argument; import org.apache.tools.ant.types.CommandlineJava; import org.apache.tools.ant.types.Path; +import org.apache.tools.ant.types.Commandline; /** * ANTLR task. @@ -129,7 +130,7 @@ public class ANTLR extends Task if( fork ) { getLogger().debug( "Forking " + commandline.toString() ); - int err = run( commandline.getCommandline() ); + int err = run( commandline ); if( err == 1 ) { throw new TaskException( "ANTLR returned: " + err ); @@ -222,7 +223,7 @@ public class ANTLR extends Task * @return Description of the Returned Value * @exception TaskException Description of Exception */ - private int run( String[] command ) + private int run( final Commandline command ) throws TaskException { final Execute2 exe = new Execute2(); diff --git a/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/optional/Cab.java b/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/optional/Cab.java index f190ee4e6..3e3e9d069 100644 --- a/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/optional/Cab.java +++ b/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/optional/Cab.java @@ -138,7 +138,7 @@ public class Cab setupLogger( exe ); exe.setWorkingDirectory( m_baseDir ); final Commandline cmd = createCommand( listFile ); - exe.setCommandline( cmd.getCommandline() ); + exe.setCommandline( cmd ); exe.execute(); listFile.delete(); diff --git a/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/optional/ccm/Continuus.java b/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/optional/ccm/Continuus.java index 7d82fb710..f47603c61 100644 --- a/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/optional/ccm/Continuus.java +++ b/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/optional/ccm/Continuus.java @@ -118,7 +118,7 @@ public abstract class Continuus exe.setExecOutputHandler( handler ); } exe.setWorkingDirectory( getBaseDirectory() ); - exe.setCommandline( cmd.getCommandline() ); + exe.setCommandline( cmd ); return exe.execute(); } catch( final IOException ioe ) diff --git a/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/optional/clearcase/ClearCase.java b/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/optional/clearcase/ClearCase.java index 4efe039c4..16dd1273e 100644 --- a/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/optional/clearcase/ClearCase.java +++ b/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/optional/clearcase/ClearCase.java @@ -110,7 +110,7 @@ public abstract class ClearCase extends Task final Execute2 exe = new Execute2(); setupLogger( exe ); exe.setWorkingDirectory( getBaseDirectory() ); - exe.setCommandline( cmd.getCommandline() ); + exe.setCommandline( cmd ); return exe.execute(); } catch( IOException e ) diff --git a/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/optional/dotnet/NetCommand.java b/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/optional/dotnet/NetCommand.java index e96c6eb68..9720bc71c 100644 --- a/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/optional/dotnet/NetCommand.java +++ b/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/optional/dotnet/NetCommand.java @@ -151,7 +151,7 @@ public class NetCommand //in verbose mode we always log stuff logVerbose( _commandLine.toString() ); } - _exe.setCommandline( _commandLine.getCommandline() ); + _exe.setCommandline( _commandLine ); err = _exe.execute(); if( err != 0 ) { diff --git a/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/optional/ejb/BorlandDeploymentTool.java b/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/optional/ejb/BorlandDeploymentTool.java index bf1f17ae4..d0a9c2e4c 100644 --- a/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/optional/ejb/BorlandDeploymentTool.java +++ b/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/optional/ejb/BorlandDeploymentTool.java @@ -365,7 +365,7 @@ public class BorlandDeploymentTool exe.setWorkingDirectory( getTask().getBaseDirectory() ); final Commandline cmd = buildCommandline( ithomes ); - exe.setCommandline( cmd.getCommandline() ); + exe.setCommandline( cmd ); getLogger().debug( "Calling java2iiop" ); getLogger().debug( cmd.toString() ); diff --git a/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/optional/ejb/BorlandGenerateClient.java b/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/optional/ejb/BorlandGenerateClient.java index 61149e6f3..87a2a70c2 100644 --- a/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/optional/ejb/BorlandGenerateClient.java +++ b/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/optional/ejb/BorlandGenerateClient.java @@ -163,7 +163,7 @@ public class BorlandGenerateClient extends Task final Execute2 exe = new Execute2(); setupLogger( exe ); exe.setWorkingDirectory( new File( "." ) ); - exe.setCommandline( cmd.getCommandline() ); + exe.setCommandline( cmd ); exe.execute(); } catch( Exception e ) diff --git a/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/optional/javacc/JJTree.java b/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/optional/javacc/JJTree.java index f300241ee..9bf1742aa 100644 --- a/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/optional/javacc/JJTree.java +++ b/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/optional/javacc/JJTree.java @@ -18,6 +18,7 @@ import org.apache.tools.ant.taskdefs.exec.Execute2; import org.apache.tools.ant.types.CommandlineJava; import org.apache.tools.ant.types.Path; import org.apache.tools.ant.types.PathUtil; +import org.apache.tools.ant.types.Commandline; /** * Taskdef for the JJTree compiler compiler. @@ -184,7 +185,7 @@ public class JJTree extends Task setupLogger( exe ); getLogger().debug( cmdl.toString() ); - exe.setCommandline( cmdl.getCommandline() ); + exe.setCommandline( new Commandline( cmdl.getCommandline() ) ); try { diff --git a/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/optional/javacc/JavaCC.java b/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/optional/javacc/JavaCC.java index 182a57fd8..c11004a27 100644 --- a/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/optional/javacc/JavaCC.java +++ b/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/optional/javacc/JavaCC.java @@ -19,6 +19,7 @@ import org.apache.tools.ant.taskdefs.exec.Execute2; import org.apache.tools.ant.types.CommandlineJava; import org.apache.tools.ant.types.Path; import org.apache.tools.ant.types.PathUtil; +import org.apache.tools.ant.types.Commandline; import org.apache.avalon.excalibur.util.StringUtil; /** @@ -234,27 +235,28 @@ public class JavaCC extends Task cmdl.addVmArgument( "-mx140M" ); cmdl.addVmArgument( "-Dinstall.root=" + javaccHome.getAbsolutePath() ); - runCommand( cmdl.getCommandline() ); + runCommand( cmdl ); } - private void runCommand( final String[] cmdline ) + private void runCommand( final CommandlineJava cmdline ) throws TaskException { try { - getLogger().debug( StringUtil.join( cmdline, " " ) ); + getLogger().debug( cmdline.toString() ); final Execute2 exe = new Execute2(); setupLogger( exe ); - exe.setCommandline( cmdline ); + final String[] commandline = cmdline.getCommandline(); + exe.setCommandline( new Commandline( commandline ) ); int retval = exe.execute(); if( retval != 0 ) { - throw new TaskException( cmdline[ 0 ] + " failed with return code " + retval ); + throw new TaskException( cmdline + " failed with return code " + retval ); } } catch( final IOException ioe ) { - throw new TaskException( "Could not launch " + cmdline[ 0 ] + ": " + ioe ); + throw new TaskException( "Could not launch " + cmdline + ": " + ioe ); } } diff --git a/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/optional/jdepend/JDependTask.java b/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/optional/jdepend/JDependTask.java index 3f7c982a2..443c35739 100644 --- a/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/optional/jdepend/JDependTask.java +++ b/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/optional/jdepend/JDependTask.java @@ -17,6 +17,7 @@ import org.apache.tools.ant.taskdefs.exec.Execute2; import org.apache.tools.ant.types.CommandlineJava; import org.apache.tools.ant.types.Path; +import org.apache.tools.ant.types.Commandline; import org.apache.tools.ant.util.FileUtils; /** @@ -241,7 +242,8 @@ public class JDependTask final Execute2 exe = new Execute2(); setupLogger( exe ); - exe.setCommandline( commandline.getCommandline() ); + final String[] commandline1 = commandline.getCommandline(); + exe.setCommandline( new Commandline( commandline1 ) ); if( m_dir != null ) { exe.setWorkingDirectory( m_dir ); diff --git a/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/optional/junit/JUnitTask.java b/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/optional/junit/JUnitTask.java index 5f885a93f..fc4e3fa99 100644 --- a/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/optional/junit/JUnitTask.java +++ b/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/optional/junit/JUnitTask.java @@ -30,6 +30,7 @@ import org.apache.tools.ant.types.EnvironmentVariable; import org.apache.tools.ant.types.Path; import org.apache.tools.ant.types.SysProperties; import org.apache.tools.ant.types.PathUtil; +import org.apache.tools.ant.types.Commandline; /** * Ant task to run JUnit tests.

@@ -647,7 +648,7 @@ public class JUnitTask extends Task final Execute2 exe = new Execute2(); setupLogger( exe ); - exe.setCommandline( cmd.getCommandline() ); + exe.setCommandline( new Commandline( cmd.getCommandline() ) ); if( dir != null ) { exe.setWorkingDirectory( dir ); diff --git a/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/optional/metamata/AbstractMetamataTask.java b/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/optional/metamata/AbstractMetamataTask.java index f4bdd6946..366cd6914 100644 --- a/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/optional/metamata/AbstractMetamataTask.java +++ b/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/optional/metamata/AbstractMetamataTask.java @@ -24,6 +24,7 @@ import org.apache.tools.ant.types.CommandlineJava; import org.apache.tools.ant.types.FileSet; import org.apache.tools.ant.types.Path; import org.apache.tools.ant.types.ScannerUtil; +import org.apache.tools.ant.types.Commandline; /** * Somewhat abstract framework to be used for other metama 2.0 tasks. This @@ -280,7 +281,8 @@ public abstract class AbstractMetamataTask final Execute2 exe = new Execute2(); setupLogger( exe ); getLogger().debug( m_cmdl.toString() ); - exe.setCommandline( m_cmdl.getCommandline() ); + final String[] commandline = m_cmdl.getCommandline(); + exe.setCommandline( new Commandline( commandline ) ); try { if( 0 != exe.execute() ) diff --git a/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/optional/metamata/MParse.java b/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/optional/metamata/MParse.java index 33f095fb1..49585065f 100644 --- a/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/optional/metamata/MParse.java +++ b/proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/optional/metamata/MParse.java @@ -19,6 +19,8 @@ import org.apache.tools.ant.taskdefs.exec.Execute2; import org.apache.tools.ant.types.Argument; import org.apache.tools.ant.types.CommandlineJava; import org.apache.tools.ant.types.Path; +import org.apache.tools.ant.types.Commandline; +import org.apache.avalon.excalibur.io.IOUtil; /** * Simple Metamata MParse task based on the original written by @@ -647,7 +648,7 @@ public class JUnitTask extends Task final Execute2 exe = new Execute2(); setupLogger( exe ); - exe.setCommandline( cmd.getCommandline() ); + exe.setCommandline( new Commandline( cmd.getCommandline() ) ); if( dir != null ) { exe.setWorkingDirectory( dir ); diff --git a/proposal/myrmidon/src/todo/org/apache/tools/ant/taskdefs/optional/metamata/AbstractMetamataTask.java b/proposal/myrmidon/src/todo/org/apache/tools/ant/taskdefs/optional/metamata/AbstractMetamataTask.java index f4bdd6946..366cd6914 100644 --- a/proposal/myrmidon/src/todo/org/apache/tools/ant/taskdefs/optional/metamata/AbstractMetamataTask.java +++ b/proposal/myrmidon/src/todo/org/apache/tools/ant/taskdefs/optional/metamata/AbstractMetamataTask.java @@ -24,6 +24,7 @@ import org.apache.tools.ant.types.CommandlineJava; import org.apache.tools.ant.types.FileSet; import org.apache.tools.ant.types.Path; import org.apache.tools.ant.types.ScannerUtil; +import org.apache.tools.ant.types.Commandline; /** * Somewhat abstract framework to be used for other metama 2.0 tasks. This @@ -280,7 +281,8 @@ public abstract class AbstractMetamataTask final Execute2 exe = new Execute2(); setupLogger( exe ); getLogger().debug( m_cmdl.toString() ); - exe.setCommandline( m_cmdl.getCommandline() ); + final String[] commandline = m_cmdl.getCommandline(); + exe.setCommandline( new Commandline( commandline ) ); try { if( 0 != exe.execute() ) diff --git a/proposal/myrmidon/src/todo/org/apache/tools/ant/taskdefs/optional/metamata/MParse.java b/proposal/myrmidon/src/todo/org/apache/tools/ant/taskdefs/optional/metamata/MParse.java index 33f095fb1..49585065f 100644 --- a/proposal/myrmidon/src/todo/org/apache/tools/ant/taskdefs/optional/metamata/MParse.java +++ b/proposal/myrmidon/src/todo/org/apache/tools/ant/taskdefs/optional/metamata/MParse.java @@ -19,6 +19,8 @@ import org.apache.tools.ant.taskdefs.exec.Execute2; import org.apache.tools.ant.types.Argument; import org.apache.tools.ant.types.CommandlineJava; import org.apache.tools.ant.types.Path; +import org.apache.tools.ant.types.Commandline; +import org.apache.avalon.excalibur.io.IOUtil; /** * Simple Metamata MParse task based on the original written by