Made some tasks specify expected return code rather than checkin it themselves. git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@271266 13f79535-47bb-0310-9956-ffa450edef68master
@@ -8,7 +8,6 @@ | |||||
package org.apache.antlib.build; | package org.apache.antlib.build; | ||||
import java.io.File; | import java.io.File; | ||||
import java.io.IOException; | |||||
import org.apache.aut.nativelib.ExecManager; | import org.apache.aut.nativelib.ExecManager; | ||||
import org.apache.myrmidon.api.AbstractTask; | import org.apache.myrmidon.api.AbstractTask; | ||||
import org.apache.myrmidon.api.TaskException; | import org.apache.myrmidon.api.TaskException; | ||||
@@ -102,17 +101,8 @@ public class Patch | |||||
final ExecManager execManager = (ExecManager)getService( ExecManager.class ); | final ExecManager execManager = (ExecManager)getService( ExecManager.class ); | ||||
final Execute exe = new Execute( execManager ); | final Execute exe = new Execute( execManager ); | ||||
buildCommand( exe.getCommandline() ); | buildCommand( exe.getCommandline() ); | ||||
try | |||||
{ | |||||
exe.execute(); | |||||
} | |||||
catch( IOException e ) | |||||
{ | |||||
throw new TaskException( "Error", e ); | |||||
} | |||||
exe.execute(); | |||||
} | } | ||||
private void validate() | private void validate() | ||||
@@ -8,7 +8,6 @@ | |||||
package org.apache.antlib.cvslib; | package org.apache.antlib.cvslib; | ||||
import java.io.File; | import java.io.File; | ||||
import java.io.IOException; | |||||
import java.util.Properties; | import java.util.Properties; | ||||
import org.apache.aut.nativelib.ExecManager; | import org.apache.aut.nativelib.ExecManager; | ||||
import org.apache.myrmidon.api.AbstractTask; | import org.apache.myrmidon.api.AbstractTask; | ||||
@@ -158,19 +157,8 @@ public class Cvs | |||||
exe.setCommandline( command ); | exe.setCommandline( command ); | ||||
exe.setEnvironment( env ); | exe.setEnvironment( env ); | ||||
try | |||||
{ | |||||
final int retCode = exe.execute(); | |||||
if( retCode != 0 ) | |||||
{ | |||||
//replace with an ExecuteException(message,code); | |||||
throw new TaskException( "cvs exited with error code " + retCode ); | |||||
} | |||||
} | |||||
catch( IOException e ) | |||||
{ | |||||
throw new TaskException( e.toString(), e ); | |||||
} | |||||
exe.setReturnCode( 0 ); | |||||
exe.execute(); | |||||
} | } | ||||
private Properties buildEnvironment() | private Properties buildEnvironment() | ||||
@@ -8,7 +8,6 @@ | |||||
package org.apache.antlib.nativelib; | package org.apache.antlib.nativelib; | ||||
import java.io.File; | import java.io.File; | ||||
import java.io.IOException; | |||||
import java.util.Properties; | import java.util.Properties; | ||||
import org.apache.aut.nativelib.ExecManager; | import org.apache.aut.nativelib.ExecManager; | ||||
import org.apache.aut.nativelib.Os; | import org.apache.aut.nativelib.Os; | ||||
@@ -119,21 +118,8 @@ public class Exec | |||||
private void doExecute( final Execute exe ) | private void doExecute( final Execute exe ) | ||||
throws TaskException | throws TaskException | ||||
{ | { | ||||
try | |||||
{ | |||||
final int err = exe.execute(); | |||||
if( 0 != err ) | |||||
{ | |||||
final String message = | |||||
REZ.getString( "exec.bad-resultcode.error", new Integer( err ) ); | |||||
throw new TaskException( message ); | |||||
} | |||||
} | |||||
catch( final IOException ioe ) | |||||
{ | |||||
final String message = REZ.getString( "exec.failed.error", ioe ); | |||||
throw new TaskException( message, ioe ); | |||||
} | |||||
exe.setReturnCode( 0 ); | |||||
exe.execute(); | |||||
} | } | ||||
private void validate() | private void validate() | ||||
@@ -7,7 +7,6 @@ | |||||
*/ | */ | ||||
package org.apache.antlib.security; | package org.apache.antlib.security; | ||||
import java.io.IOException; | |||||
import org.apache.aut.nativelib.ExecManager; | import org.apache.aut.nativelib.ExecManager; | ||||
import org.apache.myrmidon.api.AbstractTask; | import org.apache.myrmidon.api.AbstractTask; | ||||
import org.apache.myrmidon.api.TaskException; | import org.apache.myrmidon.api.TaskException; | ||||
@@ -125,14 +124,7 @@ public class GenerateKey | |||||
final Execute exe = new Execute( execManager ); | final Execute exe = new Execute( execManager ); | ||||
exe.setWorkingDirectory( getBaseDirectory() ); | exe.setWorkingDirectory( getBaseDirectory() ); | ||||
exe.setCommandline( cmd ); | exe.setCommandline( cmd ); | ||||
try | |||||
{ | |||||
exe.execute(); | |||||
} | |||||
catch( final IOException ioe ) | |||||
{ | |||||
throw new TaskException( ioe.getMessage(), ioe ); | |||||
} | |||||
exe.execute(); | |||||
} | } | ||||
private Commandline createCommand() | private Commandline createCommand() | ||||
@@ -298,14 +298,7 @@ public class SignJar | |||||
final ExecManager execManager = (ExecManager)getService( ExecManager.class ); | final ExecManager execManager = (ExecManager)getService( ExecManager.class ); | ||||
final Execute exe = new Execute( execManager ); | final Execute exe = new Execute( execManager ); | ||||
exe.setCommandline( cmd ); | exe.setCommandline( cmd ); | ||||
try | |||||
{ | |||||
exe.execute(); | |||||
} | |||||
catch( final IOException ioe ) | |||||
{ | |||||
throw new TaskException( ioe.getMessage(), ioe ); | |||||
} | |||||
exe.execute(); | |||||
} | } | ||||
private Commandline buildCommand( final File jarTarget, final File jarSource ) | private Commandline buildCommand( final File jarTarget, final File jarSource ) | ||||
@@ -110,20 +110,31 @@ public class Execute | |||||
* @return the exit status of the subprocess or <code>INVALID</code> | * @return the exit status of the subprocess or <code>INVALID</code> | ||||
*/ | */ | ||||
public int execute() | public int execute() | ||||
throws IOException, TaskException | |||||
throws TaskException | |||||
{ | { | ||||
final int returnCode = executenativeProcess(); | |||||
final int returnCode = executeNativeProcess(); | |||||
checkReturnCode( returnCode ); | |||||
return returnCode; | |||||
} | |||||
/** | |||||
* Utility method to verify that specified return code was the | |||||
* return code expected (if any). | |||||
*/ | |||||
private void checkReturnCode( final int returnCode ) | |||||
throws TaskException | |||||
{ | |||||
if( null != m_returnCode && | if( null != m_returnCode && | ||||
returnCode != m_returnCode.intValue() ) | returnCode != m_returnCode.intValue() ) | ||||
{ | { | ||||
throw new TaskException( "Unexpected return code " + returnCode ); | throw new TaskException( "Unexpected return code " + returnCode ); | ||||
} | } | ||||
return returnCode; | |||||
} | } | ||||
private int executenativeProcess() | |||||
/** | |||||
* Actually execute the native process. | |||||
*/ | |||||
private int executeNativeProcess() | |||||
throws TaskException | throws TaskException | ||||
{ | { | ||||
final ExecMetaData metaData = buildExecMetaData(); | final ExecMetaData metaData = buildExecMetaData(); | ||||
@@ -8,7 +8,6 @@ | |||||
package org.apache.tools.ant.taskdefs; | package org.apache.tools.ant.taskdefs; | ||||
import java.io.File; | import java.io.File; | ||||
import java.io.IOException; | |||||
import java.io.PrintStream; | import java.io.PrintStream; | ||||
import java.util.ArrayList; | import java.util.ArrayList; | ||||
import org.apache.aut.nativelib.ExecManager; | import org.apache.aut.nativelib.ExecManager; | ||||
@@ -233,14 +232,6 @@ public class Java | |||||
exe.setWorkingDirectory( m_dir ); | exe.setWorkingDirectory( m_dir ); | ||||
exe.setCommandline( command ); | exe.setCommandline( command ); | ||||
try | |||||
{ | |||||
return exe.execute(); | |||||
} | |||||
catch( IOException e ) | |||||
{ | |||||
final String message = "Error executing class"; | |||||
throw new TaskException( message, e ); | |||||
} | |||||
return exe.execute(); | |||||
} | } | ||||
} | } |
@@ -359,19 +359,12 @@ public abstract class DefaultCompilerAdapter | |||||
commandArray = args; | commandArray = args; | ||||
} | } | ||||
try | |||||
{ | |||||
final ExecManager execManager = (ExecManager)m_attributes.getService( ExecManager.class ); | final ExecManager execManager = (ExecManager)m_attributes.getService( ExecManager.class ); | ||||
final Execute exe = new Execute( execManager ); | final Execute exe = new Execute( execManager ); | ||||
exe.setWorkingDirectory( m_baseDir ); | exe.setWorkingDirectory( m_baseDir ); | ||||
final String[] commandline = commandArray; | final String[] commandline = commandArray; | ||||
exe.setCommandline( new Commandline( commandline ) ); | exe.setCommandline( new Commandline( commandline ) ); | ||||
return exe.execute(); | return exe.execute(); | ||||
} | |||||
catch( IOException e ) | |||||
{ | |||||
throw new TaskException( "Error running " + args[ 0 ] + " compiler", e ); | |||||
} | |||||
} | } | ||||
finally | finally | ||||
{ | { | ||||
@@ -19,9 +19,9 @@ import org.apache.aut.nativelib.ExecManager; | |||||
import org.apache.aut.nativelib.ExecOutputHandler; | import org.apache.aut.nativelib.ExecOutputHandler; | ||||
import org.apache.aut.nativelib.Os; | import org.apache.aut.nativelib.Os; | ||||
import org.apache.myrmidon.api.TaskException; | import org.apache.myrmidon.api.TaskException; | ||||
import org.apache.myrmidon.framework.Execute; | |||||
import org.apache.myrmidon.framework.Pattern; | import org.apache.myrmidon.framework.Pattern; | ||||
import org.apache.tools.ant.Task; | import org.apache.tools.ant.Task; | ||||
import org.apache.myrmidon.framework.Execute; | |||||
import org.apache.tools.ant.types.Commandline; | import org.apache.tools.ant.types.Commandline; | ||||
import org.apache.tools.ant.types.DirectoryScanner; | import org.apache.tools.ant.types.DirectoryScanner; | ||||
import org.apache.tools.ant.types.FileSet; | import org.apache.tools.ant.types.FileSet; | ||||
@@ -825,22 +825,14 @@ public class Javadoc | |||||
* Avoid problems with command line length in some environments. | * Avoid problems with command line length in some environments. | ||||
*/ | */ | ||||
exe.setWorkingDirectory( null ); | exe.setWorkingDirectory( null ); | ||||
exe.setCommandline( cmd ); | |||||
exe.setReturnCode( 0 ); | |||||
try | try | ||||
{ | { | ||||
exe.setCommandline( cmd ); | |||||
final int ret = exe.execute(); | |||||
if( ret != 0 ) | |||||
{ | |||||
throw new TaskException( "Javadoc returned " + ret ); | |||||
} | |||||
} | |||||
catch( IOException e ) | |||||
{ | |||||
throw new TaskException( "Javadoc failed: " + e, e ); | |||||
exe.execute(); | |||||
} | } | ||||
finally | finally | ||||
{ | { | ||||
if( m_tmpList != null ) | if( m_tmpList != null ) | ||||
{ | { | ||||
m_tmpList.delete(); | m_tmpList.delete(); | ||||
@@ -8,7 +8,6 @@ | |||||
package org.apache.tools.ant.taskdefs.optional.ccm; | package org.apache.tools.ant.taskdefs.optional.ccm; | ||||
import java.io.File; | import java.io.File; | ||||
import java.io.IOException; | |||||
import org.apache.aut.nativelib.ExecManager; | import org.apache.aut.nativelib.ExecManager; | ||||
import org.apache.aut.nativelib.ExecOutputHandler; | import org.apache.aut.nativelib.ExecOutputHandler; | ||||
import org.apache.myrmidon.api.AbstractTask; | import org.apache.myrmidon.api.AbstractTask; | ||||
@@ -72,7 +71,7 @@ public abstract class Continuus | |||||
/** | /** | ||||
* Set the value of ccmAction. | * Set the value of ccmAction. | ||||
* | * | ||||
* @param v Value to assign to ccmAction. | |||||
* @param ccmAction Value to assign to ccmAction. | |||||
*/ | */ | ||||
public void setCcmAction( final String ccmAction ) | public void setCcmAction( final String ccmAction ) | ||||
{ | { | ||||
@@ -110,21 +109,14 @@ public abstract class Continuus | |||||
protected int run( final Commandline cmd, final ExecOutputHandler handler ) | protected int run( final Commandline cmd, final ExecOutputHandler handler ) | ||||
throws TaskException | throws TaskException | ||||
{ | { | ||||
try | |||||
final ExecManager execManager = (ExecManager)getService( ExecManager.class ); | |||||
final Execute exe = new Execute( execManager ); | |||||
if( null != handler ) | |||||
{ | { | ||||
final ExecManager execManager = (ExecManager)getService( ExecManager.class ); | |||||
final Execute exe = new Execute( execManager ); | |||||
if( null != handler ) | |||||
{ | |||||
exe.setExecOutputHandler( handler ); | |||||
} | |||||
exe.setWorkingDirectory( getBaseDirectory() ); | |||||
exe.setCommandline( cmd ); | |||||
return exe.execute(); | |||||
} | |||||
catch( final IOException ioe ) | |||||
{ | |||||
throw new TaskException( "Error", ioe ); | |||||
exe.setExecOutputHandler( handler ); | |||||
} | } | ||||
exe.setWorkingDirectory( getBaseDirectory() ); | |||||
exe.setCommandline( cmd ); | |||||
return exe.execute(); | |||||
} | } | ||||
} | } |
@@ -8,11 +8,10 @@ | |||||
package org.apache.tools.ant.taskdefs.optional.clearcase; | package org.apache.tools.ant.taskdefs.optional.clearcase; | ||||
import java.io.File; | import java.io.File; | ||||
import java.io.IOException; | |||||
import org.apache.aut.nativelib.ExecManager; | import org.apache.aut.nativelib.ExecManager; | ||||
import org.apache.myrmidon.api.TaskException; | import org.apache.myrmidon.api.TaskException; | ||||
import org.apache.tools.ant.Task; | |||||
import org.apache.myrmidon.framework.Execute; | import org.apache.myrmidon.framework.Execute; | ||||
import org.apache.tools.ant.Task; | |||||
import org.apache.tools.ant.types.Commandline; | import org.apache.tools.ant.types.Commandline; | ||||
/** | /** | ||||
@@ -106,18 +105,11 @@ public abstract class ClearCase extends Task | |||||
protected int run( Commandline cmd ) | protected int run( Commandline cmd ) | ||||
throws TaskException | throws TaskException | ||||
{ | { | ||||
try | |||||
{ | |||||
final ExecManager execManager = (ExecManager)getService( ExecManager.class ); | |||||
final Execute exe = new Execute( execManager ); | |||||
exe.setWorkingDirectory( getBaseDirectory() ); | |||||
exe.setCommandline( cmd ); | |||||
return exe.execute(); | |||||
} | |||||
catch( IOException e ) | |||||
{ | |||||
throw new TaskException( "Error", e ); | |||||
} | |||||
final ExecManager execManager = (ExecManager)getService( ExecManager.class ); | |||||
final Execute exe = new Execute( execManager ); | |||||
exe.setWorkingDirectory( getBaseDirectory() ); | |||||
exe.setCommandline( cmd ); | |||||
return exe.execute(); | |||||
} | } | ||||
} | } | ||||
@@ -8,12 +8,11 @@ | |||||
package org.apache.tools.ant.taskdefs.optional.dotnet;// imports | package org.apache.tools.ant.taskdefs.optional.dotnet;// imports | ||||
import java.io.File; | import java.io.File; | ||||
import java.io.IOException; | |||||
import org.apache.aut.nativelib.ExecManager; | import org.apache.aut.nativelib.ExecManager; | ||||
import org.apache.avalon.framework.logger.AbstractLogEnabled; | import org.apache.avalon.framework.logger.AbstractLogEnabled; | ||||
import org.apache.myrmidon.api.TaskException; | import org.apache.myrmidon.api.TaskException; | ||||
import org.apache.tools.ant.Task; | |||||
import org.apache.myrmidon.framework.Execute; | import org.apache.myrmidon.framework.Execute; | ||||
import org.apache.tools.ant.Task; | |||||
import org.apache.tools.ant.types.Commandline; | import org.apache.tools.ant.types.Commandline; | ||||
/** | /** | ||||
@@ -141,35 +140,28 @@ public class NetCommand | |||||
throws TaskException | throws TaskException | ||||
{ | { | ||||
int err = -1;// assume the worst | int err = -1;// assume the worst | ||||
try | |||||
if( _traceCommandLine ) | |||||
{ | |||||
//_owner.getLogger().info( _commandLine.toString() ); | |||||
} | |||||
else | |||||
{ | |||||
//in verbose mode we always log stuff | |||||
logVerbose( _commandLine.toString() ); | |||||
} | |||||
_exe.setCommandline( _commandLine ); | |||||
err = _exe.execute(); | |||||
if( err != 0 ) | |||||
{ | { | ||||
if( _traceCommandLine ) | |||||
if( _failOnError ) | |||||
{ | { | ||||
//_owner.getLogger().info( _commandLine.toString() ); | |||||
throw new TaskException( _title + " returned: " + err ); | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
//in verbose mode we always log stuff | |||||
logVerbose( _commandLine.toString() ); | |||||
} | |||||
_exe.setCommandline( _commandLine ); | |||||
err = _exe.execute(); | |||||
if( err != 0 ) | |||||
{ | |||||
if( _failOnError ) | |||||
{ | |||||
throw new TaskException( _title + " returned: " + err ); | |||||
} | |||||
else | |||||
{ | |||||
getLogger().error( _title + " Result: " + err ); | |||||
} | |||||
getLogger().error( _title + " Result: " + err ); | |||||
} | } | ||||
} | } | ||||
catch( IOException e ) | |||||
{ | |||||
throw new TaskException( _title + " failed: " + e, e ); | |||||
} | |||||
} | } | ||||
/** | /** | ||||
@@ -185,17 +185,7 @@ public class JJTree extends Task | |||||
final Execute exe = new Execute( execManager ); | final Execute exe = new Execute( execManager ); | ||||
getLogger().debug( cmdl.toString() ); | getLogger().debug( cmdl.toString() ); | ||||
exe.setCommandline( new Commandline( cmdl.getCommandline() ) ); | exe.setCommandline( new Commandline( cmdl.getCommandline() ) ); | ||||
try | |||||
{ | |||||
if( exe.execute() != 0 ) | |||||
{ | |||||
throw new TaskException( "JJTree failed." ); | |||||
} | |||||
} | |||||
catch( IOException e ) | |||||
{ | |||||
throw new TaskException( "Failed to launch JJTree: " + e ); | |||||
} | |||||
exe.setReturnCode( 0 ); | |||||
exe.execute(); | |||||
} | } | ||||
} | } |
@@ -8,13 +8,12 @@ | |||||
package org.apache.tools.ant.taskdefs.optional.javacc; | package org.apache.tools.ant.taskdefs.optional.javacc; | ||||
import java.io.File; | import java.io.File; | ||||
import java.io.IOException; | |||||
import java.util.Enumeration; | import java.util.Enumeration; | ||||
import java.util.Hashtable; | import java.util.Hashtable; | ||||
import org.apache.aut.nativelib.ExecManager; | import org.apache.aut.nativelib.ExecManager; | ||||
import org.apache.myrmidon.api.TaskException; | import org.apache.myrmidon.api.TaskException; | ||||
import org.apache.tools.ant.Task; | |||||
import org.apache.myrmidon.framework.Execute; | import org.apache.myrmidon.framework.Execute; | ||||
import org.apache.tools.ant.Task; | |||||
import org.apache.tools.ant.types.Commandline; | import org.apache.tools.ant.types.Commandline; | ||||
import org.apache.tools.ant.types.CommandlineJava; | import org.apache.tools.ant.types.CommandlineJava; | ||||
import org.apache.tools.ant.types.Path; | import org.apache.tools.ant.types.Path; | ||||
@@ -239,23 +238,13 @@ public class JavaCC extends Task | |||||
private void runCommand( final CommandlineJava cmdline ) | private void runCommand( final CommandlineJava cmdline ) | ||||
throws TaskException | throws TaskException | ||||
{ | { | ||||
try | |||||
{ | |||||
getLogger().debug( cmdline.toString() ); | |||||
final ExecManager execManager = (ExecManager)getService( ExecManager.class ); | |||||
final Execute exe = new Execute( execManager ); | |||||
final String[] commandline = cmdline.getCommandline(); | |||||
exe.setCommandline( new Commandline( commandline ) ); | |||||
int retval = exe.execute(); | |||||
if( retval != 0 ) | |||||
{ | |||||
throw new TaskException( cmdline + " failed with return code " + retval ); | |||||
} | |||||
} | |||||
catch( final IOException ioe ) | |||||
{ | |||||
throw new TaskException( "Could not launch " + cmdline + ": " + ioe ); | |||||
} | |||||
getLogger().debug( cmdline.toString() ); | |||||
final ExecManager execManager = (ExecManager)getService( ExecManager.class ); | |||||
final Execute exe = new Execute( execManager ); | |||||
final String[] commandline = cmdline.getCommandline(); | |||||
exe.setCommandline( new Commandline( commandline ) ); | |||||
exe.setReturnCode( 0 ); | |||||
exe.execute(); | |||||
} | } | ||||
/** | /** | ||||
@@ -13,8 +13,8 @@ import java.io.IOException; | |||||
import java.io.PrintWriter; | import java.io.PrintWriter; | ||||
import org.apache.aut.nativelib.ExecManager; | import org.apache.aut.nativelib.ExecManager; | ||||
import org.apache.myrmidon.api.TaskException; | import org.apache.myrmidon.api.TaskException; | ||||
import org.apache.tools.ant.Task; | |||||
import org.apache.myrmidon.framework.Execute; | import org.apache.myrmidon.framework.Execute; | ||||
import org.apache.tools.ant.Task; | |||||
import org.apache.tools.ant.types.Commandline; | import org.apache.tools.ant.types.Commandline; | ||||
import org.apache.tools.ant.types.CommandlineJava; | import org.apache.tools.ant.types.CommandlineJava; | ||||
import org.apache.tools.ant.types.Path; | import org.apache.tools.ant.types.Path; | ||||
@@ -255,14 +255,7 @@ public class JDependTask | |||||
getLogger().info( "Output to be stored in " + m_outputFile.getPath() ); | getLogger().info( "Output to be stored in " + m_outputFile.getPath() ); | ||||
} | } | ||||
getLogger().debug( "Executing: " + commandline.toString() ); | getLogger().debug( "Executing: " + commandline.toString() ); | ||||
try | |||||
{ | |||||
return exe.execute(); | |||||
} | |||||
catch( IOException e ) | |||||
{ | |||||
throw new TaskException( "Process fork failed.", e ); | |||||
} | |||||
return exe.execute(); | |||||
} | } | ||||
@@ -658,14 +658,9 @@ public class JUnitTask extends Task | |||||
} | } | ||||
getLogger().debug( "Executing: " + cmd.toString() ); | getLogger().debug( "Executing: " + cmd.toString() ); | ||||
int retVal; | |||||
try | try | ||||
{ | { | ||||
retVal = exe.execute(); | |||||
} | |||||
catch( IOException e ) | |||||
{ | |||||
throw new TaskException( "Process fork failed.", e ); | |||||
return exe.execute(); | |||||
} | } | ||||
finally | finally | ||||
{ | { | ||||
@@ -674,8 +669,6 @@ public class JUnitTask extends Task | |||||
throw new TaskException( "Could not delete temporary properties file." ); | throw new TaskException( "Could not delete temporary properties file." ); | ||||
} | } | ||||
} | } | ||||
return retVal; | |||||
} | } | ||||
/** | /** | ||||
@@ -284,17 +284,8 @@ public abstract class AbstractMetamataTask | |||||
getLogger().debug( m_cmdl.toString() ); | getLogger().debug( m_cmdl.toString() ); | ||||
final String[] commandline = m_cmdl.getCommandline(); | final String[] commandline = m_cmdl.getCommandline(); | ||||
exe.setCommandline( new Commandline( commandline ) ); | exe.setCommandline( new Commandline( commandline ) ); | ||||
try | |||||
{ | |||||
if( 0 != exe.execute() ) | |||||
{ | |||||
throw new TaskException( "Metamata task failed." ); | |||||
} | |||||
} | |||||
catch( IOException e ) | |||||
{ | |||||
throw new TaskException( "Failed to launch Metamata task: " + e ); | |||||
} | |||||
exe.setReturnCode( 0 ); | |||||
exe.execute(); | |||||
} | } | ||||
protected void generateOptionsFile( File tofile, ArrayList options ) | protected void generateOptionsFile( File tofile, ArrayList options ) | ||||
@@ -16,8 +16,8 @@ import java.util.Random; | |||||
import org.apache.aut.nativelib.ExecManager; | import org.apache.aut.nativelib.ExecManager; | ||||
import org.apache.avalon.excalibur.io.IOUtil; | import org.apache.avalon.excalibur.io.IOUtil; | ||||
import org.apache.myrmidon.api.TaskException; | import org.apache.myrmidon.api.TaskException; | ||||
import org.apache.tools.ant.Task; | |||||
import org.apache.myrmidon.framework.Execute; | import org.apache.myrmidon.framework.Execute; | ||||
import org.apache.tools.ant.Task; | |||||
import org.apache.tools.ant.types.Argument; | import org.apache.tools.ant.types.Argument; | ||||
import org.apache.tools.ant.types.Commandline; | import org.apache.tools.ant.types.Commandline; | ||||
import org.apache.tools.ant.types.CommandlineJava; | import org.apache.tools.ant.types.CommandlineJava; | ||||
@@ -292,17 +292,8 @@ public class MParse | |||||
getLogger().debug( m_cmdl.toString() ); | getLogger().debug( m_cmdl.toString() ); | ||||
final String[] commandline = m_cmdl.getCommandline(); | final String[] commandline = m_cmdl.getCommandline(); | ||||
exe.setCommandline( new Commandline( commandline ) ); | exe.setCommandline( new Commandline( commandline ) ); | ||||
try | |||||
{ | |||||
if( exe.execute() != 0 ) | |||||
{ | |||||
throw new TaskException( "Metamata task failed." ); | |||||
} | |||||
} | |||||
catch( IOException e ) | |||||
{ | |||||
throw new TaskException( "Failed to launch Metamata task: " + e ); | |||||
} | |||||
exe.setReturnCode( 0 ); | |||||
exe.execute(); | |||||
} | } | ||||
/** | /** | ||||
@@ -7,12 +7,11 @@ | |||||
*/ | */ | ||||
package org.apache.tools.ant.taskdefs.optional.perforce; | package org.apache.tools.ant.taskdefs.optional.perforce; | ||||
import java.io.IOException; | |||||
import org.apache.aut.nativelib.ExecManager; | import org.apache.aut.nativelib.ExecManager; | ||||
import org.apache.aut.nativelib.ExecOutputHandler; | import org.apache.aut.nativelib.ExecOutputHandler; | ||||
import org.apache.myrmidon.api.TaskException; | import org.apache.myrmidon.api.TaskException; | ||||
import org.apache.oro.text.perl.Perl5Util; | |||||
import org.apache.myrmidon.framework.Execute; | import org.apache.myrmidon.framework.Execute; | ||||
import org.apache.oro.text.perl.Perl5Util; | |||||
import org.apache.tools.ant.types.Commandline; | import org.apache.tools.ant.types.Commandline; | ||||
/** | /** | ||||
@@ -171,14 +170,7 @@ public abstract class P4Base | |||||
exe.setExecOutputHandler( handler ); | exe.setExecOutputHandler( handler ); | ||||
exe.setCommandline( cmd ); | exe.setCommandline( cmd ); | ||||
try | |||||
{ | |||||
exe.execute(); | |||||
} | |||||
catch( IOException e ) | |||||
{ | |||||
throw new TaskException( "Error", e ); | |||||
} | |||||
exe.execute(); | |||||
if( null != m_error ) | if( null != m_error ) | ||||
{ | { | ||||
throw m_error; | throw m_error; | ||||
@@ -198,11 +198,6 @@ public class Pvcs | |||||
result = exe.execute(); | result = exe.execute(); | ||||
checkResultCode( result, cmd ); | checkResultCode( result, cmd ); | ||||
} | } | ||||
catch( IOException e ) | |||||
{ | |||||
String msg = "Failed executing: " + cmd.toString() + ". Exception: " + e.getMessage(); | |||||
throw new TaskException( msg ); | |||||
} | |||||
finally | finally | ||||
{ | { | ||||
if( filelist != null ) | if( filelist != null ) | ||||
@@ -8,12 +8,11 @@ | |||||
package org.apache.tools.ant.taskdefs.optional.vss; | package org.apache.tools.ant.taskdefs.optional.vss; | ||||
import java.io.File; | import java.io.File; | ||||
import java.io.IOException; | |||||
import java.util.Properties; | import java.util.Properties; | ||||
import org.apache.aut.nativelib.ExecManager; | import org.apache.aut.nativelib.ExecManager; | ||||
import org.apache.myrmidon.api.TaskException; | import org.apache.myrmidon.api.TaskException; | ||||
import org.apache.tools.ant.Task; | |||||
import org.apache.myrmidon.framework.Execute; | import org.apache.myrmidon.framework.Execute; | ||||
import org.apache.tools.ant.Task; | |||||
import org.apache.tools.ant.types.Commandline; | import org.apache.tools.ant.types.Commandline; | ||||
/** | /** | ||||
@@ -203,28 +202,21 @@ public abstract class MSVSS extends Task | |||||
protected int run( Commandline cmd ) | protected int run( Commandline cmd ) | ||||
throws TaskException | throws TaskException | ||||
{ | { | ||||
try | |||||
{ | |||||
final ExecManager execManager = (ExecManager)getService( ExecManager.class ); | |||||
final Execute exe = new Execute( execManager ); | |||||
// If location of ss.ini is specified we need to set the | |||||
// environment-variable SSDIR to this value | |||||
if( m_serverPath != null ) | |||||
{ | |||||
final Properties env = new Properties(); | |||||
env.setProperty( "SSDIR", m_serverPath ); | |||||
exe.setEnvironment( env ); | |||||
} | |||||
exe.setWorkingDirectory( getBaseDirectory() ); | |||||
exe.setCommandline( cmd ); | |||||
return exe.execute(); | |||||
} | |||||
catch( IOException e ) | |||||
final ExecManager execManager = (ExecManager)getService( ExecManager.class ); | |||||
final Execute exe = new Execute( execManager ); | |||||
// If location of ss.ini is specified we need to set the | |||||
// environment-variable SSDIR to this value | |||||
if( m_serverPath != null ) | |||||
{ | { | ||||
throw new TaskException( "Error", e ); | |||||
final Properties env = new Properties(); | |||||
env.setProperty( "SSDIR", m_serverPath ); | |||||
exe.setEnvironment( env ); | |||||
} | } | ||||
exe.setWorkingDirectory( getBaseDirectory() ); | |||||
exe.setCommandline( cmd ); | |||||
return exe.execute(); | |||||
} | } | ||||
} | } | ||||
@@ -8,7 +8,6 @@ | |||||
package org.apache.tools.ant.taskdefs.unix; | package org.apache.tools.ant.taskdefs.unix; | ||||
import java.io.File; | import java.io.File; | ||||
import java.io.IOException; | |||||
import org.apache.aut.nativelib.ExecManager; | import org.apache.aut.nativelib.ExecManager; | ||||
import org.apache.myrmidon.api.AbstractTask; | import org.apache.myrmidon.api.AbstractTask; | ||||
import org.apache.myrmidon.api.TaskException; | import org.apache.myrmidon.api.TaskException; | ||||
@@ -98,22 +97,12 @@ public class Rpm | |||||
m_topDir = getBaseDirectory(); | m_topDir = getBaseDirectory(); | ||||
} | } | ||||
exe.setWorkingDirectory( m_topDir ); | exe.setWorkingDirectory( m_topDir ); | ||||
exe.setCommandline( cmd ); | exe.setCommandline( cmd ); | ||||
try | |||||
{ | |||||
final String message = "Building the RPM based on the " + m_specFile + " file"; | |||||
getLogger().info( message ); | |||||
exe.setReturnCode( 0 ); | |||||
if( 0 != exe.execute() ) | |||||
{ | |||||
throw new TaskException( "Failed to execute rpm" ); | |||||
} | |||||
} | |||||
catch( IOException e ) | |||||
{ | |||||
throw new TaskException( "Error", e ); | |||||
} | |||||
final String message = "Building the RPM based on the " + m_specFile + " file"; | |||||
getLogger().info( message ); | |||||
exe.execute(); | |||||
} | } | ||||
private Commandline createCommand() | private Commandline createCommand() | ||||
@@ -8,7 +8,6 @@ | |||||
package org.apache.tools.ant.taskdefs; | package org.apache.tools.ant.taskdefs; | ||||
import java.io.File; | import java.io.File; | ||||
import java.io.IOException; | |||||
import java.io.PrintStream; | import java.io.PrintStream; | ||||
import java.util.ArrayList; | import java.util.ArrayList; | ||||
import org.apache.aut.nativelib.ExecManager; | import org.apache.aut.nativelib.ExecManager; | ||||
@@ -233,14 +232,6 @@ public class Java | |||||
exe.setWorkingDirectory( m_dir ); | exe.setWorkingDirectory( m_dir ); | ||||
exe.setCommandline( command ); | exe.setCommandline( command ); | ||||
try | |||||
{ | |||||
return exe.execute(); | |||||
} | |||||
catch( IOException e ) | |||||
{ | |||||
final String message = "Error executing class"; | |||||
throw new TaskException( message, e ); | |||||
} | |||||
return exe.execute(); | |||||
} | } | ||||
} | } |
@@ -359,19 +359,12 @@ public abstract class DefaultCompilerAdapter | |||||
commandArray = args; | commandArray = args; | ||||
} | } | ||||
try | |||||
{ | |||||
final ExecManager execManager = (ExecManager)m_attributes.getService( ExecManager.class ); | final ExecManager execManager = (ExecManager)m_attributes.getService( ExecManager.class ); | ||||
final Execute exe = new Execute( execManager ); | final Execute exe = new Execute( execManager ); | ||||
exe.setWorkingDirectory( m_baseDir ); | exe.setWorkingDirectory( m_baseDir ); | ||||
final String[] commandline = commandArray; | final String[] commandline = commandArray; | ||||
exe.setCommandline( new Commandline( commandline ) ); | exe.setCommandline( new Commandline( commandline ) ); | ||||
return exe.execute(); | return exe.execute(); | ||||
} | |||||
catch( IOException e ) | |||||
{ | |||||
throw new TaskException( "Error running " + args[ 0 ] + " compiler", e ); | |||||
} | |||||
} | } | ||||
finally | finally | ||||
{ | { | ||||
@@ -19,9 +19,9 @@ import org.apache.aut.nativelib.ExecManager; | |||||
import org.apache.aut.nativelib.ExecOutputHandler; | import org.apache.aut.nativelib.ExecOutputHandler; | ||||
import org.apache.aut.nativelib.Os; | import org.apache.aut.nativelib.Os; | ||||
import org.apache.myrmidon.api.TaskException; | import org.apache.myrmidon.api.TaskException; | ||||
import org.apache.myrmidon.framework.Execute; | |||||
import org.apache.myrmidon.framework.Pattern; | import org.apache.myrmidon.framework.Pattern; | ||||
import org.apache.tools.ant.Task; | import org.apache.tools.ant.Task; | ||||
import org.apache.myrmidon.framework.Execute; | |||||
import org.apache.tools.ant.types.Commandline; | import org.apache.tools.ant.types.Commandline; | ||||
import org.apache.tools.ant.types.DirectoryScanner; | import org.apache.tools.ant.types.DirectoryScanner; | ||||
import org.apache.tools.ant.types.FileSet; | import org.apache.tools.ant.types.FileSet; | ||||
@@ -825,22 +825,14 @@ public class Javadoc | |||||
* Avoid problems with command line length in some environments. | * Avoid problems with command line length in some environments. | ||||
*/ | */ | ||||
exe.setWorkingDirectory( null ); | exe.setWorkingDirectory( null ); | ||||
exe.setCommandline( cmd ); | |||||
exe.setReturnCode( 0 ); | |||||
try | try | ||||
{ | { | ||||
exe.setCommandline( cmd ); | |||||
final int ret = exe.execute(); | |||||
if( ret != 0 ) | |||||
{ | |||||
throw new TaskException( "Javadoc returned " + ret ); | |||||
} | |||||
} | |||||
catch( IOException e ) | |||||
{ | |||||
throw new TaskException( "Javadoc failed: " + e, e ); | |||||
exe.execute(); | |||||
} | } | ||||
finally | finally | ||||
{ | { | ||||
if( m_tmpList != null ) | if( m_tmpList != null ) | ||||
{ | { | ||||
m_tmpList.delete(); | m_tmpList.delete(); | ||||
@@ -8,7 +8,6 @@ | |||||
package org.apache.tools.ant.taskdefs.optional.ccm; | package org.apache.tools.ant.taskdefs.optional.ccm; | ||||
import java.io.File; | import java.io.File; | ||||
import java.io.IOException; | |||||
import org.apache.aut.nativelib.ExecManager; | import org.apache.aut.nativelib.ExecManager; | ||||
import org.apache.aut.nativelib.ExecOutputHandler; | import org.apache.aut.nativelib.ExecOutputHandler; | ||||
import org.apache.myrmidon.api.AbstractTask; | import org.apache.myrmidon.api.AbstractTask; | ||||
@@ -72,7 +71,7 @@ public abstract class Continuus | |||||
/** | /** | ||||
* Set the value of ccmAction. | * Set the value of ccmAction. | ||||
* | * | ||||
* @param v Value to assign to ccmAction. | |||||
* @param ccmAction Value to assign to ccmAction. | |||||
*/ | */ | ||||
public void setCcmAction( final String ccmAction ) | public void setCcmAction( final String ccmAction ) | ||||
{ | { | ||||
@@ -110,21 +109,14 @@ public abstract class Continuus | |||||
protected int run( final Commandline cmd, final ExecOutputHandler handler ) | protected int run( final Commandline cmd, final ExecOutputHandler handler ) | ||||
throws TaskException | throws TaskException | ||||
{ | { | ||||
try | |||||
final ExecManager execManager = (ExecManager)getService( ExecManager.class ); | |||||
final Execute exe = new Execute( execManager ); | |||||
if( null != handler ) | |||||
{ | { | ||||
final ExecManager execManager = (ExecManager)getService( ExecManager.class ); | |||||
final Execute exe = new Execute( execManager ); | |||||
if( null != handler ) | |||||
{ | |||||
exe.setExecOutputHandler( handler ); | |||||
} | |||||
exe.setWorkingDirectory( getBaseDirectory() ); | |||||
exe.setCommandline( cmd ); | |||||
return exe.execute(); | |||||
} | |||||
catch( final IOException ioe ) | |||||
{ | |||||
throw new TaskException( "Error", ioe ); | |||||
exe.setExecOutputHandler( handler ); | |||||
} | } | ||||
exe.setWorkingDirectory( getBaseDirectory() ); | |||||
exe.setCommandline( cmd ); | |||||
return exe.execute(); | |||||
} | } | ||||
} | } |
@@ -8,11 +8,10 @@ | |||||
package org.apache.tools.ant.taskdefs.optional.clearcase; | package org.apache.tools.ant.taskdefs.optional.clearcase; | ||||
import java.io.File; | import java.io.File; | ||||
import java.io.IOException; | |||||
import org.apache.aut.nativelib.ExecManager; | import org.apache.aut.nativelib.ExecManager; | ||||
import org.apache.myrmidon.api.TaskException; | import org.apache.myrmidon.api.TaskException; | ||||
import org.apache.tools.ant.Task; | |||||
import org.apache.myrmidon.framework.Execute; | import org.apache.myrmidon.framework.Execute; | ||||
import org.apache.tools.ant.Task; | |||||
import org.apache.tools.ant.types.Commandline; | import org.apache.tools.ant.types.Commandline; | ||||
/** | /** | ||||
@@ -106,18 +105,11 @@ public abstract class ClearCase extends Task | |||||
protected int run( Commandline cmd ) | protected int run( Commandline cmd ) | ||||
throws TaskException | throws TaskException | ||||
{ | { | ||||
try | |||||
{ | |||||
final ExecManager execManager = (ExecManager)getService( ExecManager.class ); | |||||
final Execute exe = new Execute( execManager ); | |||||
exe.setWorkingDirectory( getBaseDirectory() ); | |||||
exe.setCommandline( cmd ); | |||||
return exe.execute(); | |||||
} | |||||
catch( IOException e ) | |||||
{ | |||||
throw new TaskException( "Error", e ); | |||||
} | |||||
final ExecManager execManager = (ExecManager)getService( ExecManager.class ); | |||||
final Execute exe = new Execute( execManager ); | |||||
exe.setWorkingDirectory( getBaseDirectory() ); | |||||
exe.setCommandline( cmd ); | |||||
return exe.execute(); | |||||
} | } | ||||
} | } | ||||
@@ -8,12 +8,11 @@ | |||||
package org.apache.tools.ant.taskdefs.optional.dotnet;// imports | package org.apache.tools.ant.taskdefs.optional.dotnet;// imports | ||||
import java.io.File; | import java.io.File; | ||||
import java.io.IOException; | |||||
import org.apache.aut.nativelib.ExecManager; | import org.apache.aut.nativelib.ExecManager; | ||||
import org.apache.avalon.framework.logger.AbstractLogEnabled; | import org.apache.avalon.framework.logger.AbstractLogEnabled; | ||||
import org.apache.myrmidon.api.TaskException; | import org.apache.myrmidon.api.TaskException; | ||||
import org.apache.tools.ant.Task; | |||||
import org.apache.myrmidon.framework.Execute; | import org.apache.myrmidon.framework.Execute; | ||||
import org.apache.tools.ant.Task; | |||||
import org.apache.tools.ant.types.Commandline; | import org.apache.tools.ant.types.Commandline; | ||||
/** | /** | ||||
@@ -141,35 +140,28 @@ public class NetCommand | |||||
throws TaskException | throws TaskException | ||||
{ | { | ||||
int err = -1;// assume the worst | int err = -1;// assume the worst | ||||
try | |||||
if( _traceCommandLine ) | |||||
{ | |||||
//_owner.getLogger().info( _commandLine.toString() ); | |||||
} | |||||
else | |||||
{ | |||||
//in verbose mode we always log stuff | |||||
logVerbose( _commandLine.toString() ); | |||||
} | |||||
_exe.setCommandline( _commandLine ); | |||||
err = _exe.execute(); | |||||
if( err != 0 ) | |||||
{ | { | ||||
if( _traceCommandLine ) | |||||
if( _failOnError ) | |||||
{ | { | ||||
//_owner.getLogger().info( _commandLine.toString() ); | |||||
throw new TaskException( _title + " returned: " + err ); | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
//in verbose mode we always log stuff | |||||
logVerbose( _commandLine.toString() ); | |||||
} | |||||
_exe.setCommandline( _commandLine ); | |||||
err = _exe.execute(); | |||||
if( err != 0 ) | |||||
{ | |||||
if( _failOnError ) | |||||
{ | |||||
throw new TaskException( _title + " returned: " + err ); | |||||
} | |||||
else | |||||
{ | |||||
getLogger().error( _title + " Result: " + err ); | |||||
} | |||||
getLogger().error( _title + " Result: " + err ); | |||||
} | } | ||||
} | } | ||||
catch( IOException e ) | |||||
{ | |||||
throw new TaskException( _title + " failed: " + e, e ); | |||||
} | |||||
} | } | ||||
/** | /** | ||||
@@ -185,17 +185,7 @@ public class JJTree extends Task | |||||
final Execute exe = new Execute( execManager ); | final Execute exe = new Execute( execManager ); | ||||
getLogger().debug( cmdl.toString() ); | getLogger().debug( cmdl.toString() ); | ||||
exe.setCommandline( new Commandline( cmdl.getCommandline() ) ); | exe.setCommandline( new Commandline( cmdl.getCommandline() ) ); | ||||
try | |||||
{ | |||||
if( exe.execute() != 0 ) | |||||
{ | |||||
throw new TaskException( "JJTree failed." ); | |||||
} | |||||
} | |||||
catch( IOException e ) | |||||
{ | |||||
throw new TaskException( "Failed to launch JJTree: " + e ); | |||||
} | |||||
exe.setReturnCode( 0 ); | |||||
exe.execute(); | |||||
} | } | ||||
} | } |
@@ -8,13 +8,12 @@ | |||||
package org.apache.tools.ant.taskdefs.optional.javacc; | package org.apache.tools.ant.taskdefs.optional.javacc; | ||||
import java.io.File; | import java.io.File; | ||||
import java.io.IOException; | |||||
import java.util.Enumeration; | import java.util.Enumeration; | ||||
import java.util.Hashtable; | import java.util.Hashtable; | ||||
import org.apache.aut.nativelib.ExecManager; | import org.apache.aut.nativelib.ExecManager; | ||||
import org.apache.myrmidon.api.TaskException; | import org.apache.myrmidon.api.TaskException; | ||||
import org.apache.tools.ant.Task; | |||||
import org.apache.myrmidon.framework.Execute; | import org.apache.myrmidon.framework.Execute; | ||||
import org.apache.tools.ant.Task; | |||||
import org.apache.tools.ant.types.Commandline; | import org.apache.tools.ant.types.Commandline; | ||||
import org.apache.tools.ant.types.CommandlineJava; | import org.apache.tools.ant.types.CommandlineJava; | ||||
import org.apache.tools.ant.types.Path; | import org.apache.tools.ant.types.Path; | ||||
@@ -239,23 +238,13 @@ public class JavaCC extends Task | |||||
private void runCommand( final CommandlineJava cmdline ) | private void runCommand( final CommandlineJava cmdline ) | ||||
throws TaskException | throws TaskException | ||||
{ | { | ||||
try | |||||
{ | |||||
getLogger().debug( cmdline.toString() ); | |||||
final ExecManager execManager = (ExecManager)getService( ExecManager.class ); | |||||
final Execute exe = new Execute( execManager ); | |||||
final String[] commandline = cmdline.getCommandline(); | |||||
exe.setCommandline( new Commandline( commandline ) ); | |||||
int retval = exe.execute(); | |||||
if( retval != 0 ) | |||||
{ | |||||
throw new TaskException( cmdline + " failed with return code " + retval ); | |||||
} | |||||
} | |||||
catch( final IOException ioe ) | |||||
{ | |||||
throw new TaskException( "Could not launch " + cmdline + ": " + ioe ); | |||||
} | |||||
getLogger().debug( cmdline.toString() ); | |||||
final ExecManager execManager = (ExecManager)getService( ExecManager.class ); | |||||
final Execute exe = new Execute( execManager ); | |||||
final String[] commandline = cmdline.getCommandline(); | |||||
exe.setCommandline( new Commandline( commandline ) ); | |||||
exe.setReturnCode( 0 ); | |||||
exe.execute(); | |||||
} | } | ||||
/** | /** | ||||
@@ -13,8 +13,8 @@ import java.io.IOException; | |||||
import java.io.PrintWriter; | import java.io.PrintWriter; | ||||
import org.apache.aut.nativelib.ExecManager; | import org.apache.aut.nativelib.ExecManager; | ||||
import org.apache.myrmidon.api.TaskException; | import org.apache.myrmidon.api.TaskException; | ||||
import org.apache.tools.ant.Task; | |||||
import org.apache.myrmidon.framework.Execute; | import org.apache.myrmidon.framework.Execute; | ||||
import org.apache.tools.ant.Task; | |||||
import org.apache.tools.ant.types.Commandline; | import org.apache.tools.ant.types.Commandline; | ||||
import org.apache.tools.ant.types.CommandlineJava; | import org.apache.tools.ant.types.CommandlineJava; | ||||
import org.apache.tools.ant.types.Path; | import org.apache.tools.ant.types.Path; | ||||
@@ -255,14 +255,7 @@ public class JDependTask | |||||
getLogger().info( "Output to be stored in " + m_outputFile.getPath() ); | getLogger().info( "Output to be stored in " + m_outputFile.getPath() ); | ||||
} | } | ||||
getLogger().debug( "Executing: " + commandline.toString() ); | getLogger().debug( "Executing: " + commandline.toString() ); | ||||
try | |||||
{ | |||||
return exe.execute(); | |||||
} | |||||
catch( IOException e ) | |||||
{ | |||||
throw new TaskException( "Process fork failed.", e ); | |||||
} | |||||
return exe.execute(); | |||||
} | } | ||||
@@ -658,14 +658,9 @@ public class JUnitTask extends Task | |||||
} | } | ||||
getLogger().debug( "Executing: " + cmd.toString() ); | getLogger().debug( "Executing: " + cmd.toString() ); | ||||
int retVal; | |||||
try | try | ||||
{ | { | ||||
retVal = exe.execute(); | |||||
} | |||||
catch( IOException e ) | |||||
{ | |||||
throw new TaskException( "Process fork failed.", e ); | |||||
return exe.execute(); | |||||
} | } | ||||
finally | finally | ||||
{ | { | ||||
@@ -674,8 +669,6 @@ public class JUnitTask extends Task | |||||
throw new TaskException( "Could not delete temporary properties file." ); | throw new TaskException( "Could not delete temporary properties file." ); | ||||
} | } | ||||
} | } | ||||
return retVal; | |||||
} | } | ||||
/** | /** | ||||
@@ -284,17 +284,8 @@ public abstract class AbstractMetamataTask | |||||
getLogger().debug( m_cmdl.toString() ); | getLogger().debug( m_cmdl.toString() ); | ||||
final String[] commandline = m_cmdl.getCommandline(); | final String[] commandline = m_cmdl.getCommandline(); | ||||
exe.setCommandline( new Commandline( commandline ) ); | exe.setCommandline( new Commandline( commandline ) ); | ||||
try | |||||
{ | |||||
if( 0 != exe.execute() ) | |||||
{ | |||||
throw new TaskException( "Metamata task failed." ); | |||||
} | |||||
} | |||||
catch( IOException e ) | |||||
{ | |||||
throw new TaskException( "Failed to launch Metamata task: " + e ); | |||||
} | |||||
exe.setReturnCode( 0 ); | |||||
exe.execute(); | |||||
} | } | ||||
protected void generateOptionsFile( File tofile, ArrayList options ) | protected void generateOptionsFile( File tofile, ArrayList options ) | ||||
@@ -16,8 +16,8 @@ import java.util.Random; | |||||
import org.apache.aut.nativelib.ExecManager; | import org.apache.aut.nativelib.ExecManager; | ||||
import org.apache.avalon.excalibur.io.IOUtil; | import org.apache.avalon.excalibur.io.IOUtil; | ||||
import org.apache.myrmidon.api.TaskException; | import org.apache.myrmidon.api.TaskException; | ||||
import org.apache.tools.ant.Task; | |||||
import org.apache.myrmidon.framework.Execute; | import org.apache.myrmidon.framework.Execute; | ||||
import org.apache.tools.ant.Task; | |||||
import org.apache.tools.ant.types.Argument; | import org.apache.tools.ant.types.Argument; | ||||
import org.apache.tools.ant.types.Commandline; | import org.apache.tools.ant.types.Commandline; | ||||
import org.apache.tools.ant.types.CommandlineJava; | import org.apache.tools.ant.types.CommandlineJava; | ||||
@@ -292,17 +292,8 @@ public class MParse | |||||
getLogger().debug( m_cmdl.toString() ); | getLogger().debug( m_cmdl.toString() ); | ||||
final String[] commandline = m_cmdl.getCommandline(); | final String[] commandline = m_cmdl.getCommandline(); | ||||
exe.setCommandline( new Commandline( commandline ) ); | exe.setCommandline( new Commandline( commandline ) ); | ||||
try | |||||
{ | |||||
if( exe.execute() != 0 ) | |||||
{ | |||||
throw new TaskException( "Metamata task failed." ); | |||||
} | |||||
} | |||||
catch( IOException e ) | |||||
{ | |||||
throw new TaskException( "Failed to launch Metamata task: " + e ); | |||||
} | |||||
exe.setReturnCode( 0 ); | |||||
exe.execute(); | |||||
} | } | ||||
/** | /** | ||||
@@ -7,12 +7,11 @@ | |||||
*/ | */ | ||||
package org.apache.tools.ant.taskdefs.optional.perforce; | package org.apache.tools.ant.taskdefs.optional.perforce; | ||||
import java.io.IOException; | |||||
import org.apache.aut.nativelib.ExecManager; | import org.apache.aut.nativelib.ExecManager; | ||||
import org.apache.aut.nativelib.ExecOutputHandler; | import org.apache.aut.nativelib.ExecOutputHandler; | ||||
import org.apache.myrmidon.api.TaskException; | import org.apache.myrmidon.api.TaskException; | ||||
import org.apache.oro.text.perl.Perl5Util; | |||||
import org.apache.myrmidon.framework.Execute; | import org.apache.myrmidon.framework.Execute; | ||||
import org.apache.oro.text.perl.Perl5Util; | |||||
import org.apache.tools.ant.types.Commandline; | import org.apache.tools.ant.types.Commandline; | ||||
/** | /** | ||||
@@ -171,14 +170,7 @@ public abstract class P4Base | |||||
exe.setExecOutputHandler( handler ); | exe.setExecOutputHandler( handler ); | ||||
exe.setCommandline( cmd ); | exe.setCommandline( cmd ); | ||||
try | |||||
{ | |||||
exe.execute(); | |||||
} | |||||
catch( IOException e ) | |||||
{ | |||||
throw new TaskException( "Error", e ); | |||||
} | |||||
exe.execute(); | |||||
if( null != m_error ) | if( null != m_error ) | ||||
{ | { | ||||
throw m_error; | throw m_error; | ||||
@@ -198,11 +198,6 @@ public class Pvcs | |||||
result = exe.execute(); | result = exe.execute(); | ||||
checkResultCode( result, cmd ); | checkResultCode( result, cmd ); | ||||
} | } | ||||
catch( IOException e ) | |||||
{ | |||||
String msg = "Failed executing: " + cmd.toString() + ". Exception: " + e.getMessage(); | |||||
throw new TaskException( msg ); | |||||
} | |||||
finally | finally | ||||
{ | { | ||||
if( filelist != null ) | if( filelist != null ) | ||||
@@ -8,12 +8,11 @@ | |||||
package org.apache.tools.ant.taskdefs.optional.vss; | package org.apache.tools.ant.taskdefs.optional.vss; | ||||
import java.io.File; | import java.io.File; | ||||
import java.io.IOException; | |||||
import java.util.Properties; | import java.util.Properties; | ||||
import org.apache.aut.nativelib.ExecManager; | import org.apache.aut.nativelib.ExecManager; | ||||
import org.apache.myrmidon.api.TaskException; | import org.apache.myrmidon.api.TaskException; | ||||
import org.apache.tools.ant.Task; | |||||
import org.apache.myrmidon.framework.Execute; | import org.apache.myrmidon.framework.Execute; | ||||
import org.apache.tools.ant.Task; | |||||
import org.apache.tools.ant.types.Commandline; | import org.apache.tools.ant.types.Commandline; | ||||
/** | /** | ||||
@@ -203,28 +202,21 @@ public abstract class MSVSS extends Task | |||||
protected int run( Commandline cmd ) | protected int run( Commandline cmd ) | ||||
throws TaskException | throws TaskException | ||||
{ | { | ||||
try | |||||
{ | |||||
final ExecManager execManager = (ExecManager)getService( ExecManager.class ); | |||||
final Execute exe = new Execute( execManager ); | |||||
// If location of ss.ini is specified we need to set the | |||||
// environment-variable SSDIR to this value | |||||
if( m_serverPath != null ) | |||||
{ | |||||
final Properties env = new Properties(); | |||||
env.setProperty( "SSDIR", m_serverPath ); | |||||
exe.setEnvironment( env ); | |||||
} | |||||
exe.setWorkingDirectory( getBaseDirectory() ); | |||||
exe.setCommandline( cmd ); | |||||
return exe.execute(); | |||||
} | |||||
catch( IOException e ) | |||||
final ExecManager execManager = (ExecManager)getService( ExecManager.class ); | |||||
final Execute exe = new Execute( execManager ); | |||||
// If location of ss.ini is specified we need to set the | |||||
// environment-variable SSDIR to this value | |||||
if( m_serverPath != null ) | |||||
{ | { | ||||
throw new TaskException( "Error", e ); | |||||
final Properties env = new Properties(); | |||||
env.setProperty( "SSDIR", m_serverPath ); | |||||
exe.setEnvironment( env ); | |||||
} | } | ||||
exe.setWorkingDirectory( getBaseDirectory() ); | |||||
exe.setCommandline( cmd ); | |||||
return exe.execute(); | |||||
} | } | ||||
} | } | ||||
@@ -8,7 +8,6 @@ | |||||
package org.apache.tools.ant.taskdefs.unix; | package org.apache.tools.ant.taskdefs.unix; | ||||
import java.io.File; | import java.io.File; | ||||
import java.io.IOException; | |||||
import org.apache.aut.nativelib.ExecManager; | import org.apache.aut.nativelib.ExecManager; | ||||
import org.apache.myrmidon.api.AbstractTask; | import org.apache.myrmidon.api.AbstractTask; | ||||
import org.apache.myrmidon.api.TaskException; | import org.apache.myrmidon.api.TaskException; | ||||
@@ -98,22 +97,12 @@ public class Rpm | |||||
m_topDir = getBaseDirectory(); | m_topDir = getBaseDirectory(); | ||||
} | } | ||||
exe.setWorkingDirectory( m_topDir ); | exe.setWorkingDirectory( m_topDir ); | ||||
exe.setCommandline( cmd ); | exe.setCommandline( cmd ); | ||||
try | |||||
{ | |||||
final String message = "Building the RPM based on the " + m_specFile + " file"; | |||||
getLogger().info( message ); | |||||
exe.setReturnCode( 0 ); | |||||
if( 0 != exe.execute() ) | |||||
{ | |||||
throw new TaskException( "Failed to execute rpm" ); | |||||
} | |||||
} | |||||
catch( IOException e ) | |||||
{ | |||||
throw new TaskException( "Error", e ); | |||||
} | |||||
final String message = "Building the RPM based on the " + m_specFile + " file"; | |||||
getLogger().info( message ); | |||||
exe.execute(); | |||||
} | } | ||||
private Commandline createCommand() | private Commandline createCommand() | ||||