git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@270797 13f79535-47bb-0310-9956-ffa450edef68master
@@ -15,6 +15,7 @@ import org.apache.tools.ant.taskdefs.exec.Execute2; | |||||
import org.apache.tools.ant.types.Commandline; | import org.apache.tools.ant.types.Commandline; | ||||
import org.apache.tools.ant.types.EnvironmentData; | import org.apache.tools.ant.types.EnvironmentData; | ||||
import org.apache.tools.ant.types.EnvironmentVariable; | import org.apache.tools.ant.types.EnvironmentVariable; | ||||
import org.apache.tools.ant.util.FileUtils; | |||||
/** | /** | ||||
* Task to interact with a CVS repository. | * Task to interact with a CVS repository. | ||||
@@ -204,37 +205,37 @@ public class Cvs | |||||
command.setExecutable( "cvs" ); | command.setExecutable( "cvs" ); | ||||
if( m_cvsRoot != null ) | if( m_cvsRoot != null ) | ||||
{ | { | ||||
command.createArgument().setValue( "-d" ); | |||||
command.createArgument().setValue( m_cvsRoot ); | |||||
command.addArgument( "-d" ); | |||||
command.addArgument( m_cvsRoot ); | |||||
} | } | ||||
if( m_noexec ) | if( m_noexec ) | ||||
{ | { | ||||
command.createArgument().setValue( "-n" ); | |||||
command.addArgument( "-n" ); | |||||
} | } | ||||
if( m_quiet ) | if( m_quiet ) | ||||
{ | { | ||||
command.createArgument().setValue( "-q" ); | |||||
command.addArgument( "-q" ); | |||||
} | } | ||||
command.createArgument().setLine( m_command ); | |||||
command.addArguments( FileUtils.translateCommandline( m_command ) ); | |||||
if( null != m_date ) | if( null != m_date ) | ||||
{ | { | ||||
command.createArgument().setValue( "-D" ); | |||||
command.createArgument().setValue( m_date ); | |||||
command.addArgument( "-D" ); | |||||
command.addArgument( m_date ); | |||||
} | } | ||||
if( null != m_tag ) | if( null != m_tag ) | ||||
{ | { | ||||
command.createArgument().setValue( "-r" ); | |||||
command.createArgument().setValue( m_tag ); | |||||
command.addArgument( "-r" ); | |||||
command.addArgument( m_tag ); | |||||
} | } | ||||
if( m_module != null ) | if( m_module != null ) | ||||
{ | { | ||||
command.createArgument().setLine( m_module ); | |||||
command.addArguments( FileUtils.translateCommandline( m_module ) ); | |||||
} | } | ||||
return command; | return command; | ||||
} | } | ||||
@@ -98,9 +98,9 @@ public class Exec | |||||
/** | /** | ||||
* Add a nested arg element - a command line argument. | * Add a nested arg element - a command line argument. | ||||
*/ | */ | ||||
public Argument createArg() | |||||
public void addArg( final Argument argument ) | |||||
{ | { | ||||
return m_command.createArgument(); | |||||
m_command.addArgument( argument ); | |||||
} | } | ||||
public void execute() | public void execute() | ||||
@@ -11,8 +11,9 @@ import java.io.BufferedReader; | |||||
import java.io.File; | import java.io.File; | ||||
import java.io.FileInputStream; | import java.io.FileInputStream; | ||||
import java.io.FileOutputStream; | import java.io.FileOutputStream; | ||||
import java.io.IOException; | |||||
import java.io.InputStreamReader; | import java.io.InputStreamReader; | ||||
import java.io.IOException; | |||||
import java.io.InputStream; | |||||
import java.security.DigestInputStream; | import java.security.DigestInputStream; | ||||
import java.security.MessageDigest; | import java.security.MessageDigest; | ||||
import java.security.NoSuchAlgorithmException; | import java.security.NoSuchAlgorithmException; | ||||
@@ -20,9 +21,10 @@ import java.security.NoSuchProviderException; | |||||
import java.util.ArrayList; | import java.util.ArrayList; | ||||
import java.util.Enumeration; | import java.util.Enumeration; | ||||
import java.util.Hashtable; | import java.util.Hashtable; | ||||
import org.apache.avalon.excalibur.io.IOUtil; | |||||
import org.apache.myrmidon.api.TaskException; | import org.apache.myrmidon.api.TaskException; | ||||
import org.apache.tools.ant.types.DirectoryScanner; | |||||
import org.apache.tools.ant.taskdefs.condition.Condition; | import org.apache.tools.ant.taskdefs.condition.Condition; | ||||
import org.apache.tools.ant.types.DirectoryScanner; | |||||
import org.apache.tools.ant.types.FileSet; | import org.apache.tools.ant.types.FileSet; | ||||
/** | /** | ||||
@@ -31,61 +33,73 @@ import org.apache.tools.ant.types.FileSet; | |||||
* | * | ||||
* @author <a href="mailto:umagesh@rediffmail.com">Magesh Umasankar</a> | * @author <a href="mailto:umagesh@rediffmail.com">Magesh Umasankar</a> | ||||
*/ | */ | ||||
public class Checksum extends MatchingTask implements Condition | |||||
public class Checksum | |||||
extends MatchingTask | |||||
implements Condition | |||||
{ | { | ||||
/** | /** | ||||
* File for which checksum is to be calculated. | * File for which checksum is to be calculated. | ||||
*/ | */ | ||||
private File file = null; | |||||
private File m_file; | |||||
/** | /** | ||||
* MessageDigest algorithm to be used. | * MessageDigest algorithm to be used. | ||||
*/ | */ | ||||
private String algorithm = "MD5"; | |||||
private String m_algorithm = "MD5"; | |||||
/** | /** | ||||
* MessageDigest Algorithm provider | * MessageDigest Algorithm provider | ||||
*/ | */ | ||||
private String provider = null; | |||||
private String m_provider; | |||||
/** | /** | ||||
* ArrayList to hold source file sets. | * ArrayList to hold source file sets. | ||||
*/ | */ | ||||
private ArrayList filesets = new ArrayList(); | |||||
private ArrayList m_filesets = new ArrayList(); | |||||
/** | /** | ||||
* Stores SourceFile, DestFile pairs and SourceFile, Property String pairs. | * Stores SourceFile, DestFile pairs and SourceFile, Property String pairs. | ||||
*/ | */ | ||||
private Hashtable includeFileMap = new Hashtable(); | |||||
private Hashtable m_includeFileMap = new Hashtable(); | |||||
/** | /** | ||||
* File Extension that is be to used to create or identify destination file | * File Extension that is be to used to create or identify destination file | ||||
*/ | */ | ||||
private String fileext; | |||||
private String m_fileext; | |||||
/** | /** | ||||
* Create new destination file? Defaults to false. | * Create new destination file? Defaults to false. | ||||
*/ | */ | ||||
private boolean forceOverwrite; | |||||
private boolean m_forceOverwrite; | |||||
/** | /** | ||||
* is this task being used as a nested condition element? | * is this task being used as a nested condition element? | ||||
*/ | */ | ||||
private boolean isCondition; | |||||
private boolean m_isCondition; | |||||
/** | /** | ||||
* Message Digest instance | * Message Digest instance | ||||
*/ | */ | ||||
private MessageDigest messageDigest; | |||||
private MessageDigest m_messageDigest; | |||||
/** | /** | ||||
* Holds generated checksum and gets set as a Project Property. | * Holds generated checksum and gets set as a Project Property. | ||||
*/ | */ | ||||
private String property; | |||||
private String m_property; | |||||
/** | /** | ||||
* Contains the result of a checksum verification. ("true" or "false") | * Contains the result of a checksum verification. ("true" or "false") | ||||
*/ | */ | ||||
private String verifyProperty; | |||||
private String m_verifyProperty; | |||||
/** | /** | ||||
* Sets the MessageDigest algorithm to be used to calculate the checksum. | * Sets the MessageDigest algorithm to be used to calculate the checksum. | ||||
* | * | ||||
* @param algorithm The new Algorithm value | * @param algorithm The new Algorithm value | ||||
*/ | */ | ||||
public void setAlgorithm( String algorithm ) | |||||
public void setAlgorithm( final String algorithm ) | |||||
{ | { | ||||
this.algorithm = algorithm; | |||||
m_algorithm = algorithm; | |||||
} | } | ||||
/** | /** | ||||
@@ -93,9 +107,9 @@ public class Checksum extends MatchingTask implements Condition | |||||
* | * | ||||
* @param file The new File value | * @param file The new File value | ||||
*/ | */ | ||||
public void setFile( File file ) | |||||
public void setFile( final File file ) | |||||
{ | { | ||||
this.file = file; | |||||
m_file = file; | |||||
} | } | ||||
/** | /** | ||||
@@ -104,9 +118,9 @@ public class Checksum extends MatchingTask implements Condition | |||||
* | * | ||||
* @param fileext The new Fileext value | * @param fileext The new Fileext value | ||||
*/ | */ | ||||
public void setFileext( String fileext ) | |||||
public void setFileext( final String fileext ) | |||||
{ | { | ||||
this.fileext = fileext; | |||||
m_fileext = fileext; | |||||
} | } | ||||
/** | /** | ||||
@@ -117,7 +131,7 @@ public class Checksum extends MatchingTask implements Condition | |||||
*/ | */ | ||||
public void setForceOverwrite( boolean forceOverwrite ) | public void setForceOverwrite( boolean forceOverwrite ) | ||||
{ | { | ||||
this.forceOverwrite = forceOverwrite; | |||||
this.m_forceOverwrite = forceOverwrite; | |||||
} | } | ||||
/** | /** | ||||
@@ -127,7 +141,7 @@ public class Checksum extends MatchingTask implements Condition | |||||
*/ | */ | ||||
public void setProperty( String property ) | public void setProperty( String property ) | ||||
{ | { | ||||
this.property = property; | |||||
this.m_property = property; | |||||
} | } | ||||
/** | /** | ||||
@@ -136,9 +150,9 @@ public class Checksum extends MatchingTask implements Condition | |||||
* | * | ||||
* @param provider The new Provider value | * @param provider The new Provider value | ||||
*/ | */ | ||||
public void setProvider( String provider ) | |||||
public void setProvider( final String provider ) | |||||
{ | { | ||||
this.provider = provider; | |||||
m_provider = provider; | |||||
} | } | ||||
/** | /** | ||||
@@ -147,9 +161,9 @@ public class Checksum extends MatchingTask implements Condition | |||||
* | * | ||||
* @param verifyProperty The new Verifyproperty value | * @param verifyProperty The new Verifyproperty value | ||||
*/ | */ | ||||
public void setVerifyproperty( String verifyProperty ) | |||||
public void setVerifyproperty( final String verifyProperty ) | |||||
{ | { | ||||
this.verifyProperty = verifyProperty; | |||||
m_verifyProperty = verifyProperty; | |||||
} | } | ||||
/** | /** | ||||
@@ -157,9 +171,9 @@ public class Checksum extends MatchingTask implements Condition | |||||
* | * | ||||
* @param set The feature to be added to the Fileset attribute | * @param set The feature to be added to the Fileset attribute | ||||
*/ | */ | ||||
public void addFileset( FileSet set ) | |||||
public void addFileset( final FileSet set ) | |||||
{ | { | ||||
filesets.add( set ); | |||||
m_filesets.add( set ); | |||||
} | } | ||||
/** | /** | ||||
@@ -167,12 +181,11 @@ public class Checksum extends MatchingTask implements Condition | |||||
* | * | ||||
* @return Returns true if the checksum verification test passed, false | * @return Returns true if the checksum verification test passed, false | ||||
* otherwise. | * otherwise. | ||||
* @exception TaskException Description of Exception | |||||
*/ | */ | ||||
public boolean eval() | public boolean eval() | ||||
throws TaskException | throws TaskException | ||||
{ | { | ||||
isCondition = true; | |||||
m_isCondition = true; | |||||
return validateAndExecute(); | return validateAndExecute(); | ||||
} | } | ||||
@@ -184,10 +197,10 @@ public class Checksum extends MatchingTask implements Condition | |||||
public void execute() | public void execute() | ||||
throws TaskException | throws TaskException | ||||
{ | { | ||||
boolean value = validateAndExecute(); | |||||
if( verifyProperty != null ) | |||||
final boolean value = validateAndExecute(); | |||||
if( m_verifyProperty != null ) | |||||
{ | { | ||||
setProperty( verifyProperty, new Boolean( value ).toString() ); | |||||
setProperty( m_verifyProperty, new Boolean( value ).toString() ); | |||||
} | } | ||||
} | } | ||||
@@ -197,36 +210,37 @@ public class Checksum extends MatchingTask implements Condition | |||||
* @param file The feature to be added to the ToIncludeFileMap attribute | * @param file The feature to be added to the ToIncludeFileMap attribute | ||||
* @exception TaskException Description of Exception | * @exception TaskException Description of Exception | ||||
*/ | */ | ||||
private void addToIncludeFileMap( File file ) | |||||
private void addToIncludeFileMap( final File file ) | |||||
throws TaskException | throws TaskException | ||||
{ | { | ||||
if( file != null ) | if( file != null ) | ||||
{ | { | ||||
if( file.exists() ) | if( file.exists() ) | ||||
{ | { | ||||
if( property == null ) | |||||
if( m_property == null ) | |||||
{ | { | ||||
File dest = new File( file.getParent(), file.getName() + fileext ); | |||||
if( forceOverwrite || isCondition || | |||||
final File dest = new File( file.getParent(), file.getName() + m_fileext ); | |||||
if( m_forceOverwrite || m_isCondition || | |||||
( file.lastModified() > dest.lastModified() ) ) | ( file.lastModified() > dest.lastModified() ) ) | ||||
{ | { | ||||
includeFileMap.put( file, dest ); | |||||
m_includeFileMap.put( file, dest ); | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
getLogger().debug( file + " omitted as " + dest + " is up to date." ); | |||||
final String message = file + " omitted as " + dest + | |||||
" is up to date."; | |||||
getLogger().debug( message ); | |||||
} | } | ||||
} | } | ||||
else | else | ||||
{ | { | ||||
includeFileMap.put( file, property ); | |||||
m_includeFileMap.put( file, m_property ); | |||||
} | } | ||||
} | } | ||||
else | else | ||||
{ | { | ||||
String message = "Could not find file " | |||||
+ file.getAbsolutePath() | |||||
+ " to generate checksum for."; | |||||
final String message = "Could not find file " + file.getAbsolutePath() + | |||||
" to generate checksum for."; | |||||
getLogger().info( message ); | getLogger().info( message ); | ||||
throw new TaskException( message ); | throw new TaskException( message ); | ||||
} | } | ||||
@@ -235,253 +249,266 @@ public class Checksum extends MatchingTask implements Condition | |||||
/** | /** | ||||
* Generate checksum(s) using the message digest created earlier. | * Generate checksum(s) using the message digest created earlier. | ||||
* | |||||
* @return Description of the Returned Value | |||||
* @exception TaskException Description of Exception | |||||
*/ | */ | ||||
private boolean generateChecksums() | private boolean generateChecksums() | ||||
throws TaskException | throws TaskException | ||||
{ | { | ||||
boolean checksumMatches = true; | boolean checksumMatches = true; | ||||
final Enumeration includes = m_includeFileMap.keys(); | |||||
while( includes.hasMoreElements() ) | |||||
{ | |||||
final File src = (File)includes.nextElement(); | |||||
if( !m_isCondition ) | |||||
{ | |||||
final String message = "Calculating " + m_algorithm + " checksum for " + src; | |||||
getLogger().info( message ); | |||||
} | |||||
checksumMatches = z( src, checksumMatches ); | |||||
} | |||||
return checksumMatches; | |||||
} | |||||
private boolean z( final File src, boolean checksumMatches ) | |||||
throws TaskException | |||||
{ | |||||
FileInputStream fis = null; | FileInputStream fis = null; | ||||
FileOutputStream fos = null; | FileOutputStream fos = null; | ||||
try | try | ||||
{ | { | ||||
for( Enumeration e = includeFileMap.keys(); e.hasMoreElements(); ) | |||||
fis = new FileInputStream( src ); | |||||
final byte[] fileDigest = buildDigest( fis ); | |||||
IOUtil.shutdownStream( fis ); | |||||
String checksum = ""; | |||||
for( int i = 0; i < fileDigest.length; i++ ) | |||||
{ | { | ||||
messageDigest.reset(); | |||||
File src = (File)e.nextElement(); | |||||
if( !isCondition ) | |||||
final String hexStr = Integer.toHexString( 0x00ff & fileDigest[ i ] ); | |||||
if( hexStr.length() < 2 ) | |||||
{ | { | ||||
getLogger().info( "Calculating " + algorithm + " checksum for " + src ); | |||||
checksum += "0"; | |||||
} | } | ||||
fis = new FileInputStream( src ); | |||||
DigestInputStream dis = new DigestInputStream( fis, | |||||
messageDigest ); | |||||
while( dis.read() != -1 ) | |||||
; | |||||
dis.close(); | |||||
fis.close(); | |||||
fis = null; | |||||
byte[] fileDigest = messageDigest.digest(); | |||||
String checksum = ""; | |||||
for( int i = 0; i < fileDigest.length; i++ ) | |||||
checksum += hexStr; | |||||
} | |||||
//can either be a property name string or a file | |||||
Object destination = m_includeFileMap.get( src ); | |||||
if( destination instanceof String ) | |||||
{ | |||||
String prop = (String)destination; | |||||
if( m_isCondition ) | |||||
{ | { | ||||
String hexStr = Integer.toHexString( 0x00ff & fileDigest[ i ] ); | |||||
if( hexStr.length() < 2 ) | |||||
{ | |||||
checksum += "0"; | |||||
} | |||||
checksum += hexStr; | |||||
checksumMatches = checksum.equals( m_property ); | |||||
} | } | ||||
//can either be a property name string or a file | |||||
Object destination = includeFileMap.get( src ); | |||||
if( destination instanceof java.lang.String ) | |||||
else | |||||
{ | { | ||||
String prop = (String)destination; | |||||
if( isCondition ) | |||||
{ | |||||
checksumMatches = checksum.equals( property ); | |||||
} | |||||
else | |||||
{ | |||||
setProperty( prop, checksum ); | |||||
} | |||||
setProperty( prop, checksum ); | |||||
} | } | ||||
else if( destination instanceof java.io.File ) | |||||
} | |||||
else if( destination instanceof File ) | |||||
{ | |||||
final File file = (File)destination; | |||||
if( m_isCondition ) | |||||
{ | { | ||||
if( isCondition ) | |||||
if( file.exists() && | |||||
file.length() == checksum.length() ) | |||||
{ | { | ||||
File existingFile = (File)destination; | |||||
if( existingFile.exists() && | |||||
existingFile.length() == checksum.length() ) | |||||
{ | |||||
fis = new FileInputStream( existingFile ); | |||||
InputStreamReader isr = new InputStreamReader( fis ); | |||||
BufferedReader br = new BufferedReader( isr ); | |||||
String suppliedChecksum = br.readLine(); | |||||
fis.close(); | |||||
fis = null; | |||||
br.close(); | |||||
isr.close(); | |||||
checksumMatches = | |||||
checksum.equals( suppliedChecksum ); | |||||
} | |||||
else | |||||
{ | |||||
checksumMatches = false; | |||||
} | |||||
fis = new FileInputStream( file ); | |||||
InputStreamReader isr = new InputStreamReader( fis ); | |||||
BufferedReader br = new BufferedReader( isr ); | |||||
String suppliedChecksum = br.readLine(); | |||||
fis.close(); | |||||
fis = null; | |||||
br.close(); | |||||
isr.close(); | |||||
checksumMatches = | |||||
checksum.equals( suppliedChecksum ); | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
File dest = (File)destination; | |||||
fos = new FileOutputStream( dest ); | |||||
fos.write( checksum.getBytes() ); | |||||
fos.close(); | |||||
fos = null; | |||||
checksumMatches = false; | |||||
} | } | ||||
} | } | ||||
else | |||||
{ | |||||
fos = new FileOutputStream( file ); | |||||
fos.write( checksum.getBytes() ); | |||||
fos.close(); | |||||
fos = null; | |||||
} | |||||
} | } | ||||
} | } | ||||
catch( Exception e ) | |||||
catch( final Exception e ) | |||||
{ | { | ||||
throw new TaskException( "Error", e ); | |||||
throw new TaskException( e.getMessage(), e ); | |||||
} | } | ||||
finally | finally | ||||
{ | { | ||||
if( fis != null ) | |||||
{ | |||||
try | |||||
{ | |||||
fis.close(); | |||||
} | |||||
catch( IOException e ) | |||||
{ | |||||
} | |||||
} | |||||
if( fos != null ) | |||||
{ | |||||
try | |||||
{ | |||||
fos.close(); | |||||
} | |||||
catch( IOException e ) | |||||
{ | |||||
} | |||||
} | |||||
IOUtil.shutdownStream( fis ); | |||||
IOUtil.shutdownStream( fos ); | |||||
} | } | ||||
return checksumMatches; | return checksumMatches; | ||||
} | } | ||||
private byte[] buildDigest( final InputStream input ) | |||||
throws IOException | |||||
{ | |||||
m_messageDigest.reset(); | |||||
final DigestInputStream digester = | |||||
new DigestInputStream( input, m_messageDigest ); | |||||
while( digester.read() != -1 ) | |||||
{ | |||||
} | |||||
digester.close(); | |||||
return m_messageDigest.digest(); | |||||
} | |||||
/** | /** | ||||
* Validate attributes and get down to business. | * Validate attributes and get down to business. | ||||
* | |||||
* @return Description of the Returned Value | |||||
* @exception TaskException Description of Exception | |||||
*/ | */ | ||||
private boolean validateAndExecute() | private boolean validateAndExecute() | ||||
throws TaskException | throws TaskException | ||||
{ | { | ||||
if( file == null && filesets.size() == 0 ) | |||||
if( null == m_file && 0 == m_filesets.size() ) | |||||
{ | { | ||||
throw new TaskException( | |||||
"Specify at least one source - a file or a fileset." ); | |||||
final String message = "Specify at least one source - a file or a fileset."; | |||||
throw new TaskException( message ); | |||||
} | } | ||||
if( file != null && file.exists() && file.isDirectory() ) | |||||
if( null != m_file && m_file.exists() && m_file.isDirectory() ) | |||||
{ | { | ||||
throw new TaskException( | |||||
"Checksum cannot be generated for directories" ); | |||||
final String message = "Checksum cannot be generated for directories"; | |||||
throw new TaskException( message ); | |||||
} | } | ||||
if( property != null && fileext != null ) | |||||
if( null != m_property && null != m_fileext ) | |||||
{ | { | ||||
throw new TaskException( | |||||
"Property and FileExt cannot co-exist." ); | |||||
final String message = "Property and FileExt cannot co-exist."; | |||||
throw new TaskException( message ); | |||||
} | } | ||||
if( property != null ) | |||||
if( m_property != null ) | |||||
{ | { | ||||
if( forceOverwrite ) | |||||
if( m_forceOverwrite ) | |||||
{ | { | ||||
throw new TaskException( | |||||
"ForceOverwrite cannot be used when Property is specified" ); | |||||
final String message = | |||||
"ForceOverwrite cannot be used when Property is specified"; | |||||
throw new TaskException( message ); | |||||
} | } | ||||
if( file != null ) | |||||
if( m_file != null ) | |||||
{ | { | ||||
if( filesets.size() > 0 ) | |||||
if( m_filesets.size() > 0 ) | |||||
{ | { | ||||
throw new TaskException( | |||||
"Multiple files cannot be used when Property is specified" ); | |||||
final String message = | |||||
"Multiple files cannot be used when Property is specified"; | |||||
throw new TaskException( message ); | |||||
} | } | ||||
} | } | ||||
else | else | ||||
{ | { | ||||
if( filesets.size() > 1 ) | |||||
if( m_filesets.size() > 1 ) | |||||
{ | { | ||||
throw new TaskException( | |||||
"Multiple files cannot be used when Property is specified" ); | |||||
final String message = | |||||
"Multiple files cannot be used when Property is specified"; | |||||
throw new TaskException( message ); | |||||
} | } | ||||
} | } | ||||
} | } | ||||
if( verifyProperty != null ) | |||||
if( m_verifyProperty != null ) | |||||
{ | { | ||||
isCondition = true; | |||||
m_isCondition = true; | |||||
} | } | ||||
if( verifyProperty != null && forceOverwrite ) | |||||
if( m_verifyProperty != null && m_forceOverwrite ) | |||||
{ | { | ||||
throw new TaskException( | |||||
"VerifyProperty and ForceOverwrite cannot co-exist." ); | |||||
final String message = "VerifyProperty and ForceOverwrite cannot co-exist."; | |||||
throw new TaskException( message ); | |||||
} | } | ||||
if( isCondition && forceOverwrite ) | |||||
if( m_isCondition && m_forceOverwrite ) | |||||
{ | { | ||||
throw new TaskException( | |||||
"ForceOverwrite cannot be used when conditions are being used." ); | |||||
final String message = "ForceOverwrite cannot be used when conditions are being used."; | |||||
throw new TaskException( message ); | |||||
} | } | ||||
if( fileext == null ) | |||||
if( m_fileext == null ) | |||||
{ | { | ||||
fileext = "." + algorithm; | |||||
m_fileext = "." + m_algorithm; | |||||
} | } | ||||
else if( fileext.trim().length() == 0 ) | |||||
else if( m_fileext.trim().length() == 0 ) | |||||
{ | { | ||||
throw new TaskException( | |||||
"File extension when specified must not be an empty string" ); | |||||
final String message = "File extension when specified must not be an empty string"; | |||||
throw new TaskException( message ); | |||||
} | } | ||||
messageDigest = null; | |||||
if( provider != null ) | |||||
setupMessageDigest(); | |||||
if( m_messageDigest == null ) | |||||
{ | |||||
final String message = "Unable to create Message Digest"; | |||||
throw new TaskException( message ); | |||||
} | |||||
addIncludes(); | |||||
return generateChecksums(); | |||||
} | |||||
private void setupMessageDigest() | |||||
throws TaskException | |||||
{ | |||||
m_messageDigest = null; | |||||
if( m_provider != null ) | |||||
{ | { | ||||
try | try | ||||
{ | { | ||||
messageDigest = MessageDigest.getInstance( algorithm, provider ); | |||||
m_messageDigest = MessageDigest.getInstance( m_algorithm, m_provider ); | |||||
} | } | ||||
catch( NoSuchAlgorithmException noalgo ) | |||||
catch( final NoSuchAlgorithmException nsae ) | |||||
{ | { | ||||
throw new TaskException( noalgo.toString(), noalgo ); | |||||
throw new TaskException( nsae.toString(), nsae ); | |||||
} | } | ||||
catch( NoSuchProviderException noprovider ) | |||||
catch( final NoSuchProviderException nspe ) | |||||
{ | { | ||||
throw new TaskException( noprovider.toString(), noprovider ); | |||||
throw new TaskException( nspe.toString(), nspe ); | |||||
} | } | ||||
} | } | ||||
else | else | ||||
{ | { | ||||
try | try | ||||
{ | { | ||||
messageDigest = MessageDigest.getInstance( algorithm ); | |||||
m_messageDigest = MessageDigest.getInstance( m_algorithm ); | |||||
} | } | ||||
catch( NoSuchAlgorithmException noalgo ) | |||||
catch( final NoSuchAlgorithmException nsae ) | |||||
{ | { | ||||
throw new TaskException( noalgo.toString(), noalgo ); | |||||
throw new TaskException( nsae.toString(), nsae ); | |||||
} | } | ||||
} | } | ||||
} | |||||
if( messageDigest == null ) | |||||
{ | |||||
throw new TaskException( "Unable to create Message Digest" ); | |||||
} | |||||
addToIncludeFileMap( file ); | |||||
private void addIncludes() | |||||
throws TaskException | |||||
{ | |||||
addToIncludeFileMap( m_file ); | |||||
int sizeofFileSet = filesets.size(); | |||||
for( int i = 0; i < sizeofFileSet; i++ ) | |||||
final int size = m_filesets.size(); | |||||
for( int i = 0; i < size; i++ ) | |||||
{ | { | ||||
FileSet fs = (FileSet)filesets.get( i ); | |||||
DirectoryScanner ds = fs.getDirectoryScanner(); | |||||
String[] srcFiles = ds.getIncludedFiles(); | |||||
final FileSet fileSet = (FileSet)m_filesets.get( i ); | |||||
final DirectoryScanner scanner = fileSet.getDirectoryScanner(); | |||||
final String[] srcFiles = scanner.getIncludedFiles(); | |||||
for( int j = 0; j < srcFiles.length; j++ ) | for( int j = 0; j < srcFiles.length; j++ ) | ||||
{ | { | ||||
File src = new File( fs.getDir(), srcFiles[ j ] ); | |||||
final File src = new File( fileSet.getDir(), srcFiles[ j ] ); | |||||
addToIncludeFileMap( src ); | addToIncludeFileMap( src ); | ||||
} | } | ||||
} | } | ||||
return generateChecksums(); | |||||
} | } | ||||
} | } |
@@ -106,17 +106,17 @@ public class Java | |||||
/** | /** | ||||
* Creates a nested arg element. | * Creates a nested arg element. | ||||
*/ | */ | ||||
public Argument createArg() | |||||
public void addArg( final Argument argument ) | |||||
{ | { | ||||
return m_cmdl.createArgument(); | |||||
m_cmdl.addArgument( argument ); | |||||
} | } | ||||
/** | /** | ||||
* Creates a nested jvmarg element. | * Creates a nested jvmarg element. | ||||
*/ | */ | ||||
public Argument createJvmarg() | |||||
public void addJvmarg( final Argument argument ) | |||||
{ | { | ||||
return m_cmdl.createVmArgument(); | |||||
m_cmdl.addVmArgument( argument ); | |||||
} | } | ||||
public void execute() | public void execute() | ||||
@@ -192,7 +192,7 @@ public class Java | |||||
for( int i = 0; i < size; i++ ) | for( int i = 0; i < size; i++ ) | ||||
{ | { | ||||
final String arg = (String)args.get( i ); | final String arg = (String)args.get( i ); | ||||
java.createArgument().setValue( arg ); | |||||
java.addArgument( arg ); | |||||
} | } | ||||
run( java ); | run( java ); | ||||
} | } | ||||
@@ -154,35 +154,35 @@ public class Patch | |||||
if( m_backups ) | if( m_backups ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-b" ); | |||||
cmd.addArgument( "-b" ); | |||||
} | } | ||||
if( null != m_strip ) | if( null != m_strip ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-p" + m_strip.intValue() ); | |||||
cmd.addArgument( "-p" + m_strip.intValue() ); | |||||
} | } | ||||
if( m_quiet ) | if( m_quiet ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-s" ); | |||||
cmd.addArgument( "-s" ); | |||||
} | } | ||||
if( m_reverse ) | if( m_reverse ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-R" ); | |||||
cmd.addArgument( "-R" ); | |||||
} | } | ||||
cmd.createArgument().setValue( "-i" ); | |||||
cmd.createArgument().setFile( m_patchFile ); | |||||
cmd.addArgument( "-i" ); | |||||
cmd.addArgument( m_patchFile ); | |||||
if( m_ignorewhitespace ) | if( m_ignorewhitespace ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-l" ); | |||||
cmd.addArgument( "-l" ); | |||||
} | } | ||||
if( null != m_originalFile ) | if( null != m_originalFile ) | ||||
{ | { | ||||
cmd.createArgument().setFile( m_originalFile ); | |||||
cmd.addArgument( m_originalFile ); | |||||
} | } | ||||
return cmd; | return cmd; | ||||
} | } | ||||
@@ -22,6 +22,7 @@ import org.apache.tools.ant.types.SourceFileScanner; | |||||
import org.apache.aut.tar.TarConstants; | import org.apache.aut.tar.TarConstants; | ||||
import org.apache.aut.tar.TarEntry; | import org.apache.aut.tar.TarEntry; | ||||
import org.apache.aut.tar.TarOutputStream; | import org.apache.aut.tar.TarOutputStream; | ||||
import org.apache.avalon.excalibur.io.IOUtil; | |||||
/** | /** | ||||
* Creates a TAR archive. | * Creates a TAR archive. | ||||
@@ -128,7 +129,7 @@ public class Tar | |||||
} | } | ||||
// add the main fileset to the list of filesets to process. | // add the main fileset to the list of filesets to process. | ||||
TarFileSet mainFileSet = new TarFileSet( /*fileset*/ ); | |||||
final TarFileSet mainFileSet = new TarFileSet( /*fileset*/ ); | |||||
mainFileSet.setDir( baseDir ); | mainFileSet.setDir( baseDir ); | ||||
filesets.add( mainFileSet ); | filesets.add( mainFileSet ); | ||||
} | } | ||||
@@ -222,212 +223,88 @@ public class Tar | |||||
} | } | ||||
} | } | ||||
protected boolean archiveIsUpToDate( String[] files ) | |||||
private boolean archiveIsUpToDate( final String[] files ) | |||||
throws TaskException | throws TaskException | ||||
{ | { | ||||
SourceFileScanner sfs = new SourceFileScanner( this ); | |||||
MergingMapper mm = new MergingMapper(); | |||||
mm.setTo( tarFile.getAbsolutePath() ); | |||||
return sfs.restrict( files, baseDir, null, mm ).length == 0; | |||||
final SourceFileScanner scanner = new SourceFileScanner( this ); | |||||
final MergingMapper mapper = new MergingMapper(); | |||||
mapper.setTo( tarFile.getAbsolutePath() ); | |||||
return scanner.restrict( files, baseDir, null, mapper ).length == 0; | |||||
} | } | ||||
protected void tarFile( File file, TarOutputStream tOut, String vPath, | |||||
TarFileSet tarFileSet ) | |||||
private void tarFile( final File file, | |||||
final TarOutputStream output, | |||||
String path, | |||||
final TarFileSet tarFileSet ) | |||||
throws IOException, TaskException | throws IOException, TaskException | ||||
{ | { | ||||
FileInputStream fIn = null; | |||||
// don't add "" to the archive | // don't add "" to the archive | ||||
if( vPath.length() <= 0 ) | |||||
if( path.length() <= 0 ) | |||||
{ | { | ||||
return; | return; | ||||
} | } | ||||
if( file.isDirectory() && !vPath.endsWith( "/" ) ) | |||||
if( file.isDirectory() && !path.endsWith( "/" ) ) | |||||
{ | { | ||||
vPath += "/"; | |||||
path += "/"; | |||||
} | } | ||||
try | |||||
if( path.length() >= TarConstants.NAMELEN ) | |||||
{ | { | ||||
if( vPath.length() >= TarConstants.NAMELEN ) | |||||
if( longFileMode.isOmitMode() ) | |||||
{ | { | ||||
if( longFileMode.isOmitMode() ) | |||||
{ | |||||
getLogger().info( "Omitting: " + vPath ); | |||||
return; | |||||
} | |||||
else if( longFileMode.isWarnMode() ) | |||||
{ | |||||
final String message = "Entry: " + vPath + " longer than " + | |||||
TarConstants.NAMELEN + " characters."; | |||||
getLogger().warn( message ); | |||||
if( !longWarningGiven ) | |||||
{ | |||||
final String message2 = "Resulting tar file can only be processed successfully" | |||||
+ " by GNU compatible tar commands"; | |||||
getLogger().warn( message2 ); | |||||
longWarningGiven = true; | |||||
} | |||||
} | |||||
else if( longFileMode.isFailMode() ) | |||||
final String message = "Omitting: " + path; | |||||
getLogger().info( message ); | |||||
return; | |||||
} | |||||
else if( longFileMode.isWarnMode() ) | |||||
{ | |||||
final String message = "Entry: " + path + " longer than " + | |||||
TarConstants.NAMELEN + " characters."; | |||||
getLogger().warn( message ); | |||||
if( !longWarningGiven ) | |||||
{ | { | ||||
throw new TaskException( | |||||
"Entry: " + vPath + " longer than " + | |||||
TarConstants.NAMELEN + "characters." ); | |||||
final String message2 = "Resulting tar file can only be processed successfully" | |||||
+ " by GNU compatible tar commands"; | |||||
getLogger().warn( message2 ); | |||||
longWarningGiven = true; | |||||
} | } | ||||
} | } | ||||
TarEntry te = new TarEntry( vPath ); | |||||
te.setModTime( file.lastModified() ); | |||||
if( !file.isDirectory() ) | |||||
else if( longFileMode.isFailMode() ) | |||||
{ | { | ||||
te.setSize( file.length() ); | |||||
te.setMode( tarFileSet.getMode() ); | |||||
final String message = "Entry: " + path + " longer than " + | |||||
TarConstants.NAMELEN + "characters."; | |||||
throw new TaskException( message ); | |||||
} | } | ||||
te.setUserName( tarFileSet.getUserName() ); | |||||
te.setGroupName( tarFileSet.getGroup() ); | |||||
tOut.putNextEntry( te ); | |||||
} | |||||
FileInputStream input = null; | |||||
try | |||||
{ | |||||
final TarEntry entry = new TarEntry( path ); | |||||
entry.setModTime( file.lastModified() ); | |||||
if( !file.isDirectory() ) | if( !file.isDirectory() ) | ||||
{ | { | ||||
fIn = new FileInputStream( file ); | |||||
byte[] buffer = new byte[ 8 * 1024 ]; | |||||
int count = 0; | |||||
do | |||||
{ | |||||
tOut.write( buffer, 0, count ); | |||||
count = fIn.read( buffer, 0, buffer.length ); | |||||
} while( count != -1 ); | |||||
entry.setSize( file.length() ); | |||||
entry.setMode( tarFileSet.getMode() ); | |||||
} | } | ||||
entry.setUserName( tarFileSet.getUserName() ); | |||||
entry.setGroupName( tarFileSet.getGroup() ); | |||||
tOut.closeEntry(); | |||||
} | |||||
finally | |||||
{ | |||||
if( fIn != null ) | |||||
fIn.close(); | |||||
} | |||||
} | |||||
public static class TarFileSet extends FileSet | |||||
{ | |||||
private String[] files = null; | |||||
private int mode = 0100644; | |||||
private String userName = ""; | |||||
private String groupName = ""; | |||||
public void setGroup( String groupName ) | |||||
{ | |||||
this.groupName = groupName; | |||||
} | |||||
output.putNextEntry( entry ); | |||||
public void setMode( String octalString ) | |||||
{ | |||||
this.mode = 0100000 | Integer.parseInt( octalString, 8 ); | |||||
} | |||||
public void setUserName( String userName ) | |||||
{ | |||||
this.userName = userName; | |||||
} | |||||
/** | |||||
* Get a list of files and directories specified in the fileset. | |||||
* | |||||
* @param p Description of Parameter | |||||
* @return a list of file and directory names, relative to the baseDir | |||||
* for the project. | |||||
*/ | |||||
public String[] getFiles() | |||||
throws TaskException | |||||
{ | |||||
if( files == null ) | |||||
if( !file.isDirectory() ) | |||||
{ | { | ||||
final DirectoryScanner scanner = getDirectoryScanner(); | |||||
final String[] directories = scanner.getIncludedDirectories(); | |||||
final String[] filesPerSe = scanner.getIncludedFiles(); | |||||
files = new String[ directories.length + filesPerSe.length ]; | |||||
System.arraycopy( directories, 0, files, 0, directories.length ); | |||||
System.arraycopy( filesPerSe, 0, files, directories.length, | |||||
filesPerSe.length ); | |||||
input = new FileInputStream( file ); | |||||
IOUtil.copy( input, output ); | |||||
} | } | ||||
return files; | |||||
output.closeEntry(); | |||||
} | } | ||||
public String getGroup() | |||||
{ | |||||
return groupName; | |||||
} | |||||
public int getMode() | |||||
{ | |||||
return mode; | |||||
} | |||||
public String getUserName() | |||||
{ | |||||
return userName; | |||||
} | |||||
} | |||||
/** | |||||
* Valid Modes for LongFile attribute to Tar Task | |||||
* | |||||
* @author <a href="mailto:umagesh@apache.org">Magesh Umasankar</a> | |||||
*/ | |||||
public static class TarLongFileMode extends EnumeratedAttribute | |||||
{ | |||||
// permissable values for longfile attribute | |||||
public final static String WARN = "warn"; | |||||
public final static String FAIL = "fail"; | |||||
public final static String TRUNCATE = "truncate"; | |||||
public final static String GNU = "gnu"; | |||||
public final static String OMIT = "omit"; | |||||
private final String[] validModes = {WARN, FAIL, TRUNCATE, GNU, OMIT}; | |||||
public TarLongFileMode() | |||||
throws TaskException | |||||
{ | |||||
super(); | |||||
setValue( WARN ); | |||||
} | |||||
public String[] getValues() | |||||
{ | |||||
return validModes; | |||||
} | |||||
public boolean isFailMode() | |||||
{ | |||||
return FAIL.equalsIgnoreCase( getValue() ); | |||||
} | |||||
public boolean isGnuMode() | |||||
{ | |||||
return GNU.equalsIgnoreCase( getValue() ); | |||||
} | |||||
public boolean isOmitMode() | |||||
{ | |||||
return OMIT.equalsIgnoreCase( getValue() ); | |||||
} | |||||
public boolean isTruncateMode() | |||||
{ | |||||
return TRUNCATE.equalsIgnoreCase( getValue() ); | |||||
} | |||||
public boolean isWarnMode() | |||||
finally | |||||
{ | { | ||||
return WARN.equalsIgnoreCase( getValue() ); | |||||
if( input != null ) | |||||
input.close(); | |||||
} | } | ||||
} | } | ||||
} | } |
@@ -0,0 +1,75 @@ | |||||
/* | |||||
* Copyright (C) The Apache Software Foundation. All rights reserved. | |||||
* | |||||
* This software is published under the terms of the Apache Software License | |||||
* version 1.1, a copy of which has been included with this distribution in | |||||
* the LICENSE.txt file. | |||||
*/ | |||||
package org.apache.tools.ant.taskdefs; | |||||
import org.apache.tools.ant.types.FileSet; | |||||
import org.apache.tools.ant.types.DirectoryScanner; | |||||
import org.apache.myrmidon.api.TaskException; | |||||
public class TarFileSet | |||||
extends FileSet | |||||
{ | |||||
private String[] m_files; | |||||
private int m_mode = 0100644; | |||||
private String m_userName = ""; | |||||
private String m_groupName = ""; | |||||
public void setGroup( final String groupName ) | |||||
{ | |||||
m_groupName = groupName; | |||||
} | |||||
public void setMode( final String octalString ) | |||||
{ | |||||
m_mode = 0100000 | Integer.parseInt( octalString, 8 ); | |||||
} | |||||
public void setUserName( final String userName ) | |||||
{ | |||||
m_userName = userName; | |||||
} | |||||
/** | |||||
* Get a list of files and directories specified in the fileset. | |||||
* | |||||
* @return a list of file and directory names, relative to the baseDir | |||||
* for the project. | |||||
*/ | |||||
protected String[] getFiles() | |||||
throws TaskException | |||||
{ | |||||
if( m_files == null ) | |||||
{ | |||||
final DirectoryScanner scanner = getDirectoryScanner(); | |||||
final String[] directories = scanner.getIncludedDirectories(); | |||||
final String[] filesPerSe = scanner.getIncludedFiles(); | |||||
m_files = new String[ directories.length + filesPerSe.length ]; | |||||
System.arraycopy( directories, 0, m_files, 0, directories.length ); | |||||
System.arraycopy( filesPerSe, 0, m_files, directories.length, | |||||
filesPerSe.length ); | |||||
} | |||||
return m_files; | |||||
} | |||||
protected String getGroup() | |||||
{ | |||||
return m_groupName; | |||||
} | |||||
protected int getMode() | |||||
{ | |||||
return m_mode; | |||||
} | |||||
protected String getUserName() | |||||
{ | |||||
return m_userName; | |||||
} | |||||
} |
@@ -0,0 +1,66 @@ | |||||
/* | |||||
* Copyright (C) The Apache Software Foundation. All rights reserved. | |||||
* | |||||
* This software is published under the terms of the Apache Software License | |||||
* version 1.1, a copy of which has been included with this distribution in | |||||
* the LICENSE.txt file. | |||||
*/ | |||||
package org.apache.tools.ant.taskdefs; | |||||
import org.apache.myrmidon.api.TaskException; | |||||
import org.apache.tools.ant.types.EnumeratedAttribute; | |||||
/** | |||||
* Valid Modes for LongFile attribute to Tar Task | |||||
* | |||||
* @author <a href="mailto:umagesh@apache.org">Magesh Umasankar</a> | |||||
*/ | |||||
public class TarLongFileMode | |||||
extends EnumeratedAttribute | |||||
{ | |||||
// permissable values for longfile attribute | |||||
public final static String WARN = "warn"; | |||||
public final static String FAIL = "fail"; | |||||
public final static String TRUNCATE = "truncate"; | |||||
public final static String GNU = "gnu"; | |||||
public final static String OMIT = "omit"; | |||||
private final String[] validModes = {WARN, FAIL, TRUNCATE, GNU, OMIT}; | |||||
public TarLongFileMode() | |||||
throws TaskException | |||||
{ | |||||
super(); | |||||
setValue( WARN ); | |||||
} | |||||
public String[] getValues() | |||||
{ | |||||
return validModes; | |||||
} | |||||
public boolean isFailMode() | |||||
{ | |||||
return FAIL.equalsIgnoreCase( getValue() ); | |||||
} | |||||
public boolean isGnuMode() | |||||
{ | |||||
return GNU.equalsIgnoreCase( getValue() ); | |||||
} | |||||
public boolean isOmitMode() | |||||
{ | |||||
return OMIT.equalsIgnoreCase( getValue() ); | |||||
} | |||||
public boolean isTruncateMode() | |||||
{ | |||||
return TRUNCATE.equalsIgnoreCase( getValue() ); | |||||
} | |||||
public boolean isWarnMode() | |||||
{ | |||||
return WARN.equalsIgnoreCase( getValue() ); | |||||
} | |||||
} |
@@ -20,6 +20,7 @@ import org.apache.tools.ant.taskdefs.exec.Execute2; | |||||
import org.apache.tools.ant.types.Commandline; | import org.apache.tools.ant.types.Commandline; | ||||
import org.apache.tools.ant.types.Path; | import org.apache.tools.ant.types.Path; | ||||
import org.apache.tools.ant.types.FileSet; | import org.apache.tools.ant.types.FileSet; | ||||
import org.apache.tools.ant.util.FileUtils; | |||||
/** | /** | ||||
* This is the default implementation for the CompilerAdapter interface. | * This is the default implementation for the CompilerAdapter interface. | ||||
@@ -133,7 +134,7 @@ public abstract class DefaultCompilerAdapter | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
cmd.createArgument().setValue( memoryParameterPrefix + "ms" + m_memoryInitialSize ); | |||||
cmd.addArgument( memoryParameterPrefix + "ms" + m_memoryInitialSize ); | |||||
} | } | ||||
} | } | ||||
@@ -146,54 +147,54 @@ public abstract class DefaultCompilerAdapter | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
cmd.createArgument().setValue( memoryParameterPrefix + "mx" + m_memoryMaximumSize ); | |||||
cmd.addArgument( memoryParameterPrefix + "mx" + m_memoryMaximumSize ); | |||||
} | } | ||||
} | } | ||||
if( m_attributes.getNowarn() ) | if( m_attributes.getNowarn() ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-nowarn" ); | |||||
cmd.addArgument( "-nowarn" ); | |||||
} | } | ||||
if( m_deprecation == true ) | if( m_deprecation == true ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-deprecation" ); | |||||
cmd.addArgument( "-deprecation" ); | |||||
} | } | ||||
if( m_destDir != null ) | if( m_destDir != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-d" ); | |||||
cmd.createArgument().setFile( m_destDir ); | |||||
cmd.addArgument( "-d" ); | |||||
cmd.addArgument( m_destDir ); | |||||
} | } | ||||
cmd.createArgument().setValue( "-classpath" ); | |||||
cmd.createArgument().setPath( classpath ); | |||||
cmd.addArgument( "-classpath" ); | |||||
cmd.addArguments( FileUtils.translateCommandline( classpath ) ); | |||||
cmd.createArgument().setValue( "-sourcepath" ); | |||||
cmd.createArgument().setPath( src ); | |||||
cmd.addArgument( "-sourcepath" ); | |||||
cmd.addArguments( FileUtils.translateCommandline( src ) ); | |||||
if( target != null ) | if( target != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-target" ); | |||||
cmd.createArgument().setValue( target ); | |||||
cmd.addArgument( "-target" ); | |||||
cmd.addArgument( target ); | |||||
} | } | ||||
if( m_bootclasspath != null ) | if( m_bootclasspath != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-bootclasspath" ); | |||||
cmd.createArgument().setPath( m_bootclasspath ); | |||||
cmd.addArgument( "-bootclasspath" ); | |||||
cmd.addArguments( FileUtils.translateCommandline( m_bootclasspath ) ); | |||||
} | } | ||||
if( m_extdirs != null ) | if( m_extdirs != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-extdirs" ); | |||||
cmd.createArgument().setPath( m_extdirs ); | |||||
cmd.addArgument( "-extdirs" ); | |||||
cmd.addArguments( FileUtils.translateCommandline( m_extdirs ) ); | |||||
} | } | ||||
if( m_encoding != null ) | if( m_encoding != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-encoding" ); | |||||
cmd.createArgument().setValue( m_encoding ); | |||||
cmd.addArgument( "-encoding" ); | |||||
cmd.addArgument( m_encoding ); | |||||
} | } | ||||
if( m_debug ) | if( m_debug ) | ||||
{ | { | ||||
@@ -202,30 +203,30 @@ public abstract class DefaultCompilerAdapter | |||||
String debugLevel = m_attributes.getDebugLevel(); | String debugLevel = m_attributes.getDebugLevel(); | ||||
if( debugLevel != null ) | if( debugLevel != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-g:" + debugLevel ); | |||||
cmd.addArgument( "-g:" + debugLevel ); | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
cmd.createArgument().setValue( "-g" ); | |||||
cmd.addArgument( "-g" ); | |||||
} | } | ||||
} | } | ||||
else | else | ||||
{ | { | ||||
cmd.createArgument().setValue( "-g" ); | |||||
cmd.addArgument( "-g" ); | |||||
} | } | ||||
} | } | ||||
else | else | ||||
{ | { | ||||
cmd.createArgument().setValue( "-g:none" ); | |||||
cmd.addArgument( "-g:none" ); | |||||
} | } | ||||
if( m_optimize ) | if( m_optimize ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-O" ); | |||||
cmd.addArgument( "-O" ); | |||||
} | } | ||||
if( m_verbose ) | if( m_verbose ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-verbose" ); | |||||
cmd.addArgument( "-verbose" ); | |||||
} | } | ||||
addCurrentCompilerArgs( cmd ); | addCurrentCompilerArgs( cmd ); | ||||
@@ -262,8 +263,8 @@ public abstract class DefaultCompilerAdapter | |||||
setupJavacCommandlineSwitches( cmd, true ); | setupJavacCommandlineSwitches( cmd, true ); | ||||
if( m_attributes.getSource() != null ) | if( m_attributes.getSource() != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-source" ); | |||||
cmd.createArgument().setValue( m_attributes.getSource() ); | |||||
cmd.addArgument( "-source" ); | |||||
cmd.addArgument( m_attributes.getSource() ); | |||||
} | } | ||||
return cmd; | return cmd; | ||||
} | } | ||||
@@ -410,7 +411,7 @@ public abstract class DefaultCompilerAdapter | |||||
for( int i = 0; i < m_compileList.length; i++ ) | for( int i = 0; i < m_compileList.length; i++ ) | ||||
{ | { | ||||
String arg = m_compileList[ i ].getAbsolutePath(); | String arg = m_compileList[ i ].getAbsolutePath(); | ||||
cmd.createArgument().setValue( arg ); | |||||
cmd.addArgument( arg ); | |||||
niceSourceList.append( " " + arg + StringUtil.LINE_SEPARATOR ); | niceSourceList.append( " " + arg + StringUtil.LINE_SEPARATOR ); | ||||
} | } | ||||
@@ -10,6 +10,7 @@ package org.apache.tools.ant.taskdefs.compilers; | |||||
import org.apache.myrmidon.api.TaskException; | import org.apache.myrmidon.api.TaskException; | ||||
import org.apache.tools.ant.types.Commandline; | import org.apache.tools.ant.types.Commandline; | ||||
import org.apache.tools.ant.types.Path; | import org.apache.tools.ant.types.Path; | ||||
import org.apache.tools.ant.util.FileUtils; | |||||
/** | /** | ||||
* The implementation of the gcj compiler. This is primarily a cut-and-paste | * The implementation of the gcj compiler. This is primarily a cut-and-paste | ||||
@@ -72,8 +73,8 @@ public class Gcj extends DefaultCompilerAdapter | |||||
if( m_destDir != null ) | if( m_destDir != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-d" ); | |||||
cmd.createArgument().setFile( m_destDir ); | |||||
cmd.addArgument( "-d" ); | |||||
cmd.addArgument( m_destDir ); | |||||
if( m_destDir.mkdirs() ) | if( m_destDir.mkdirs() ) | ||||
{ | { | ||||
@@ -82,26 +83,26 @@ public class Gcj extends DefaultCompilerAdapter | |||||
; | ; | ||||
} | } | ||||
cmd.createArgument().setValue( "-classpath" ); | |||||
cmd.createArgument().setPath( classpath ); | |||||
cmd.addArgument( "-classpath" ); | |||||
cmd.addArguments( FileUtils.translateCommandline( classpath ) ); | |||||
if( m_encoding != null ) | if( m_encoding != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "--encoding=" + m_encoding ); | |||||
cmd.addArgument( "--encoding=" + m_encoding ); | |||||
} | } | ||||
if( m_debug ) | if( m_debug ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-g1" ); | |||||
cmd.addArgument( "-g1" ); | |||||
} | } | ||||
if( m_optimize ) | if( m_optimize ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-O" ); | |||||
cmd.addArgument( "-O" ); | |||||
} | } | ||||
/** | /** | ||||
* gcj should be set for generate class. | * gcj should be set for generate class. | ||||
*/ | */ | ||||
cmd.createArgument().setValue( "-C" ); | |||||
cmd.addArgument( "-C" ); | |||||
addCurrentCompilerArgs( cmd ); | addCurrentCompilerArgs( cmd ); | ||||
@@ -10,6 +10,7 @@ package org.apache.tools.ant.taskdefs.compilers; | |||||
import org.apache.myrmidon.api.TaskException; | import org.apache.myrmidon.api.TaskException; | ||||
import org.apache.tools.ant.types.Commandline; | import org.apache.tools.ant.types.Commandline; | ||||
import org.apache.tools.ant.types.Path; | import org.apache.tools.ant.types.Path; | ||||
import org.apache.tools.ant.util.FileUtils; | |||||
/** | /** | ||||
* The implementation of the jikes compiler. This is primarily a cut-and-paste | * The implementation of the jikes compiler. This is primarily a cut-and-paste | ||||
@@ -83,37 +84,37 @@ public class Jikes | |||||
cmd.setExecutable( "jikes" ); | cmd.setExecutable( "jikes" ); | ||||
if( m_deprecation == true ) | if( m_deprecation == true ) | ||||
cmd.createArgument().setValue( "-deprecation" ); | |||||
cmd.addArgument( "-deprecation" ); | |||||
if( m_destDir != null ) | if( m_destDir != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-d" ); | |||||
cmd.createArgument().setFile( m_destDir ); | |||||
cmd.addArgument( "-d" ); | |||||
cmd.addArgument( m_destDir ); | |||||
} | } | ||||
cmd.createArgument().setValue( "-classpath" ); | |||||
cmd.createArgument().setPath( classpath ); | |||||
cmd.addArgument( "-classpath" ); | |||||
cmd.addArguments( FileUtils.translateCommandline( classpath ) ); | |||||
if( m_encoding != null ) | if( m_encoding != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-encoding" ); | |||||
cmd.createArgument().setValue( m_encoding ); | |||||
cmd.addArgument( "-encoding" ); | |||||
cmd.addArgument( m_encoding ); | |||||
} | } | ||||
if( m_debug ) | if( m_debug ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-g" ); | |||||
cmd.addArgument( "-g" ); | |||||
} | } | ||||
if( m_optimize ) | if( m_optimize ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-O" ); | |||||
cmd.addArgument( "-O" ); | |||||
} | } | ||||
if( m_verbose ) | if( m_verbose ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-verbose" ); | |||||
cmd.addArgument( "-verbose" ); | |||||
} | } | ||||
if( m_depend ) | if( m_depend ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-depend" ); | |||||
cmd.addArgument( "-depend" ); | |||||
} | } | ||||
if( m_attributes.getNowarn() ) | if( m_attributes.getNowarn() ) | ||||
@@ -124,7 +125,7 @@ public class Jikes | |||||
* let the magic property win over the attribute for backwards | * let the magic property win over the attribute for backwards | ||||
* compatibility | * compatibility | ||||
*/ | */ | ||||
cmd.createArgument().setValue( "-nowarn" ); | |||||
cmd.addArgument( "-nowarn" ); | |||||
} | } | ||||
addCurrentCompilerArgs( cmd ); | addCurrentCompilerArgs( cmd ); | ||||
@@ -10,6 +10,7 @@ package org.apache.tools.ant.taskdefs.compilers; | |||||
import org.apache.myrmidon.api.TaskException; | import org.apache.myrmidon.api.TaskException; | ||||
import org.apache.tools.ant.types.Commandline; | import org.apache.tools.ant.types.Commandline; | ||||
import org.apache.tools.ant.types.Path; | import org.apache.tools.ant.types.Path; | ||||
import org.apache.tools.ant.util.FileUtils; | |||||
/** | /** | ||||
* The implementation of the jvc compiler from microsoft. This is primarily a | * The implementation of the jvc compiler from microsoft. This is primarily a | ||||
@@ -65,32 +66,32 @@ public class Jvc extends DefaultCompilerAdapter | |||||
if( m_destDir != null ) | if( m_destDir != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "/d" ); | |||||
cmd.createArgument().setFile( m_destDir ); | |||||
cmd.addArgument( "/d" ); | |||||
cmd.addArgument( m_destDir ); | |||||
} | } | ||||
// Add the Classpath before the "internal" one. | // Add the Classpath before the "internal" one. | ||||
cmd.createArgument().setValue( "/cp:p" ); | |||||
cmd.createArgument().setPath( classpath ); | |||||
cmd.addArgument( "/cp:p" ); | |||||
cmd.addArguments( FileUtils.translateCommandline( classpath ) ); | |||||
// Enable MS-Extensions and ... | // Enable MS-Extensions and ... | ||||
cmd.createArgument().setValue( "/x-" ); | |||||
cmd.addArgument( "/x-" ); | |||||
// ... do not display a Message about this. | // ... do not display a Message about this. | ||||
cmd.createArgument().setValue( "/nomessage" ); | |||||
cmd.addArgument( "/nomessage" ); | |||||
// Do not display Logo | // Do not display Logo | ||||
cmd.createArgument().setValue( "/nologo" ); | |||||
cmd.addArgument( "/nologo" ); | |||||
if( m_debug ) | if( m_debug ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "/g" ); | |||||
cmd.addArgument( "/g" ); | |||||
} | } | ||||
if( m_optimize ) | if( m_optimize ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "/O" ); | |||||
cmd.addArgument( "/O" ); | |||||
} | } | ||||
if( m_verbose ) | if( m_verbose ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "/verbose" ); | |||||
cmd.addArgument( "/verbose" ); | |||||
} | } | ||||
addCurrentCompilerArgs( cmd ); | addCurrentCompilerArgs( cmd ); | ||||
@@ -11,6 +11,7 @@ import java.lang.reflect.Method; | |||||
import org.apache.myrmidon.api.TaskException; | import org.apache.myrmidon.api.TaskException; | ||||
import org.apache.tools.ant.types.Commandline; | import org.apache.tools.ant.types.Commandline; | ||||
import org.apache.tools.ant.types.Path; | import org.apache.tools.ant.types.Path; | ||||
import org.apache.tools.ant.util.FileUtils; | |||||
/** | /** | ||||
* The implementation of the Java compiler for KJC. This is primarily a | * The implementation of the Java compiler for KJC. This is primarily a | ||||
@@ -72,17 +73,17 @@ public class Kjc extends DefaultCompilerAdapter | |||||
if( m_deprecation == true ) | if( m_deprecation == true ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-deprecation" ); | |||||
cmd.addArgument( "-deprecation" ); | |||||
} | } | ||||
if( m_destDir != null ) | if( m_destDir != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-d" ); | |||||
cmd.createArgument().setFile( m_destDir ); | |||||
cmd.addArgument( "-d" ); | |||||
cmd.addArgument( m_destDir ); | |||||
} | } | ||||
// generate the clsspath | // generate the clsspath | ||||
cmd.createArgument().setValue( "-classpath" ); | |||||
cmd.addArgument( "-classpath" ); | |||||
Path cp = new Path(); | Path cp = new Path(); | ||||
@@ -100,29 +101,29 @@ public class Kjc extends DefaultCompilerAdapter | |||||
cp.append( classpath ); | cp.append( classpath ); | ||||
cp.append( src ); | cp.append( src ); | ||||
cmd.createArgument().setPath( cp ); | |||||
cmd.addArguments( FileUtils.translateCommandline( cp ) ); | |||||
// kjc-1.5A doesn't support -encoding option now. | // kjc-1.5A doesn't support -encoding option now. | ||||
// but it will be supported near the feature. | // but it will be supported near the feature. | ||||
if( m_encoding != null ) | if( m_encoding != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-encoding" ); | |||||
cmd.createArgument().setValue( m_encoding ); | |||||
cmd.addArgument( "-encoding" ); | |||||
cmd.addArgument( m_encoding ); | |||||
} | } | ||||
if( m_debug ) | if( m_debug ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-g" ); | |||||
cmd.addArgument( "-g" ); | |||||
} | } | ||||
if( m_optimize ) | if( m_optimize ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-O2" ); | |||||
cmd.addArgument( "-O2" ); | |||||
} | } | ||||
if( m_verbose ) | if( m_verbose ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-verbose" ); | |||||
cmd.addArgument( "-verbose" ); | |||||
} | } | ||||
addCurrentCompilerArgs( cmd ); | addCurrentCompilerArgs( cmd ); | ||||
@@ -162,12 +162,10 @@ public class ExecTask | |||||
/** | /** | ||||
* Add a nested arg element - a command line argument. | * Add a nested arg element - a command line argument. | ||||
* | |||||
* @return Description of the Returned Value | |||||
*/ | */ | ||||
public Argument createArg() | |||||
public void addArg( final Argument argument ) | |||||
{ | { | ||||
return m_command.createArgument(); | |||||
m_command.addArgument( argument ); | |||||
} | } | ||||
/** | /** | ||||
@@ -20,6 +20,7 @@ import org.apache.aut.nativelib.Os; | |||||
import org.apache.aut.nativelib.ExecOutputHandler; | import org.apache.aut.nativelib.ExecOutputHandler; | ||||
import org.apache.tools.ant.types.DirectoryScanner; | import org.apache.tools.ant.types.DirectoryScanner; | ||||
import org.apache.tools.ant.Task; | import org.apache.tools.ant.Task; | ||||
import org.apache.tools.ant.util.FileUtils; | |||||
import org.apache.tools.ant.taskdefs.exec.Execute2; | import org.apache.tools.ant.taskdefs.exec.Execute2; | ||||
import org.apache.tools.ant.types.Commandline; | import org.apache.tools.ant.types.Commandline; | ||||
import org.apache.tools.ant.types.FileSet; | import org.apache.tools.ant.types.FileSet; | ||||
@@ -89,7 +90,7 @@ public class Javadoc | |||||
public void setAccess( AccessType at ) | public void setAccess( AccessType at ) | ||||
{ | { | ||||
m_command.createArgument().setValue( "-" + at.getValue() ); | |||||
m_command.addArgument( "-" + at.getValue() ); | |||||
} | } | ||||
public void setAdditionalparam( String add ) | public void setAdditionalparam( String add ) | ||||
@@ -155,14 +156,14 @@ public class Javadoc | |||||
public void setDestdir( File dir ) | public void setDestdir( File dir ) | ||||
{ | { | ||||
m_destDir = dir; | m_destDir = dir; | ||||
m_command.createArgument().setValue( "-d" ); | |||||
m_command.createArgument().setFile( m_destDir ); | |||||
m_command.addArgument( "-d" ); | |||||
m_command.addArgument( m_destDir ); | |||||
} | } | ||||
public void setDocencoding( String enc ) | public void setDocencoding( String enc ) | ||||
{ | { | ||||
m_command.createArgument().setValue( "-docencoding" ); | |||||
m_command.createArgument().setValue( enc ); | |||||
m_command.addArgument( "-docencoding" ); | |||||
m_command.addArgument( enc ); | |||||
} | } | ||||
public void setDoclet( String src ) | public void setDoclet( String src ) | ||||
@@ -193,8 +194,8 @@ public class Javadoc | |||||
public void setEncoding( String enc ) | public void setEncoding( String enc ) | ||||
{ | { | ||||
m_command.createArgument().setValue( "-encoding" ); | |||||
m_command.createArgument().setValue( enc ); | |||||
m_command.addArgument( "-encoding" ); | |||||
m_command.addArgument( enc ); | |||||
} | } | ||||
public void setExcludePackageNames( String src ) | public void setExcludePackageNames( String src ) | ||||
@@ -211,8 +212,8 @@ public class Javadoc | |||||
public void setExtdirs( String src ) | public void setExtdirs( String src ) | ||||
{ | { | ||||
m_command.createArgument().setValue( "-extdirs" ); | |||||
m_command.createArgument().setValue( src ); | |||||
m_command.addArgument( "-extdirs" ); | |||||
m_command.addArgument( src ); | |||||
} | } | ||||
public void setFooter( String src ) | public void setFooter( String src ) | ||||
@@ -236,8 +237,8 @@ public class Javadoc | |||||
public void setHelpfile( File f ) | public void setHelpfile( File f ) | ||||
{ | { | ||||
m_command.createArgument().setValue( "-helpfile" ); | |||||
m_command.createArgument().setFile( f ); | |||||
m_command.addArgument( "-helpfile" ); | |||||
m_command.addArgument( f ); | |||||
} | } | ||||
public void setLink( String src ) | public void setLink( String src ) | ||||
@@ -268,13 +269,13 @@ public class Javadoc | |||||
public void setLocale( String src ) | public void setLocale( String src ) | ||||
{ | { | ||||
m_command.createArgument().setValue( "-locale" ); | |||||
m_command.createArgument().setValue( src ); | |||||
m_command.addArgument( "-locale" ); | |||||
m_command.addArgument( src ); | |||||
} | } | ||||
public void setMaxmemory( final String max ) | public void setMaxmemory( final String max ) | ||||
{ | { | ||||
m_command.createArgument().setValue( "-J-Xmx" + max ); | |||||
m_command.addArgument( "-J-Xmx" + max ); | |||||
} | } | ||||
public void setNodeprecated( boolean b ) | public void setNodeprecated( boolean b ) | ||||
@@ -314,8 +315,8 @@ public class Javadoc | |||||
public void setOverview( File f ) | public void setOverview( File f ) | ||||
{ | { | ||||
m_command.createArgument().setValue( "-overview" ); | |||||
m_command.createArgument().setFile( f ); | |||||
m_command.addArgument( "-overview" ); | |||||
m_command.addArgument( f ); | |||||
} | } | ||||
public void setPackage( boolean b ) | public void setPackage( boolean b ) | ||||
@@ -393,8 +394,8 @@ public class Javadoc | |||||
public void setStylesheetfile( File f ) | public void setStylesheetfile( File f ) | ||||
{ | { | ||||
m_command.createArgument().setValue( "-stylesheetfile" ); | |||||
m_command.createArgument().setFile( f ); | |||||
m_command.addArgument( "-stylesheetfile" ); | |||||
m_command.addArgument( f ); | |||||
} | } | ||||
public void setUse( boolean b ) | public void setUse( boolean b ) | ||||
@@ -536,23 +537,23 @@ public class Javadoc | |||||
if( m_doctitle != null ) | if( m_doctitle != null ) | ||||
{ | { | ||||
m_command.createArgument().setValue( "-doctitle" ); | |||||
m_command.createArgument().setValue( m_doctitle.getText() ); | |||||
m_command.addArgument( "-doctitle" ); | |||||
m_command.addArgument( m_doctitle.getText() ); | |||||
} | } | ||||
if( m_header != null ) | if( m_header != null ) | ||||
{ | { | ||||
m_command.createArgument().setValue( "-header" ); | |||||
m_command.createArgument().setValue( m_header.getText() ); | |||||
m_command.addArgument( "-header" ); | |||||
m_command.addArgument( m_header.getText() ); | |||||
} | } | ||||
if( m_footer != null ) | if( m_footer != null ) | ||||
{ | { | ||||
m_command.createArgument().setValue( "-footer" ); | |||||
m_command.createArgument().setValue( m_footer.getText() ); | |||||
m_command.addArgument( "-footer" ); | |||||
m_command.addArgument( m_footer.getText() ); | |||||
} | } | ||||
if( m_bottom != null ) | if( m_bottom != null ) | ||||
{ | { | ||||
m_command.createArgument().setValue( "-bottom" ); | |||||
m_command.createArgument().setValue( m_bottom.getText() ); | |||||
m_command.addArgument( "-bottom" ); | |||||
m_command.addArgument( m_bottom.getText() ); | |||||
} | } | ||||
Commandline cmd = new Commandline();//(Commandline)m_command.clone(); | Commandline cmd = new Commandline();//(Commandline)m_command.clone(); | ||||
@@ -567,13 +568,13 @@ public class Javadoc | |||||
{ | { | ||||
classpath.addPath( m_classpath ); | classpath.addPath( m_classpath ); | ||||
} | } | ||||
cmd.createArgument().setValue( "-classpath" ); | |||||
cmd.createArgument().setValue( classpath.toString() ); | |||||
cmd.addArgument( "-classpath" ); | |||||
cmd.addArgument( classpath.toString() ); | |||||
if( m_version && m_doclet == null ) | if( m_version && m_doclet == null ) | ||||
cmd.createArgument().setValue( "-version" ); | |||||
cmd.addArgument( "-version" ); | |||||
if( m_author && m_doclet == null ) | if( m_author && m_doclet == null ) | ||||
cmd.createArgument().setValue( "-author" ); | |||||
cmd.addArgument( "-author" ); | |||||
if( m_doclet == null ) | if( m_doclet == null ) | ||||
{ | { | ||||
@@ -596,12 +597,12 @@ public class Javadoc | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
cmd.createArgument().setValue( "-doclet" ); | |||||
cmd.createArgument().setValue( m_doclet.getName() ); | |||||
cmd.addArgument( "-doclet" ); | |||||
cmd.addArgument( m_doclet.getName() ); | |||||
if( m_doclet.getPath() != null ) | if( m_doclet.getPath() != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-docletpath" ); | |||||
cmd.createArgument().setPath( m_doclet.getPath() ); | |||||
cmd.addArgument( "-docletpath" ); | |||||
cmd.addArguments( FileUtils.translateCommandline( m_doclet.getPath() ) ); | |||||
} | } | ||||
for( Iterator e = m_doclet.getParams(); e.hasNext(); ) | for( Iterator e = m_doclet.getParams(); e.hasNext(); ) | ||||
{ | { | ||||
@@ -611,18 +612,18 @@ public class Javadoc | |||||
throw new TaskException( "Doclet parameters must have a name" ); | throw new TaskException( "Doclet parameters must have a name" ); | ||||
} | } | ||||
cmd.createArgument().setValue( param.getName() ); | |||||
cmd.addArgument( param.getName() ); | |||||
if( param.getValue() != null ) | if( param.getValue() != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( param.getValue() ); | |||||
cmd.addArgument( param.getValue() ); | |||||
} | } | ||||
} | } | ||||
} | } | ||||
if( m_bootclasspath != null ) | if( m_bootclasspath != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-bootclasspath" ); | |||||
cmd.createArgument().setPath( m_bootclasspath ); | |||||
cmd.addArgument( "-bootclasspath" ); | |||||
cmd.addArguments( FileUtils.translateCommandline( m_bootclasspath ) ); | |||||
} | } | ||||
// add the links arguments | // add the links arguments | ||||
@@ -648,9 +649,9 @@ public class Javadoc | |||||
File packageList = new File( packageListLocation, "package-list" ); | File packageList = new File( packageListLocation, "package-list" ); | ||||
if( packageList.exists() ) | if( packageList.exists() ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-linkoffline" ); | |||||
cmd.createArgument().setValue( la.getHref() ); | |||||
cmd.createArgument().setValue( packageListLocation.getAbsolutePath() ); | |||||
cmd.addArgument( "-linkoffline" ); | |||||
cmd.addArgument( la.getHref() ); | |||||
cmd.addArgument( packageListLocation.getAbsolutePath() ); | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
@@ -659,8 +660,8 @@ public class Javadoc | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
cmd.createArgument().setValue( "-link" ); | |||||
cmd.createArgument().setValue( la.getHref() ); | |||||
cmd.addArgument( "-link" ); | |||||
cmd.addArgument( la.getHref() ); | |||||
} | } | ||||
} | } | ||||
} | } | ||||
@@ -687,9 +688,9 @@ public class Javadoc | |||||
{ | { | ||||
String name = grp.substring( 0, space ); | String name = grp.substring( 0, space ); | ||||
String pkgList = grp.substring( space + 1 ); | String pkgList = grp.substring( space + 1 ); | ||||
cmd.createArgument().setValue( "-group" ); | |||||
cmd.createArgument().setValue( name ); | |||||
cmd.createArgument().setValue( pkgList ); | |||||
cmd.addArgument( "-group" ); | |||||
cmd.addArgument( name ); | |||||
cmd.addArgument( pkgList ); | |||||
} | } | ||||
} | } | ||||
} | } | ||||
@@ -706,9 +707,9 @@ public class Javadoc | |||||
{ | { | ||||
throw new TaskException( "The title and packages must be specified for group elements." ); | throw new TaskException( "The title and packages must be specified for group elements." ); | ||||
} | } | ||||
cmd.createArgument().setValue( "-group" ); | |||||
cmd.createArgument().setValue( title ); | |||||
cmd.createArgument().setValue( packages ); | |||||
cmd.addArgument( "-group" ); | |||||
cmd.addArgument( title ); | |||||
cmd.addArgument( packages ); | |||||
} | } | ||||
} | } | ||||
@@ -729,7 +730,7 @@ public class Javadoc | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
cmd.createArgument().setValue( name ); | |||||
cmd.addArgument( name ); | |||||
} | } | ||||
} | } | ||||
@@ -763,7 +764,7 @@ public class Javadoc | |||||
if( m_tmpList == null ) | if( m_tmpList == null ) | ||||
{ | { | ||||
m_tmpList = File.createTempFile( "javadoc", "", getBaseDirectory() ); | m_tmpList = File.createTempFile( "javadoc", "", getBaseDirectory() ); | ||||
cmd.createArgument().setValue( "@" + m_tmpList.getAbsolutePath() ); | |||||
cmd.addArgument( "@" + m_tmpList.getAbsolutePath() ); | |||||
} | } | ||||
srcListWriter = new PrintWriter( new FileWriter( m_tmpList.getAbsolutePath(), | srcListWriter = new PrintWriter( new FileWriter( m_tmpList.getAbsolutePath(), | ||||
true ) ); | true ) ); | ||||
@@ -780,7 +781,7 @@ public class Javadoc | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
cmd.createArgument().setValue( sourceFileName ); | |||||
cmd.addArgument( sourceFileName ); | |||||
} | } | ||||
} | } | ||||
@@ -800,7 +801,7 @@ public class Javadoc | |||||
if( m_packageList != null ) | if( m_packageList != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "@" + m_packageList ); | |||||
cmd.addArgument( "@" + m_packageList ); | |||||
} | } | ||||
getLogger().debug( "Javadoc args: " + cmd ); | getLogger().debug( "Javadoc args: " + cmd ); | ||||
@@ -873,8 +874,8 @@ public class Javadoc | |||||
{ | { | ||||
if( value != null && value.length() != 0 ) | if( value != null && value.length() != 0 ) | ||||
{ | { | ||||
m_command.createArgument().setValue( key ); | |||||
m_command.createArgument().setValue( value ); | |||||
m_command.addArgument( key ); | |||||
m_command.addArgument( value ); | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
@@ -886,7 +887,7 @@ public class Javadoc | |||||
{ | { | ||||
if( b ) | if( b ) | ||||
{ | { | ||||
m_command.createArgument().setValue( arg ); | |||||
m_command.addArgument( arg ); | |||||
} | } | ||||
} | } | ||||
@@ -969,7 +970,7 @@ public class Javadoc | |||||
if( m_useExternalFile ) | if( m_useExternalFile ) | ||||
{ | { | ||||
m_tmpList = File.createTempFile( "javadoc", "", getBaseDirectory() ); | m_tmpList = File.createTempFile( "javadoc", "", getBaseDirectory() ); | ||||
toExecute.createArgument().setValue( "@" + m_tmpList.getAbsolutePath() ); | |||||
toExecute.addArgument( "@" + m_tmpList.getAbsolutePath() ); | |||||
packageListWriter = new PrintWriter( new FileWriter( m_tmpList ) ); | packageListWriter = new PrintWriter( new FileWriter( m_tmpList ) ); | ||||
} | } | ||||
@@ -1008,7 +1009,7 @@ public class Javadoc | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
toExecute.createArgument().setValue( pkgDir ); | |||||
toExecute.addArgument( pkgDir ); | |||||
} | } | ||||
addedPackages.add( pkgDir ); | addedPackages.add( pkgDir ); | ||||
} | } | ||||
@@ -105,9 +105,9 @@ public class ANTLR extends Task | |||||
* the JVM. | * the JVM. | ||||
* @see #setFork(boolean) | * @see #setFork(boolean) | ||||
*/ | */ | ||||
public Argument createJvmarg() | |||||
public void addJvmarg( final Argument argument ) | |||||
{ | { | ||||
return commandline.createVmArgument(); | |||||
commandline.addVmArgument( argument ); | |||||
} | } | ||||
public void execute() | public void execute() | ||||
@@ -122,9 +122,9 @@ public class ANTLR extends Task | |||||
//TODO: use ANTLR to parse the grammer file to do this. | //TODO: use ANTLR to parse the grammer file to do this. | ||||
if( target.lastModified() > getGeneratedFile().lastModified() ) | if( target.lastModified() > getGeneratedFile().lastModified() ) | ||||
{ | { | ||||
commandline.createArgument().setValue( "-o" ); | |||||
commandline.createArgument().setValue( outputDirectory.toString() ); | |||||
commandline.createArgument().setValue( target.toString() ); | |||||
commandline.addArgument( "-o" ); | |||||
commandline.addArgument( outputDirectory.toString() ); | |||||
commandline.addArgument( target.toString() ); | |||||
if( fork ) | if( fork ) | ||||
{ | { | ||||
@@ -247,13 +247,13 @@ public class Cab | |||||
{ | { | ||||
final Commandline cmd = new Commandline(); | final Commandline cmd = new Commandline(); | ||||
cmd.setExecutable( "cabarc" ); | cmd.setExecutable( "cabarc" ); | ||||
cmd.createArgument().setValue( "-r" ); | |||||
cmd.createArgument().setValue( "-p" ); | |||||
cmd.addArgument( "-r" ); | |||||
cmd.addArgument( "-p" ); | |||||
if( !m_compress ) | if( !m_compress ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-m" ); | |||||
cmd.createArgument().setValue( "none" ); | |||||
cmd.addArgument( "-m" ); | |||||
cmd.addArgument( "none" ); | |||||
} | } | ||||
if( m_options != null ) | if( m_options != null ) | ||||
@@ -261,9 +261,9 @@ public class Cab | |||||
cmd.createArgument().setLine( m_options ); | cmd.createArgument().setLine( m_options ); | ||||
} | } | ||||
cmd.createArgument().setValue( "n" ); | |||||
cmd.createArgument().setFile( m_cabFile ); | |||||
cmd.createArgument().setValue( "@" + listFile.getAbsolutePath() ); | |||||
cmd.addArgument( "n" ); | |||||
cmd.addArgument( m_cabFile ); | |||||
cmd.addArgument( "@" + listFile.getAbsolutePath() ); | |||||
return cmd; | return cmd; | ||||
} | } | ||||
@@ -17,6 +17,7 @@ import org.apache.myrmidon.api.TaskException; | |||||
import org.apache.myrmidon.api.AbstractTask; | import org.apache.myrmidon.api.AbstractTask; | ||||
import org.apache.tools.ant.types.Commandline; | import org.apache.tools.ant.types.Commandline; | ||||
import org.apache.tools.ant.types.Path; | import org.apache.tools.ant.types.Path; | ||||
import org.apache.tools.ant.util.FileUtils; | |||||
/** | /** | ||||
* Task to generate JNI header files using javah. This task can take the | * Task to generate JNI header files using javah. This task can take the | ||||
@@ -219,7 +220,7 @@ public class Javah | |||||
while( tok.hasMoreTokens() ) | while( tok.hasMoreTokens() ) | ||||
{ | { | ||||
final String aClass = tok.nextToken().trim(); | final String aClass = tok.nextToken().trim(); | ||||
cmd.createArgument().setValue( aClass ); | |||||
cmd.addArgument( aClass ); | |||||
niceClassList.append( " " + aClass + StringUtil.LINE_SEPARATOR ); | niceClassList.append( " " + aClass + StringUtil.LINE_SEPARATOR ); | ||||
n++; | n++; | ||||
} | } | ||||
@@ -230,7 +231,7 @@ public class Javah | |||||
{ | { | ||||
final ClassArgument arg = (ClassArgument)enum.next(); | final ClassArgument arg = (ClassArgument)enum.next(); | ||||
final String aClass = arg.getName(); | final String aClass = arg.getName(); | ||||
cmd.createArgument().setValue( aClass ); | |||||
cmd.addArgument( aClass ); | |||||
niceClassList.append( " " + aClass + StringUtil.LINE_SEPARATOR ); | niceClassList.append( " " + aClass + StringUtil.LINE_SEPARATOR ); | ||||
n++; | n++; | ||||
} | } | ||||
@@ -256,33 +257,33 @@ public class Javah | |||||
if( m_destDir != null ) | if( m_destDir != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-d" ); | |||||
cmd.createArgument().setFile( m_destDir ); | |||||
cmd.addArgument( "-d" ); | |||||
cmd.addArgument( m_destDir ); | |||||
} | } | ||||
if( m_outputFile != null ) | if( m_outputFile != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-o" ); | |||||
cmd.createArgument().setFile( m_outputFile ); | |||||
cmd.addArgument( "-o" ); | |||||
cmd.addArgument( m_outputFile ); | |||||
} | } | ||||
if( m_classpath != null ) | if( m_classpath != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-classpath" ); | |||||
cmd.createArgument().setPath( m_classpath ); | |||||
cmd.addArgument( "-classpath" ); | |||||
cmd.addArguments( FileUtils.translateCommandline( m_classpath ) ); | |||||
} | } | ||||
if( m_verbose ) | if( m_verbose ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-verbose" ); | |||||
cmd.addArgument( "-verbose" ); | |||||
} | } | ||||
if( m_old ) | if( m_old ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-old" ); | |||||
cmd.addArgument( "-old" ); | |||||
} | } | ||||
if( m_force ) | if( m_force ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-force" ); | |||||
cmd.addArgument( "-force" ); | |||||
} | } | ||||
if( m_stubs ) | if( m_stubs ) | ||||
@@ -292,12 +293,12 @@ public class Javah | |||||
final String message = "stubs only available in old mode."; | final String message = "stubs only available in old mode."; | ||||
throw new TaskException( message ); | throw new TaskException( message ); | ||||
} | } | ||||
cmd.createArgument().setValue( "-stubs" ); | |||||
cmd.addArgument( "-stubs" ); | |||||
} | } | ||||
if( m_bootclasspath != null ) | if( m_bootclasspath != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-bootclasspath" ); | |||||
cmd.createArgument().setPath( m_bootclasspath ); | |||||
cmd.addArgument( "-bootclasspath" ); | |||||
cmd.addArguments( FileUtils.translateCommandline( m_bootclasspath ) ); | |||||
} | } | ||||
logAndAddFilesToCompile( cmd ); | logAndAddFilesToCompile( cmd ); | ||||
@@ -115,7 +115,7 @@ public class CCMCheck extends Continuus | |||||
// ccm co /t .. files | // ccm co /t .. files | ||||
// as specified in the CLEARTOOL.EXE help | // as specified in the CLEARTOOL.EXE help | ||||
commandLine.setExecutable( getCcmCommand() ); | commandLine.setExecutable( getCcmCommand() ); | ||||
commandLine.createArgument().setValue( getCcmAction() ); | |||||
commandLine.addArgument( getCcmAction() ); | |||||
checkOptions( commandLine ); | checkOptions( commandLine ); | ||||
@@ -136,19 +136,19 @@ public class CCMCheck extends Continuus | |||||
{ | { | ||||
if( getComment() != null ) | if( getComment() != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_COMMENT ); | |||||
cmd.createArgument().setValue( getComment() ); | |||||
cmd.addArgument( FLAG_COMMENT ); | |||||
cmd.addArgument( getComment() ); | |||||
} | } | ||||
if( getTask() != null ) | if( getTask() != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_TASK ); | |||||
cmd.createArgument().setValue( getTask() ); | |||||
cmd.addArgument( FLAG_TASK ); | |||||
cmd.addArgument( getTask() ); | |||||
}// end of if () | }// end of if () | ||||
if( getFile() != null ) | if( getFile() != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( _file.getAbsolutePath() ); | |||||
cmd.addArgument( _file.getAbsolutePath() ); | |||||
}// end of if () | }// end of if () | ||||
} | } | ||||
} | } | ||||
@@ -143,8 +143,8 @@ public class CCMCreateTask | |||||
//create task ok, set this task as the default one | //create task ok, set this task as the default one | ||||
final Commandline cmd = new Commandline(); | final Commandline cmd = new Commandline(); | ||||
cmd.setExecutable( getCcmCommand() ); | cmd.setExecutable( getCcmCommand() ); | ||||
cmd.createArgument().setValue( COMMAND_DEFAULT_TASK ); | |||||
cmd.createArgument().setValue( m_task ); | |||||
cmd.addArgument( COMMAND_DEFAULT_TASK ); | |||||
cmd.addArgument( m_task ); | |||||
getLogger().debug( commandLine.toString() ); | getLogger().debug( commandLine.toString() ); | ||||
@@ -164,7 +164,7 @@ public class CCMCreateTask | |||||
// build the command line from what we got the format | // build the command line from what we got the format | ||||
// as specified in the CCM.EXE help | // as specified in the CCM.EXE help | ||||
commandLine.setExecutable( getCcmCommand() ); | commandLine.setExecutable( getCcmCommand() ); | ||||
commandLine.createArgument().setValue( getCcmAction() ); | |||||
commandLine.addArgument( getCcmAction() ); | |||||
checkOptions( commandLine ); | checkOptions( commandLine ); | ||||
@@ -184,32 +184,32 @@ public class CCMCreateTask | |||||
{ | { | ||||
if( m_comment != null ) | if( m_comment != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_COMMENT ); | |||||
cmd.createArgument().setValue( "\"" + m_comment + "\"" ); | |||||
cmd.addArgument( FLAG_COMMENT ); | |||||
cmd.addArgument( "\"" + m_comment + "\"" ); | |||||
} | } | ||||
if( m_platform != null ) | if( m_platform != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_PLATFORM ); | |||||
cmd.createArgument().setValue( m_platform ); | |||||
cmd.addArgument( FLAG_PLATFORM ); | |||||
cmd.addArgument( m_platform ); | |||||
} | } | ||||
if( m_resolver != null ) | if( m_resolver != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_RESOLVER ); | |||||
cmd.createArgument().setValue( m_resolver ); | |||||
cmd.addArgument( FLAG_RESOLVER ); | |||||
cmd.addArgument( m_resolver ); | |||||
} | } | ||||
if( m_subSystem != null ) | if( m_subSystem != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_SUBSYSTEM ); | |||||
cmd.createArgument().setValue( "\"" + m_subSystem + "\"" ); | |||||
cmd.addArgument( FLAG_SUBSYSTEM ); | |||||
cmd.addArgument( "\"" + m_subSystem + "\"" ); | |||||
} | } | ||||
if( m_release != null ) | if( m_release != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_RELEASE ); | |||||
cmd.createArgument().setValue( m_release ); | |||||
cmd.addArgument( FLAG_RELEASE ); | |||||
cmd.addArgument( m_release ); | |||||
} | } | ||||
} | } | ||||
@@ -81,7 +81,7 @@ public class CCMReconfigure | |||||
// build the command line from what we got the format | // build the command line from what we got the format | ||||
// as specified in the CCM.EXE help | // as specified in the CCM.EXE help | ||||
cmd.setExecutable( getCcmCommand() ); | cmd.setExecutable( getCcmCommand() ); | ||||
cmd.createArgument().setValue( getCcmAction() ); | |||||
cmd.addArgument( getCcmAction() ); | |||||
checkOptions( cmd ); | checkOptions( cmd ); | ||||
@@ -100,18 +100,18 @@ public class CCMReconfigure | |||||
{ | { | ||||
if( m_recurse == true ) | if( m_recurse == true ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_RECURSE ); | |||||
cmd.addArgument( FLAG_RECURSE ); | |||||
} | } | ||||
if( m_verbose == true ) | if( m_verbose == true ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_VERBOSE ); | |||||
cmd.addArgument( FLAG_VERBOSE ); | |||||
} | } | ||||
if( m_ccmProject != null ) | if( m_ccmProject != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_PROJECT ); | |||||
cmd.createArgument().setValue( m_ccmProject ); | |||||
cmd.addArgument( FLAG_PROJECT ); | |||||
cmd.addArgument( m_ccmProject ); | |||||
} | } | ||||
} | } | ||||
} | } | ||||
@@ -335,7 +335,7 @@ public class CCCheckin extends ClearCase | |||||
// cleartool checkin [options...] [viewpath ...] | // cleartool checkin [options...] [viewpath ...] | ||||
// as specified in the CLEARTOOL.EXE help | // as specified in the CLEARTOOL.EXE help | ||||
commandLine.setExecutable( getClearToolCommand() ); | commandLine.setExecutable( getClearToolCommand() ); | ||||
commandLine.createArgument().setValue( COMMAND_CHECKIN ); | |||||
commandLine.addArgument( COMMAND_CHECKIN ); | |||||
checkOptions( commandLine ); | checkOptions( commandLine ); | ||||
@@ -362,8 +362,8 @@ public class CCCheckin extends ClearCase | |||||
* Windows filename with a space and it is enclosed in double | * Windows filename with a space and it is enclosed in double | ||||
* quotes ("). This breaks clearcase. | * quotes ("). This breaks clearcase. | ||||
*/ | */ | ||||
cmd.createArgument().setValue( FLAG_COMMENT ); | |||||
cmd.createArgument().setValue( getComment() ); | |||||
cmd.addArgument( FLAG_COMMENT ); | |||||
cmd.addArgument( getComment() ); | |||||
} | } | ||||
} | } | ||||
@@ -382,8 +382,8 @@ public class CCCheckin extends ClearCase | |||||
* Windows filename with a space and it is enclosed in double | * Windows filename with a space and it is enclosed in double | ||||
* quotes ("). This breaks clearcase. | * quotes ("). This breaks clearcase. | ||||
*/ | */ | ||||
cmd.createArgument().setValue( FLAG_COMMENTFILE ); | |||||
cmd.createArgument().setValue( getCommentFile() ); | |||||
cmd.addArgument( FLAG_COMMENTFILE ); | |||||
cmd.addArgument( getCommentFile() ); | |||||
} | } | ||||
} | } | ||||
@@ -408,36 +408,36 @@ public class CCCheckin extends ClearCase | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_NOCOMMENT ); | |||||
cmd.addArgument( FLAG_NOCOMMENT ); | |||||
} | } | ||||
} | } | ||||
if( getNoWarn() ) | if( getNoWarn() ) | ||||
{ | { | ||||
// -nwarn | // -nwarn | ||||
cmd.createArgument().setValue( FLAG_NOWARN ); | |||||
cmd.addArgument( FLAG_NOWARN ); | |||||
} | } | ||||
if( getPreserveTime() ) | if( getPreserveTime() ) | ||||
{ | { | ||||
// -ptime | // -ptime | ||||
cmd.createArgument().setValue( FLAG_PRESERVETIME ); | |||||
cmd.addArgument( FLAG_PRESERVETIME ); | |||||
} | } | ||||
if( getKeepCopy() ) | if( getKeepCopy() ) | ||||
{ | { | ||||
// -keep | // -keep | ||||
cmd.createArgument().setValue( FLAG_KEEPCOPY ); | |||||
cmd.addArgument( FLAG_KEEPCOPY ); | |||||
} | } | ||||
if( getIdentical() ) | if( getIdentical() ) | ||||
{ | { | ||||
// -identical | // -identical | ||||
cmd.createArgument().setValue( FLAG_IDENTICAL ); | |||||
cmd.addArgument( FLAG_IDENTICAL ); | |||||
} | } | ||||
// viewpath | // viewpath | ||||
cmd.createArgument().setValue( getViewPath() ); | |||||
cmd.addArgument( getViewPath() ); | |||||
} | } | ||||
} | } | ||||
@@ -423,7 +423,7 @@ public class CCCheckout extends ClearCase | |||||
// cleartool checkout [options...] [viewpath ...] | // cleartool checkout [options...] [viewpath ...] | ||||
// as specified in the CLEARTOOL.EXE help | // as specified in the CLEARTOOL.EXE help | ||||
commandLine.setExecutable( getClearToolCommand() ); | commandLine.setExecutable( getClearToolCommand() ); | ||||
commandLine.createArgument().setValue( COMMAND_CHECKOUT ); | |||||
commandLine.addArgument( COMMAND_CHECKOUT ); | |||||
checkOptions( commandLine ); | checkOptions( commandLine ); | ||||
@@ -450,8 +450,8 @@ public class CCCheckout extends ClearCase | |||||
* Windows filename with a space and it is enclosed in double | * Windows filename with a space and it is enclosed in double | ||||
* quotes ("). This breaks clearcase. | * quotes ("). This breaks clearcase. | ||||
*/ | */ | ||||
cmd.createArgument().setValue( FLAG_BRANCH ); | |||||
cmd.createArgument().setValue( getBranch() ); | |||||
cmd.addArgument( FLAG_BRANCH ); | |||||
cmd.addArgument( getBranch() ); | |||||
} | } | ||||
} | } | ||||
@@ -470,8 +470,8 @@ public class CCCheckout extends ClearCase | |||||
* Windows filename with a space and it is enclosed in double | * Windows filename with a space and it is enclosed in double | ||||
* quotes ("). This breaks clearcase. | * quotes ("). This breaks clearcase. | ||||
*/ | */ | ||||
cmd.createArgument().setValue( FLAG_COMMENT ); | |||||
cmd.createArgument().setValue( getComment() ); | |||||
cmd.addArgument( FLAG_COMMENT ); | |||||
cmd.addArgument( getComment() ); | |||||
} | } | ||||
} | } | ||||
@@ -490,8 +490,8 @@ public class CCCheckout extends ClearCase | |||||
* Windows filename with a space and it is enclosed in double | * Windows filename with a space and it is enclosed in double | ||||
* quotes ("). This breaks clearcase. | * quotes ("). This breaks clearcase. | ||||
*/ | */ | ||||
cmd.createArgument().setValue( FLAG_COMMENTFILE ); | |||||
cmd.createArgument().setValue( getCommentFile() ); | |||||
cmd.addArgument( FLAG_COMMENTFILE ); | |||||
cmd.addArgument( getCommentFile() ); | |||||
} | } | ||||
} | } | ||||
@@ -510,8 +510,8 @@ public class CCCheckout extends ClearCase | |||||
* Windows filename with a space and it is enclosed in double | * Windows filename with a space and it is enclosed in double | ||||
* quotes ("). This breaks clearcase. | * quotes ("). This breaks clearcase. | ||||
*/ | */ | ||||
cmd.createArgument().setValue( FLAG_OUT ); | |||||
cmd.createArgument().setValue( getOut() ); | |||||
cmd.addArgument( FLAG_OUT ); | |||||
cmd.addArgument( getOut() ); | |||||
} | } | ||||
} | } | ||||
@@ -526,12 +526,12 @@ public class CCCheckout extends ClearCase | |||||
if( getReserved() ) | if( getReserved() ) | ||||
{ | { | ||||
// -reserved | // -reserved | ||||
cmd.createArgument().setValue( FLAG_RESERVED ); | |||||
cmd.addArgument( FLAG_RESERVED ); | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
// -unreserved | // -unreserved | ||||
cmd.createArgument().setValue( FLAG_UNRESERVED ); | |||||
cmd.addArgument( FLAG_UNRESERVED ); | |||||
} | } | ||||
if( getOut() != null ) | if( getOut() != null ) | ||||
@@ -544,7 +544,7 @@ public class CCCheckout extends ClearCase | |||||
if( getNoData() ) | if( getNoData() ) | ||||
{ | { | ||||
// -ndata | // -ndata | ||||
cmd.createArgument().setValue( FLAG_NODATA ); | |||||
cmd.addArgument( FLAG_NODATA ); | |||||
} | } | ||||
} | } | ||||
@@ -559,7 +559,7 @@ public class CCCheckout extends ClearCase | |||||
if( getVersion() ) | if( getVersion() ) | ||||
{ | { | ||||
// -version | // -version | ||||
cmd.createArgument().setValue( FLAG_VERSION ); | |||||
cmd.addArgument( FLAG_VERSION ); | |||||
} | } | ||||
} | } | ||||
@@ -567,7 +567,7 @@ public class CCCheckout extends ClearCase | |||||
if( getNoWarn() ) | if( getNoWarn() ) | ||||
{ | { | ||||
// -nwarn | // -nwarn | ||||
cmd.createArgument().setValue( FLAG_NOWARN ); | |||||
cmd.addArgument( FLAG_NOWARN ); | |||||
} | } | ||||
if( getComment() != null ) | if( getComment() != null ) | ||||
@@ -584,12 +584,12 @@ public class CCCheckout extends ClearCase | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_NOCOMMENT ); | |||||
cmd.addArgument( FLAG_NOCOMMENT ); | |||||
} | } | ||||
} | } | ||||
// viewpath | // viewpath | ||||
cmd.createArgument().setValue( getViewPath() ); | |||||
cmd.addArgument( getViewPath() ); | |||||
} | } | ||||
} | } | ||||
@@ -127,7 +127,7 @@ public class CCUnCheckout extends ClearCase | |||||
// cleartool uncheckout [options...] [viewpath ...] | // cleartool uncheckout [options...] [viewpath ...] | ||||
// as specified in the CLEARTOOL.EXE help | // as specified in the CLEARTOOL.EXE help | ||||
commandLine.setExecutable( getClearToolCommand() ); | commandLine.setExecutable( getClearToolCommand() ); | ||||
commandLine.createArgument().setValue( COMMAND_UNCHECKOUT ); | |||||
commandLine.addArgument( COMMAND_UNCHECKOUT ); | |||||
checkOptions( commandLine ); | checkOptions( commandLine ); | ||||
@@ -150,16 +150,16 @@ public class CCUnCheckout extends ClearCase | |||||
if( getKeepCopy() ) | if( getKeepCopy() ) | ||||
{ | { | ||||
// -keep | // -keep | ||||
cmd.createArgument().setValue( FLAG_KEEPCOPY ); | |||||
cmd.addArgument( FLAG_KEEPCOPY ); | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
// -rm | // -rm | ||||
cmd.createArgument().setValue( FLAG_RM ); | |||||
cmd.addArgument( FLAG_RM ); | |||||
} | } | ||||
// viewpath | // viewpath | ||||
cmd.createArgument().setValue( getViewPath() ); | |||||
cmd.addArgument( getViewPath() ); | |||||
} | } | ||||
} | } | ||||
@@ -336,7 +336,7 @@ public class CCUpdate extends ClearCase | |||||
// cleartool update [options...] [viewpath ...] | // cleartool update [options...] [viewpath ...] | ||||
// as specified in the CLEARTOOL.EXE help | // as specified in the CLEARTOOL.EXE help | ||||
commandLine.setExecutable( getClearToolCommand() ); | commandLine.setExecutable( getClearToolCommand() ); | ||||
commandLine.createArgument().setValue( COMMAND_UPDATE ); | |||||
commandLine.addArgument( COMMAND_UPDATE ); | |||||
// Check the command line options | // Check the command line options | ||||
checkOptions( commandLine ); | checkOptions( commandLine ); | ||||
@@ -371,8 +371,8 @@ public class CCUpdate extends ClearCase | |||||
* Windows filename with a space and it is enclosed in double | * Windows filename with a space and it is enclosed in double | ||||
* quotes ("). This breaks clearcase. | * quotes ("). This breaks clearcase. | ||||
*/ | */ | ||||
cmd.createArgument().setValue( FLAG_LOG ); | |||||
cmd.createArgument().setValue( getLog() ); | |||||
cmd.addArgument( FLAG_LOG ); | |||||
cmd.addArgument( getLog() ); | |||||
} | } | ||||
} | } | ||||
@@ -387,40 +387,40 @@ public class CCUpdate extends ClearCase | |||||
if( getGraphical() ) | if( getGraphical() ) | ||||
{ | { | ||||
// -graphical | // -graphical | ||||
cmd.createArgument().setValue( FLAG_GRAPHICAL ); | |||||
cmd.addArgument( FLAG_GRAPHICAL ); | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
if( getOverwrite() ) | if( getOverwrite() ) | ||||
{ | { | ||||
// -overwrite | // -overwrite | ||||
cmd.createArgument().setValue( FLAG_OVERWRITE ); | |||||
cmd.addArgument( FLAG_OVERWRITE ); | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
if( getRename() ) | if( getRename() ) | ||||
{ | { | ||||
// -rename | // -rename | ||||
cmd.createArgument().setValue( FLAG_RENAME ); | |||||
cmd.addArgument( FLAG_RENAME ); | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
// -noverwrite | // -noverwrite | ||||
cmd.createArgument().setValue( FLAG_NOVERWRITE ); | |||||
cmd.addArgument( FLAG_NOVERWRITE ); | |||||
} | } | ||||
} | } | ||||
if( getCurrentTime() ) | if( getCurrentTime() ) | ||||
{ | { | ||||
// -ctime | // -ctime | ||||
cmd.createArgument().setValue( FLAG_CURRENTTIME ); | |||||
cmd.addArgument( FLAG_CURRENTTIME ); | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
if( getPreserveTime() ) | if( getPreserveTime() ) | ||||
{ | { | ||||
// -ptime | // -ptime | ||||
cmd.createArgument().setValue( FLAG_PRESERVETIME ); | |||||
cmd.addArgument( FLAG_PRESERVETIME ); | |||||
} | } | ||||
} | } | ||||
@@ -429,7 +429,7 @@ public class CCUpdate extends ClearCase | |||||
} | } | ||||
// viewpath | // viewpath | ||||
cmd.createArgument().setValue( getViewPath() ); | |||||
cmd.addArgument( getViewPath() ); | |||||
} | } | ||||
} | } | ||||
@@ -125,7 +125,7 @@ public class NetCommand | |||||
{ | { | ||||
if( argument != null && argument.length() != 0 ) | if( argument != null && argument.length() != 0 ) | ||||
{ | { | ||||
_commandLine.createArgument().setValue( argument ); | |||||
_commandLine.addArgument( argument ); | |||||
} | } | ||||
} | } | ||||
@@ -23,6 +23,7 @@ import org.apache.tools.ant.taskdefs.exec.ExecuteStreamHandler; | |||||
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.Path; | import org.apache.tools.ant.types.Path; | ||||
import org.apache.tools.ant.util.FileUtils; | |||||
/** | /** | ||||
* BorlandDeploymentTool is dedicated to the Borland Application Server 4.5 and | * BorlandDeploymentTool is dedicated to the Borland Application Server 4.5 and | ||||
@@ -392,24 +393,24 @@ public class BorlandDeploymentTool | |||||
//debug ? | //debug ? | ||||
if( java2iiopdebug ) | if( java2iiopdebug ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-VBJdebug" ); | |||||
cmd.addArgument( "-VBJdebug" ); | |||||
}// end of if () | }// end of if () | ||||
//set the classpath | //set the classpath | ||||
cmd.createArgument().setValue( "-VBJclasspath" ); | |||||
cmd.createArgument().setPath( getCombinedClasspath() ); | |||||
cmd.addArgument( "-VBJclasspath" ); | |||||
cmd.addArguments( FileUtils.translateCommandline( getCombinedClasspath() ) ); | |||||
//list file | //list file | ||||
cmd.createArgument().setValue( "-list_files" ); | |||||
cmd.addArgument( "-list_files" ); | |||||
//no TIE classes | //no TIE classes | ||||
cmd.createArgument().setValue( "-no_tie" ); | |||||
cmd.addArgument( "-no_tie" ); | |||||
//root dir | //root dir | ||||
cmd.createArgument().setValue( "-root_dir" ); | |||||
cmd.createArgument().setValue( getConfig().srcDir.getAbsolutePath() ); | |||||
cmd.addArgument( "-root_dir" ); | |||||
cmd.addArgument( getConfig().srcDir.getAbsolutePath() ); | |||||
//compiling order | //compiling order | ||||
cmd.createArgument().setValue( "-compile" ); | |||||
cmd.addArgument( "-compile" ); | |||||
//add the home class | //add the home class | ||||
while( ithomes.hasNext() ) | while( ithomes.hasNext() ) | ||||
{ | { | ||||
cmd.createArgument().setValue( ithomes.next().toString() ); | |||||
cmd.addArgument( ithomes.next().toString() ); | |||||
} | } | ||||
return cmd; | return cmd; | ||||
} | } | ||||
@@ -178,20 +178,20 @@ public class BorlandGenerateClient extends Task | |||||
{ | { | ||||
final Commandline cmd = new Commandline(); | final Commandline cmd = new Commandline(); | ||||
cmd.setExecutable( "iastool" ); | cmd.setExecutable( "iastool" ); | ||||
cmd.createArgument().setValue( "generateclient" ); | |||||
cmd.addArgument( "generateclient" ); | |||||
if( debug ) | if( debug ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-trace" ); | |||||
cmd.addArgument( "-trace" ); | |||||
} | } | ||||
cmd.createArgument().setValue( "-short" ); | |||||
cmd.createArgument().setValue( "-jarfile" ); | |||||
cmd.addArgument( "-short" ); | |||||
cmd.addArgument( "-jarfile" ); | |||||
// ejb jar file | // ejb jar file | ||||
cmd.createArgument().setValue( ejbjarfile.getAbsolutePath() ); | |||||
cmd.addArgument( ejbjarfile.getAbsolutePath() ); | |||||
//client jar file | //client jar file | ||||
cmd.createArgument().setValue( "-single" ); | |||||
cmd.createArgument().setValue( "-clientjarfile" ); | |||||
cmd.createArgument().setValue( clientjarfile.getAbsolutePath() ); | |||||
cmd.addArgument( "-single" ); | |||||
cmd.addArgument( "-clientjarfile" ); | |||||
cmd.addArgument( clientjarfile.getAbsolutePath() ); | |||||
return cmd; | return cmd; | ||||
} | } | ||||
@@ -137,7 +137,7 @@ public class JJTree extends Task | |||||
{ | { | ||||
String name = (String)iter.nextElement(); | String name = (String)iter.nextElement(); | ||||
Object value = optionalAttrs.get( name ); | Object value = optionalAttrs.get( name ); | ||||
cmdl.createArgument().setValue( "-" + name + ":" + value.toString() ); | |||||
cmdl.addArgument( "-" + name + ":" + value.toString() ); | |||||
} | } | ||||
if( target == null || !target.isFile() ) | if( target == null || !target.isFile() ) | ||||
@@ -156,8 +156,7 @@ public class JJTree extends Task | |||||
} | } | ||||
// convert backslashes to slashes, otherwise jjtree will put this as | // convert backslashes to slashes, otherwise jjtree will put this as | ||||
// comments and this seems to confuse javacc | // comments and this seems to confuse javacc | ||||
cmdl.createArgument().setValue( | |||||
"-OUTPUT_DIRECTORY:" + outputDirectory.getAbsolutePath().replace( '\\', '/' ) ); | |||||
cmdl.addArgument( "-OUTPUT_DIRECTORY:" + outputDirectory.getAbsolutePath().replace( '\\', '/' ) ); | |||||
String targetName = target.getName(); | String targetName = target.getName(); | ||||
final File javaFile = new File( outputDirectory, | final File javaFile = new File( outputDirectory, | ||||
@@ -167,7 +166,7 @@ public class JJTree extends Task | |||||
getLogger().info( "Target is already built - skipping (" + target + ")" ); | getLogger().info( "Target is already built - skipping (" + target + ")" ); | ||||
return; | return; | ||||
} | } | ||||
cmdl.createArgument().setValue( target.getAbsolutePath() ); | |||||
cmdl.addArgument( target.getAbsolutePath() ); | |||||
if( javaccHome == null || !javaccHome.isDirectory() ) | if( javaccHome == null || !javaccHome.isDirectory() ) | ||||
{ | { | ||||
@@ -177,9 +176,8 @@ public class JJTree extends Task | |||||
classpath.addLocation( new File( javaccHome, "JavaCC.zip" ) ); | classpath.addLocation( new File( javaccHome, "JavaCC.zip" ) ); | ||||
classpath.addJavaRuntime(); | classpath.addJavaRuntime(); | ||||
final Argument arg = cmdl.createVmArgument(); | |||||
arg.setValue( "-mx140M" ); | |||||
arg.setValue( "-Dinstall.root=" + javaccHome.getAbsolutePath() ); | |||||
cmdl.addVmArgument( "-mx140M" ); | |||||
cmdl.addVmArgument( "-Dinstall.root=" + javaccHome.getAbsolutePath() ); | |||||
final Execute2 exe = new Execute2(); | final Execute2 exe = new Execute2(); | ||||
setupLogger( exe ); | setupLogger( exe ); | ||||
@@ -193,7 +193,7 @@ public class JavaCC extends Task | |||||
{ | { | ||||
String name = (String)iter.nextElement(); | String name = (String)iter.nextElement(); | ||||
Object value = optionalAttrs.get( name ); | Object value = optionalAttrs.get( name ); | ||||
cmdl.createArgument().setValue( "-" + name + ":" + value.toString() ); | |||||
cmdl.addArgument( "-" + name + ":" + value.toString() ); | |||||
} | } | ||||
// check the target is a file | // check the target is a file | ||||
@@ -211,8 +211,7 @@ public class JavaCC extends Task | |||||
{ | { | ||||
throw new TaskException( "Outputdir not a directory." ); | throw new TaskException( "Outputdir not a directory." ); | ||||
} | } | ||||
cmdl.createArgument().setValue( | |||||
"-OUTPUT_DIRECTORY:" + outputDirectory.getAbsolutePath() ); | |||||
cmdl.addArgument( "-OUTPUT_DIRECTORY:" + outputDirectory.getAbsolutePath() ); | |||||
// determine if the generated java file is up-to-date | // determine if the generated java file is up-to-date | ||||
final File javaFile = getOutputJavaFile( outputDirectory, target ); | final File javaFile = getOutputJavaFile( outputDirectory, target ); | ||||
@@ -221,7 +220,7 @@ public class JavaCC extends Task | |||||
getLogger().debug( "Target is already built - skipping (" + target + ")" ); | getLogger().debug( "Target is already built - skipping (" + target + ")" ); | ||||
return; | return; | ||||
} | } | ||||
cmdl.createArgument().setValue( target.getAbsolutePath() ); | |||||
cmdl.addArgument( target.getAbsolutePath() ); | |||||
if( javaccHome == null || !javaccHome.isDirectory() ) | if( javaccHome == null || !javaccHome.isDirectory() ) | ||||
{ | { | ||||
@@ -231,9 +230,8 @@ public class JavaCC extends Task | |||||
classpath.addLocation( new File( javaccHome, "JavaCC.zip" ) ); | classpath.addLocation( new File( javaccHome, "JavaCC.zip" ) ); | ||||
classpath.addJavaRuntime(); | classpath.addJavaRuntime(); | ||||
final Argument arg = cmdl.createVmArgument(); | |||||
arg.setValue( "-mx140M" ); | |||||
arg.setValue( "-Dinstall.root=" + javaccHome.getAbsolutePath() ); | |||||
cmdl.addVmArgument( "-mx140M" ); | |||||
cmdl.addVmArgument( "-Dinstall.root=" + javaccHome.getAbsolutePath() ); | |||||
runCommand( cmdl.getCommandline() ); | runCommand( cmdl.getCommandline() ); | ||||
} | } | ||||
@@ -137,19 +137,6 @@ public class JDependTask | |||||
return path; | return path; | ||||
} | } | ||||
/** | |||||
* Create a new JVM argument. Ignored if no JVM is forked. | |||||
* | |||||
* @param commandline Description of Parameter | |||||
* @return create a new JVM argument so that any argument can be passed to | |||||
* the JVM. | |||||
* @see #setFork(boolean) | |||||
*/ | |||||
public Argument createJvmarg( final CommandlineJava commandline ) | |||||
{ | |||||
return commandline.createVmArgument(); | |||||
} | |||||
/** | /** | ||||
* Maybe creates a nested classpath element. | * Maybe creates a nested classpath element. | ||||
*/ | */ | ||||
@@ -226,16 +213,16 @@ public class JDependTask | |||||
// hope it will be reviewed by anybody competent | // hope it will be reviewed by anybody competent | ||||
if( m_compileClasspath.toString().length() > 0 ) | if( m_compileClasspath.toString().length() > 0 ) | ||||
{ | { | ||||
createJvmarg( commandline ).setValue( "-classpath" ); | |||||
createJvmarg( commandline ).setValue( m_compileClasspath.toString() ); | |||||
commandline.addVmArgument( "-classpath" ); | |||||
commandline.addVmArgument( m_compileClasspath.toString() ); | |||||
} | } | ||||
if( m_outputFile != null ) | if( m_outputFile != null ) | ||||
{ | { | ||||
// having a space between the file and its path causes commandline to add quotes " | // having a space between the file and its path causes commandline to add quotes " | ||||
// around the argument thus making JDepend not taking it into account. Thus we split it in two | // around the argument thus making JDepend not taking it into account. Thus we split it in two | ||||
commandline.createArgument().setValue( "-file" ); | |||||
commandline.createArgument().setValue( m_outputFile.getPath() ); | |||||
commandline.addArgument( "-file" ); | |||||
commandline.addArgument( m_outputFile.getPath() ); | |||||
// we have to find a cleaner way to put this output | // we have to find a cleaner way to put this output | ||||
} | } | ||||
@@ -247,7 +234,7 @@ public class JDependTask | |||||
// not necessary as JDepend would fail, but why loose some time? | // not necessary as JDepend would fail, but why loose some time? | ||||
if( !f.exists() || !f.isDirectory() ) | if( !f.exists() || !f.isDirectory() ) | ||||
throw new TaskException( "\"" + f.getPath() + "\" does not represent a valid directory. JDepend would fail." ); | throw new TaskException( "\"" + f.getPath() + "\" does not represent a valid directory. JDepend would fail." ); | ||||
commandline.createArgument().setValue( f.getPath() ); | |||||
commandline.addArgument( f.getPath() ); | |||||
} | } | ||||
final Execute2 exe = new Execute2(); | final Execute2 exe = new Execute2(); | ||||
@@ -66,7 +66,7 @@ public abstract class DefaultCompilerAdapter | |||||
while( enum.hasNext() ) | while( enum.hasNext() ) | ||||
{ | { | ||||
String arg = (String)enum.next(); | String arg = (String)enum.next(); | ||||
cmd.createArgument().setValue( arg ); | |||||
cmd.addArgument( arg ); | |||||
niceSourceList.append( " " + arg + StringUtil.LINE_SEPARATOR ); | niceSourceList.append( " " + arg + StringUtil.LINE_SEPARATOR ); | ||||
} | } | ||||
@@ -68,36 +68,36 @@ public class JasperC | |||||
JspC jspc = getJspc(); | JspC jspc = getJspc(); | ||||
if( jspc.getDestdir() != null ) | if( jspc.getDestdir() != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-d" ); | |||||
cmd.createArgument().setFile( jspc.getDestdir() ); | |||||
cmd.addArgument( "-d" ); | |||||
cmd.addArgument( jspc.getDestdir() ); | |||||
} | } | ||||
if( jspc.getPackage() != null ) | if( jspc.getPackage() != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-p" ); | |||||
cmd.createArgument().setValue( jspc.getPackage() ); | |||||
cmd.addArgument( "-p" ); | |||||
cmd.addArgument( jspc.getPackage() ); | |||||
} | } | ||||
if( jspc.getVerbose() != 0 ) | if( jspc.getVerbose() != 0 ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-v" + jspc.getVerbose() ); | |||||
cmd.addArgument( "-v" + jspc.getVerbose() ); | |||||
} | } | ||||
if( jspc.isMapped() ) | if( jspc.isMapped() ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-mapped" ); | |||||
cmd.addArgument( "-mapped" ); | |||||
} | } | ||||
if( jspc.getIeplugin() != null ) | if( jspc.getIeplugin() != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-ieplugin" ); | |||||
cmd.createArgument().setValue( jspc.getIeplugin() ); | |||||
cmd.addArgument( "-ieplugin" ); | |||||
cmd.addArgument( jspc.getIeplugin() ); | |||||
} | } | ||||
if( jspc.getUriroot() != null ) | if( jspc.getUriroot() != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-uriroot" ); | |||||
cmd.createArgument().setValue( jspc.getUriroot().toString() ); | |||||
cmd.addArgument( "-uriroot" ); | |||||
cmd.addArgument( jspc.getUriroot().toString() ); | |||||
} | } | ||||
if( jspc.getUribase() != null ) | if( jspc.getUribase() != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-uribase" ); | |||||
cmd.createArgument().setValue( jspc.getUribase().toString() ); | |||||
cmd.addArgument( "-uribase" ); | |||||
cmd.addArgument( jspc.getUribase().toString() ); | |||||
} | } | ||||
logAndAddFilesToCompile( getJspc(), getJspc().getCompileList(), cmd ); | logAndAddFilesToCompile( getJspc(), getJspc().getCompileList(), cmd ); | ||||
return cmd; | return cmd; | ||||
@@ -265,7 +265,7 @@ public class JUnitTask extends Task | |||||
*/ | */ | ||||
public void setMaxmemory( String max ) | public void setMaxmemory( String max ) | ||||
{ | { | ||||
createJvmarg().setValue( "-Xmx" + max ); | |||||
commandline.addVmArgument( "-Xmx" + max ); | |||||
} | } | ||||
/** | /** | ||||
@@ -361,9 +361,9 @@ public class JUnitTask extends Task | |||||
* the JVM. | * the JVM. | ||||
* @see #setFork(boolean) | * @see #setFork(boolean) | ||||
*/ | */ | ||||
public Argument createJvmarg() | |||||
public void addJvmarg( final Argument argument ) | |||||
{ | { | ||||
return commandline.createVmArgument(); | |||||
commandline.addVmArgument( argument ); | |||||
} | } | ||||
/** | /** | ||||
@@ -596,14 +596,14 @@ public class JUnitTask extends Task | |||||
CommandlineJava cmd = commandline;//(CommandlineJava)commandline.clone(); | CommandlineJava cmd = commandline;//(CommandlineJava)commandline.clone(); | ||||
cmd.setClassname( "org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner" ); | cmd.setClassname( "org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner" ); | ||||
cmd.createArgument().setValue( test.getName() ); | |||||
cmd.createArgument().setValue( "filtertrace=" + test.getFiltertrace() ); | |||||
cmd.createArgument().setValue( "haltOnError=" + test.getHaltonerror() ); | |||||
cmd.createArgument().setValue( "haltOnFailure=" + test.getHaltonfailure() ); | |||||
cmd.addArgument( test.getName() ); | |||||
cmd.addArgument( "filtertrace=" + test.getFiltertrace() ); | |||||
cmd.addArgument( "haltOnError=" + test.getHaltonerror() ); | |||||
cmd.addArgument( "haltOnFailure=" + test.getHaltonfailure() ); | |||||
if( summary ) | if( summary ) | ||||
{ | { | ||||
getLogger().info( "Running " + test.getName() ); | getLogger().info( "Running " + test.getName() ); | ||||
cmd.createArgument().setValue( "formatter=org.apache.tools.ant.taskdefs.optional.junit.SummaryJUnitResultFormatter" ); | |||||
cmd.addArgument( "formatter=org.apache.tools.ant.taskdefs.optional.junit.SummaryJUnitResultFormatter" ); | |||||
} | } | ||||
StringBuffer formatterArg = new StringBuffer( 128 ); | StringBuffer formatterArg = new StringBuffer( 128 ); | ||||
@@ -619,13 +619,13 @@ public class JUnitTask extends Task | |||||
formatterArg.append( "," ); | formatterArg.append( "," ); | ||||
formatterArg.append( outFile ); | formatterArg.append( outFile ); | ||||
} | } | ||||
cmd.createArgument().setValue( formatterArg.toString() ); | |||||
cmd.addArgument( formatterArg.toString() ); | |||||
formatterArg.setLength( 0 ); | formatterArg.setLength( 0 ); | ||||
} | } | ||||
// Create a temporary file to pass the Ant properties to the forked test | // Create a temporary file to pass the Ant properties to the forked test | ||||
File propsFile = new File( "junit" + ( new Random( System.currentTimeMillis() ) ).nextLong() + ".properties" ); | File propsFile = new File( "junit" + ( new Random( System.currentTimeMillis() ) ).nextLong() + ".properties" ); | ||||
cmd.createArgument().setValue( "propsfile=" + propsFile.getAbsolutePath() ); | |||||
cmd.addArgument( "propsfile=" + propsFile.getAbsolutePath() ); | |||||
Hashtable p = getProject().getProperties(); | Hashtable p = getProject().getProperties(); | ||||
Properties props = new Properties(); | Properties props = new Properties(); | ||||
for( Enumeration enum = p.keys(); enum.hasMoreElements(); ) | for( Enumeration enum = p.keys(); enum.hasMoreElements(); ) | ||||
@@ -116,7 +116,7 @@ public abstract class AbstractMetamataTask | |||||
*/ | */ | ||||
public void setMaxmemory( String max ) | public void setMaxmemory( String max ) | ||||
{ | { | ||||
createJvmarg().setValue( "-Xmx" + max ); | |||||
m_cmdl.addVmArgument( "-Xmx" + max ); | |||||
} | } | ||||
/** | /** | ||||
@@ -150,9 +150,9 @@ public abstract class AbstractMetamataTask | |||||
/** | /** | ||||
* Creates a nested jvmarg element. | * Creates a nested jvmarg element. | ||||
*/ | */ | ||||
public Argument createJvmarg() | |||||
public void addJvmarg( final Argument argument ) | |||||
{ | { | ||||
return m_cmdl.createVmArgument(); | |||||
m_cmdl.addVmArgument( argument ); | |||||
} | } | ||||
/** | /** | ||||
@@ -200,8 +200,7 @@ public abstract class AbstractMetamataTask | |||||
classPath.addLocation( jar ); | classPath.addLocation( jar ); | ||||
// set the metamata.home property | // set the metamata.home property | ||||
final Argument vmArgs = m_cmdl.createVmArgument(); | |||||
vmArgs.setValue( "-Dmetamata.home=" + m_metamataHome.getAbsolutePath() ); | |||||
m_cmdl.addVmArgument( "-Dmetamata.home=" + m_metamataHome.getAbsolutePath() ); | |||||
// retrieve all the files we want to scan | // retrieve all the files we want to scan | ||||
m_includedFiles = scanFileSets(); | m_includedFiles = scanFileSets(); | ||||
@@ -98,7 +98,7 @@ public class MParse | |||||
*/ | */ | ||||
public void setMaxmemory( String max ) | public void setMaxmemory( String max ) | ||||
{ | { | ||||
createJvmarg().setValue( "-Xmx" + max ); | |||||
m_cmdl.addVmArgument( "-Xmx" + max ); | |||||
} | } | ||||
/** | /** | ||||
@@ -147,12 +147,10 @@ public class MParse | |||||
/** | /** | ||||
* Creates a nested jvmarg element. | * Creates a nested jvmarg element. | ||||
* | |||||
* @return Description of the Returned Value | |||||
*/ | */ | ||||
public Argument createJvmarg() | |||||
public void addJvmarg( final Argument argument ) | |||||
{ | { | ||||
return m_cmdl.createVmArgument(); | |||||
m_cmdl.addVmArgument( argument ); | |||||
} | } | ||||
/** | /** | ||||
@@ -207,8 +205,7 @@ public class MParse | |||||
} | } | ||||
// set the metamata.home property | // set the metamata.home property | ||||
final Argument vmArgs = m_cmdl.createVmArgument(); | |||||
vmArgs.setValue( "-Dmetamata.home=" + m_metahome.getAbsolutePath() ); | |||||
m_cmdl.addVmArgument( "-Dmetamata.home=" + m_metahome.getAbsolutePath() ); | |||||
// write all the options to a temp file and use it ro run the process | // write all the options to a temp file and use it ro run the process | ||||
String[] options = getOptions(); | String[] options = getOptions(); | ||||
@@ -140,15 +140,15 @@ public abstract class P4Base | |||||
//Check API for these - it's how CVS does it... | //Check API for these - it's how CVS does it... | ||||
if( m_p4Port != null && m_p4Port.length() != 0 ) | if( m_p4Port != null && m_p4Port.length() != 0 ) | ||||
{ | { | ||||
cmd.createArgument().setValue( m_p4Port ); | |||||
cmd.addArgument( m_p4Port ); | |||||
} | } | ||||
if( m_p4User != null && m_p4User.length() != 0 ) | if( m_p4User != null && m_p4User.length() != 0 ) | ||||
{ | { | ||||
cmd.createArgument().setValue( m_p4User ); | |||||
cmd.addArgument( m_p4User ); | |||||
} | } | ||||
if( m_p4Client != null && m_p4Client.length() != 0 ) | if( m_p4Client != null && m_p4Client.length() != 0 ) | ||||
{ | { | ||||
cmd.createArgument().setValue( m_p4Client ); | |||||
cmd.addArgument( m_p4Client ); | |||||
} | } | ||||
cmd.createArgument().setLine( command ); | cmd.createArgument().setLine( command ); | ||||
@@ -216,28 +216,28 @@ public class Pvcs | |||||
if( m_force ) | if( m_force ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-Y" ); | |||||
cmd.addArgument( "-Y" ); | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
cmd.createArgument().setValue( "-N" ); | |||||
cmd.addArgument( "-N" ); | |||||
} | } | ||||
if( null != m_promotiongroup ) | if( null != m_promotiongroup ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-G" + m_promotiongroup ); | |||||
cmd.addArgument( "-G" + m_promotiongroup ); | |||||
} | } | ||||
else if( null != m_label ) | else if( null != m_label ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-r" + m_label ); | |||||
cmd.addArgument( "-r" + m_label ); | |||||
} | } | ||||
if( m_updateOnly ) | if( m_updateOnly ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-U" ); | |||||
cmd.addArgument( "-U" ); | |||||
} | } | ||||
cmd.createArgument().setValue( "@" + filelist.getAbsolutePath() ); | |||||
cmd.addArgument( "@" + filelist.getAbsolutePath() ); | |||||
return cmd; | return cmd; | ||||
} | } | ||||
@@ -319,18 +319,18 @@ public class Pvcs | |||||
final Commandline cmd = new Commandline(); | final Commandline cmd = new Commandline(); | ||||
cmd.setExecutable( getExecutable( PCLI_EXE ) ); | cmd.setExecutable( getExecutable( PCLI_EXE ) ); | ||||
cmd.createArgument().setValue( "lvf" ); | |||||
cmd.createArgument().setValue( "-z" ); | |||||
cmd.createArgument().setValue( "-aw" ); | |||||
cmd.addArgument( "lvf" ); | |||||
cmd.addArgument( "-z" ); | |||||
cmd.addArgument( "-aw" ); | |||||
if( m_workspace != null ) | if( m_workspace != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-sp" + m_workspace ); | |||||
cmd.addArgument( "-sp" + m_workspace ); | |||||
} | } | ||||
cmd.createArgument().setValue( "-pr" + m_repository ); | |||||
cmd.addArgument( "-pr" + m_repository ); | |||||
if( m_pvcsProject != null ) | if( m_pvcsProject != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( m_pvcsProject ); | |||||
cmd.addArgument( m_pvcsProject ); | |||||
} | } | ||||
if( !m_pvcsProjects.isEmpty() ) | if( !m_pvcsProjects.isEmpty() ) | ||||
@@ -345,7 +345,7 @@ public class Pvcs | |||||
final String message = "name is a required attribute of pvcsproject"; | final String message = "name is a required attribute of pvcsproject"; | ||||
throw new TaskException( message ); | throw new TaskException( message ); | ||||
} | } | ||||
cmd.createArgument().setValue( name ); | |||||
cmd.addArgument( name ); | |||||
} | } | ||||
} | } | ||||
return cmd; | return cmd; | ||||
@@ -109,9 +109,9 @@ public class CovMerge extends Task | |||||
cmdl.setExecutable( new File( home, "jpcovmerge" ).getAbsolutePath() ); | cmdl.setExecutable( new File( home, "jpcovmerge" ).getAbsolutePath() ); | ||||
if( verbose ) | if( verbose ) | ||||
{ | { | ||||
cmdl.createArgument().setValue( "-v" ); | |||||
cmdl.addArgument( "-v" ); | |||||
} | } | ||||
cmdl.createArgument().setValue( "-jp_paramfile=" + paramfile.getAbsolutePath() ); | |||||
cmdl.addArgument( "-jp_paramfile=" + paramfile.getAbsolutePath() ); | |||||
final Execute2 exe = new Execute2(); | final Execute2 exe = new Execute2(); | ||||
setupLogger( exe ); | setupLogger( exe ); | ||||
@@ -242,7 +242,7 @@ public class CovReport extends Task | |||||
String[] params = getParameters(); | String[] params = getParameters(); | ||||
for( int i = 0; i < params.length; i++ ) | for( int i = 0; i < params.length; i++ ) | ||||
{ | { | ||||
cmdl.createArgument().setValue( params[ i ] ); | |||||
cmdl.addArgument( params[ i ] ); | |||||
} | } | ||||
// use the custom handler for stdin issues | // use the custom handler for stdin issues | ||||
@@ -172,12 +172,10 @@ public class Coverage | |||||
/** | /** | ||||
* the command arguments | * the command arguments | ||||
* | |||||
* @return Description of the Returned Value | |||||
*/ | */ | ||||
public Argument createArg() | |||||
public void addArg( final Argument argument ) | |||||
{ | { | ||||
return cmdlJava.createArgument(); | |||||
cmdlJava.addArgument( argument ); | |||||
} | } | ||||
/** | /** | ||||
@@ -203,9 +201,9 @@ public class Coverage | |||||
* | * | ||||
* @return Description of the Returned Value | * @return Description of the Returned Value | ||||
*/ | */ | ||||
public Argument createJvmarg() | |||||
public void addJvmarg( final Argument argument ) | |||||
{ | { | ||||
return cmdlJava.createVmArgument(); | |||||
cmdlJava.addVmArgument( argument ); | |||||
} | } | ||||
public Socket createSocket() | public Socket createSocket() | ||||
@@ -249,7 +247,7 @@ public class Coverage | |||||
{ | { | ||||
// we need to run Coverage from his directory due to dll/jar issues | // we need to run Coverage from his directory due to dll/jar issues | ||||
cmdl.setExecutable( new File( m_home, "jplauncher" ).getAbsolutePath() ); | cmdl.setExecutable( new File( m_home, "jplauncher" ).getAbsolutePath() ); | ||||
cmdl.createArgument().setValue( "-jp_input=" + paramfile.getAbsolutePath() ); | |||||
cmdl.addArgument( "-jp_input=" + paramfile.getAbsolutePath() ); | |||||
// use the custom handler for stdin issues | // use the custom handler for stdin issues | ||||
final Execute2 exe = new Execute2(); | final Execute2 exe = new Execute2(); | ||||
@@ -187,7 +187,7 @@ public abstract class MSVSS extends Task | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_LOGIN + m_vssLogin ); | |||||
cmd.addArgument( FLAG_LOGIN + m_vssLogin ); | |||||
} | } | ||||
} | } | ||||
@@ -99,20 +99,20 @@ public class MSVSSCHECKIN extends MSVSS | |||||
if( m_AutoResponse == null ) | if( m_AutoResponse == null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_AUTORESPONSE_DEF ); | |||||
cmd.addArgument( FLAG_AUTORESPONSE_DEF ); | |||||
} | } | ||||
else if( m_AutoResponse.equalsIgnoreCase( "Y" ) ) | else if( m_AutoResponse.equalsIgnoreCase( "Y" ) ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_AUTORESPONSE_YES ); | |||||
cmd.addArgument( FLAG_AUTORESPONSE_YES ); | |||||
} | } | ||||
else if( m_AutoResponse.equalsIgnoreCase( "N" ) ) | else if( m_AutoResponse.equalsIgnoreCase( "N" ) ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_AUTORESPONSE_NO ); | |||||
cmd.addArgument( FLAG_AUTORESPONSE_NO ); | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_AUTORESPONSE_DEF ); | |||||
cmd.addArgument( FLAG_AUTORESPONSE_DEF ); | |||||
}// end of else | }// end of else | ||||
} | } | ||||
@@ -157,7 +157,7 @@ public class MSVSSCHECKIN extends MSVSS | |||||
getLogger().info( "Created dir: " + dir.getAbsolutePath() ); | getLogger().info( "Created dir: " + dir.getAbsolutePath() ); | ||||
} | } | ||||
cmd.createArgument().setValue( FLAG_OVERRIDE_WORKING_DIR + m_LocalPath ); | |||||
cmd.addArgument( FLAG_OVERRIDE_WORKING_DIR + m_LocalPath ); | |||||
} | } | ||||
} | } | ||||
@@ -172,7 +172,7 @@ public class MSVSSCHECKIN extends MSVSS | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_RECURSION ); | |||||
cmd.addArgument( FLAG_RECURSION ); | |||||
} | } | ||||
} | } | ||||
@@ -187,7 +187,7 @@ public class MSVSSCHECKIN extends MSVSS | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_WRITABLE ); | |||||
cmd.addArgument( FLAG_WRITABLE ); | |||||
} | } | ||||
} | } | ||||
@@ -218,10 +218,10 @@ public class MSVSSCHECKIN extends MSVSS | |||||
// ss Checkin VSS items [-H] [-C] [-I-] [-N] [-O] [-R] [-W] [-Y] [-?] | // ss Checkin VSS items [-H] [-C] [-I-] [-N] [-O] [-R] [-W] [-Y] [-?] | ||||
// as specified in the SS.EXE help | // as specified in the SS.EXE help | ||||
commandLine.setExecutable( getSSCommand() ); | commandLine.setExecutable( getSSCommand() ); | ||||
commandLine.createArgument().setValue( COMMAND_CHECKIN ); | |||||
commandLine.addArgument( COMMAND_CHECKIN ); | |||||
// VSS items | // VSS items | ||||
commandLine.createArgument().setValue( getVsspath() ); | |||||
commandLine.addArgument( getVsspath() ); | |||||
// -GL | // -GL | ||||
getLocalpathCommand( commandLine ); | getLocalpathCommand( commandLine ); | ||||
// -I- or -I-Y or -I-N | // -I- or -I-Y or -I-N | ||||
@@ -233,7 +233,7 @@ public class MSVSSCHECKIN extends MSVSS | |||||
// -Y | // -Y | ||||
getLoginCommand( commandLine ); | getLoginCommand( commandLine ); | ||||
// -C | // -C | ||||
commandLine.createArgument().setValue( "-C" + getComment() ); | |||||
commandLine.addArgument( "-C" + getComment() ); | |||||
result = run( commandLine ); | result = run( commandLine ); | ||||
if( result != 0 ) | if( result != 0 ) | ||||
@@ -136,20 +136,20 @@ public class MSVSSCHECKOUT extends MSVSS | |||||
if( m_AutoResponse == null ) | if( m_AutoResponse == null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_AUTORESPONSE_DEF ); | |||||
cmd.addArgument( FLAG_AUTORESPONSE_DEF ); | |||||
} | } | ||||
else if( m_AutoResponse.equalsIgnoreCase( "Y" ) ) | else if( m_AutoResponse.equalsIgnoreCase( "Y" ) ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_AUTORESPONSE_YES ); | |||||
cmd.addArgument( FLAG_AUTORESPONSE_YES ); | |||||
} | } | ||||
else if( m_AutoResponse.equalsIgnoreCase( "N" ) ) | else if( m_AutoResponse.equalsIgnoreCase( "N" ) ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_AUTORESPONSE_NO ); | |||||
cmd.addArgument( FLAG_AUTORESPONSE_NO ); | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_AUTORESPONSE_DEF ); | |||||
cmd.addArgument( FLAG_AUTORESPONSE_DEF ); | |||||
}// end of else | }// end of else | ||||
} | } | ||||
@@ -184,7 +184,7 @@ public class MSVSSCHECKOUT extends MSVSS | |||||
getLogger().info( "Created dir: " + dir.getAbsolutePath() ); | getLogger().info( "Created dir: " + dir.getAbsolutePath() ); | ||||
} | } | ||||
cmd.createArgument().setValue( FLAG_OVERRIDE_WORKING_DIR + m_LocalPath ); | |||||
cmd.addArgument( FLAG_OVERRIDE_WORKING_DIR + m_LocalPath ); | |||||
} | } | ||||
} | } | ||||
@@ -199,7 +199,7 @@ public class MSVSSCHECKOUT extends MSVSS | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_RECURSION ); | |||||
cmd.addArgument( FLAG_RECURSION ); | |||||
} | } | ||||
} | } | ||||
@@ -214,15 +214,15 @@ public class MSVSSCHECKOUT extends MSVSS | |||||
if( m_Version != null ) | if( m_Version != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_VERSION + m_Version ); | |||||
cmd.addArgument( FLAG_VERSION + m_Version ); | |||||
} | } | ||||
else if( m_Date != null ) | else if( m_Date != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_VERSION_DATE + m_Date ); | |||||
cmd.addArgument( FLAG_VERSION_DATE + m_Date ); | |||||
} | } | ||||
else if( m_Label != null ) | else if( m_Label != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_VERSION_LABEL + m_Label ); | |||||
cmd.addArgument( FLAG_VERSION_LABEL + m_Label ); | |||||
} | } | ||||
} | } | ||||
@@ -253,10 +253,10 @@ public class MSVSSCHECKOUT extends MSVSS | |||||
// ss Checkout VSS items [-G] [-C] [-H] [-I-] [-N] [-O] [-R] [-V] [-Y] [-?] | // ss Checkout VSS items [-G] [-C] [-H] [-I-] [-N] [-O] [-R] [-V] [-Y] [-?] | ||||
// as specified in the SS.EXE help | // as specified in the SS.EXE help | ||||
commandLine.setExecutable( getSSCommand() ); | commandLine.setExecutable( getSSCommand() ); | ||||
commandLine.createArgument().setValue( COMMAND_CHECKOUT ); | |||||
commandLine.addArgument( COMMAND_CHECKOUT ); | |||||
// VSS items | // VSS items | ||||
commandLine.createArgument().setValue( getVsspath() ); | |||||
commandLine.addArgument( getVsspath() ); | |||||
// -GL | // -GL | ||||
getLocalpathCommand( commandLine ); | getLocalpathCommand( commandLine ); | ||||
// -I- or -I-Y or -I-N | // -I- or -I-Y or -I-N | ||||
@@ -344,20 +344,20 @@ public class MSVSSGET extends MSVSS | |||||
if( m_AutoResponse == null ) | if( m_AutoResponse == null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_AUTORESPONSE_DEF ); | |||||
cmd.addArgument( FLAG_AUTORESPONSE_DEF ); | |||||
} | } | ||||
else if( m_AutoResponse.equalsIgnoreCase( "Y" ) ) | else if( m_AutoResponse.equalsIgnoreCase( "Y" ) ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_AUTORESPONSE_YES ); | |||||
cmd.addArgument( FLAG_AUTORESPONSE_YES ); | |||||
} | } | ||||
else if( m_AutoResponse.equalsIgnoreCase( "N" ) ) | else if( m_AutoResponse.equalsIgnoreCase( "N" ) ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_AUTORESPONSE_NO ); | |||||
cmd.addArgument( FLAG_AUTORESPONSE_NO ); | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_AUTORESPONSE_DEF ); | |||||
cmd.addArgument( FLAG_AUTORESPONSE_DEF ); | |||||
}// end of else | }// end of else | ||||
} | } | ||||
@@ -392,7 +392,7 @@ public class MSVSSGET extends MSVSS | |||||
getLogger().info( "Created dir: " + dir.getAbsolutePath() ); | getLogger().info( "Created dir: " + dir.getAbsolutePath() ); | ||||
} | } | ||||
cmd.createArgument().setValue( FLAG_OVERRIDE_WORKING_DIR + m_LocalPath ); | |||||
cmd.addArgument( FLAG_OVERRIDE_WORKING_DIR + m_LocalPath ); | |||||
} | } | ||||
} | } | ||||
@@ -400,7 +400,7 @@ public class MSVSSGET extends MSVSS | |||||
{ | { | ||||
if( m_Quiet ) | if( m_Quiet ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_QUIET ); | |||||
cmd.addArgument( FLAG_QUIET ); | |||||
} | } | ||||
} | } | ||||
@@ -415,7 +415,7 @@ public class MSVSSGET extends MSVSS | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_RECURSION ); | |||||
cmd.addArgument( FLAG_RECURSION ); | |||||
} | } | ||||
} | } | ||||
@@ -430,15 +430,15 @@ public class MSVSSGET extends MSVSS | |||||
if( m_Version != null ) | if( m_Version != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_VERSION + m_Version ); | |||||
cmd.addArgument( FLAG_VERSION + m_Version ); | |||||
} | } | ||||
else if( m_Date != null ) | else if( m_Date != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_VERSION_DATE + m_Date ); | |||||
cmd.addArgument( FLAG_VERSION_DATE + m_Date ); | |||||
} | } | ||||
else if( m_Label != null ) | else if( m_Label != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_VERSION_LABEL + m_Label ); | |||||
cmd.addArgument( FLAG_VERSION_LABEL + m_Label ); | |||||
} | } | ||||
} | } | ||||
@@ -453,7 +453,7 @@ public class MSVSSGET extends MSVSS | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_WRITABLE ); | |||||
cmd.addArgument( FLAG_WRITABLE ); | |||||
} | } | ||||
} | } | ||||
@@ -484,10 +484,10 @@ public class MSVSSGET extends MSVSS | |||||
// ss Get VSS items [-G] [-H] [-I-] [-N] [-O] [-R] [-V] [-W] [-Y] [-?] | // ss Get VSS items [-G] [-H] [-I-] [-N] [-O] [-R] [-V] [-W] [-Y] [-?] | ||||
// as specified in the SS.EXE help | // as specified in the SS.EXE help | ||||
commandLine.setExecutable( getSSCommand() ); | commandLine.setExecutable( getSSCommand() ); | ||||
commandLine.createArgument().setValue( COMMAND_GET ); | |||||
commandLine.addArgument( COMMAND_GET ); | |||||
// VSS items | // VSS items | ||||
commandLine.createArgument().setValue( getVsspath() ); | |||||
commandLine.addArgument( getVsspath() ); | |||||
// -GL | // -GL | ||||
getLocalpathCommand( commandLine ); | getLocalpathCommand( commandLine ); | ||||
// -I- or -I-Y or -I-N | // -I- or -I-Y or -I-N | ||||
@@ -237,13 +237,13 @@ public class MSVSSHISTORY extends MSVSS | |||||
// ss History elements [-H] [-L] [-N] [-O] [-V] [-Y] [-#] [-?] | // ss History elements [-H] [-L] [-N] [-O] [-V] [-Y] [-#] [-?] | ||||
// as specified in the SS.EXE help | // as specified in the SS.EXE help | ||||
commandLine.setExecutable( getSSCommand() ); | commandLine.setExecutable( getSSCommand() ); | ||||
commandLine.createArgument().setValue( COMMAND_HISTORY ); | |||||
commandLine.addArgument( COMMAND_HISTORY ); | |||||
// VSS items | // VSS items | ||||
commandLine.createArgument().setValue( getVsspath() ); | |||||
commandLine.addArgument( getVsspath() ); | |||||
// -I- | // -I- | ||||
commandLine.createArgument().setValue( "-I-" );// ignore all errors | |||||
commandLine.addArgument( "-I-" );// ignore all errors | |||||
// -V | // -V | ||||
// Label an existing file or project version | // Label an existing file or project version | ||||
@@ -253,13 +253,13 @@ public class MSVSSHISTORY extends MSVSS | |||||
// -R | // -R | ||||
if( m_Recursive ) | if( m_Recursive ) | ||||
{ | { | ||||
commandLine.createArgument().setValue( FLAG_RECURSION ); | |||||
commandLine.addArgument( FLAG_RECURSION ); | |||||
} | } | ||||
// -B / -D / -F- | // -B / -D / -F- | ||||
if( m_Style.length() > 0 ) | if( m_Style.length() > 0 ) | ||||
{ | { | ||||
commandLine.createArgument().setValue( m_Style ); | |||||
commandLine.addArgument( m_Style ); | |||||
} | } | ||||
// -Y | // -Y | ||||
@@ -288,7 +288,7 @@ public class MSVSSHISTORY extends MSVSS | |||||
{ | { | ||||
if( m_OutputFileName != null ) | if( m_OutputFileName != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_OUTPUT + m_OutputFileName ); | |||||
cmd.addArgument( FLAG_OUTPUT + m_OutputFileName ); | |||||
} | } | ||||
} | } | ||||
@@ -303,7 +303,7 @@ public class MSVSSHISTORY extends MSVSS | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_RECURSION ); | |||||
cmd.addArgument( FLAG_RECURSION ); | |||||
} | } | ||||
} | } | ||||
@@ -316,7 +316,7 @@ public class MSVSSHISTORY extends MSVSS | |||||
{ | { | ||||
if( m_User != null ) | if( m_User != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_USER + m_User ); | |||||
cmd.addArgument( FLAG_USER + m_User ); | |||||
} | } | ||||
} | } | ||||
@@ -336,7 +336,7 @@ public class MSVSSHISTORY extends MSVSS | |||||
if( m_FromDate != null && m_ToDate != null ) | if( m_FromDate != null && m_ToDate != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_VERSION_DATE + m_ToDate + VALUE_FROMDATE + m_FromDate ); | |||||
cmd.addArgument( FLAG_VERSION_DATE + m_ToDate + VALUE_FROMDATE + m_FromDate ); | |||||
} | } | ||||
else if( m_ToDate != null && m_NumDays != Integer.MIN_VALUE ) | else if( m_ToDate != null && m_NumDays != Integer.MIN_VALUE ) | ||||
{ | { | ||||
@@ -350,7 +350,7 @@ public class MSVSSHISTORY extends MSVSS | |||||
String msg = "Error parsing date: " + m_ToDate; | String msg = "Error parsing date: " + m_ToDate; | ||||
throw new TaskException( msg ); | throw new TaskException( msg ); | ||||
} | } | ||||
cmd.createArgument().setValue( FLAG_VERSION_DATE + m_ToDate + VALUE_FROMDATE + startDate ); | |||||
cmd.addArgument( FLAG_VERSION_DATE + m_ToDate + VALUE_FROMDATE + startDate ); | |||||
} | } | ||||
else if( m_FromDate != null && m_NumDays != Integer.MIN_VALUE ) | else if( m_FromDate != null && m_NumDays != Integer.MIN_VALUE ) | ||||
{ | { | ||||
@@ -364,17 +364,17 @@ public class MSVSSHISTORY extends MSVSS | |||||
String msg = "Error parsing date: " + m_FromDate; | String msg = "Error parsing date: " + m_FromDate; | ||||
throw new TaskException( msg ); | throw new TaskException( msg ); | ||||
} | } | ||||
cmd.createArgument().setValue( FLAG_VERSION_DATE + endDate + VALUE_FROMDATE + m_FromDate ); | |||||
cmd.addArgument( FLAG_VERSION_DATE + endDate + VALUE_FROMDATE + m_FromDate ); | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
if( m_FromDate != null ) | if( m_FromDate != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_VERSION + VALUE_FROMDATE + m_FromDate ); | |||||
cmd.addArgument( FLAG_VERSION + VALUE_FROMDATE + m_FromDate ); | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_VERSION_DATE + m_ToDate ); | |||||
cmd.addArgument( FLAG_VERSION_DATE + m_ToDate ); | |||||
} | } | ||||
} | } | ||||
} | } | ||||
@@ -395,15 +395,15 @@ public class MSVSSHISTORY extends MSVSS | |||||
if( m_FromLabel != null && m_ToLabel != null ) | if( m_FromLabel != null && m_ToLabel != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_VERSION_LABEL + m_ToLabel + VALUE_FROMLABEL + m_FromLabel ); | |||||
cmd.addArgument( FLAG_VERSION_LABEL + m_ToLabel + VALUE_FROMLABEL + m_FromLabel ); | |||||
} | } | ||||
else if( m_FromLabel != null ) | else if( m_FromLabel != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_VERSION + VALUE_FROMLABEL + m_FromLabel ); | |||||
cmd.addArgument( FLAG_VERSION + VALUE_FROMLABEL + m_FromLabel ); | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_VERSION_LABEL + m_ToLabel ); | |||||
cmd.addArgument( FLAG_VERSION_LABEL + m_ToLabel ); | |||||
} | } | ||||
} | } | ||||
@@ -247,20 +247,20 @@ public class MSVSSLABEL extends MSVSS | |||||
if( m_AutoResponse == null ) | if( m_AutoResponse == null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_AUTORESPONSE_DEF ); | |||||
cmd.addArgument( FLAG_AUTORESPONSE_DEF ); | |||||
} | } | ||||
else if( m_AutoResponse.equalsIgnoreCase( "Y" ) ) | else if( m_AutoResponse.equalsIgnoreCase( "Y" ) ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_AUTORESPONSE_YES ); | |||||
cmd.addArgument( FLAG_AUTORESPONSE_YES ); | |||||
} | } | ||||
else if( m_AutoResponse.equalsIgnoreCase( "N" ) ) | else if( m_AutoResponse.equalsIgnoreCase( "N" ) ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_AUTORESPONSE_NO ); | |||||
cmd.addArgument( FLAG_AUTORESPONSE_NO ); | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_AUTORESPONSE_DEF ); | |||||
cmd.addArgument( FLAG_AUTORESPONSE_DEF ); | |||||
}// end of else | }// end of else | ||||
} | } | ||||
@@ -294,7 +294,7 @@ public class MSVSSLABEL extends MSVSS | |||||
{ | { | ||||
if( m_Label != null ) | if( m_Label != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_LABEL + m_Label ); | |||||
cmd.addArgument( FLAG_LABEL + m_Label ); | |||||
} | } | ||||
} | } | ||||
@@ -307,7 +307,7 @@ public class MSVSSLABEL extends MSVSS | |||||
{ | { | ||||
if( m_Version != null ) | if( m_Version != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_VERSION + m_Version ); | |||||
cmd.addArgument( FLAG_VERSION + m_Version ); | |||||
} | } | ||||
} | } | ||||
@@ -343,13 +343,13 @@ public class MSVSSLABEL extends MSVSS | |||||
// ss Label VSS items [-C] [-H] [-I-] [-Llabel] [-N] [-O] [-V] [-Y] [-?] | // ss Label VSS items [-C] [-H] [-I-] [-Llabel] [-N] [-O] [-V] [-Y] [-?] | ||||
// as specified in the SS.EXE help | // as specified in the SS.EXE help | ||||
commandLine.setExecutable( getSSCommand() ); | commandLine.setExecutable( getSSCommand() ); | ||||
commandLine.createArgument().setValue( COMMAND_LABEL ); | |||||
commandLine.addArgument( COMMAND_LABEL ); | |||||
// VSS items | // VSS items | ||||
commandLine.createArgument().setValue( getVsspath() ); | |||||
commandLine.addArgument( getVsspath() ); | |||||
// -C | // -C | ||||
commandLine.createArgument().setValue( "-C" + getComment() ); | |||||
commandLine.addArgument( "-C" + getComment() ); | |||||
// -I- or -I-Y or -I-N | // -I- or -I-Y or -I-N | ||||
getAutoresponse( commandLine ); | getAutoresponse( commandLine ); | ||||
@@ -16,6 +16,7 @@ import org.apache.tools.ant.taskdefs.Rmic; | |||||
import org.apache.tools.ant.types.Commandline; | import org.apache.tools.ant.types.Commandline; | ||||
import org.apache.tools.ant.types.Path; | import org.apache.tools.ant.types.Path; | ||||
import org.apache.tools.ant.util.mappers.FileNameMapper; | import org.apache.tools.ant.util.mappers.FileNameMapper; | ||||
import org.apache.tools.ant.util.FileUtils; | |||||
/** | /** | ||||
* This is the default implementation for the RmicAdapter interface. Currently, | * This is the default implementation for the RmicAdapter interface. Currently, | ||||
@@ -101,65 +102,65 @@ public abstract class DefaultRmicAdapter | |||||
{ | { | ||||
for( int i = 0; i < options.length; i++ ) | for( int i = 0; i < options.length; i++ ) | ||||
{ | { | ||||
cmd.createArgument().setValue( options[ i ] ); | |||||
cmd.addArgument( options[ i ] ); | |||||
} | } | ||||
} | } | ||||
Path classpath = getCompileClasspath(); | Path classpath = getCompileClasspath(); | ||||
cmd.createArgument().setValue( "-d" ); | |||||
cmd.createArgument().setFile( attributes.getBase() ); | |||||
cmd.addArgument( "-d" ); | |||||
cmd.addArgument( attributes.getBase() ); | |||||
if( attributes.getExtdirs() != null ) | if( attributes.getExtdirs() != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-extdirs" ); | |||||
cmd.createArgument().setPath( attributes.getExtdirs() ); | |||||
cmd.addArgument( "-extdirs" ); | |||||
cmd.addArguments( FileUtils.translateCommandline( attributes.getExtdirs() ) ); | |||||
} | } | ||||
cmd.createArgument().setValue( "-classpath" ); | |||||
cmd.createArgument().setPath( classpath ); | |||||
cmd.addArgument( "-classpath" ); | |||||
cmd.addArguments( FileUtils.translateCommandline( classpath ) ); | |||||
String stubVersion = attributes.getStubVersion(); | String stubVersion = attributes.getStubVersion(); | ||||
if( null != stubVersion ) | if( null != stubVersion ) | ||||
{ | { | ||||
if( "1.1".equals( stubVersion ) ) | if( "1.1".equals( stubVersion ) ) | ||||
cmd.createArgument().setValue( "-v1.1" ); | |||||
cmd.addArgument( "-v1.1" ); | |||||
else if( "1.2".equals( stubVersion ) ) | else if( "1.2".equals( stubVersion ) ) | ||||
cmd.createArgument().setValue( "-v1.2" ); | |||||
cmd.addArgument( "-v1.2" ); | |||||
else | else | ||||
cmd.createArgument().setValue( "-vcompat" ); | |||||
cmd.addArgument( "-vcompat" ); | |||||
} | } | ||||
if( null != attributes.getSourceBase() ) | if( null != attributes.getSourceBase() ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-keepgenerated" ); | |||||
cmd.addArgument( "-keepgenerated" ); | |||||
} | } | ||||
if( attributes.getIiop() ) | if( attributes.getIiop() ) | ||||
{ | { | ||||
getLogger().info( "IIOP has been turned on." ); | getLogger().info( "IIOP has been turned on." ); | ||||
cmd.createArgument().setValue( "-iiop" ); | |||||
cmd.addArgument( "-iiop" ); | |||||
if( attributes.getIiopopts() != null ) | if( attributes.getIiopopts() != null ) | ||||
{ | { | ||||
getLogger().info( "IIOP Options: " + attributes.getIiopopts() ); | getLogger().info( "IIOP Options: " + attributes.getIiopopts() ); | ||||
cmd.createArgument().setValue( attributes.getIiopopts() ); | |||||
cmd.addArgument( attributes.getIiopopts() ); | |||||
} | } | ||||
} | } | ||||
if( attributes.getIdl() ) | if( attributes.getIdl() ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-idl" ); | |||||
cmd.addArgument( "-idl" ); | |||||
getLogger().info( "IDL has been turned on." ); | getLogger().info( "IDL has been turned on." ); | ||||
if( attributes.getIdlopts() != null ) | if( attributes.getIdlopts() != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( attributes.getIdlopts() ); | |||||
cmd.addArgument( attributes.getIdlopts() ); | |||||
getLogger().info( "IDL Options: " + attributes.getIdlopts() ); | getLogger().info( "IDL Options: " + attributes.getIdlopts() ); | ||||
} | } | ||||
} | } | ||||
if( attributes.getDebug() ) | if( attributes.getDebug() ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-g" ); | |||||
cmd.addArgument( "-g" ); | |||||
} | } | ||||
logAndAddFilesToCompile( cmd ); | logAndAddFilesToCompile( cmd ); | ||||
@@ -225,7 +226,7 @@ public abstract class DefaultRmicAdapter | |||||
for( int i = 0; i < compileList.size(); i++ ) | for( int i = 0; i < compileList.size(); i++ ) | ||||
{ | { | ||||
String arg = (String)compileList.get( i ); | String arg = (String)compileList.get( i ); | ||||
cmd.createArgument().setValue( arg ); | |||||
cmd.addArgument( arg ); | |||||
niceSourceList.append( " " + arg ); | niceSourceList.append( " " + arg ); | ||||
} | } | ||||
@@ -11,6 +11,7 @@ import org.apache.myrmidon.api.AbstractTask; | |||||
import org.apache.myrmidon.api.TaskException; | import org.apache.myrmidon.api.TaskException; | ||||
import org.apache.tools.ant.taskdefs.exec.Execute2; | import org.apache.tools.ant.taskdefs.exec.Execute2; | ||||
import org.apache.tools.ant.types.Commandline; | import org.apache.tools.ant.types.Commandline; | ||||
import org.apache.tools.ant.types.Argument; | |||||
import java.io.IOException; | import java.io.IOException; | ||||
/** | /** | ||||
@@ -162,78 +163,78 @@ public class GenerateKey | |||||
final Commandline cmd = new Commandline(); | final Commandline cmd = new Commandline(); | ||||
cmd.setExecutable( "keytool" ); | cmd.setExecutable( "keytool" ); | ||||
cmd.createArgument().setValue( "-genkey " ); | |||||
cmd.addArgument( "-genkey " ); | |||||
if( m_verbose ) | if( m_verbose ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-v " ); | |||||
cmd.addArgument( "-v " ); | |||||
} | } | ||||
cmd.createArgument().setValue( "-alias" ); | |||||
cmd.createArgument().setValue( m_alias ); | |||||
cmd.addArgument( "-alias" ); | |||||
cmd.addArgument( m_alias ); | |||||
if( null != m_dname ) | if( null != m_dname ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-dname" ); | |||||
cmd.createArgument().setValue( m_dname ); | |||||
cmd.addArgument( "-dname" ); | |||||
cmd.addArgument( m_dname ); | |||||
} | } | ||||
if( null != m_expandedDname ) | if( null != m_expandedDname ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-dname" ); | |||||
cmd.createArgument().setValue( m_expandedDname.toString() ); | |||||
cmd.addArgument( "-dname" ); | |||||
cmd.addArgument( m_expandedDname.toString() ); | |||||
} | } | ||||
if( null != m_keystore ) | if( null != m_keystore ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-keystore" ); | |||||
cmd.createArgument().setValue( m_keystore ); | |||||
cmd.addArgument( "-keystore" ); | |||||
cmd.addArgument( m_keystore ); | |||||
} | } | ||||
if( null != m_storepass ) | if( null != m_storepass ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-storepass" ); | |||||
cmd.createArgument().setValue( m_storepass ); | |||||
cmd.addArgument( "-storepass" ); | |||||
cmd.addArgument( m_storepass ); | |||||
} | } | ||||
if( null != m_storetype ) | if( null != m_storetype ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-storetype" ); | |||||
cmd.createArgument().setValue( m_storetype ); | |||||
cmd.addArgument( "-storetype" ); | |||||
cmd.addArgument( m_storetype ); | |||||
} | } | ||||
cmd.createArgument().setValue( "-keypass" ); | |||||
cmd.addArgument( "-keypass" ); | |||||
if( null != m_keypass ) | if( null != m_keypass ) | ||||
{ | { | ||||
cmd.createArgument().setValue( m_keypass ); | |||||
cmd.addArgument( m_keypass ); | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
cmd.createArgument().setValue( m_storepass ); | |||||
cmd.addArgument( m_storepass ); | |||||
} | } | ||||
if( null != m_sigalg ) | if( null != m_sigalg ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-sigalg" ); | |||||
cmd.createArgument().setValue( m_sigalg ); | |||||
cmd.addArgument( "-sigalg" ); | |||||
cmd.addArgument( m_sigalg ); | |||||
} | } | ||||
if( null != m_keyalg ) | if( null != m_keyalg ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-keyalg" ); | |||||
cmd.createArgument().setValue( m_keyalg ); | |||||
cmd.addArgument( "-keyalg" ); | |||||
cmd.addArgument( m_keyalg ); | |||||
} | } | ||||
if( 0 < m_keysize ) | if( 0 < m_keysize ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-keysize" ); | |||||
cmd.createArgument().setValue( "" + m_keysize ); | |||||
cmd.addArgument( "-keysize" ); | |||||
cmd.addArgument( "" + m_keysize ); | |||||
} | } | ||||
if( 0 < m_validity ) | if( 0 < m_validity ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-validity" ); | |||||
cmd.createArgument().setValue( "" + m_validity ); | |||||
cmd.addArgument( "-validity" ); | |||||
cmd.addArgument( "" + m_validity ); | |||||
} | } | ||||
return cmd; | return cmd; | ||||
} | } | ||||
@@ -19,6 +19,7 @@ import org.apache.tools.ant.types.DirectoryScanner; | |||||
import org.apache.tools.ant.taskdefs.exec.Execute2; | import org.apache.tools.ant.taskdefs.exec.Execute2; | ||||
import org.apache.tools.ant.types.Commandline; | import org.apache.tools.ant.types.Commandline; | ||||
import org.apache.tools.ant.types.FileSet; | import org.apache.tools.ant.types.FileSet; | ||||
import org.apache.tools.ant.types.Argument; | |||||
/** | /** | ||||
* Sign a archive. | * Sign a archive. | ||||
@@ -309,58 +310,58 @@ public class SignJar | |||||
if( null != m_keystore ) | if( null != m_keystore ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-keystore" ); | |||||
cmd.createArgument().setValue( m_keystore.toString() ); | |||||
cmd.addArgument( "-keystore" ); | |||||
cmd.addArgument( m_keystore.toString() ); | |||||
} | } | ||||
if( null != m_storepass ) | if( null != m_storepass ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-storepass" ); | |||||
cmd.createArgument().setValue( m_storepass ); | |||||
cmd.addArgument( "-storepass" ); | |||||
cmd.addArgument( m_storepass ); | |||||
} | } | ||||
if( null != m_storetype ) | if( null != m_storetype ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-storetype" ); | |||||
cmd.createArgument().setValue( m_storetype ); | |||||
cmd.addArgument( "-storetype" ); | |||||
cmd.addArgument( m_storetype ); | |||||
} | } | ||||
if( null != m_keypass ) | if( null != m_keypass ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-keypass" ); | |||||
cmd.createArgument().setValue( m_keypass ); | |||||
cmd.addArgument( "-keypass" ); | |||||
cmd.addArgument( m_keypass ); | |||||
} | } | ||||
if( null != m_sigfile ) | if( null != m_sigfile ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-sigfile" ); | |||||
cmd.createArgument().setValue( m_sigfile.toString() ); | |||||
cmd.addArgument( "-sigfile" ); | |||||
cmd.addArgument( m_sigfile.toString() ); | |||||
} | } | ||||
if( null != jarTarget ) | if( null != jarTarget ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-signedjar" ); | |||||
cmd.createArgument().setValue( jarTarget.toString() ); | |||||
cmd.addArgument( "-signedjar" ); | |||||
cmd.addArgument( jarTarget.toString() ); | |||||
} | } | ||||
if( m_verbose ) | if( m_verbose ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-verbose" ); | |||||
cmd.addArgument( "-verbose" ); | |||||
} | } | ||||
if( m_internalsf ) | if( m_internalsf ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-internalsf" ); | |||||
cmd.addArgument( "-internalsf" ); | |||||
} | } | ||||
if( m_sectionsonly ) | if( m_sectionsonly ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-sectionsonly" ); | |||||
cmd.addArgument( "-sectionsonly" ); | |||||
} | } | ||||
cmd.createArgument().setValue( jarSource.toString() ); | |||||
cmd.addArgument( jarSource.toString() ); | |||||
cmd.createArgument().setValue( m_alias ); | |||||
cmd.addArgument( m_alias ); | |||||
return cmd; | return cmd; | ||||
} | } | ||||
} | } | ||||
@@ -14,6 +14,7 @@ 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.util.mappers.Mapper; | import org.apache.tools.ant.util.mappers.Mapper; | ||||
import org.apache.tools.ant.types.SourceFileScanner; | import org.apache.tools.ant.types.SourceFileScanner; | ||||
import org.apache.tools.ant.types.Argument; | |||||
import org.apache.tools.ant.util.mappers.FileNameMapper; | import org.apache.tools.ant.util.mappers.FileNameMapper; | ||||
import org.apache.tools.ant.util.mappers.IdentityMapper; | import org.apache.tools.ant.util.mappers.IdentityMapper; | ||||
@@ -231,17 +232,17 @@ public class Native2Ascii | |||||
// it's cleaner here) | // it's cleaner here) | ||||
if( m_reverse ) | if( m_reverse ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-reverse" ); | |||||
cmd.addArgument( "-reverse" ); | |||||
} | } | ||||
if( m_encoding != null ) | if( m_encoding != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-encoding" ); | |||||
cmd.createArgument().setValue( m_encoding ); | |||||
cmd.addArgument( "-encoding" ); | |||||
cmd.addArgument( m_encoding ); | |||||
} | } | ||||
cmd.createArgument().setFile( srcFile ); | |||||
cmd.createArgument().setFile( destFile ); | |||||
cmd.addArgument( srcFile ); | |||||
cmd.addArgument( destFile ); | |||||
return cmd; | return cmd; | ||||
} | } | ||||
} | } |
@@ -13,6 +13,7 @@ import org.apache.myrmidon.api.AbstractTask; | |||||
import org.apache.myrmidon.api.TaskException; | import org.apache.myrmidon.api.TaskException; | ||||
import org.apache.tools.ant.taskdefs.exec.Execute2; | import org.apache.tools.ant.taskdefs.exec.Execute2; | ||||
import org.apache.tools.ant.types.Commandline; | import org.apache.tools.ant.types.Commandline; | ||||
import org.apache.tools.ant.types.Argument; | |||||
/** | /** | ||||
* @author lucas@collab.net | * @author lucas@collab.net | ||||
@@ -119,26 +120,26 @@ public class Rpm | |||||
cmd.setExecutable( "rpm" ); | cmd.setExecutable( "rpm" ); | ||||
if( m_topDir != null ) | if( m_topDir != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "--define" ); | |||||
cmd.createArgument().setValue( "_topdir" + m_topDir ); | |||||
cmd.addArgument( "--define" ); | |||||
cmd.addArgument( "_topdir" + m_topDir ); | |||||
} | } | ||||
cmd.createArgument().setLine( m_command ); | cmd.createArgument().setLine( m_command ); | ||||
if( m_cleanBuildDir ) | if( m_cleanBuildDir ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "--clean" ); | |||||
cmd.addArgument( "--clean" ); | |||||
} | } | ||||
if( m_removeSpec ) | if( m_removeSpec ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "--rmspec" ); | |||||
cmd.addArgument( "--rmspec" ); | |||||
} | } | ||||
if( m_removeSource ) | if( m_removeSource ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "--rmsource" ); | |||||
cmd.addArgument( "--rmsource" ); | |||||
} | } | ||||
cmd.createArgument().setValue( "SPECS/" + m_specFile ); | |||||
cmd.addArgument( "SPECS/" + m_specFile ); | |||||
return cmd; | return cmd; | ||||
} | } | ||||
} | } |
@@ -18,6 +18,20 @@ public class Argument | |||||
{ | { | ||||
private String[] m_parts; | private String[] m_parts; | ||||
public Argument() | |||||
{ | |||||
} | |||||
public Argument( final String value ) | |||||
{ | |||||
setValue( value ); | |||||
} | |||||
public Argument( final File file ) | |||||
{ | |||||
setFile( file ); | |||||
} | |||||
/** | /** | ||||
* Sets a single commandline argument to the absolute filename of the | * Sets a single commandline argument to the absolute filename of the | ||||
* given file. | * given file. | ||||
@@ -100,7 +100,7 @@ public class Commandline | |||||
{ | { | ||||
for( int i = 0; i < line.length; i++ ) | for( int i = 0; i < line.length; i++ ) | ||||
{ | { | ||||
createArgument().setValue( line[ i ] ); | |||||
addArgument( line[ i ] ); | |||||
} | } | ||||
} | } | ||||
@@ -117,6 +117,21 @@ public class Commandline | |||||
return argument; | return argument; | ||||
} | } | ||||
public void addArgument( final File argument ) | |||||
{ | |||||
addArgument( new Argument( argument ) ); | |||||
} | |||||
public void addArgument( final String argument ) | |||||
{ | |||||
addArgument( new Argument( argument ) ); | |||||
} | |||||
public void addArgument( final Argument argument ) | |||||
{ | |||||
m_arguments.add( argument ); | |||||
} | |||||
/** | /** | ||||
* Return a marker. <p> | * Return a marker. <p> | ||||
* | * | ||||
@@ -7,10 +7,10 @@ | |||||
*/ | */ | ||||
package org.apache.tools.ant.types; | package org.apache.tools.ant.types; | ||||
import org.apache.myrmidon.api.TaskException; | |||||
import java.io.File; | |||||
import org.apache.aut.nativelib.Os; | import org.apache.aut.nativelib.Os; | ||||
import org.apache.avalon.excalibur.util.StringUtil; | import org.apache.avalon.excalibur.util.StringUtil; | ||||
import java.io.File; | |||||
import org.apache.myrmidon.api.TaskException; | |||||
/** | /** | ||||
* A representation of a Java command line that is nothing more than a composite | * A representation of a Java command line that is nothing more than a composite | ||||
@@ -23,11 +23,11 @@ import java.io.File; | |||||
public class CommandlineJava | public class CommandlineJava | ||||
implements Cloneable | implements Cloneable | ||||
{ | { | ||||
private Commandline vmCommand = new Commandline(); | |||||
private Commandline javaCommand = new Commandline(); | |||||
private SysProperties sysProperties = new SysProperties(); | |||||
private Path classpath; | |||||
private String maxMemory; | |||||
private Commandline m_vmCommand = new Commandline(); | |||||
private Commandline m_javaCommand = new Commandline(); | |||||
private SysProperties m_sysProperties = new SysProperties(); | |||||
private Path m_classpath; | |||||
private String m_maxMemory; | |||||
/** | /** | ||||
* Indicate whether it will execute a jar file or not, in this case the | * Indicate whether it will execute a jar file or not, in this case the | ||||
@@ -47,7 +47,7 @@ public class CommandlineJava | |||||
*/ | */ | ||||
public void setClassname( String classname ) | public void setClassname( String classname ) | ||||
{ | { | ||||
javaCommand.setExecutable( classname ); | |||||
m_javaCommand.setExecutable( classname ); | |||||
executeJar = false; | executeJar = false; | ||||
} | } | ||||
@@ -58,7 +58,7 @@ public class CommandlineJava | |||||
*/ | */ | ||||
public void setJar( String jarpathname ) | public void setJar( String jarpathname ) | ||||
{ | { | ||||
javaCommand.setExecutable( jarpathname ); | |||||
m_javaCommand.setExecutable( jarpathname ); | |||||
executeJar = true; | executeJar = true; | ||||
} | } | ||||
@@ -69,18 +69,18 @@ public class CommandlineJava | |||||
*/ | */ | ||||
public void setMaxmemory( String max ) | public void setMaxmemory( String max ) | ||||
{ | { | ||||
this.maxMemory = max; | |||||
this.m_maxMemory = max; | |||||
} | } | ||||
public void setSystemProperties() | public void setSystemProperties() | ||||
throws TaskException | throws TaskException | ||||
{ | { | ||||
sysProperties.setSystem(); | |||||
m_sysProperties.setSystem(); | |||||
} | } | ||||
public void setVm( String vm ) | public void setVm( String vm ) | ||||
{ | { | ||||
vmCommand.setExecutable( vm ); | |||||
m_vmCommand.setExecutable( vm ); | |||||
} | } | ||||
/** | /** | ||||
@@ -92,14 +92,14 @@ public class CommandlineJava | |||||
{ | { | ||||
if( !executeJar ) | if( !executeJar ) | ||||
{ | { | ||||
return javaCommand.getExecutable(); | |||||
return m_javaCommand.getExecutable(); | |||||
} | } | ||||
return null; | return null; | ||||
} | } | ||||
public Path getClasspath() | public Path getClasspath() | ||||
{ | { | ||||
return classpath; | |||||
return m_classpath; | |||||
} | } | ||||
/** | /** | ||||
@@ -125,22 +125,22 @@ public class CommandlineJava | |||||
System.arraycopy( vmArgs, 1, result, pos, vmArgs.length - 1 ); | System.arraycopy( vmArgs, 1, result, pos, vmArgs.length - 1 ); | ||||
pos += vmArgs.length - 1; | pos += vmArgs.length - 1; | ||||
// properties are part of the vm options... | // properties are part of the vm options... | ||||
if( sysProperties.size() > 0 ) | |||||
if( m_sysProperties.size() > 0 ) | |||||
{ | { | ||||
System.arraycopy( sysProperties.getJavaVariables(), 0, | |||||
result, pos, sysProperties.size() ); | |||||
pos += sysProperties.size(); | |||||
System.arraycopy( m_sysProperties.getJavaVariables(), 0, | |||||
result, pos, m_sysProperties.size() ); | |||||
pos += m_sysProperties.size(); | |||||
} | } | ||||
// classpath is a vm option too.. | // classpath is a vm option too.. | ||||
if( classpath != null && classpath.toString().trim().length() > 0 ) | |||||
if( m_classpath != null && m_classpath.toString().trim().length() > 0 ) | |||||
{ | { | ||||
result[ pos++ ] = "-classpath"; | result[ pos++ ] = "-classpath"; | ||||
result[ pos++ ] = classpath.toString(); | |||||
result[ pos++ ] = m_classpath.toString(); | |||||
} | } | ||||
// this is the classname to run as well as its arguments. | // this is the classname to run as well as its arguments. | ||||
// in case of 'executeJar', the executable is a jar file. | // in case of 'executeJar', the executable is a jar file. | ||||
System.arraycopy( javaCommand.getCommandline(), 0, | |||||
result, pos, javaCommand.size() ); | |||||
System.arraycopy( m_javaCommand.getCommandline(), 0, | |||||
result, pos, m_javaCommand.size() ); | |||||
return result; | return result; | ||||
} | } | ||||
@@ -153,19 +153,19 @@ public class CommandlineJava | |||||
{ | { | ||||
if( executeJar ) | if( executeJar ) | ||||
{ | { | ||||
return javaCommand.getExecutable(); | |||||
return m_javaCommand.getExecutable(); | |||||
} | } | ||||
return null; | return null; | ||||
} | } | ||||
public Commandline getJavaCommand() | public Commandline getJavaCommand() | ||||
{ | { | ||||
return javaCommand; | |||||
return m_javaCommand; | |||||
} | } | ||||
public SysProperties getSystemProperties() | public SysProperties getSystemProperties() | ||||
{ | { | ||||
return sysProperties; | |||||
return m_sysProperties; | |||||
} | } | ||||
public Commandline getVmCommand() | public Commandline getVmCommand() | ||||
@@ -175,32 +175,47 @@ public class CommandlineJava | |||||
public void addSysproperty( EnvironmentVariable sysp ) | public void addSysproperty( EnvironmentVariable sysp ) | ||||
{ | { | ||||
sysProperties.addVariable( sysp ); | |||||
m_sysProperties.addVariable( sysp ); | |||||
} | } | ||||
public Argument createArgument() | public Argument createArgument() | ||||
{ | { | ||||
return javaCommand.createArgument(); | |||||
return m_javaCommand.createArgument(); | |||||
} | |||||
public void addArgument( final String argument ) | |||||
{ | |||||
m_javaCommand.addArgument( argument ); | |||||
} | |||||
public void addArgument( final Argument argument ) | |||||
{ | |||||
m_javaCommand.addArgument( argument ); | |||||
} | } | ||||
public Path createClasspath() | public Path createClasspath() | ||||
{ | { | ||||
if( classpath == null ) | |||||
if( m_classpath == null ) | |||||
{ | { | ||||
classpath = new Path(); | |||||
m_classpath = new Path(); | |||||
} | } | ||||
return classpath; | |||||
return m_classpath; | |||||
} | } | ||||
public Argument createVmArgument() | |||||
public void addVmArgument( final String argument ) | |||||
{ | { | ||||
return vmCommand.createArgument(); | |||||
m_vmCommand.addArgument( argument ); | |||||
} | |||||
public void addVmArgument( final Argument argument ) | |||||
{ | |||||
m_vmCommand.addArgument( argument ); | |||||
} | } | ||||
public void restoreSystemProperties() | public void restoreSystemProperties() | ||||
throws TaskException | throws TaskException | ||||
{ | { | ||||
sysProperties.restoreSystem(); | |||||
m_sysProperties.restoreSystem(); | |||||
} | } | ||||
/** | /** | ||||
@@ -212,9 +227,9 @@ public class CommandlineJava | |||||
public int size() | public int size() | ||||
throws TaskException | throws TaskException | ||||
{ | { | ||||
int size = getActualVMCommand().size() + javaCommand.size() + sysProperties.size(); | |||||
int size = getActualVMCommand().size() + m_javaCommand.size() + m_sysProperties.size(); | |||||
// classpath is "-classpath <classpath>" -> 2 args | // classpath is "-classpath <classpath>" -> 2 args | ||||
if( classpath != null && classpath.toString().trim().length() > 0 ) | |||||
if( m_classpath != null && m_classpath.toString().trim().length() > 0 ) | |||||
{ | { | ||||
size += 2; | size += 2; | ||||
} | } | ||||
@@ -230,7 +245,7 @@ public class CommandlineJava | |||||
{ | { | ||||
try | try | ||||
{ | { | ||||
String[] line = getCommandline(); | |||||
final String[] line = getCommandline(); | |||||
return StringUtil.join( line, " " ); | return StringUtil.join( line, " " ); | ||||
} | } | ||||
catch( TaskException e ) | catch( TaskException e ) | ||||
@@ -243,9 +258,9 @@ public class CommandlineJava | |||||
{ | { | ||||
Commandline actualVMCommand = new Commandline(); | Commandline actualVMCommand = new Commandline(); | ||||
//(Commandline)vmCommand.clone(); | //(Commandline)vmCommand.clone(); | ||||
if( maxMemory != null ) | |||||
if( m_maxMemory != null ) | |||||
{ | { | ||||
actualVMCommand.createArgument().setValue( "-Xmx" + maxMemory ); | |||||
actualVMCommand.addArgument( "-Xmx" + m_maxMemory ); | |||||
} | } | ||||
return actualVMCommand; | return actualVMCommand; | ||||
} | } | ||||
@@ -262,7 +277,7 @@ public class CommandlineJava | |||||
// PATH. | // PATH. | ||||
File jExecutable = | File jExecutable = | ||||
new File( System.getProperty( "java.home" ) + | new File( System.getProperty( "java.home" ) + | ||||
"/../bin/java" + extension ); | |||||
"/../bin/java" + extension ); | |||||
if( jExecutable.exists() && !Os.isFamily( "netware" ) ) | if( jExecutable.exists() && !Os.isFamily( "netware" ) ) | ||||
{ | { | ||||
@@ -276,5 +291,4 @@ public class CommandlineJava | |||||
return "java"; | return "java"; | ||||
} | } | ||||
} | } | ||||
} | } |
@@ -19,9 +19,9 @@ import java.util.ArrayList; | |||||
import java.util.Stack; | import java.util.Stack; | ||||
import java.util.StringTokenizer; | import java.util.StringTokenizer; | ||||
import org.apache.avalon.excalibur.io.FileUtil; | import org.apache.avalon.excalibur.io.FileUtil; | ||||
import org.apache.avalon.framework.logger.Logger; | |||||
import org.apache.myrmidon.api.TaskException; | import org.apache.myrmidon.api.TaskException; | ||||
import org.apache.tools.ant.types.FilterSetCollection; | import org.apache.tools.ant.types.FilterSetCollection; | ||||
import org.apache.tools.ant.types.Path; | |||||
/** | /** | ||||
* This class also encapsulates methods which allow Files to be refered to using | * This class also encapsulates methods which allow Files to be refered to using | ||||
@@ -298,6 +298,12 @@ public class FileUtils | |||||
} | } | ||||
} | } | ||||
public static String[] translateCommandline( Path to_process ) | |||||
throws TaskException | |||||
{ | |||||
return translateCommandline( to_process.toString() ); | |||||
} | |||||
public static String[] translateCommandline( String to_process ) | public static String[] translateCommandline( String to_process ) | ||||
throws TaskException | throws TaskException | ||||
{ | { | ||||
@@ -405,7 +411,7 @@ public class FileUtils | |||||
public static void translateFileSep( StringBuffer buffer ) | public static void translateFileSep( StringBuffer buffer ) | ||||
{ | { | ||||
int len = buffer.length(); | int len = buffer.length(); | ||||
for ( int pos = 0; pos < len; pos++ ) | |||||
for( int pos = 0; pos < len; pos++ ) | |||||
{ | { | ||||
char ch = buffer.charAt( pos ); | char ch = buffer.charAt( pos ); | ||||
if( ch == '/' || ch == '\\' ) | if( ch == '/' || ch == '\\' ) | ||||
@@ -11,8 +11,9 @@ import java.io.BufferedReader; | |||||
import java.io.File; | import java.io.File; | ||||
import java.io.FileInputStream; | import java.io.FileInputStream; | ||||
import java.io.FileOutputStream; | import java.io.FileOutputStream; | ||||
import java.io.IOException; | |||||
import java.io.InputStreamReader; | import java.io.InputStreamReader; | ||||
import java.io.IOException; | |||||
import java.io.InputStream; | |||||
import java.security.DigestInputStream; | import java.security.DigestInputStream; | ||||
import java.security.MessageDigest; | import java.security.MessageDigest; | ||||
import java.security.NoSuchAlgorithmException; | import java.security.NoSuchAlgorithmException; | ||||
@@ -20,9 +21,10 @@ import java.security.NoSuchProviderException; | |||||
import java.util.ArrayList; | import java.util.ArrayList; | ||||
import java.util.Enumeration; | import java.util.Enumeration; | ||||
import java.util.Hashtable; | import java.util.Hashtable; | ||||
import org.apache.avalon.excalibur.io.IOUtil; | |||||
import org.apache.myrmidon.api.TaskException; | import org.apache.myrmidon.api.TaskException; | ||||
import org.apache.tools.ant.types.DirectoryScanner; | |||||
import org.apache.tools.ant.taskdefs.condition.Condition; | import org.apache.tools.ant.taskdefs.condition.Condition; | ||||
import org.apache.tools.ant.types.DirectoryScanner; | |||||
import org.apache.tools.ant.types.FileSet; | import org.apache.tools.ant.types.FileSet; | ||||
/** | /** | ||||
@@ -31,61 +33,73 @@ import org.apache.tools.ant.types.FileSet; | |||||
* | * | ||||
* @author <a href="mailto:umagesh@rediffmail.com">Magesh Umasankar</a> | * @author <a href="mailto:umagesh@rediffmail.com">Magesh Umasankar</a> | ||||
*/ | */ | ||||
public class Checksum extends MatchingTask implements Condition | |||||
public class Checksum | |||||
extends MatchingTask | |||||
implements Condition | |||||
{ | { | ||||
/** | /** | ||||
* File for which checksum is to be calculated. | * File for which checksum is to be calculated. | ||||
*/ | */ | ||||
private File file = null; | |||||
private File m_file; | |||||
/** | /** | ||||
* MessageDigest algorithm to be used. | * MessageDigest algorithm to be used. | ||||
*/ | */ | ||||
private String algorithm = "MD5"; | |||||
private String m_algorithm = "MD5"; | |||||
/** | /** | ||||
* MessageDigest Algorithm provider | * MessageDigest Algorithm provider | ||||
*/ | */ | ||||
private String provider = null; | |||||
private String m_provider; | |||||
/** | /** | ||||
* ArrayList to hold source file sets. | * ArrayList to hold source file sets. | ||||
*/ | */ | ||||
private ArrayList filesets = new ArrayList(); | |||||
private ArrayList m_filesets = new ArrayList(); | |||||
/** | /** | ||||
* Stores SourceFile, DestFile pairs and SourceFile, Property String pairs. | * Stores SourceFile, DestFile pairs and SourceFile, Property String pairs. | ||||
*/ | */ | ||||
private Hashtable includeFileMap = new Hashtable(); | |||||
private Hashtable m_includeFileMap = new Hashtable(); | |||||
/** | /** | ||||
* File Extension that is be to used to create or identify destination file | * File Extension that is be to used to create or identify destination file | ||||
*/ | */ | ||||
private String fileext; | |||||
private String m_fileext; | |||||
/** | /** | ||||
* Create new destination file? Defaults to false. | * Create new destination file? Defaults to false. | ||||
*/ | */ | ||||
private boolean forceOverwrite; | |||||
private boolean m_forceOverwrite; | |||||
/** | /** | ||||
* is this task being used as a nested condition element? | * is this task being used as a nested condition element? | ||||
*/ | */ | ||||
private boolean isCondition; | |||||
private boolean m_isCondition; | |||||
/** | /** | ||||
* Message Digest instance | * Message Digest instance | ||||
*/ | */ | ||||
private MessageDigest messageDigest; | |||||
private MessageDigest m_messageDigest; | |||||
/** | /** | ||||
* Holds generated checksum and gets set as a Project Property. | * Holds generated checksum and gets set as a Project Property. | ||||
*/ | */ | ||||
private String property; | |||||
private String m_property; | |||||
/** | /** | ||||
* Contains the result of a checksum verification. ("true" or "false") | * Contains the result of a checksum verification. ("true" or "false") | ||||
*/ | */ | ||||
private String verifyProperty; | |||||
private String m_verifyProperty; | |||||
/** | /** | ||||
* Sets the MessageDigest algorithm to be used to calculate the checksum. | * Sets the MessageDigest algorithm to be used to calculate the checksum. | ||||
* | * | ||||
* @param algorithm The new Algorithm value | * @param algorithm The new Algorithm value | ||||
*/ | */ | ||||
public void setAlgorithm( String algorithm ) | |||||
public void setAlgorithm( final String algorithm ) | |||||
{ | { | ||||
this.algorithm = algorithm; | |||||
m_algorithm = algorithm; | |||||
} | } | ||||
/** | /** | ||||
@@ -93,9 +107,9 @@ public class Checksum extends MatchingTask implements Condition | |||||
* | * | ||||
* @param file The new File value | * @param file The new File value | ||||
*/ | */ | ||||
public void setFile( File file ) | |||||
public void setFile( final File file ) | |||||
{ | { | ||||
this.file = file; | |||||
m_file = file; | |||||
} | } | ||||
/** | /** | ||||
@@ -104,9 +118,9 @@ public class Checksum extends MatchingTask implements Condition | |||||
* | * | ||||
* @param fileext The new Fileext value | * @param fileext The new Fileext value | ||||
*/ | */ | ||||
public void setFileext( String fileext ) | |||||
public void setFileext( final String fileext ) | |||||
{ | { | ||||
this.fileext = fileext; | |||||
m_fileext = fileext; | |||||
} | } | ||||
/** | /** | ||||
@@ -117,7 +131,7 @@ public class Checksum extends MatchingTask implements Condition | |||||
*/ | */ | ||||
public void setForceOverwrite( boolean forceOverwrite ) | public void setForceOverwrite( boolean forceOverwrite ) | ||||
{ | { | ||||
this.forceOverwrite = forceOverwrite; | |||||
this.m_forceOverwrite = forceOverwrite; | |||||
} | } | ||||
/** | /** | ||||
@@ -127,7 +141,7 @@ public class Checksum extends MatchingTask implements Condition | |||||
*/ | */ | ||||
public void setProperty( String property ) | public void setProperty( String property ) | ||||
{ | { | ||||
this.property = property; | |||||
this.m_property = property; | |||||
} | } | ||||
/** | /** | ||||
@@ -136,9 +150,9 @@ public class Checksum extends MatchingTask implements Condition | |||||
* | * | ||||
* @param provider The new Provider value | * @param provider The new Provider value | ||||
*/ | */ | ||||
public void setProvider( String provider ) | |||||
public void setProvider( final String provider ) | |||||
{ | { | ||||
this.provider = provider; | |||||
m_provider = provider; | |||||
} | } | ||||
/** | /** | ||||
@@ -147,9 +161,9 @@ public class Checksum extends MatchingTask implements Condition | |||||
* | * | ||||
* @param verifyProperty The new Verifyproperty value | * @param verifyProperty The new Verifyproperty value | ||||
*/ | */ | ||||
public void setVerifyproperty( String verifyProperty ) | |||||
public void setVerifyproperty( final String verifyProperty ) | |||||
{ | { | ||||
this.verifyProperty = verifyProperty; | |||||
m_verifyProperty = verifyProperty; | |||||
} | } | ||||
/** | /** | ||||
@@ -157,9 +171,9 @@ public class Checksum extends MatchingTask implements Condition | |||||
* | * | ||||
* @param set The feature to be added to the Fileset attribute | * @param set The feature to be added to the Fileset attribute | ||||
*/ | */ | ||||
public void addFileset( FileSet set ) | |||||
public void addFileset( final FileSet set ) | |||||
{ | { | ||||
filesets.add( set ); | |||||
m_filesets.add( set ); | |||||
} | } | ||||
/** | /** | ||||
@@ -167,12 +181,11 @@ public class Checksum extends MatchingTask implements Condition | |||||
* | * | ||||
* @return Returns true if the checksum verification test passed, false | * @return Returns true if the checksum verification test passed, false | ||||
* otherwise. | * otherwise. | ||||
* @exception TaskException Description of Exception | |||||
*/ | */ | ||||
public boolean eval() | public boolean eval() | ||||
throws TaskException | throws TaskException | ||||
{ | { | ||||
isCondition = true; | |||||
m_isCondition = true; | |||||
return validateAndExecute(); | return validateAndExecute(); | ||||
} | } | ||||
@@ -184,10 +197,10 @@ public class Checksum extends MatchingTask implements Condition | |||||
public void execute() | public void execute() | ||||
throws TaskException | throws TaskException | ||||
{ | { | ||||
boolean value = validateAndExecute(); | |||||
if( verifyProperty != null ) | |||||
final boolean value = validateAndExecute(); | |||||
if( m_verifyProperty != null ) | |||||
{ | { | ||||
setProperty( verifyProperty, new Boolean( value ).toString() ); | |||||
setProperty( m_verifyProperty, new Boolean( value ).toString() ); | |||||
} | } | ||||
} | } | ||||
@@ -197,36 +210,37 @@ public class Checksum extends MatchingTask implements Condition | |||||
* @param file The feature to be added to the ToIncludeFileMap attribute | * @param file The feature to be added to the ToIncludeFileMap attribute | ||||
* @exception TaskException Description of Exception | * @exception TaskException Description of Exception | ||||
*/ | */ | ||||
private void addToIncludeFileMap( File file ) | |||||
private void addToIncludeFileMap( final File file ) | |||||
throws TaskException | throws TaskException | ||||
{ | { | ||||
if( file != null ) | if( file != null ) | ||||
{ | { | ||||
if( file.exists() ) | if( file.exists() ) | ||||
{ | { | ||||
if( property == null ) | |||||
if( m_property == null ) | |||||
{ | { | ||||
File dest = new File( file.getParent(), file.getName() + fileext ); | |||||
if( forceOverwrite || isCondition || | |||||
final File dest = new File( file.getParent(), file.getName() + m_fileext ); | |||||
if( m_forceOverwrite || m_isCondition || | |||||
( file.lastModified() > dest.lastModified() ) ) | ( file.lastModified() > dest.lastModified() ) ) | ||||
{ | { | ||||
includeFileMap.put( file, dest ); | |||||
m_includeFileMap.put( file, dest ); | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
getLogger().debug( file + " omitted as " + dest + " is up to date." ); | |||||
final String message = file + " omitted as " + dest + | |||||
" is up to date."; | |||||
getLogger().debug( message ); | |||||
} | } | ||||
} | } | ||||
else | else | ||||
{ | { | ||||
includeFileMap.put( file, property ); | |||||
m_includeFileMap.put( file, m_property ); | |||||
} | } | ||||
} | } | ||||
else | else | ||||
{ | { | ||||
String message = "Could not find file " | |||||
+ file.getAbsolutePath() | |||||
+ " to generate checksum for."; | |||||
final String message = "Could not find file " + file.getAbsolutePath() + | |||||
" to generate checksum for."; | |||||
getLogger().info( message ); | getLogger().info( message ); | ||||
throw new TaskException( message ); | throw new TaskException( message ); | ||||
} | } | ||||
@@ -235,253 +249,266 @@ public class Checksum extends MatchingTask implements Condition | |||||
/** | /** | ||||
* Generate checksum(s) using the message digest created earlier. | * Generate checksum(s) using the message digest created earlier. | ||||
* | |||||
* @return Description of the Returned Value | |||||
* @exception TaskException Description of Exception | |||||
*/ | */ | ||||
private boolean generateChecksums() | private boolean generateChecksums() | ||||
throws TaskException | throws TaskException | ||||
{ | { | ||||
boolean checksumMatches = true; | boolean checksumMatches = true; | ||||
final Enumeration includes = m_includeFileMap.keys(); | |||||
while( includes.hasMoreElements() ) | |||||
{ | |||||
final File src = (File)includes.nextElement(); | |||||
if( !m_isCondition ) | |||||
{ | |||||
final String message = "Calculating " + m_algorithm + " checksum for " + src; | |||||
getLogger().info( message ); | |||||
} | |||||
checksumMatches = z( src, checksumMatches ); | |||||
} | |||||
return checksumMatches; | |||||
} | |||||
private boolean z( final File src, boolean checksumMatches ) | |||||
throws TaskException | |||||
{ | |||||
FileInputStream fis = null; | FileInputStream fis = null; | ||||
FileOutputStream fos = null; | FileOutputStream fos = null; | ||||
try | try | ||||
{ | { | ||||
for( Enumeration e = includeFileMap.keys(); e.hasMoreElements(); ) | |||||
fis = new FileInputStream( src ); | |||||
final byte[] fileDigest = buildDigest( fis ); | |||||
IOUtil.shutdownStream( fis ); | |||||
String checksum = ""; | |||||
for( int i = 0; i < fileDigest.length; i++ ) | |||||
{ | { | ||||
messageDigest.reset(); | |||||
File src = (File)e.nextElement(); | |||||
if( !isCondition ) | |||||
final String hexStr = Integer.toHexString( 0x00ff & fileDigest[ i ] ); | |||||
if( hexStr.length() < 2 ) | |||||
{ | { | ||||
getLogger().info( "Calculating " + algorithm + " checksum for " + src ); | |||||
checksum += "0"; | |||||
} | } | ||||
fis = new FileInputStream( src ); | |||||
DigestInputStream dis = new DigestInputStream( fis, | |||||
messageDigest ); | |||||
while( dis.read() != -1 ) | |||||
; | |||||
dis.close(); | |||||
fis.close(); | |||||
fis = null; | |||||
byte[] fileDigest = messageDigest.digest(); | |||||
String checksum = ""; | |||||
for( int i = 0; i < fileDigest.length; i++ ) | |||||
checksum += hexStr; | |||||
} | |||||
//can either be a property name string or a file | |||||
Object destination = m_includeFileMap.get( src ); | |||||
if( destination instanceof String ) | |||||
{ | |||||
String prop = (String)destination; | |||||
if( m_isCondition ) | |||||
{ | { | ||||
String hexStr = Integer.toHexString( 0x00ff & fileDigest[ i ] ); | |||||
if( hexStr.length() < 2 ) | |||||
{ | |||||
checksum += "0"; | |||||
} | |||||
checksum += hexStr; | |||||
checksumMatches = checksum.equals( m_property ); | |||||
} | } | ||||
//can either be a property name string or a file | |||||
Object destination = includeFileMap.get( src ); | |||||
if( destination instanceof java.lang.String ) | |||||
else | |||||
{ | { | ||||
String prop = (String)destination; | |||||
if( isCondition ) | |||||
{ | |||||
checksumMatches = checksum.equals( property ); | |||||
} | |||||
else | |||||
{ | |||||
setProperty( prop, checksum ); | |||||
} | |||||
setProperty( prop, checksum ); | |||||
} | } | ||||
else if( destination instanceof java.io.File ) | |||||
} | |||||
else if( destination instanceof File ) | |||||
{ | |||||
final File file = (File)destination; | |||||
if( m_isCondition ) | |||||
{ | { | ||||
if( isCondition ) | |||||
if( file.exists() && | |||||
file.length() == checksum.length() ) | |||||
{ | { | ||||
File existingFile = (File)destination; | |||||
if( existingFile.exists() && | |||||
existingFile.length() == checksum.length() ) | |||||
{ | |||||
fis = new FileInputStream( existingFile ); | |||||
InputStreamReader isr = new InputStreamReader( fis ); | |||||
BufferedReader br = new BufferedReader( isr ); | |||||
String suppliedChecksum = br.readLine(); | |||||
fis.close(); | |||||
fis = null; | |||||
br.close(); | |||||
isr.close(); | |||||
checksumMatches = | |||||
checksum.equals( suppliedChecksum ); | |||||
} | |||||
else | |||||
{ | |||||
checksumMatches = false; | |||||
} | |||||
fis = new FileInputStream( file ); | |||||
InputStreamReader isr = new InputStreamReader( fis ); | |||||
BufferedReader br = new BufferedReader( isr ); | |||||
String suppliedChecksum = br.readLine(); | |||||
fis.close(); | |||||
fis = null; | |||||
br.close(); | |||||
isr.close(); | |||||
checksumMatches = | |||||
checksum.equals( suppliedChecksum ); | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
File dest = (File)destination; | |||||
fos = new FileOutputStream( dest ); | |||||
fos.write( checksum.getBytes() ); | |||||
fos.close(); | |||||
fos = null; | |||||
checksumMatches = false; | |||||
} | } | ||||
} | } | ||||
else | |||||
{ | |||||
fos = new FileOutputStream( file ); | |||||
fos.write( checksum.getBytes() ); | |||||
fos.close(); | |||||
fos = null; | |||||
} | |||||
} | } | ||||
} | } | ||||
catch( Exception e ) | |||||
catch( final Exception e ) | |||||
{ | { | ||||
throw new TaskException( "Error", e ); | |||||
throw new TaskException( e.getMessage(), e ); | |||||
} | } | ||||
finally | finally | ||||
{ | { | ||||
if( fis != null ) | |||||
{ | |||||
try | |||||
{ | |||||
fis.close(); | |||||
} | |||||
catch( IOException e ) | |||||
{ | |||||
} | |||||
} | |||||
if( fos != null ) | |||||
{ | |||||
try | |||||
{ | |||||
fos.close(); | |||||
} | |||||
catch( IOException e ) | |||||
{ | |||||
} | |||||
} | |||||
IOUtil.shutdownStream( fis ); | |||||
IOUtil.shutdownStream( fos ); | |||||
} | } | ||||
return checksumMatches; | return checksumMatches; | ||||
} | } | ||||
private byte[] buildDigest( final InputStream input ) | |||||
throws IOException | |||||
{ | |||||
m_messageDigest.reset(); | |||||
final DigestInputStream digester = | |||||
new DigestInputStream( input, m_messageDigest ); | |||||
while( digester.read() != -1 ) | |||||
{ | |||||
} | |||||
digester.close(); | |||||
return m_messageDigest.digest(); | |||||
} | |||||
/** | /** | ||||
* Validate attributes and get down to business. | * Validate attributes and get down to business. | ||||
* | |||||
* @return Description of the Returned Value | |||||
* @exception TaskException Description of Exception | |||||
*/ | */ | ||||
private boolean validateAndExecute() | private boolean validateAndExecute() | ||||
throws TaskException | throws TaskException | ||||
{ | { | ||||
if( file == null && filesets.size() == 0 ) | |||||
if( null == m_file && 0 == m_filesets.size() ) | |||||
{ | { | ||||
throw new TaskException( | |||||
"Specify at least one source - a file or a fileset." ); | |||||
final String message = "Specify at least one source - a file or a fileset."; | |||||
throw new TaskException( message ); | |||||
} | } | ||||
if( file != null && file.exists() && file.isDirectory() ) | |||||
if( null != m_file && m_file.exists() && m_file.isDirectory() ) | |||||
{ | { | ||||
throw new TaskException( | |||||
"Checksum cannot be generated for directories" ); | |||||
final String message = "Checksum cannot be generated for directories"; | |||||
throw new TaskException( message ); | |||||
} | } | ||||
if( property != null && fileext != null ) | |||||
if( null != m_property && null != m_fileext ) | |||||
{ | { | ||||
throw new TaskException( | |||||
"Property and FileExt cannot co-exist." ); | |||||
final String message = "Property and FileExt cannot co-exist."; | |||||
throw new TaskException( message ); | |||||
} | } | ||||
if( property != null ) | |||||
if( m_property != null ) | |||||
{ | { | ||||
if( forceOverwrite ) | |||||
if( m_forceOverwrite ) | |||||
{ | { | ||||
throw new TaskException( | |||||
"ForceOverwrite cannot be used when Property is specified" ); | |||||
final String message = | |||||
"ForceOverwrite cannot be used when Property is specified"; | |||||
throw new TaskException( message ); | |||||
} | } | ||||
if( file != null ) | |||||
if( m_file != null ) | |||||
{ | { | ||||
if( filesets.size() > 0 ) | |||||
if( m_filesets.size() > 0 ) | |||||
{ | { | ||||
throw new TaskException( | |||||
"Multiple files cannot be used when Property is specified" ); | |||||
final String message = | |||||
"Multiple files cannot be used when Property is specified"; | |||||
throw new TaskException( message ); | |||||
} | } | ||||
} | } | ||||
else | else | ||||
{ | { | ||||
if( filesets.size() > 1 ) | |||||
if( m_filesets.size() > 1 ) | |||||
{ | { | ||||
throw new TaskException( | |||||
"Multiple files cannot be used when Property is specified" ); | |||||
final String message = | |||||
"Multiple files cannot be used when Property is specified"; | |||||
throw new TaskException( message ); | |||||
} | } | ||||
} | } | ||||
} | } | ||||
if( verifyProperty != null ) | |||||
if( m_verifyProperty != null ) | |||||
{ | { | ||||
isCondition = true; | |||||
m_isCondition = true; | |||||
} | } | ||||
if( verifyProperty != null && forceOverwrite ) | |||||
if( m_verifyProperty != null && m_forceOverwrite ) | |||||
{ | { | ||||
throw new TaskException( | |||||
"VerifyProperty and ForceOverwrite cannot co-exist." ); | |||||
final String message = "VerifyProperty and ForceOverwrite cannot co-exist."; | |||||
throw new TaskException( message ); | |||||
} | } | ||||
if( isCondition && forceOverwrite ) | |||||
if( m_isCondition && m_forceOverwrite ) | |||||
{ | { | ||||
throw new TaskException( | |||||
"ForceOverwrite cannot be used when conditions are being used." ); | |||||
final String message = "ForceOverwrite cannot be used when conditions are being used."; | |||||
throw new TaskException( message ); | |||||
} | } | ||||
if( fileext == null ) | |||||
if( m_fileext == null ) | |||||
{ | { | ||||
fileext = "." + algorithm; | |||||
m_fileext = "." + m_algorithm; | |||||
} | } | ||||
else if( fileext.trim().length() == 0 ) | |||||
else if( m_fileext.trim().length() == 0 ) | |||||
{ | { | ||||
throw new TaskException( | |||||
"File extension when specified must not be an empty string" ); | |||||
final String message = "File extension when specified must not be an empty string"; | |||||
throw new TaskException( message ); | |||||
} | } | ||||
messageDigest = null; | |||||
if( provider != null ) | |||||
setupMessageDigest(); | |||||
if( m_messageDigest == null ) | |||||
{ | |||||
final String message = "Unable to create Message Digest"; | |||||
throw new TaskException( message ); | |||||
} | |||||
addIncludes(); | |||||
return generateChecksums(); | |||||
} | |||||
private void setupMessageDigest() | |||||
throws TaskException | |||||
{ | |||||
m_messageDigest = null; | |||||
if( m_provider != null ) | |||||
{ | { | ||||
try | try | ||||
{ | { | ||||
messageDigest = MessageDigest.getInstance( algorithm, provider ); | |||||
m_messageDigest = MessageDigest.getInstance( m_algorithm, m_provider ); | |||||
} | } | ||||
catch( NoSuchAlgorithmException noalgo ) | |||||
catch( final NoSuchAlgorithmException nsae ) | |||||
{ | { | ||||
throw new TaskException( noalgo.toString(), noalgo ); | |||||
throw new TaskException( nsae.toString(), nsae ); | |||||
} | } | ||||
catch( NoSuchProviderException noprovider ) | |||||
catch( final NoSuchProviderException nspe ) | |||||
{ | { | ||||
throw new TaskException( noprovider.toString(), noprovider ); | |||||
throw new TaskException( nspe.toString(), nspe ); | |||||
} | } | ||||
} | } | ||||
else | else | ||||
{ | { | ||||
try | try | ||||
{ | { | ||||
messageDigest = MessageDigest.getInstance( algorithm ); | |||||
m_messageDigest = MessageDigest.getInstance( m_algorithm ); | |||||
} | } | ||||
catch( NoSuchAlgorithmException noalgo ) | |||||
catch( final NoSuchAlgorithmException nsae ) | |||||
{ | { | ||||
throw new TaskException( noalgo.toString(), noalgo ); | |||||
throw new TaskException( nsae.toString(), nsae ); | |||||
} | } | ||||
} | } | ||||
} | |||||
if( messageDigest == null ) | |||||
{ | |||||
throw new TaskException( "Unable to create Message Digest" ); | |||||
} | |||||
addToIncludeFileMap( file ); | |||||
private void addIncludes() | |||||
throws TaskException | |||||
{ | |||||
addToIncludeFileMap( m_file ); | |||||
int sizeofFileSet = filesets.size(); | |||||
for( int i = 0; i < sizeofFileSet; i++ ) | |||||
final int size = m_filesets.size(); | |||||
for( int i = 0; i < size; i++ ) | |||||
{ | { | ||||
FileSet fs = (FileSet)filesets.get( i ); | |||||
DirectoryScanner ds = fs.getDirectoryScanner(); | |||||
String[] srcFiles = ds.getIncludedFiles(); | |||||
final FileSet fileSet = (FileSet)m_filesets.get( i ); | |||||
final DirectoryScanner scanner = fileSet.getDirectoryScanner(); | |||||
final String[] srcFiles = scanner.getIncludedFiles(); | |||||
for( int j = 0; j < srcFiles.length; j++ ) | for( int j = 0; j < srcFiles.length; j++ ) | ||||
{ | { | ||||
File src = new File( fs.getDir(), srcFiles[ j ] ); | |||||
final File src = new File( fileSet.getDir(), srcFiles[ j ] ); | |||||
addToIncludeFileMap( src ); | addToIncludeFileMap( src ); | ||||
} | } | ||||
} | } | ||||
return generateChecksums(); | |||||
} | } | ||||
} | } |
@@ -106,17 +106,17 @@ public class Java | |||||
/** | /** | ||||
* Creates a nested arg element. | * Creates a nested arg element. | ||||
*/ | */ | ||||
public Argument createArg() | |||||
public void addArg( final Argument argument ) | |||||
{ | { | ||||
return m_cmdl.createArgument(); | |||||
m_cmdl.addArgument( argument ); | |||||
} | } | ||||
/** | /** | ||||
* Creates a nested jvmarg element. | * Creates a nested jvmarg element. | ||||
*/ | */ | ||||
public Argument createJvmarg() | |||||
public void addJvmarg( final Argument argument ) | |||||
{ | { | ||||
return m_cmdl.createVmArgument(); | |||||
m_cmdl.addVmArgument( argument ); | |||||
} | } | ||||
public void execute() | public void execute() | ||||
@@ -192,7 +192,7 @@ public class Java | |||||
for( int i = 0; i < size; i++ ) | for( int i = 0; i < size; i++ ) | ||||
{ | { | ||||
final String arg = (String)args.get( i ); | final String arg = (String)args.get( i ); | ||||
java.createArgument().setValue( arg ); | |||||
java.addArgument( arg ); | |||||
} | } | ||||
run( java ); | run( java ); | ||||
} | } | ||||
@@ -154,35 +154,35 @@ public class Patch | |||||
if( m_backups ) | if( m_backups ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-b" ); | |||||
cmd.addArgument( "-b" ); | |||||
} | } | ||||
if( null != m_strip ) | if( null != m_strip ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-p" + m_strip.intValue() ); | |||||
cmd.addArgument( "-p" + m_strip.intValue() ); | |||||
} | } | ||||
if( m_quiet ) | if( m_quiet ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-s" ); | |||||
cmd.addArgument( "-s" ); | |||||
} | } | ||||
if( m_reverse ) | if( m_reverse ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-R" ); | |||||
cmd.addArgument( "-R" ); | |||||
} | } | ||||
cmd.createArgument().setValue( "-i" ); | |||||
cmd.createArgument().setFile( m_patchFile ); | |||||
cmd.addArgument( "-i" ); | |||||
cmd.addArgument( m_patchFile ); | |||||
if( m_ignorewhitespace ) | if( m_ignorewhitespace ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-l" ); | |||||
cmd.addArgument( "-l" ); | |||||
} | } | ||||
if( null != m_originalFile ) | if( null != m_originalFile ) | ||||
{ | { | ||||
cmd.createArgument().setFile( m_originalFile ); | |||||
cmd.addArgument( m_originalFile ); | |||||
} | } | ||||
return cmd; | return cmd; | ||||
} | } | ||||
@@ -22,6 +22,7 @@ import org.apache.tools.ant.types.SourceFileScanner; | |||||
import org.apache.aut.tar.TarConstants; | import org.apache.aut.tar.TarConstants; | ||||
import org.apache.aut.tar.TarEntry; | import org.apache.aut.tar.TarEntry; | ||||
import org.apache.aut.tar.TarOutputStream; | import org.apache.aut.tar.TarOutputStream; | ||||
import org.apache.avalon.excalibur.io.IOUtil; | |||||
/** | /** | ||||
* Creates a TAR archive. | * Creates a TAR archive. | ||||
@@ -128,7 +129,7 @@ public class Tar | |||||
} | } | ||||
// add the main fileset to the list of filesets to process. | // add the main fileset to the list of filesets to process. | ||||
TarFileSet mainFileSet = new TarFileSet( /*fileset*/ ); | |||||
final TarFileSet mainFileSet = new TarFileSet( /*fileset*/ ); | |||||
mainFileSet.setDir( baseDir ); | mainFileSet.setDir( baseDir ); | ||||
filesets.add( mainFileSet ); | filesets.add( mainFileSet ); | ||||
} | } | ||||
@@ -222,212 +223,88 @@ public class Tar | |||||
} | } | ||||
} | } | ||||
protected boolean archiveIsUpToDate( String[] files ) | |||||
private boolean archiveIsUpToDate( final String[] files ) | |||||
throws TaskException | throws TaskException | ||||
{ | { | ||||
SourceFileScanner sfs = new SourceFileScanner( this ); | |||||
MergingMapper mm = new MergingMapper(); | |||||
mm.setTo( tarFile.getAbsolutePath() ); | |||||
return sfs.restrict( files, baseDir, null, mm ).length == 0; | |||||
final SourceFileScanner scanner = new SourceFileScanner( this ); | |||||
final MergingMapper mapper = new MergingMapper(); | |||||
mapper.setTo( tarFile.getAbsolutePath() ); | |||||
return scanner.restrict( files, baseDir, null, mapper ).length == 0; | |||||
} | } | ||||
protected void tarFile( File file, TarOutputStream tOut, String vPath, | |||||
TarFileSet tarFileSet ) | |||||
private void tarFile( final File file, | |||||
final TarOutputStream output, | |||||
String path, | |||||
final TarFileSet tarFileSet ) | |||||
throws IOException, TaskException | throws IOException, TaskException | ||||
{ | { | ||||
FileInputStream fIn = null; | |||||
// don't add "" to the archive | // don't add "" to the archive | ||||
if( vPath.length() <= 0 ) | |||||
if( path.length() <= 0 ) | |||||
{ | { | ||||
return; | return; | ||||
} | } | ||||
if( file.isDirectory() && !vPath.endsWith( "/" ) ) | |||||
if( file.isDirectory() && !path.endsWith( "/" ) ) | |||||
{ | { | ||||
vPath += "/"; | |||||
path += "/"; | |||||
} | } | ||||
try | |||||
if( path.length() >= TarConstants.NAMELEN ) | |||||
{ | { | ||||
if( vPath.length() >= TarConstants.NAMELEN ) | |||||
if( longFileMode.isOmitMode() ) | |||||
{ | { | ||||
if( longFileMode.isOmitMode() ) | |||||
{ | |||||
getLogger().info( "Omitting: " + vPath ); | |||||
return; | |||||
} | |||||
else if( longFileMode.isWarnMode() ) | |||||
{ | |||||
final String message = "Entry: " + vPath + " longer than " + | |||||
TarConstants.NAMELEN + " characters."; | |||||
getLogger().warn( message ); | |||||
if( !longWarningGiven ) | |||||
{ | |||||
final String message2 = "Resulting tar file can only be processed successfully" | |||||
+ " by GNU compatible tar commands"; | |||||
getLogger().warn( message2 ); | |||||
longWarningGiven = true; | |||||
} | |||||
} | |||||
else if( longFileMode.isFailMode() ) | |||||
final String message = "Omitting: " + path; | |||||
getLogger().info( message ); | |||||
return; | |||||
} | |||||
else if( longFileMode.isWarnMode() ) | |||||
{ | |||||
final String message = "Entry: " + path + " longer than " + | |||||
TarConstants.NAMELEN + " characters."; | |||||
getLogger().warn( message ); | |||||
if( !longWarningGiven ) | |||||
{ | { | ||||
throw new TaskException( | |||||
"Entry: " + vPath + " longer than " + | |||||
TarConstants.NAMELEN + "characters." ); | |||||
final String message2 = "Resulting tar file can only be processed successfully" | |||||
+ " by GNU compatible tar commands"; | |||||
getLogger().warn( message2 ); | |||||
longWarningGiven = true; | |||||
} | } | ||||
} | } | ||||
TarEntry te = new TarEntry( vPath ); | |||||
te.setModTime( file.lastModified() ); | |||||
if( !file.isDirectory() ) | |||||
else if( longFileMode.isFailMode() ) | |||||
{ | { | ||||
te.setSize( file.length() ); | |||||
te.setMode( tarFileSet.getMode() ); | |||||
final String message = "Entry: " + path + " longer than " + | |||||
TarConstants.NAMELEN + "characters."; | |||||
throw new TaskException( message ); | |||||
} | } | ||||
te.setUserName( tarFileSet.getUserName() ); | |||||
te.setGroupName( tarFileSet.getGroup() ); | |||||
tOut.putNextEntry( te ); | |||||
} | |||||
FileInputStream input = null; | |||||
try | |||||
{ | |||||
final TarEntry entry = new TarEntry( path ); | |||||
entry.setModTime( file.lastModified() ); | |||||
if( !file.isDirectory() ) | if( !file.isDirectory() ) | ||||
{ | { | ||||
fIn = new FileInputStream( file ); | |||||
byte[] buffer = new byte[ 8 * 1024 ]; | |||||
int count = 0; | |||||
do | |||||
{ | |||||
tOut.write( buffer, 0, count ); | |||||
count = fIn.read( buffer, 0, buffer.length ); | |||||
} while( count != -1 ); | |||||
entry.setSize( file.length() ); | |||||
entry.setMode( tarFileSet.getMode() ); | |||||
} | } | ||||
entry.setUserName( tarFileSet.getUserName() ); | |||||
entry.setGroupName( tarFileSet.getGroup() ); | |||||
tOut.closeEntry(); | |||||
} | |||||
finally | |||||
{ | |||||
if( fIn != null ) | |||||
fIn.close(); | |||||
} | |||||
} | |||||
public static class TarFileSet extends FileSet | |||||
{ | |||||
private String[] files = null; | |||||
private int mode = 0100644; | |||||
private String userName = ""; | |||||
private String groupName = ""; | |||||
public void setGroup( String groupName ) | |||||
{ | |||||
this.groupName = groupName; | |||||
} | |||||
output.putNextEntry( entry ); | |||||
public void setMode( String octalString ) | |||||
{ | |||||
this.mode = 0100000 | Integer.parseInt( octalString, 8 ); | |||||
} | |||||
public void setUserName( String userName ) | |||||
{ | |||||
this.userName = userName; | |||||
} | |||||
/** | |||||
* Get a list of files and directories specified in the fileset. | |||||
* | |||||
* @param p Description of Parameter | |||||
* @return a list of file and directory names, relative to the baseDir | |||||
* for the project. | |||||
*/ | |||||
public String[] getFiles() | |||||
throws TaskException | |||||
{ | |||||
if( files == null ) | |||||
if( !file.isDirectory() ) | |||||
{ | { | ||||
final DirectoryScanner scanner = getDirectoryScanner(); | |||||
final String[] directories = scanner.getIncludedDirectories(); | |||||
final String[] filesPerSe = scanner.getIncludedFiles(); | |||||
files = new String[ directories.length + filesPerSe.length ]; | |||||
System.arraycopy( directories, 0, files, 0, directories.length ); | |||||
System.arraycopy( filesPerSe, 0, files, directories.length, | |||||
filesPerSe.length ); | |||||
input = new FileInputStream( file ); | |||||
IOUtil.copy( input, output ); | |||||
} | } | ||||
return files; | |||||
output.closeEntry(); | |||||
} | } | ||||
public String getGroup() | |||||
{ | |||||
return groupName; | |||||
} | |||||
public int getMode() | |||||
{ | |||||
return mode; | |||||
} | |||||
public String getUserName() | |||||
{ | |||||
return userName; | |||||
} | |||||
} | |||||
/** | |||||
* Valid Modes for LongFile attribute to Tar Task | |||||
* | |||||
* @author <a href="mailto:umagesh@apache.org">Magesh Umasankar</a> | |||||
*/ | |||||
public static class TarLongFileMode extends EnumeratedAttribute | |||||
{ | |||||
// permissable values for longfile attribute | |||||
public final static String WARN = "warn"; | |||||
public final static String FAIL = "fail"; | |||||
public final static String TRUNCATE = "truncate"; | |||||
public final static String GNU = "gnu"; | |||||
public final static String OMIT = "omit"; | |||||
private final String[] validModes = {WARN, FAIL, TRUNCATE, GNU, OMIT}; | |||||
public TarLongFileMode() | |||||
throws TaskException | |||||
{ | |||||
super(); | |||||
setValue( WARN ); | |||||
} | |||||
public String[] getValues() | |||||
{ | |||||
return validModes; | |||||
} | |||||
public boolean isFailMode() | |||||
{ | |||||
return FAIL.equalsIgnoreCase( getValue() ); | |||||
} | |||||
public boolean isGnuMode() | |||||
{ | |||||
return GNU.equalsIgnoreCase( getValue() ); | |||||
} | |||||
public boolean isOmitMode() | |||||
{ | |||||
return OMIT.equalsIgnoreCase( getValue() ); | |||||
} | |||||
public boolean isTruncateMode() | |||||
{ | |||||
return TRUNCATE.equalsIgnoreCase( getValue() ); | |||||
} | |||||
public boolean isWarnMode() | |||||
finally | |||||
{ | { | ||||
return WARN.equalsIgnoreCase( getValue() ); | |||||
if( input != null ) | |||||
input.close(); | |||||
} | } | ||||
} | } | ||||
} | } |
@@ -0,0 +1,75 @@ | |||||
/* | |||||
* Copyright (C) The Apache Software Foundation. All rights reserved. | |||||
* | |||||
* This software is published under the terms of the Apache Software License | |||||
* version 1.1, a copy of which has been included with this distribution in | |||||
* the LICENSE.txt file. | |||||
*/ | |||||
package org.apache.tools.ant.taskdefs; | |||||
import org.apache.tools.ant.types.FileSet; | |||||
import org.apache.tools.ant.types.DirectoryScanner; | |||||
import org.apache.myrmidon.api.TaskException; | |||||
public class TarFileSet | |||||
extends FileSet | |||||
{ | |||||
private String[] m_files; | |||||
private int m_mode = 0100644; | |||||
private String m_userName = ""; | |||||
private String m_groupName = ""; | |||||
public void setGroup( final String groupName ) | |||||
{ | |||||
m_groupName = groupName; | |||||
} | |||||
public void setMode( final String octalString ) | |||||
{ | |||||
m_mode = 0100000 | Integer.parseInt( octalString, 8 ); | |||||
} | |||||
public void setUserName( final String userName ) | |||||
{ | |||||
m_userName = userName; | |||||
} | |||||
/** | |||||
* Get a list of files and directories specified in the fileset. | |||||
* | |||||
* @return a list of file and directory names, relative to the baseDir | |||||
* for the project. | |||||
*/ | |||||
protected String[] getFiles() | |||||
throws TaskException | |||||
{ | |||||
if( m_files == null ) | |||||
{ | |||||
final DirectoryScanner scanner = getDirectoryScanner(); | |||||
final String[] directories = scanner.getIncludedDirectories(); | |||||
final String[] filesPerSe = scanner.getIncludedFiles(); | |||||
m_files = new String[ directories.length + filesPerSe.length ]; | |||||
System.arraycopy( directories, 0, m_files, 0, directories.length ); | |||||
System.arraycopy( filesPerSe, 0, m_files, directories.length, | |||||
filesPerSe.length ); | |||||
} | |||||
return m_files; | |||||
} | |||||
protected String getGroup() | |||||
{ | |||||
return m_groupName; | |||||
} | |||||
protected int getMode() | |||||
{ | |||||
return m_mode; | |||||
} | |||||
protected String getUserName() | |||||
{ | |||||
return m_userName; | |||||
} | |||||
} |
@@ -0,0 +1,66 @@ | |||||
/* | |||||
* Copyright (C) The Apache Software Foundation. All rights reserved. | |||||
* | |||||
* This software is published under the terms of the Apache Software License | |||||
* version 1.1, a copy of which has been included with this distribution in | |||||
* the LICENSE.txt file. | |||||
*/ | |||||
package org.apache.tools.ant.taskdefs; | |||||
import org.apache.myrmidon.api.TaskException; | |||||
import org.apache.tools.ant.types.EnumeratedAttribute; | |||||
/** | |||||
* Valid Modes for LongFile attribute to Tar Task | |||||
* | |||||
* @author <a href="mailto:umagesh@apache.org">Magesh Umasankar</a> | |||||
*/ | |||||
public class TarLongFileMode | |||||
extends EnumeratedAttribute | |||||
{ | |||||
// permissable values for longfile attribute | |||||
public final static String WARN = "warn"; | |||||
public final static String FAIL = "fail"; | |||||
public final static String TRUNCATE = "truncate"; | |||||
public final static String GNU = "gnu"; | |||||
public final static String OMIT = "omit"; | |||||
private final String[] validModes = {WARN, FAIL, TRUNCATE, GNU, OMIT}; | |||||
public TarLongFileMode() | |||||
throws TaskException | |||||
{ | |||||
super(); | |||||
setValue( WARN ); | |||||
} | |||||
public String[] getValues() | |||||
{ | |||||
return validModes; | |||||
} | |||||
public boolean isFailMode() | |||||
{ | |||||
return FAIL.equalsIgnoreCase( getValue() ); | |||||
} | |||||
public boolean isGnuMode() | |||||
{ | |||||
return GNU.equalsIgnoreCase( getValue() ); | |||||
} | |||||
public boolean isOmitMode() | |||||
{ | |||||
return OMIT.equalsIgnoreCase( getValue() ); | |||||
} | |||||
public boolean isTruncateMode() | |||||
{ | |||||
return TRUNCATE.equalsIgnoreCase( getValue() ); | |||||
} | |||||
public boolean isWarnMode() | |||||
{ | |||||
return WARN.equalsIgnoreCase( getValue() ); | |||||
} | |||||
} |
@@ -20,6 +20,7 @@ import org.apache.tools.ant.taskdefs.exec.Execute2; | |||||
import org.apache.tools.ant.types.Commandline; | import org.apache.tools.ant.types.Commandline; | ||||
import org.apache.tools.ant.types.Path; | import org.apache.tools.ant.types.Path; | ||||
import org.apache.tools.ant.types.FileSet; | import org.apache.tools.ant.types.FileSet; | ||||
import org.apache.tools.ant.util.FileUtils; | |||||
/** | /** | ||||
* This is the default implementation for the CompilerAdapter interface. | * This is the default implementation for the CompilerAdapter interface. | ||||
@@ -133,7 +134,7 @@ public abstract class DefaultCompilerAdapter | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
cmd.createArgument().setValue( memoryParameterPrefix + "ms" + m_memoryInitialSize ); | |||||
cmd.addArgument( memoryParameterPrefix + "ms" + m_memoryInitialSize ); | |||||
} | } | ||||
} | } | ||||
@@ -146,54 +147,54 @@ public abstract class DefaultCompilerAdapter | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
cmd.createArgument().setValue( memoryParameterPrefix + "mx" + m_memoryMaximumSize ); | |||||
cmd.addArgument( memoryParameterPrefix + "mx" + m_memoryMaximumSize ); | |||||
} | } | ||||
} | } | ||||
if( m_attributes.getNowarn() ) | if( m_attributes.getNowarn() ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-nowarn" ); | |||||
cmd.addArgument( "-nowarn" ); | |||||
} | } | ||||
if( m_deprecation == true ) | if( m_deprecation == true ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-deprecation" ); | |||||
cmd.addArgument( "-deprecation" ); | |||||
} | } | ||||
if( m_destDir != null ) | if( m_destDir != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-d" ); | |||||
cmd.createArgument().setFile( m_destDir ); | |||||
cmd.addArgument( "-d" ); | |||||
cmd.addArgument( m_destDir ); | |||||
} | } | ||||
cmd.createArgument().setValue( "-classpath" ); | |||||
cmd.createArgument().setPath( classpath ); | |||||
cmd.addArgument( "-classpath" ); | |||||
cmd.addArguments( FileUtils.translateCommandline( classpath ) ); | |||||
cmd.createArgument().setValue( "-sourcepath" ); | |||||
cmd.createArgument().setPath( src ); | |||||
cmd.addArgument( "-sourcepath" ); | |||||
cmd.addArguments( FileUtils.translateCommandline( src ) ); | |||||
if( target != null ) | if( target != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-target" ); | |||||
cmd.createArgument().setValue( target ); | |||||
cmd.addArgument( "-target" ); | |||||
cmd.addArgument( target ); | |||||
} | } | ||||
if( m_bootclasspath != null ) | if( m_bootclasspath != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-bootclasspath" ); | |||||
cmd.createArgument().setPath( m_bootclasspath ); | |||||
cmd.addArgument( "-bootclasspath" ); | |||||
cmd.addArguments( FileUtils.translateCommandline( m_bootclasspath ) ); | |||||
} | } | ||||
if( m_extdirs != null ) | if( m_extdirs != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-extdirs" ); | |||||
cmd.createArgument().setPath( m_extdirs ); | |||||
cmd.addArgument( "-extdirs" ); | |||||
cmd.addArguments( FileUtils.translateCommandline( m_extdirs ) ); | |||||
} | } | ||||
if( m_encoding != null ) | if( m_encoding != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-encoding" ); | |||||
cmd.createArgument().setValue( m_encoding ); | |||||
cmd.addArgument( "-encoding" ); | |||||
cmd.addArgument( m_encoding ); | |||||
} | } | ||||
if( m_debug ) | if( m_debug ) | ||||
{ | { | ||||
@@ -202,30 +203,30 @@ public abstract class DefaultCompilerAdapter | |||||
String debugLevel = m_attributes.getDebugLevel(); | String debugLevel = m_attributes.getDebugLevel(); | ||||
if( debugLevel != null ) | if( debugLevel != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-g:" + debugLevel ); | |||||
cmd.addArgument( "-g:" + debugLevel ); | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
cmd.createArgument().setValue( "-g" ); | |||||
cmd.addArgument( "-g" ); | |||||
} | } | ||||
} | } | ||||
else | else | ||||
{ | { | ||||
cmd.createArgument().setValue( "-g" ); | |||||
cmd.addArgument( "-g" ); | |||||
} | } | ||||
} | } | ||||
else | else | ||||
{ | { | ||||
cmd.createArgument().setValue( "-g:none" ); | |||||
cmd.addArgument( "-g:none" ); | |||||
} | } | ||||
if( m_optimize ) | if( m_optimize ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-O" ); | |||||
cmd.addArgument( "-O" ); | |||||
} | } | ||||
if( m_verbose ) | if( m_verbose ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-verbose" ); | |||||
cmd.addArgument( "-verbose" ); | |||||
} | } | ||||
addCurrentCompilerArgs( cmd ); | addCurrentCompilerArgs( cmd ); | ||||
@@ -262,8 +263,8 @@ public abstract class DefaultCompilerAdapter | |||||
setupJavacCommandlineSwitches( cmd, true ); | setupJavacCommandlineSwitches( cmd, true ); | ||||
if( m_attributes.getSource() != null ) | if( m_attributes.getSource() != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-source" ); | |||||
cmd.createArgument().setValue( m_attributes.getSource() ); | |||||
cmd.addArgument( "-source" ); | |||||
cmd.addArgument( m_attributes.getSource() ); | |||||
} | } | ||||
return cmd; | return cmd; | ||||
} | } | ||||
@@ -410,7 +411,7 @@ public abstract class DefaultCompilerAdapter | |||||
for( int i = 0; i < m_compileList.length; i++ ) | for( int i = 0; i < m_compileList.length; i++ ) | ||||
{ | { | ||||
String arg = m_compileList[ i ].getAbsolutePath(); | String arg = m_compileList[ i ].getAbsolutePath(); | ||||
cmd.createArgument().setValue( arg ); | |||||
cmd.addArgument( arg ); | |||||
niceSourceList.append( " " + arg + StringUtil.LINE_SEPARATOR ); | niceSourceList.append( " " + arg + StringUtil.LINE_SEPARATOR ); | ||||
} | } | ||||
@@ -10,6 +10,7 @@ package org.apache.tools.ant.taskdefs.compilers; | |||||
import org.apache.myrmidon.api.TaskException; | import org.apache.myrmidon.api.TaskException; | ||||
import org.apache.tools.ant.types.Commandline; | import org.apache.tools.ant.types.Commandline; | ||||
import org.apache.tools.ant.types.Path; | import org.apache.tools.ant.types.Path; | ||||
import org.apache.tools.ant.util.FileUtils; | |||||
/** | /** | ||||
* The implementation of the gcj compiler. This is primarily a cut-and-paste | * The implementation of the gcj compiler. This is primarily a cut-and-paste | ||||
@@ -72,8 +73,8 @@ public class Gcj extends DefaultCompilerAdapter | |||||
if( m_destDir != null ) | if( m_destDir != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-d" ); | |||||
cmd.createArgument().setFile( m_destDir ); | |||||
cmd.addArgument( "-d" ); | |||||
cmd.addArgument( m_destDir ); | |||||
if( m_destDir.mkdirs() ) | if( m_destDir.mkdirs() ) | ||||
{ | { | ||||
@@ -82,26 +83,26 @@ public class Gcj extends DefaultCompilerAdapter | |||||
; | ; | ||||
} | } | ||||
cmd.createArgument().setValue( "-classpath" ); | |||||
cmd.createArgument().setPath( classpath ); | |||||
cmd.addArgument( "-classpath" ); | |||||
cmd.addArguments( FileUtils.translateCommandline( classpath ) ); | |||||
if( m_encoding != null ) | if( m_encoding != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "--encoding=" + m_encoding ); | |||||
cmd.addArgument( "--encoding=" + m_encoding ); | |||||
} | } | ||||
if( m_debug ) | if( m_debug ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-g1" ); | |||||
cmd.addArgument( "-g1" ); | |||||
} | } | ||||
if( m_optimize ) | if( m_optimize ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-O" ); | |||||
cmd.addArgument( "-O" ); | |||||
} | } | ||||
/** | /** | ||||
* gcj should be set for generate class. | * gcj should be set for generate class. | ||||
*/ | */ | ||||
cmd.createArgument().setValue( "-C" ); | |||||
cmd.addArgument( "-C" ); | |||||
addCurrentCompilerArgs( cmd ); | addCurrentCompilerArgs( cmd ); | ||||
@@ -10,6 +10,7 @@ package org.apache.tools.ant.taskdefs.compilers; | |||||
import org.apache.myrmidon.api.TaskException; | import org.apache.myrmidon.api.TaskException; | ||||
import org.apache.tools.ant.types.Commandline; | import org.apache.tools.ant.types.Commandline; | ||||
import org.apache.tools.ant.types.Path; | import org.apache.tools.ant.types.Path; | ||||
import org.apache.tools.ant.util.FileUtils; | |||||
/** | /** | ||||
* The implementation of the jikes compiler. This is primarily a cut-and-paste | * The implementation of the jikes compiler. This is primarily a cut-and-paste | ||||
@@ -83,37 +84,37 @@ public class Jikes | |||||
cmd.setExecutable( "jikes" ); | cmd.setExecutable( "jikes" ); | ||||
if( m_deprecation == true ) | if( m_deprecation == true ) | ||||
cmd.createArgument().setValue( "-deprecation" ); | |||||
cmd.addArgument( "-deprecation" ); | |||||
if( m_destDir != null ) | if( m_destDir != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-d" ); | |||||
cmd.createArgument().setFile( m_destDir ); | |||||
cmd.addArgument( "-d" ); | |||||
cmd.addArgument( m_destDir ); | |||||
} | } | ||||
cmd.createArgument().setValue( "-classpath" ); | |||||
cmd.createArgument().setPath( classpath ); | |||||
cmd.addArgument( "-classpath" ); | |||||
cmd.addArguments( FileUtils.translateCommandline( classpath ) ); | |||||
if( m_encoding != null ) | if( m_encoding != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-encoding" ); | |||||
cmd.createArgument().setValue( m_encoding ); | |||||
cmd.addArgument( "-encoding" ); | |||||
cmd.addArgument( m_encoding ); | |||||
} | } | ||||
if( m_debug ) | if( m_debug ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-g" ); | |||||
cmd.addArgument( "-g" ); | |||||
} | } | ||||
if( m_optimize ) | if( m_optimize ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-O" ); | |||||
cmd.addArgument( "-O" ); | |||||
} | } | ||||
if( m_verbose ) | if( m_verbose ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-verbose" ); | |||||
cmd.addArgument( "-verbose" ); | |||||
} | } | ||||
if( m_depend ) | if( m_depend ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-depend" ); | |||||
cmd.addArgument( "-depend" ); | |||||
} | } | ||||
if( m_attributes.getNowarn() ) | if( m_attributes.getNowarn() ) | ||||
@@ -124,7 +125,7 @@ public class Jikes | |||||
* let the magic property win over the attribute for backwards | * let the magic property win over the attribute for backwards | ||||
* compatibility | * compatibility | ||||
*/ | */ | ||||
cmd.createArgument().setValue( "-nowarn" ); | |||||
cmd.addArgument( "-nowarn" ); | |||||
} | } | ||||
addCurrentCompilerArgs( cmd ); | addCurrentCompilerArgs( cmd ); | ||||
@@ -10,6 +10,7 @@ package org.apache.tools.ant.taskdefs.compilers; | |||||
import org.apache.myrmidon.api.TaskException; | import org.apache.myrmidon.api.TaskException; | ||||
import org.apache.tools.ant.types.Commandline; | import org.apache.tools.ant.types.Commandline; | ||||
import org.apache.tools.ant.types.Path; | import org.apache.tools.ant.types.Path; | ||||
import org.apache.tools.ant.util.FileUtils; | |||||
/** | /** | ||||
* The implementation of the jvc compiler from microsoft. This is primarily a | * The implementation of the jvc compiler from microsoft. This is primarily a | ||||
@@ -65,32 +66,32 @@ public class Jvc extends DefaultCompilerAdapter | |||||
if( m_destDir != null ) | if( m_destDir != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "/d" ); | |||||
cmd.createArgument().setFile( m_destDir ); | |||||
cmd.addArgument( "/d" ); | |||||
cmd.addArgument( m_destDir ); | |||||
} | } | ||||
// Add the Classpath before the "internal" one. | // Add the Classpath before the "internal" one. | ||||
cmd.createArgument().setValue( "/cp:p" ); | |||||
cmd.createArgument().setPath( classpath ); | |||||
cmd.addArgument( "/cp:p" ); | |||||
cmd.addArguments( FileUtils.translateCommandline( classpath ) ); | |||||
// Enable MS-Extensions and ... | // Enable MS-Extensions and ... | ||||
cmd.createArgument().setValue( "/x-" ); | |||||
cmd.addArgument( "/x-" ); | |||||
// ... do not display a Message about this. | // ... do not display a Message about this. | ||||
cmd.createArgument().setValue( "/nomessage" ); | |||||
cmd.addArgument( "/nomessage" ); | |||||
// Do not display Logo | // Do not display Logo | ||||
cmd.createArgument().setValue( "/nologo" ); | |||||
cmd.addArgument( "/nologo" ); | |||||
if( m_debug ) | if( m_debug ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "/g" ); | |||||
cmd.addArgument( "/g" ); | |||||
} | } | ||||
if( m_optimize ) | if( m_optimize ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "/O" ); | |||||
cmd.addArgument( "/O" ); | |||||
} | } | ||||
if( m_verbose ) | if( m_verbose ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "/verbose" ); | |||||
cmd.addArgument( "/verbose" ); | |||||
} | } | ||||
addCurrentCompilerArgs( cmd ); | addCurrentCompilerArgs( cmd ); | ||||
@@ -11,6 +11,7 @@ import java.lang.reflect.Method; | |||||
import org.apache.myrmidon.api.TaskException; | import org.apache.myrmidon.api.TaskException; | ||||
import org.apache.tools.ant.types.Commandline; | import org.apache.tools.ant.types.Commandline; | ||||
import org.apache.tools.ant.types.Path; | import org.apache.tools.ant.types.Path; | ||||
import org.apache.tools.ant.util.FileUtils; | |||||
/** | /** | ||||
* The implementation of the Java compiler for KJC. This is primarily a | * The implementation of the Java compiler for KJC. This is primarily a | ||||
@@ -72,17 +73,17 @@ public class Kjc extends DefaultCompilerAdapter | |||||
if( m_deprecation == true ) | if( m_deprecation == true ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-deprecation" ); | |||||
cmd.addArgument( "-deprecation" ); | |||||
} | } | ||||
if( m_destDir != null ) | if( m_destDir != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-d" ); | |||||
cmd.createArgument().setFile( m_destDir ); | |||||
cmd.addArgument( "-d" ); | |||||
cmd.addArgument( m_destDir ); | |||||
} | } | ||||
// generate the clsspath | // generate the clsspath | ||||
cmd.createArgument().setValue( "-classpath" ); | |||||
cmd.addArgument( "-classpath" ); | |||||
Path cp = new Path(); | Path cp = new Path(); | ||||
@@ -100,29 +101,29 @@ public class Kjc extends DefaultCompilerAdapter | |||||
cp.append( classpath ); | cp.append( classpath ); | ||||
cp.append( src ); | cp.append( src ); | ||||
cmd.createArgument().setPath( cp ); | |||||
cmd.addArguments( FileUtils.translateCommandline( cp ) ); | |||||
// kjc-1.5A doesn't support -encoding option now. | // kjc-1.5A doesn't support -encoding option now. | ||||
// but it will be supported near the feature. | // but it will be supported near the feature. | ||||
if( m_encoding != null ) | if( m_encoding != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-encoding" ); | |||||
cmd.createArgument().setValue( m_encoding ); | |||||
cmd.addArgument( "-encoding" ); | |||||
cmd.addArgument( m_encoding ); | |||||
} | } | ||||
if( m_debug ) | if( m_debug ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-g" ); | |||||
cmd.addArgument( "-g" ); | |||||
} | } | ||||
if( m_optimize ) | if( m_optimize ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-O2" ); | |||||
cmd.addArgument( "-O2" ); | |||||
} | } | ||||
if( m_verbose ) | if( m_verbose ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-verbose" ); | |||||
cmd.addArgument( "-verbose" ); | |||||
} | } | ||||
addCurrentCompilerArgs( cmd ); | addCurrentCompilerArgs( cmd ); | ||||
@@ -162,12 +162,10 @@ public class ExecTask | |||||
/** | /** | ||||
* Add a nested arg element - a command line argument. | * Add a nested arg element - a command line argument. | ||||
* | |||||
* @return Description of the Returned Value | |||||
*/ | */ | ||||
public Argument createArg() | |||||
public void addArg( final Argument argument ) | |||||
{ | { | ||||
return m_command.createArgument(); | |||||
m_command.addArgument( argument ); | |||||
} | } | ||||
/** | /** | ||||
@@ -20,6 +20,7 @@ import org.apache.aut.nativelib.Os; | |||||
import org.apache.aut.nativelib.ExecOutputHandler; | import org.apache.aut.nativelib.ExecOutputHandler; | ||||
import org.apache.tools.ant.types.DirectoryScanner; | import org.apache.tools.ant.types.DirectoryScanner; | ||||
import org.apache.tools.ant.Task; | import org.apache.tools.ant.Task; | ||||
import org.apache.tools.ant.util.FileUtils; | |||||
import org.apache.tools.ant.taskdefs.exec.Execute2; | import org.apache.tools.ant.taskdefs.exec.Execute2; | ||||
import org.apache.tools.ant.types.Commandline; | import org.apache.tools.ant.types.Commandline; | ||||
import org.apache.tools.ant.types.FileSet; | import org.apache.tools.ant.types.FileSet; | ||||
@@ -89,7 +90,7 @@ public class Javadoc | |||||
public void setAccess( AccessType at ) | public void setAccess( AccessType at ) | ||||
{ | { | ||||
m_command.createArgument().setValue( "-" + at.getValue() ); | |||||
m_command.addArgument( "-" + at.getValue() ); | |||||
} | } | ||||
public void setAdditionalparam( String add ) | public void setAdditionalparam( String add ) | ||||
@@ -155,14 +156,14 @@ public class Javadoc | |||||
public void setDestdir( File dir ) | public void setDestdir( File dir ) | ||||
{ | { | ||||
m_destDir = dir; | m_destDir = dir; | ||||
m_command.createArgument().setValue( "-d" ); | |||||
m_command.createArgument().setFile( m_destDir ); | |||||
m_command.addArgument( "-d" ); | |||||
m_command.addArgument( m_destDir ); | |||||
} | } | ||||
public void setDocencoding( String enc ) | public void setDocencoding( String enc ) | ||||
{ | { | ||||
m_command.createArgument().setValue( "-docencoding" ); | |||||
m_command.createArgument().setValue( enc ); | |||||
m_command.addArgument( "-docencoding" ); | |||||
m_command.addArgument( enc ); | |||||
} | } | ||||
public void setDoclet( String src ) | public void setDoclet( String src ) | ||||
@@ -193,8 +194,8 @@ public class Javadoc | |||||
public void setEncoding( String enc ) | public void setEncoding( String enc ) | ||||
{ | { | ||||
m_command.createArgument().setValue( "-encoding" ); | |||||
m_command.createArgument().setValue( enc ); | |||||
m_command.addArgument( "-encoding" ); | |||||
m_command.addArgument( enc ); | |||||
} | } | ||||
public void setExcludePackageNames( String src ) | public void setExcludePackageNames( String src ) | ||||
@@ -211,8 +212,8 @@ public class Javadoc | |||||
public void setExtdirs( String src ) | public void setExtdirs( String src ) | ||||
{ | { | ||||
m_command.createArgument().setValue( "-extdirs" ); | |||||
m_command.createArgument().setValue( src ); | |||||
m_command.addArgument( "-extdirs" ); | |||||
m_command.addArgument( src ); | |||||
} | } | ||||
public void setFooter( String src ) | public void setFooter( String src ) | ||||
@@ -236,8 +237,8 @@ public class Javadoc | |||||
public void setHelpfile( File f ) | public void setHelpfile( File f ) | ||||
{ | { | ||||
m_command.createArgument().setValue( "-helpfile" ); | |||||
m_command.createArgument().setFile( f ); | |||||
m_command.addArgument( "-helpfile" ); | |||||
m_command.addArgument( f ); | |||||
} | } | ||||
public void setLink( String src ) | public void setLink( String src ) | ||||
@@ -268,13 +269,13 @@ public class Javadoc | |||||
public void setLocale( String src ) | public void setLocale( String src ) | ||||
{ | { | ||||
m_command.createArgument().setValue( "-locale" ); | |||||
m_command.createArgument().setValue( src ); | |||||
m_command.addArgument( "-locale" ); | |||||
m_command.addArgument( src ); | |||||
} | } | ||||
public void setMaxmemory( final String max ) | public void setMaxmemory( final String max ) | ||||
{ | { | ||||
m_command.createArgument().setValue( "-J-Xmx" + max ); | |||||
m_command.addArgument( "-J-Xmx" + max ); | |||||
} | } | ||||
public void setNodeprecated( boolean b ) | public void setNodeprecated( boolean b ) | ||||
@@ -314,8 +315,8 @@ public class Javadoc | |||||
public void setOverview( File f ) | public void setOverview( File f ) | ||||
{ | { | ||||
m_command.createArgument().setValue( "-overview" ); | |||||
m_command.createArgument().setFile( f ); | |||||
m_command.addArgument( "-overview" ); | |||||
m_command.addArgument( f ); | |||||
} | } | ||||
public void setPackage( boolean b ) | public void setPackage( boolean b ) | ||||
@@ -393,8 +394,8 @@ public class Javadoc | |||||
public void setStylesheetfile( File f ) | public void setStylesheetfile( File f ) | ||||
{ | { | ||||
m_command.createArgument().setValue( "-stylesheetfile" ); | |||||
m_command.createArgument().setFile( f ); | |||||
m_command.addArgument( "-stylesheetfile" ); | |||||
m_command.addArgument( f ); | |||||
} | } | ||||
public void setUse( boolean b ) | public void setUse( boolean b ) | ||||
@@ -536,23 +537,23 @@ public class Javadoc | |||||
if( m_doctitle != null ) | if( m_doctitle != null ) | ||||
{ | { | ||||
m_command.createArgument().setValue( "-doctitle" ); | |||||
m_command.createArgument().setValue( m_doctitle.getText() ); | |||||
m_command.addArgument( "-doctitle" ); | |||||
m_command.addArgument( m_doctitle.getText() ); | |||||
} | } | ||||
if( m_header != null ) | if( m_header != null ) | ||||
{ | { | ||||
m_command.createArgument().setValue( "-header" ); | |||||
m_command.createArgument().setValue( m_header.getText() ); | |||||
m_command.addArgument( "-header" ); | |||||
m_command.addArgument( m_header.getText() ); | |||||
} | } | ||||
if( m_footer != null ) | if( m_footer != null ) | ||||
{ | { | ||||
m_command.createArgument().setValue( "-footer" ); | |||||
m_command.createArgument().setValue( m_footer.getText() ); | |||||
m_command.addArgument( "-footer" ); | |||||
m_command.addArgument( m_footer.getText() ); | |||||
} | } | ||||
if( m_bottom != null ) | if( m_bottom != null ) | ||||
{ | { | ||||
m_command.createArgument().setValue( "-bottom" ); | |||||
m_command.createArgument().setValue( m_bottom.getText() ); | |||||
m_command.addArgument( "-bottom" ); | |||||
m_command.addArgument( m_bottom.getText() ); | |||||
} | } | ||||
Commandline cmd = new Commandline();//(Commandline)m_command.clone(); | Commandline cmd = new Commandline();//(Commandline)m_command.clone(); | ||||
@@ -567,13 +568,13 @@ public class Javadoc | |||||
{ | { | ||||
classpath.addPath( m_classpath ); | classpath.addPath( m_classpath ); | ||||
} | } | ||||
cmd.createArgument().setValue( "-classpath" ); | |||||
cmd.createArgument().setValue( classpath.toString() ); | |||||
cmd.addArgument( "-classpath" ); | |||||
cmd.addArgument( classpath.toString() ); | |||||
if( m_version && m_doclet == null ) | if( m_version && m_doclet == null ) | ||||
cmd.createArgument().setValue( "-version" ); | |||||
cmd.addArgument( "-version" ); | |||||
if( m_author && m_doclet == null ) | if( m_author && m_doclet == null ) | ||||
cmd.createArgument().setValue( "-author" ); | |||||
cmd.addArgument( "-author" ); | |||||
if( m_doclet == null ) | if( m_doclet == null ) | ||||
{ | { | ||||
@@ -596,12 +597,12 @@ public class Javadoc | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
cmd.createArgument().setValue( "-doclet" ); | |||||
cmd.createArgument().setValue( m_doclet.getName() ); | |||||
cmd.addArgument( "-doclet" ); | |||||
cmd.addArgument( m_doclet.getName() ); | |||||
if( m_doclet.getPath() != null ) | if( m_doclet.getPath() != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-docletpath" ); | |||||
cmd.createArgument().setPath( m_doclet.getPath() ); | |||||
cmd.addArgument( "-docletpath" ); | |||||
cmd.addArguments( FileUtils.translateCommandline( m_doclet.getPath() ) ); | |||||
} | } | ||||
for( Iterator e = m_doclet.getParams(); e.hasNext(); ) | for( Iterator e = m_doclet.getParams(); e.hasNext(); ) | ||||
{ | { | ||||
@@ -611,18 +612,18 @@ public class Javadoc | |||||
throw new TaskException( "Doclet parameters must have a name" ); | throw new TaskException( "Doclet parameters must have a name" ); | ||||
} | } | ||||
cmd.createArgument().setValue( param.getName() ); | |||||
cmd.addArgument( param.getName() ); | |||||
if( param.getValue() != null ) | if( param.getValue() != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( param.getValue() ); | |||||
cmd.addArgument( param.getValue() ); | |||||
} | } | ||||
} | } | ||||
} | } | ||||
if( m_bootclasspath != null ) | if( m_bootclasspath != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-bootclasspath" ); | |||||
cmd.createArgument().setPath( m_bootclasspath ); | |||||
cmd.addArgument( "-bootclasspath" ); | |||||
cmd.addArguments( FileUtils.translateCommandline( m_bootclasspath ) ); | |||||
} | } | ||||
// add the links arguments | // add the links arguments | ||||
@@ -648,9 +649,9 @@ public class Javadoc | |||||
File packageList = new File( packageListLocation, "package-list" ); | File packageList = new File( packageListLocation, "package-list" ); | ||||
if( packageList.exists() ) | if( packageList.exists() ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-linkoffline" ); | |||||
cmd.createArgument().setValue( la.getHref() ); | |||||
cmd.createArgument().setValue( packageListLocation.getAbsolutePath() ); | |||||
cmd.addArgument( "-linkoffline" ); | |||||
cmd.addArgument( la.getHref() ); | |||||
cmd.addArgument( packageListLocation.getAbsolutePath() ); | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
@@ -659,8 +660,8 @@ public class Javadoc | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
cmd.createArgument().setValue( "-link" ); | |||||
cmd.createArgument().setValue( la.getHref() ); | |||||
cmd.addArgument( "-link" ); | |||||
cmd.addArgument( la.getHref() ); | |||||
} | } | ||||
} | } | ||||
} | } | ||||
@@ -687,9 +688,9 @@ public class Javadoc | |||||
{ | { | ||||
String name = grp.substring( 0, space ); | String name = grp.substring( 0, space ); | ||||
String pkgList = grp.substring( space + 1 ); | String pkgList = grp.substring( space + 1 ); | ||||
cmd.createArgument().setValue( "-group" ); | |||||
cmd.createArgument().setValue( name ); | |||||
cmd.createArgument().setValue( pkgList ); | |||||
cmd.addArgument( "-group" ); | |||||
cmd.addArgument( name ); | |||||
cmd.addArgument( pkgList ); | |||||
} | } | ||||
} | } | ||||
} | } | ||||
@@ -706,9 +707,9 @@ public class Javadoc | |||||
{ | { | ||||
throw new TaskException( "The title and packages must be specified for group elements." ); | throw new TaskException( "The title and packages must be specified for group elements." ); | ||||
} | } | ||||
cmd.createArgument().setValue( "-group" ); | |||||
cmd.createArgument().setValue( title ); | |||||
cmd.createArgument().setValue( packages ); | |||||
cmd.addArgument( "-group" ); | |||||
cmd.addArgument( title ); | |||||
cmd.addArgument( packages ); | |||||
} | } | ||||
} | } | ||||
@@ -729,7 +730,7 @@ public class Javadoc | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
cmd.createArgument().setValue( name ); | |||||
cmd.addArgument( name ); | |||||
} | } | ||||
} | } | ||||
@@ -763,7 +764,7 @@ public class Javadoc | |||||
if( m_tmpList == null ) | if( m_tmpList == null ) | ||||
{ | { | ||||
m_tmpList = File.createTempFile( "javadoc", "", getBaseDirectory() ); | m_tmpList = File.createTempFile( "javadoc", "", getBaseDirectory() ); | ||||
cmd.createArgument().setValue( "@" + m_tmpList.getAbsolutePath() ); | |||||
cmd.addArgument( "@" + m_tmpList.getAbsolutePath() ); | |||||
} | } | ||||
srcListWriter = new PrintWriter( new FileWriter( m_tmpList.getAbsolutePath(), | srcListWriter = new PrintWriter( new FileWriter( m_tmpList.getAbsolutePath(), | ||||
true ) ); | true ) ); | ||||
@@ -780,7 +781,7 @@ public class Javadoc | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
cmd.createArgument().setValue( sourceFileName ); | |||||
cmd.addArgument( sourceFileName ); | |||||
} | } | ||||
} | } | ||||
@@ -800,7 +801,7 @@ public class Javadoc | |||||
if( m_packageList != null ) | if( m_packageList != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "@" + m_packageList ); | |||||
cmd.addArgument( "@" + m_packageList ); | |||||
} | } | ||||
getLogger().debug( "Javadoc args: " + cmd ); | getLogger().debug( "Javadoc args: " + cmd ); | ||||
@@ -873,8 +874,8 @@ public class Javadoc | |||||
{ | { | ||||
if( value != null && value.length() != 0 ) | if( value != null && value.length() != 0 ) | ||||
{ | { | ||||
m_command.createArgument().setValue( key ); | |||||
m_command.createArgument().setValue( value ); | |||||
m_command.addArgument( key ); | |||||
m_command.addArgument( value ); | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
@@ -886,7 +887,7 @@ public class Javadoc | |||||
{ | { | ||||
if( b ) | if( b ) | ||||
{ | { | ||||
m_command.createArgument().setValue( arg ); | |||||
m_command.addArgument( arg ); | |||||
} | } | ||||
} | } | ||||
@@ -969,7 +970,7 @@ public class Javadoc | |||||
if( m_useExternalFile ) | if( m_useExternalFile ) | ||||
{ | { | ||||
m_tmpList = File.createTempFile( "javadoc", "", getBaseDirectory() ); | m_tmpList = File.createTempFile( "javadoc", "", getBaseDirectory() ); | ||||
toExecute.createArgument().setValue( "@" + m_tmpList.getAbsolutePath() ); | |||||
toExecute.addArgument( "@" + m_tmpList.getAbsolutePath() ); | |||||
packageListWriter = new PrintWriter( new FileWriter( m_tmpList ) ); | packageListWriter = new PrintWriter( new FileWriter( m_tmpList ) ); | ||||
} | } | ||||
@@ -1008,7 +1009,7 @@ public class Javadoc | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
toExecute.createArgument().setValue( pkgDir ); | |||||
toExecute.addArgument( pkgDir ); | |||||
} | } | ||||
addedPackages.add( pkgDir ); | addedPackages.add( pkgDir ); | ||||
} | } | ||||
@@ -105,9 +105,9 @@ public class ANTLR extends Task | |||||
* the JVM. | * the JVM. | ||||
* @see #setFork(boolean) | * @see #setFork(boolean) | ||||
*/ | */ | ||||
public Argument createJvmarg() | |||||
public void addJvmarg( final Argument argument ) | |||||
{ | { | ||||
return commandline.createVmArgument(); | |||||
commandline.addVmArgument( argument ); | |||||
} | } | ||||
public void execute() | public void execute() | ||||
@@ -122,9 +122,9 @@ public class ANTLR extends Task | |||||
//TODO: use ANTLR to parse the grammer file to do this. | //TODO: use ANTLR to parse the grammer file to do this. | ||||
if( target.lastModified() > getGeneratedFile().lastModified() ) | if( target.lastModified() > getGeneratedFile().lastModified() ) | ||||
{ | { | ||||
commandline.createArgument().setValue( "-o" ); | |||||
commandline.createArgument().setValue( outputDirectory.toString() ); | |||||
commandline.createArgument().setValue( target.toString() ); | |||||
commandline.addArgument( "-o" ); | |||||
commandline.addArgument( outputDirectory.toString() ); | |||||
commandline.addArgument( target.toString() ); | |||||
if( fork ) | if( fork ) | ||||
{ | { | ||||
@@ -247,13 +247,13 @@ public class Cab | |||||
{ | { | ||||
final Commandline cmd = new Commandline(); | final Commandline cmd = new Commandline(); | ||||
cmd.setExecutable( "cabarc" ); | cmd.setExecutable( "cabarc" ); | ||||
cmd.createArgument().setValue( "-r" ); | |||||
cmd.createArgument().setValue( "-p" ); | |||||
cmd.addArgument( "-r" ); | |||||
cmd.addArgument( "-p" ); | |||||
if( !m_compress ) | if( !m_compress ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-m" ); | |||||
cmd.createArgument().setValue( "none" ); | |||||
cmd.addArgument( "-m" ); | |||||
cmd.addArgument( "none" ); | |||||
} | } | ||||
if( m_options != null ) | if( m_options != null ) | ||||
@@ -261,9 +261,9 @@ public class Cab | |||||
cmd.createArgument().setLine( m_options ); | cmd.createArgument().setLine( m_options ); | ||||
} | } | ||||
cmd.createArgument().setValue( "n" ); | |||||
cmd.createArgument().setFile( m_cabFile ); | |||||
cmd.createArgument().setValue( "@" + listFile.getAbsolutePath() ); | |||||
cmd.addArgument( "n" ); | |||||
cmd.addArgument( m_cabFile ); | |||||
cmd.addArgument( "@" + listFile.getAbsolutePath() ); | |||||
return cmd; | return cmd; | ||||
} | } | ||||
@@ -17,6 +17,7 @@ import org.apache.myrmidon.api.TaskException; | |||||
import org.apache.myrmidon.api.AbstractTask; | import org.apache.myrmidon.api.AbstractTask; | ||||
import org.apache.tools.ant.types.Commandline; | import org.apache.tools.ant.types.Commandline; | ||||
import org.apache.tools.ant.types.Path; | import org.apache.tools.ant.types.Path; | ||||
import org.apache.tools.ant.util.FileUtils; | |||||
/** | /** | ||||
* Task to generate JNI header files using javah. This task can take the | * Task to generate JNI header files using javah. This task can take the | ||||
@@ -219,7 +220,7 @@ public class Javah | |||||
while( tok.hasMoreTokens() ) | while( tok.hasMoreTokens() ) | ||||
{ | { | ||||
final String aClass = tok.nextToken().trim(); | final String aClass = tok.nextToken().trim(); | ||||
cmd.createArgument().setValue( aClass ); | |||||
cmd.addArgument( aClass ); | |||||
niceClassList.append( " " + aClass + StringUtil.LINE_SEPARATOR ); | niceClassList.append( " " + aClass + StringUtil.LINE_SEPARATOR ); | ||||
n++; | n++; | ||||
} | } | ||||
@@ -230,7 +231,7 @@ public class Javah | |||||
{ | { | ||||
final ClassArgument arg = (ClassArgument)enum.next(); | final ClassArgument arg = (ClassArgument)enum.next(); | ||||
final String aClass = arg.getName(); | final String aClass = arg.getName(); | ||||
cmd.createArgument().setValue( aClass ); | |||||
cmd.addArgument( aClass ); | |||||
niceClassList.append( " " + aClass + StringUtil.LINE_SEPARATOR ); | niceClassList.append( " " + aClass + StringUtil.LINE_SEPARATOR ); | ||||
n++; | n++; | ||||
} | } | ||||
@@ -256,33 +257,33 @@ public class Javah | |||||
if( m_destDir != null ) | if( m_destDir != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-d" ); | |||||
cmd.createArgument().setFile( m_destDir ); | |||||
cmd.addArgument( "-d" ); | |||||
cmd.addArgument( m_destDir ); | |||||
} | } | ||||
if( m_outputFile != null ) | if( m_outputFile != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-o" ); | |||||
cmd.createArgument().setFile( m_outputFile ); | |||||
cmd.addArgument( "-o" ); | |||||
cmd.addArgument( m_outputFile ); | |||||
} | } | ||||
if( m_classpath != null ) | if( m_classpath != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-classpath" ); | |||||
cmd.createArgument().setPath( m_classpath ); | |||||
cmd.addArgument( "-classpath" ); | |||||
cmd.addArguments( FileUtils.translateCommandline( m_classpath ) ); | |||||
} | } | ||||
if( m_verbose ) | if( m_verbose ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-verbose" ); | |||||
cmd.addArgument( "-verbose" ); | |||||
} | } | ||||
if( m_old ) | if( m_old ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-old" ); | |||||
cmd.addArgument( "-old" ); | |||||
} | } | ||||
if( m_force ) | if( m_force ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-force" ); | |||||
cmd.addArgument( "-force" ); | |||||
} | } | ||||
if( m_stubs ) | if( m_stubs ) | ||||
@@ -292,12 +293,12 @@ public class Javah | |||||
final String message = "stubs only available in old mode."; | final String message = "stubs only available in old mode."; | ||||
throw new TaskException( message ); | throw new TaskException( message ); | ||||
} | } | ||||
cmd.createArgument().setValue( "-stubs" ); | |||||
cmd.addArgument( "-stubs" ); | |||||
} | } | ||||
if( m_bootclasspath != null ) | if( m_bootclasspath != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-bootclasspath" ); | |||||
cmd.createArgument().setPath( m_bootclasspath ); | |||||
cmd.addArgument( "-bootclasspath" ); | |||||
cmd.addArguments( FileUtils.translateCommandline( m_bootclasspath ) ); | |||||
} | } | ||||
logAndAddFilesToCompile( cmd ); | logAndAddFilesToCompile( cmd ); | ||||
@@ -115,7 +115,7 @@ public class CCMCheck extends Continuus | |||||
// ccm co /t .. files | // ccm co /t .. files | ||||
// as specified in the CLEARTOOL.EXE help | // as specified in the CLEARTOOL.EXE help | ||||
commandLine.setExecutable( getCcmCommand() ); | commandLine.setExecutable( getCcmCommand() ); | ||||
commandLine.createArgument().setValue( getCcmAction() ); | |||||
commandLine.addArgument( getCcmAction() ); | |||||
checkOptions( commandLine ); | checkOptions( commandLine ); | ||||
@@ -136,19 +136,19 @@ public class CCMCheck extends Continuus | |||||
{ | { | ||||
if( getComment() != null ) | if( getComment() != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_COMMENT ); | |||||
cmd.createArgument().setValue( getComment() ); | |||||
cmd.addArgument( FLAG_COMMENT ); | |||||
cmd.addArgument( getComment() ); | |||||
} | } | ||||
if( getTask() != null ) | if( getTask() != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_TASK ); | |||||
cmd.createArgument().setValue( getTask() ); | |||||
cmd.addArgument( FLAG_TASK ); | |||||
cmd.addArgument( getTask() ); | |||||
}// end of if () | }// end of if () | ||||
if( getFile() != null ) | if( getFile() != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( _file.getAbsolutePath() ); | |||||
cmd.addArgument( _file.getAbsolutePath() ); | |||||
}// end of if () | }// end of if () | ||||
} | } | ||||
} | } | ||||
@@ -143,8 +143,8 @@ public class CCMCreateTask | |||||
//create task ok, set this task as the default one | //create task ok, set this task as the default one | ||||
final Commandline cmd = new Commandline(); | final Commandline cmd = new Commandline(); | ||||
cmd.setExecutable( getCcmCommand() ); | cmd.setExecutable( getCcmCommand() ); | ||||
cmd.createArgument().setValue( COMMAND_DEFAULT_TASK ); | |||||
cmd.createArgument().setValue( m_task ); | |||||
cmd.addArgument( COMMAND_DEFAULT_TASK ); | |||||
cmd.addArgument( m_task ); | |||||
getLogger().debug( commandLine.toString() ); | getLogger().debug( commandLine.toString() ); | ||||
@@ -164,7 +164,7 @@ public class CCMCreateTask | |||||
// build the command line from what we got the format | // build the command line from what we got the format | ||||
// as specified in the CCM.EXE help | // as specified in the CCM.EXE help | ||||
commandLine.setExecutable( getCcmCommand() ); | commandLine.setExecutable( getCcmCommand() ); | ||||
commandLine.createArgument().setValue( getCcmAction() ); | |||||
commandLine.addArgument( getCcmAction() ); | |||||
checkOptions( commandLine ); | checkOptions( commandLine ); | ||||
@@ -184,32 +184,32 @@ public class CCMCreateTask | |||||
{ | { | ||||
if( m_comment != null ) | if( m_comment != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_COMMENT ); | |||||
cmd.createArgument().setValue( "\"" + m_comment + "\"" ); | |||||
cmd.addArgument( FLAG_COMMENT ); | |||||
cmd.addArgument( "\"" + m_comment + "\"" ); | |||||
} | } | ||||
if( m_platform != null ) | if( m_platform != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_PLATFORM ); | |||||
cmd.createArgument().setValue( m_platform ); | |||||
cmd.addArgument( FLAG_PLATFORM ); | |||||
cmd.addArgument( m_platform ); | |||||
} | } | ||||
if( m_resolver != null ) | if( m_resolver != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_RESOLVER ); | |||||
cmd.createArgument().setValue( m_resolver ); | |||||
cmd.addArgument( FLAG_RESOLVER ); | |||||
cmd.addArgument( m_resolver ); | |||||
} | } | ||||
if( m_subSystem != null ) | if( m_subSystem != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_SUBSYSTEM ); | |||||
cmd.createArgument().setValue( "\"" + m_subSystem + "\"" ); | |||||
cmd.addArgument( FLAG_SUBSYSTEM ); | |||||
cmd.addArgument( "\"" + m_subSystem + "\"" ); | |||||
} | } | ||||
if( m_release != null ) | if( m_release != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_RELEASE ); | |||||
cmd.createArgument().setValue( m_release ); | |||||
cmd.addArgument( FLAG_RELEASE ); | |||||
cmd.addArgument( m_release ); | |||||
} | } | ||||
} | } | ||||
@@ -81,7 +81,7 @@ public class CCMReconfigure | |||||
// build the command line from what we got the format | // build the command line from what we got the format | ||||
// as specified in the CCM.EXE help | // as specified in the CCM.EXE help | ||||
cmd.setExecutable( getCcmCommand() ); | cmd.setExecutable( getCcmCommand() ); | ||||
cmd.createArgument().setValue( getCcmAction() ); | |||||
cmd.addArgument( getCcmAction() ); | |||||
checkOptions( cmd ); | checkOptions( cmd ); | ||||
@@ -100,18 +100,18 @@ public class CCMReconfigure | |||||
{ | { | ||||
if( m_recurse == true ) | if( m_recurse == true ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_RECURSE ); | |||||
cmd.addArgument( FLAG_RECURSE ); | |||||
} | } | ||||
if( m_verbose == true ) | if( m_verbose == true ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_VERBOSE ); | |||||
cmd.addArgument( FLAG_VERBOSE ); | |||||
} | } | ||||
if( m_ccmProject != null ) | if( m_ccmProject != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_PROJECT ); | |||||
cmd.createArgument().setValue( m_ccmProject ); | |||||
cmd.addArgument( FLAG_PROJECT ); | |||||
cmd.addArgument( m_ccmProject ); | |||||
} | } | ||||
} | } | ||||
} | } | ||||
@@ -335,7 +335,7 @@ public class CCCheckin extends ClearCase | |||||
// cleartool checkin [options...] [viewpath ...] | // cleartool checkin [options...] [viewpath ...] | ||||
// as specified in the CLEARTOOL.EXE help | // as specified in the CLEARTOOL.EXE help | ||||
commandLine.setExecutable( getClearToolCommand() ); | commandLine.setExecutable( getClearToolCommand() ); | ||||
commandLine.createArgument().setValue( COMMAND_CHECKIN ); | |||||
commandLine.addArgument( COMMAND_CHECKIN ); | |||||
checkOptions( commandLine ); | checkOptions( commandLine ); | ||||
@@ -362,8 +362,8 @@ public class CCCheckin extends ClearCase | |||||
* Windows filename with a space and it is enclosed in double | * Windows filename with a space and it is enclosed in double | ||||
* quotes ("). This breaks clearcase. | * quotes ("). This breaks clearcase. | ||||
*/ | */ | ||||
cmd.createArgument().setValue( FLAG_COMMENT ); | |||||
cmd.createArgument().setValue( getComment() ); | |||||
cmd.addArgument( FLAG_COMMENT ); | |||||
cmd.addArgument( getComment() ); | |||||
} | } | ||||
} | } | ||||
@@ -382,8 +382,8 @@ public class CCCheckin extends ClearCase | |||||
* Windows filename with a space and it is enclosed in double | * Windows filename with a space and it is enclosed in double | ||||
* quotes ("). This breaks clearcase. | * quotes ("). This breaks clearcase. | ||||
*/ | */ | ||||
cmd.createArgument().setValue( FLAG_COMMENTFILE ); | |||||
cmd.createArgument().setValue( getCommentFile() ); | |||||
cmd.addArgument( FLAG_COMMENTFILE ); | |||||
cmd.addArgument( getCommentFile() ); | |||||
} | } | ||||
} | } | ||||
@@ -408,36 +408,36 @@ public class CCCheckin extends ClearCase | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_NOCOMMENT ); | |||||
cmd.addArgument( FLAG_NOCOMMENT ); | |||||
} | } | ||||
} | } | ||||
if( getNoWarn() ) | if( getNoWarn() ) | ||||
{ | { | ||||
// -nwarn | // -nwarn | ||||
cmd.createArgument().setValue( FLAG_NOWARN ); | |||||
cmd.addArgument( FLAG_NOWARN ); | |||||
} | } | ||||
if( getPreserveTime() ) | if( getPreserveTime() ) | ||||
{ | { | ||||
// -ptime | // -ptime | ||||
cmd.createArgument().setValue( FLAG_PRESERVETIME ); | |||||
cmd.addArgument( FLAG_PRESERVETIME ); | |||||
} | } | ||||
if( getKeepCopy() ) | if( getKeepCopy() ) | ||||
{ | { | ||||
// -keep | // -keep | ||||
cmd.createArgument().setValue( FLAG_KEEPCOPY ); | |||||
cmd.addArgument( FLAG_KEEPCOPY ); | |||||
} | } | ||||
if( getIdentical() ) | if( getIdentical() ) | ||||
{ | { | ||||
// -identical | // -identical | ||||
cmd.createArgument().setValue( FLAG_IDENTICAL ); | |||||
cmd.addArgument( FLAG_IDENTICAL ); | |||||
} | } | ||||
// viewpath | // viewpath | ||||
cmd.createArgument().setValue( getViewPath() ); | |||||
cmd.addArgument( getViewPath() ); | |||||
} | } | ||||
} | } | ||||
@@ -423,7 +423,7 @@ public class CCCheckout extends ClearCase | |||||
// cleartool checkout [options...] [viewpath ...] | // cleartool checkout [options...] [viewpath ...] | ||||
// as specified in the CLEARTOOL.EXE help | // as specified in the CLEARTOOL.EXE help | ||||
commandLine.setExecutable( getClearToolCommand() ); | commandLine.setExecutable( getClearToolCommand() ); | ||||
commandLine.createArgument().setValue( COMMAND_CHECKOUT ); | |||||
commandLine.addArgument( COMMAND_CHECKOUT ); | |||||
checkOptions( commandLine ); | checkOptions( commandLine ); | ||||
@@ -450,8 +450,8 @@ public class CCCheckout extends ClearCase | |||||
* Windows filename with a space and it is enclosed in double | * Windows filename with a space and it is enclosed in double | ||||
* quotes ("). This breaks clearcase. | * quotes ("). This breaks clearcase. | ||||
*/ | */ | ||||
cmd.createArgument().setValue( FLAG_BRANCH ); | |||||
cmd.createArgument().setValue( getBranch() ); | |||||
cmd.addArgument( FLAG_BRANCH ); | |||||
cmd.addArgument( getBranch() ); | |||||
} | } | ||||
} | } | ||||
@@ -470,8 +470,8 @@ public class CCCheckout extends ClearCase | |||||
* Windows filename with a space and it is enclosed in double | * Windows filename with a space and it is enclosed in double | ||||
* quotes ("). This breaks clearcase. | * quotes ("). This breaks clearcase. | ||||
*/ | */ | ||||
cmd.createArgument().setValue( FLAG_COMMENT ); | |||||
cmd.createArgument().setValue( getComment() ); | |||||
cmd.addArgument( FLAG_COMMENT ); | |||||
cmd.addArgument( getComment() ); | |||||
} | } | ||||
} | } | ||||
@@ -490,8 +490,8 @@ public class CCCheckout extends ClearCase | |||||
* Windows filename with a space and it is enclosed in double | * Windows filename with a space and it is enclosed in double | ||||
* quotes ("). This breaks clearcase. | * quotes ("). This breaks clearcase. | ||||
*/ | */ | ||||
cmd.createArgument().setValue( FLAG_COMMENTFILE ); | |||||
cmd.createArgument().setValue( getCommentFile() ); | |||||
cmd.addArgument( FLAG_COMMENTFILE ); | |||||
cmd.addArgument( getCommentFile() ); | |||||
} | } | ||||
} | } | ||||
@@ -510,8 +510,8 @@ public class CCCheckout extends ClearCase | |||||
* Windows filename with a space and it is enclosed in double | * Windows filename with a space and it is enclosed in double | ||||
* quotes ("). This breaks clearcase. | * quotes ("). This breaks clearcase. | ||||
*/ | */ | ||||
cmd.createArgument().setValue( FLAG_OUT ); | |||||
cmd.createArgument().setValue( getOut() ); | |||||
cmd.addArgument( FLAG_OUT ); | |||||
cmd.addArgument( getOut() ); | |||||
} | } | ||||
} | } | ||||
@@ -526,12 +526,12 @@ public class CCCheckout extends ClearCase | |||||
if( getReserved() ) | if( getReserved() ) | ||||
{ | { | ||||
// -reserved | // -reserved | ||||
cmd.createArgument().setValue( FLAG_RESERVED ); | |||||
cmd.addArgument( FLAG_RESERVED ); | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
// -unreserved | // -unreserved | ||||
cmd.createArgument().setValue( FLAG_UNRESERVED ); | |||||
cmd.addArgument( FLAG_UNRESERVED ); | |||||
} | } | ||||
if( getOut() != null ) | if( getOut() != null ) | ||||
@@ -544,7 +544,7 @@ public class CCCheckout extends ClearCase | |||||
if( getNoData() ) | if( getNoData() ) | ||||
{ | { | ||||
// -ndata | // -ndata | ||||
cmd.createArgument().setValue( FLAG_NODATA ); | |||||
cmd.addArgument( FLAG_NODATA ); | |||||
} | } | ||||
} | } | ||||
@@ -559,7 +559,7 @@ public class CCCheckout extends ClearCase | |||||
if( getVersion() ) | if( getVersion() ) | ||||
{ | { | ||||
// -version | // -version | ||||
cmd.createArgument().setValue( FLAG_VERSION ); | |||||
cmd.addArgument( FLAG_VERSION ); | |||||
} | } | ||||
} | } | ||||
@@ -567,7 +567,7 @@ public class CCCheckout extends ClearCase | |||||
if( getNoWarn() ) | if( getNoWarn() ) | ||||
{ | { | ||||
// -nwarn | // -nwarn | ||||
cmd.createArgument().setValue( FLAG_NOWARN ); | |||||
cmd.addArgument( FLAG_NOWARN ); | |||||
} | } | ||||
if( getComment() != null ) | if( getComment() != null ) | ||||
@@ -584,12 +584,12 @@ public class CCCheckout extends ClearCase | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_NOCOMMENT ); | |||||
cmd.addArgument( FLAG_NOCOMMENT ); | |||||
} | } | ||||
} | } | ||||
// viewpath | // viewpath | ||||
cmd.createArgument().setValue( getViewPath() ); | |||||
cmd.addArgument( getViewPath() ); | |||||
} | } | ||||
} | } | ||||
@@ -127,7 +127,7 @@ public class CCUnCheckout extends ClearCase | |||||
// cleartool uncheckout [options...] [viewpath ...] | // cleartool uncheckout [options...] [viewpath ...] | ||||
// as specified in the CLEARTOOL.EXE help | // as specified in the CLEARTOOL.EXE help | ||||
commandLine.setExecutable( getClearToolCommand() ); | commandLine.setExecutable( getClearToolCommand() ); | ||||
commandLine.createArgument().setValue( COMMAND_UNCHECKOUT ); | |||||
commandLine.addArgument( COMMAND_UNCHECKOUT ); | |||||
checkOptions( commandLine ); | checkOptions( commandLine ); | ||||
@@ -150,16 +150,16 @@ public class CCUnCheckout extends ClearCase | |||||
if( getKeepCopy() ) | if( getKeepCopy() ) | ||||
{ | { | ||||
// -keep | // -keep | ||||
cmd.createArgument().setValue( FLAG_KEEPCOPY ); | |||||
cmd.addArgument( FLAG_KEEPCOPY ); | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
// -rm | // -rm | ||||
cmd.createArgument().setValue( FLAG_RM ); | |||||
cmd.addArgument( FLAG_RM ); | |||||
} | } | ||||
// viewpath | // viewpath | ||||
cmd.createArgument().setValue( getViewPath() ); | |||||
cmd.addArgument( getViewPath() ); | |||||
} | } | ||||
} | } | ||||
@@ -336,7 +336,7 @@ public class CCUpdate extends ClearCase | |||||
// cleartool update [options...] [viewpath ...] | // cleartool update [options...] [viewpath ...] | ||||
// as specified in the CLEARTOOL.EXE help | // as specified in the CLEARTOOL.EXE help | ||||
commandLine.setExecutable( getClearToolCommand() ); | commandLine.setExecutable( getClearToolCommand() ); | ||||
commandLine.createArgument().setValue( COMMAND_UPDATE ); | |||||
commandLine.addArgument( COMMAND_UPDATE ); | |||||
// Check the command line options | // Check the command line options | ||||
checkOptions( commandLine ); | checkOptions( commandLine ); | ||||
@@ -371,8 +371,8 @@ public class CCUpdate extends ClearCase | |||||
* Windows filename with a space and it is enclosed in double | * Windows filename with a space and it is enclosed in double | ||||
* quotes ("). This breaks clearcase. | * quotes ("). This breaks clearcase. | ||||
*/ | */ | ||||
cmd.createArgument().setValue( FLAG_LOG ); | |||||
cmd.createArgument().setValue( getLog() ); | |||||
cmd.addArgument( FLAG_LOG ); | |||||
cmd.addArgument( getLog() ); | |||||
} | } | ||||
} | } | ||||
@@ -387,40 +387,40 @@ public class CCUpdate extends ClearCase | |||||
if( getGraphical() ) | if( getGraphical() ) | ||||
{ | { | ||||
// -graphical | // -graphical | ||||
cmd.createArgument().setValue( FLAG_GRAPHICAL ); | |||||
cmd.addArgument( FLAG_GRAPHICAL ); | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
if( getOverwrite() ) | if( getOverwrite() ) | ||||
{ | { | ||||
// -overwrite | // -overwrite | ||||
cmd.createArgument().setValue( FLAG_OVERWRITE ); | |||||
cmd.addArgument( FLAG_OVERWRITE ); | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
if( getRename() ) | if( getRename() ) | ||||
{ | { | ||||
// -rename | // -rename | ||||
cmd.createArgument().setValue( FLAG_RENAME ); | |||||
cmd.addArgument( FLAG_RENAME ); | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
// -noverwrite | // -noverwrite | ||||
cmd.createArgument().setValue( FLAG_NOVERWRITE ); | |||||
cmd.addArgument( FLAG_NOVERWRITE ); | |||||
} | } | ||||
} | } | ||||
if( getCurrentTime() ) | if( getCurrentTime() ) | ||||
{ | { | ||||
// -ctime | // -ctime | ||||
cmd.createArgument().setValue( FLAG_CURRENTTIME ); | |||||
cmd.addArgument( FLAG_CURRENTTIME ); | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
if( getPreserveTime() ) | if( getPreserveTime() ) | ||||
{ | { | ||||
// -ptime | // -ptime | ||||
cmd.createArgument().setValue( FLAG_PRESERVETIME ); | |||||
cmd.addArgument( FLAG_PRESERVETIME ); | |||||
} | } | ||||
} | } | ||||
@@ -429,7 +429,7 @@ public class CCUpdate extends ClearCase | |||||
} | } | ||||
// viewpath | // viewpath | ||||
cmd.createArgument().setValue( getViewPath() ); | |||||
cmd.addArgument( getViewPath() ); | |||||
} | } | ||||
} | } | ||||
@@ -125,7 +125,7 @@ public class NetCommand | |||||
{ | { | ||||
if( argument != null && argument.length() != 0 ) | if( argument != null && argument.length() != 0 ) | ||||
{ | { | ||||
_commandLine.createArgument().setValue( argument ); | |||||
_commandLine.addArgument( argument ); | |||||
} | } | ||||
} | } | ||||
@@ -23,6 +23,7 @@ import org.apache.tools.ant.taskdefs.exec.ExecuteStreamHandler; | |||||
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.Path; | import org.apache.tools.ant.types.Path; | ||||
import org.apache.tools.ant.util.FileUtils; | |||||
/** | /** | ||||
* BorlandDeploymentTool is dedicated to the Borland Application Server 4.5 and | * BorlandDeploymentTool is dedicated to the Borland Application Server 4.5 and | ||||
@@ -392,24 +393,24 @@ public class BorlandDeploymentTool | |||||
//debug ? | //debug ? | ||||
if( java2iiopdebug ) | if( java2iiopdebug ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-VBJdebug" ); | |||||
cmd.addArgument( "-VBJdebug" ); | |||||
}// end of if () | }// end of if () | ||||
//set the classpath | //set the classpath | ||||
cmd.createArgument().setValue( "-VBJclasspath" ); | |||||
cmd.createArgument().setPath( getCombinedClasspath() ); | |||||
cmd.addArgument( "-VBJclasspath" ); | |||||
cmd.addArguments( FileUtils.translateCommandline( getCombinedClasspath() ) ); | |||||
//list file | //list file | ||||
cmd.createArgument().setValue( "-list_files" ); | |||||
cmd.addArgument( "-list_files" ); | |||||
//no TIE classes | //no TIE classes | ||||
cmd.createArgument().setValue( "-no_tie" ); | |||||
cmd.addArgument( "-no_tie" ); | |||||
//root dir | //root dir | ||||
cmd.createArgument().setValue( "-root_dir" ); | |||||
cmd.createArgument().setValue( getConfig().srcDir.getAbsolutePath() ); | |||||
cmd.addArgument( "-root_dir" ); | |||||
cmd.addArgument( getConfig().srcDir.getAbsolutePath() ); | |||||
//compiling order | //compiling order | ||||
cmd.createArgument().setValue( "-compile" ); | |||||
cmd.addArgument( "-compile" ); | |||||
//add the home class | //add the home class | ||||
while( ithomes.hasNext() ) | while( ithomes.hasNext() ) | ||||
{ | { | ||||
cmd.createArgument().setValue( ithomes.next().toString() ); | |||||
cmd.addArgument( ithomes.next().toString() ); | |||||
} | } | ||||
return cmd; | return cmd; | ||||
} | } | ||||
@@ -178,20 +178,20 @@ public class BorlandGenerateClient extends Task | |||||
{ | { | ||||
final Commandline cmd = new Commandline(); | final Commandline cmd = new Commandline(); | ||||
cmd.setExecutable( "iastool" ); | cmd.setExecutable( "iastool" ); | ||||
cmd.createArgument().setValue( "generateclient" ); | |||||
cmd.addArgument( "generateclient" ); | |||||
if( debug ) | if( debug ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-trace" ); | |||||
cmd.addArgument( "-trace" ); | |||||
} | } | ||||
cmd.createArgument().setValue( "-short" ); | |||||
cmd.createArgument().setValue( "-jarfile" ); | |||||
cmd.addArgument( "-short" ); | |||||
cmd.addArgument( "-jarfile" ); | |||||
// ejb jar file | // ejb jar file | ||||
cmd.createArgument().setValue( ejbjarfile.getAbsolutePath() ); | |||||
cmd.addArgument( ejbjarfile.getAbsolutePath() ); | |||||
//client jar file | //client jar file | ||||
cmd.createArgument().setValue( "-single" ); | |||||
cmd.createArgument().setValue( "-clientjarfile" ); | |||||
cmd.createArgument().setValue( clientjarfile.getAbsolutePath() ); | |||||
cmd.addArgument( "-single" ); | |||||
cmd.addArgument( "-clientjarfile" ); | |||||
cmd.addArgument( clientjarfile.getAbsolutePath() ); | |||||
return cmd; | return cmd; | ||||
} | } | ||||
@@ -137,7 +137,7 @@ public class JJTree extends Task | |||||
{ | { | ||||
String name = (String)iter.nextElement(); | String name = (String)iter.nextElement(); | ||||
Object value = optionalAttrs.get( name ); | Object value = optionalAttrs.get( name ); | ||||
cmdl.createArgument().setValue( "-" + name + ":" + value.toString() ); | |||||
cmdl.addArgument( "-" + name + ":" + value.toString() ); | |||||
} | } | ||||
if( target == null || !target.isFile() ) | if( target == null || !target.isFile() ) | ||||
@@ -156,8 +156,7 @@ public class JJTree extends Task | |||||
} | } | ||||
// convert backslashes to slashes, otherwise jjtree will put this as | // convert backslashes to slashes, otherwise jjtree will put this as | ||||
// comments and this seems to confuse javacc | // comments and this seems to confuse javacc | ||||
cmdl.createArgument().setValue( | |||||
"-OUTPUT_DIRECTORY:" + outputDirectory.getAbsolutePath().replace( '\\', '/' ) ); | |||||
cmdl.addArgument( "-OUTPUT_DIRECTORY:" + outputDirectory.getAbsolutePath().replace( '\\', '/' ) ); | |||||
String targetName = target.getName(); | String targetName = target.getName(); | ||||
final File javaFile = new File( outputDirectory, | final File javaFile = new File( outputDirectory, | ||||
@@ -167,7 +166,7 @@ public class JJTree extends Task | |||||
getLogger().info( "Target is already built - skipping (" + target + ")" ); | getLogger().info( "Target is already built - skipping (" + target + ")" ); | ||||
return; | return; | ||||
} | } | ||||
cmdl.createArgument().setValue( target.getAbsolutePath() ); | |||||
cmdl.addArgument( target.getAbsolutePath() ); | |||||
if( javaccHome == null || !javaccHome.isDirectory() ) | if( javaccHome == null || !javaccHome.isDirectory() ) | ||||
{ | { | ||||
@@ -177,9 +176,8 @@ public class JJTree extends Task | |||||
classpath.addLocation( new File( javaccHome, "JavaCC.zip" ) ); | classpath.addLocation( new File( javaccHome, "JavaCC.zip" ) ); | ||||
classpath.addJavaRuntime(); | classpath.addJavaRuntime(); | ||||
final Argument arg = cmdl.createVmArgument(); | |||||
arg.setValue( "-mx140M" ); | |||||
arg.setValue( "-Dinstall.root=" + javaccHome.getAbsolutePath() ); | |||||
cmdl.addVmArgument( "-mx140M" ); | |||||
cmdl.addVmArgument( "-Dinstall.root=" + javaccHome.getAbsolutePath() ); | |||||
final Execute2 exe = new Execute2(); | final Execute2 exe = new Execute2(); | ||||
setupLogger( exe ); | setupLogger( exe ); | ||||
@@ -193,7 +193,7 @@ public class JavaCC extends Task | |||||
{ | { | ||||
String name = (String)iter.nextElement(); | String name = (String)iter.nextElement(); | ||||
Object value = optionalAttrs.get( name ); | Object value = optionalAttrs.get( name ); | ||||
cmdl.createArgument().setValue( "-" + name + ":" + value.toString() ); | |||||
cmdl.addArgument( "-" + name + ":" + value.toString() ); | |||||
} | } | ||||
// check the target is a file | // check the target is a file | ||||
@@ -211,8 +211,7 @@ public class JavaCC extends Task | |||||
{ | { | ||||
throw new TaskException( "Outputdir not a directory." ); | throw new TaskException( "Outputdir not a directory." ); | ||||
} | } | ||||
cmdl.createArgument().setValue( | |||||
"-OUTPUT_DIRECTORY:" + outputDirectory.getAbsolutePath() ); | |||||
cmdl.addArgument( "-OUTPUT_DIRECTORY:" + outputDirectory.getAbsolutePath() ); | |||||
// determine if the generated java file is up-to-date | // determine if the generated java file is up-to-date | ||||
final File javaFile = getOutputJavaFile( outputDirectory, target ); | final File javaFile = getOutputJavaFile( outputDirectory, target ); | ||||
@@ -221,7 +220,7 @@ public class JavaCC extends Task | |||||
getLogger().debug( "Target is already built - skipping (" + target + ")" ); | getLogger().debug( "Target is already built - skipping (" + target + ")" ); | ||||
return; | return; | ||||
} | } | ||||
cmdl.createArgument().setValue( target.getAbsolutePath() ); | |||||
cmdl.addArgument( target.getAbsolutePath() ); | |||||
if( javaccHome == null || !javaccHome.isDirectory() ) | if( javaccHome == null || !javaccHome.isDirectory() ) | ||||
{ | { | ||||
@@ -231,9 +230,8 @@ public class JavaCC extends Task | |||||
classpath.addLocation( new File( javaccHome, "JavaCC.zip" ) ); | classpath.addLocation( new File( javaccHome, "JavaCC.zip" ) ); | ||||
classpath.addJavaRuntime(); | classpath.addJavaRuntime(); | ||||
final Argument arg = cmdl.createVmArgument(); | |||||
arg.setValue( "-mx140M" ); | |||||
arg.setValue( "-Dinstall.root=" + javaccHome.getAbsolutePath() ); | |||||
cmdl.addVmArgument( "-mx140M" ); | |||||
cmdl.addVmArgument( "-Dinstall.root=" + javaccHome.getAbsolutePath() ); | |||||
runCommand( cmdl.getCommandline() ); | runCommand( cmdl.getCommandline() ); | ||||
} | } | ||||
@@ -137,19 +137,6 @@ public class JDependTask | |||||
return path; | return path; | ||||
} | } | ||||
/** | |||||
* Create a new JVM argument. Ignored if no JVM is forked. | |||||
* | |||||
* @param commandline Description of Parameter | |||||
* @return create a new JVM argument so that any argument can be passed to | |||||
* the JVM. | |||||
* @see #setFork(boolean) | |||||
*/ | |||||
public Argument createJvmarg( final CommandlineJava commandline ) | |||||
{ | |||||
return commandline.createVmArgument(); | |||||
} | |||||
/** | /** | ||||
* Maybe creates a nested classpath element. | * Maybe creates a nested classpath element. | ||||
*/ | */ | ||||
@@ -226,16 +213,16 @@ public class JDependTask | |||||
// hope it will be reviewed by anybody competent | // hope it will be reviewed by anybody competent | ||||
if( m_compileClasspath.toString().length() > 0 ) | if( m_compileClasspath.toString().length() > 0 ) | ||||
{ | { | ||||
createJvmarg( commandline ).setValue( "-classpath" ); | |||||
createJvmarg( commandline ).setValue( m_compileClasspath.toString() ); | |||||
commandline.addVmArgument( "-classpath" ); | |||||
commandline.addVmArgument( m_compileClasspath.toString() ); | |||||
} | } | ||||
if( m_outputFile != null ) | if( m_outputFile != null ) | ||||
{ | { | ||||
// having a space between the file and its path causes commandline to add quotes " | // having a space between the file and its path causes commandline to add quotes " | ||||
// around the argument thus making JDepend not taking it into account. Thus we split it in two | // around the argument thus making JDepend not taking it into account. Thus we split it in two | ||||
commandline.createArgument().setValue( "-file" ); | |||||
commandline.createArgument().setValue( m_outputFile.getPath() ); | |||||
commandline.addArgument( "-file" ); | |||||
commandline.addArgument( m_outputFile.getPath() ); | |||||
// we have to find a cleaner way to put this output | // we have to find a cleaner way to put this output | ||||
} | } | ||||
@@ -247,7 +234,7 @@ public class JDependTask | |||||
// not necessary as JDepend would fail, but why loose some time? | // not necessary as JDepend would fail, but why loose some time? | ||||
if( !f.exists() || !f.isDirectory() ) | if( !f.exists() || !f.isDirectory() ) | ||||
throw new TaskException( "\"" + f.getPath() + "\" does not represent a valid directory. JDepend would fail." ); | throw new TaskException( "\"" + f.getPath() + "\" does not represent a valid directory. JDepend would fail." ); | ||||
commandline.createArgument().setValue( f.getPath() ); | |||||
commandline.addArgument( f.getPath() ); | |||||
} | } | ||||
final Execute2 exe = new Execute2(); | final Execute2 exe = new Execute2(); | ||||
@@ -66,7 +66,7 @@ public abstract class DefaultCompilerAdapter | |||||
while( enum.hasNext() ) | while( enum.hasNext() ) | ||||
{ | { | ||||
String arg = (String)enum.next(); | String arg = (String)enum.next(); | ||||
cmd.createArgument().setValue( arg ); | |||||
cmd.addArgument( arg ); | |||||
niceSourceList.append( " " + arg + StringUtil.LINE_SEPARATOR ); | niceSourceList.append( " " + arg + StringUtil.LINE_SEPARATOR ); | ||||
} | } | ||||
@@ -68,36 +68,36 @@ public class JasperC | |||||
JspC jspc = getJspc(); | JspC jspc = getJspc(); | ||||
if( jspc.getDestdir() != null ) | if( jspc.getDestdir() != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-d" ); | |||||
cmd.createArgument().setFile( jspc.getDestdir() ); | |||||
cmd.addArgument( "-d" ); | |||||
cmd.addArgument( jspc.getDestdir() ); | |||||
} | } | ||||
if( jspc.getPackage() != null ) | if( jspc.getPackage() != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-p" ); | |||||
cmd.createArgument().setValue( jspc.getPackage() ); | |||||
cmd.addArgument( "-p" ); | |||||
cmd.addArgument( jspc.getPackage() ); | |||||
} | } | ||||
if( jspc.getVerbose() != 0 ) | if( jspc.getVerbose() != 0 ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-v" + jspc.getVerbose() ); | |||||
cmd.addArgument( "-v" + jspc.getVerbose() ); | |||||
} | } | ||||
if( jspc.isMapped() ) | if( jspc.isMapped() ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-mapped" ); | |||||
cmd.addArgument( "-mapped" ); | |||||
} | } | ||||
if( jspc.getIeplugin() != null ) | if( jspc.getIeplugin() != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-ieplugin" ); | |||||
cmd.createArgument().setValue( jspc.getIeplugin() ); | |||||
cmd.addArgument( "-ieplugin" ); | |||||
cmd.addArgument( jspc.getIeplugin() ); | |||||
} | } | ||||
if( jspc.getUriroot() != null ) | if( jspc.getUriroot() != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-uriroot" ); | |||||
cmd.createArgument().setValue( jspc.getUriroot().toString() ); | |||||
cmd.addArgument( "-uriroot" ); | |||||
cmd.addArgument( jspc.getUriroot().toString() ); | |||||
} | } | ||||
if( jspc.getUribase() != null ) | if( jspc.getUribase() != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-uribase" ); | |||||
cmd.createArgument().setValue( jspc.getUribase().toString() ); | |||||
cmd.addArgument( "-uribase" ); | |||||
cmd.addArgument( jspc.getUribase().toString() ); | |||||
} | } | ||||
logAndAddFilesToCompile( getJspc(), getJspc().getCompileList(), cmd ); | logAndAddFilesToCompile( getJspc(), getJspc().getCompileList(), cmd ); | ||||
return cmd; | return cmd; | ||||
@@ -265,7 +265,7 @@ public class JUnitTask extends Task | |||||
*/ | */ | ||||
public void setMaxmemory( String max ) | public void setMaxmemory( String max ) | ||||
{ | { | ||||
createJvmarg().setValue( "-Xmx" + max ); | |||||
commandline.addVmArgument( "-Xmx" + max ); | |||||
} | } | ||||
/** | /** | ||||
@@ -361,9 +361,9 @@ public class JUnitTask extends Task | |||||
* the JVM. | * the JVM. | ||||
* @see #setFork(boolean) | * @see #setFork(boolean) | ||||
*/ | */ | ||||
public Argument createJvmarg() | |||||
public void addJvmarg( final Argument argument ) | |||||
{ | { | ||||
return commandline.createVmArgument(); | |||||
commandline.addVmArgument( argument ); | |||||
} | } | ||||
/** | /** | ||||
@@ -596,14 +596,14 @@ public class JUnitTask extends Task | |||||
CommandlineJava cmd = commandline;//(CommandlineJava)commandline.clone(); | CommandlineJava cmd = commandline;//(CommandlineJava)commandline.clone(); | ||||
cmd.setClassname( "org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner" ); | cmd.setClassname( "org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner" ); | ||||
cmd.createArgument().setValue( test.getName() ); | |||||
cmd.createArgument().setValue( "filtertrace=" + test.getFiltertrace() ); | |||||
cmd.createArgument().setValue( "haltOnError=" + test.getHaltonerror() ); | |||||
cmd.createArgument().setValue( "haltOnFailure=" + test.getHaltonfailure() ); | |||||
cmd.addArgument( test.getName() ); | |||||
cmd.addArgument( "filtertrace=" + test.getFiltertrace() ); | |||||
cmd.addArgument( "haltOnError=" + test.getHaltonerror() ); | |||||
cmd.addArgument( "haltOnFailure=" + test.getHaltonfailure() ); | |||||
if( summary ) | if( summary ) | ||||
{ | { | ||||
getLogger().info( "Running " + test.getName() ); | getLogger().info( "Running " + test.getName() ); | ||||
cmd.createArgument().setValue( "formatter=org.apache.tools.ant.taskdefs.optional.junit.SummaryJUnitResultFormatter" ); | |||||
cmd.addArgument( "formatter=org.apache.tools.ant.taskdefs.optional.junit.SummaryJUnitResultFormatter" ); | |||||
} | } | ||||
StringBuffer formatterArg = new StringBuffer( 128 ); | StringBuffer formatterArg = new StringBuffer( 128 ); | ||||
@@ -619,13 +619,13 @@ public class JUnitTask extends Task | |||||
formatterArg.append( "," ); | formatterArg.append( "," ); | ||||
formatterArg.append( outFile ); | formatterArg.append( outFile ); | ||||
} | } | ||||
cmd.createArgument().setValue( formatterArg.toString() ); | |||||
cmd.addArgument( formatterArg.toString() ); | |||||
formatterArg.setLength( 0 ); | formatterArg.setLength( 0 ); | ||||
} | } | ||||
// Create a temporary file to pass the Ant properties to the forked test | // Create a temporary file to pass the Ant properties to the forked test | ||||
File propsFile = new File( "junit" + ( new Random( System.currentTimeMillis() ) ).nextLong() + ".properties" ); | File propsFile = new File( "junit" + ( new Random( System.currentTimeMillis() ) ).nextLong() + ".properties" ); | ||||
cmd.createArgument().setValue( "propsfile=" + propsFile.getAbsolutePath() ); | |||||
cmd.addArgument( "propsfile=" + propsFile.getAbsolutePath() ); | |||||
Hashtable p = getProject().getProperties(); | Hashtable p = getProject().getProperties(); | ||||
Properties props = new Properties(); | Properties props = new Properties(); | ||||
for( Enumeration enum = p.keys(); enum.hasMoreElements(); ) | for( Enumeration enum = p.keys(); enum.hasMoreElements(); ) | ||||
@@ -116,7 +116,7 @@ public abstract class AbstractMetamataTask | |||||
*/ | */ | ||||
public void setMaxmemory( String max ) | public void setMaxmemory( String max ) | ||||
{ | { | ||||
createJvmarg().setValue( "-Xmx" + max ); | |||||
m_cmdl.addVmArgument( "-Xmx" + max ); | |||||
} | } | ||||
/** | /** | ||||
@@ -150,9 +150,9 @@ public abstract class AbstractMetamataTask | |||||
/** | /** | ||||
* Creates a nested jvmarg element. | * Creates a nested jvmarg element. | ||||
*/ | */ | ||||
public Argument createJvmarg() | |||||
public void addJvmarg( final Argument argument ) | |||||
{ | { | ||||
return m_cmdl.createVmArgument(); | |||||
m_cmdl.addVmArgument( argument ); | |||||
} | } | ||||
/** | /** | ||||
@@ -200,8 +200,7 @@ public abstract class AbstractMetamataTask | |||||
classPath.addLocation( jar ); | classPath.addLocation( jar ); | ||||
// set the metamata.home property | // set the metamata.home property | ||||
final Argument vmArgs = m_cmdl.createVmArgument(); | |||||
vmArgs.setValue( "-Dmetamata.home=" + m_metamataHome.getAbsolutePath() ); | |||||
m_cmdl.addVmArgument( "-Dmetamata.home=" + m_metamataHome.getAbsolutePath() ); | |||||
// retrieve all the files we want to scan | // retrieve all the files we want to scan | ||||
m_includedFiles = scanFileSets(); | m_includedFiles = scanFileSets(); | ||||
@@ -98,7 +98,7 @@ public class MParse | |||||
*/ | */ | ||||
public void setMaxmemory( String max ) | public void setMaxmemory( String max ) | ||||
{ | { | ||||
createJvmarg().setValue( "-Xmx" + max ); | |||||
m_cmdl.addVmArgument( "-Xmx" + max ); | |||||
} | } | ||||
/** | /** | ||||
@@ -147,12 +147,10 @@ public class MParse | |||||
/** | /** | ||||
* Creates a nested jvmarg element. | * Creates a nested jvmarg element. | ||||
* | |||||
* @return Description of the Returned Value | |||||
*/ | */ | ||||
public Argument createJvmarg() | |||||
public void addJvmarg( final Argument argument ) | |||||
{ | { | ||||
return m_cmdl.createVmArgument(); | |||||
m_cmdl.addVmArgument( argument ); | |||||
} | } | ||||
/** | /** | ||||
@@ -207,8 +205,7 @@ public class MParse | |||||
} | } | ||||
// set the metamata.home property | // set the metamata.home property | ||||
final Argument vmArgs = m_cmdl.createVmArgument(); | |||||
vmArgs.setValue( "-Dmetamata.home=" + m_metahome.getAbsolutePath() ); | |||||
m_cmdl.addVmArgument( "-Dmetamata.home=" + m_metahome.getAbsolutePath() ); | |||||
// write all the options to a temp file and use it ro run the process | // write all the options to a temp file and use it ro run the process | ||||
String[] options = getOptions(); | String[] options = getOptions(); | ||||
@@ -140,15 +140,15 @@ public abstract class P4Base | |||||
//Check API for these - it's how CVS does it... | //Check API for these - it's how CVS does it... | ||||
if( m_p4Port != null && m_p4Port.length() != 0 ) | if( m_p4Port != null && m_p4Port.length() != 0 ) | ||||
{ | { | ||||
cmd.createArgument().setValue( m_p4Port ); | |||||
cmd.addArgument( m_p4Port ); | |||||
} | } | ||||
if( m_p4User != null && m_p4User.length() != 0 ) | if( m_p4User != null && m_p4User.length() != 0 ) | ||||
{ | { | ||||
cmd.createArgument().setValue( m_p4User ); | |||||
cmd.addArgument( m_p4User ); | |||||
} | } | ||||
if( m_p4Client != null && m_p4Client.length() != 0 ) | if( m_p4Client != null && m_p4Client.length() != 0 ) | ||||
{ | { | ||||
cmd.createArgument().setValue( m_p4Client ); | |||||
cmd.addArgument( m_p4Client ); | |||||
} | } | ||||
cmd.createArgument().setLine( command ); | cmd.createArgument().setLine( command ); | ||||
@@ -216,28 +216,28 @@ public class Pvcs | |||||
if( m_force ) | if( m_force ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-Y" ); | |||||
cmd.addArgument( "-Y" ); | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
cmd.createArgument().setValue( "-N" ); | |||||
cmd.addArgument( "-N" ); | |||||
} | } | ||||
if( null != m_promotiongroup ) | if( null != m_promotiongroup ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-G" + m_promotiongroup ); | |||||
cmd.addArgument( "-G" + m_promotiongroup ); | |||||
} | } | ||||
else if( null != m_label ) | else if( null != m_label ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-r" + m_label ); | |||||
cmd.addArgument( "-r" + m_label ); | |||||
} | } | ||||
if( m_updateOnly ) | if( m_updateOnly ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-U" ); | |||||
cmd.addArgument( "-U" ); | |||||
} | } | ||||
cmd.createArgument().setValue( "@" + filelist.getAbsolutePath() ); | |||||
cmd.addArgument( "@" + filelist.getAbsolutePath() ); | |||||
return cmd; | return cmd; | ||||
} | } | ||||
@@ -319,18 +319,18 @@ public class Pvcs | |||||
final Commandline cmd = new Commandline(); | final Commandline cmd = new Commandline(); | ||||
cmd.setExecutable( getExecutable( PCLI_EXE ) ); | cmd.setExecutable( getExecutable( PCLI_EXE ) ); | ||||
cmd.createArgument().setValue( "lvf" ); | |||||
cmd.createArgument().setValue( "-z" ); | |||||
cmd.createArgument().setValue( "-aw" ); | |||||
cmd.addArgument( "lvf" ); | |||||
cmd.addArgument( "-z" ); | |||||
cmd.addArgument( "-aw" ); | |||||
if( m_workspace != null ) | if( m_workspace != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( "-sp" + m_workspace ); | |||||
cmd.addArgument( "-sp" + m_workspace ); | |||||
} | } | ||||
cmd.createArgument().setValue( "-pr" + m_repository ); | |||||
cmd.addArgument( "-pr" + m_repository ); | |||||
if( m_pvcsProject != null ) | if( m_pvcsProject != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( m_pvcsProject ); | |||||
cmd.addArgument( m_pvcsProject ); | |||||
} | } | ||||
if( !m_pvcsProjects.isEmpty() ) | if( !m_pvcsProjects.isEmpty() ) | ||||
@@ -345,7 +345,7 @@ public class Pvcs | |||||
final String message = "name is a required attribute of pvcsproject"; | final String message = "name is a required attribute of pvcsproject"; | ||||
throw new TaskException( message ); | throw new TaskException( message ); | ||||
} | } | ||||
cmd.createArgument().setValue( name ); | |||||
cmd.addArgument( name ); | |||||
} | } | ||||
} | } | ||||
return cmd; | return cmd; | ||||
@@ -109,9 +109,9 @@ public class CovMerge extends Task | |||||
cmdl.setExecutable( new File( home, "jpcovmerge" ).getAbsolutePath() ); | cmdl.setExecutable( new File( home, "jpcovmerge" ).getAbsolutePath() ); | ||||
if( verbose ) | if( verbose ) | ||||
{ | { | ||||
cmdl.createArgument().setValue( "-v" ); | |||||
cmdl.addArgument( "-v" ); | |||||
} | } | ||||
cmdl.createArgument().setValue( "-jp_paramfile=" + paramfile.getAbsolutePath() ); | |||||
cmdl.addArgument( "-jp_paramfile=" + paramfile.getAbsolutePath() ); | |||||
final Execute2 exe = new Execute2(); | final Execute2 exe = new Execute2(); | ||||
setupLogger( exe ); | setupLogger( exe ); | ||||
@@ -242,7 +242,7 @@ public class CovReport extends Task | |||||
String[] params = getParameters(); | String[] params = getParameters(); | ||||
for( int i = 0; i < params.length; i++ ) | for( int i = 0; i < params.length; i++ ) | ||||
{ | { | ||||
cmdl.createArgument().setValue( params[ i ] ); | |||||
cmdl.addArgument( params[ i ] ); | |||||
} | } | ||||
// use the custom handler for stdin issues | // use the custom handler for stdin issues | ||||
@@ -172,12 +172,10 @@ public class Coverage | |||||
/** | /** | ||||
* the command arguments | * the command arguments | ||||
* | |||||
* @return Description of the Returned Value | |||||
*/ | */ | ||||
public Argument createArg() | |||||
public void addArg( final Argument argument ) | |||||
{ | { | ||||
return cmdlJava.createArgument(); | |||||
cmdlJava.addArgument( argument ); | |||||
} | } | ||||
/** | /** | ||||
@@ -203,9 +201,9 @@ public class Coverage | |||||
* | * | ||||
* @return Description of the Returned Value | * @return Description of the Returned Value | ||||
*/ | */ | ||||
public Argument createJvmarg() | |||||
public void addJvmarg( final Argument argument ) | |||||
{ | { | ||||
return cmdlJava.createVmArgument(); | |||||
cmdlJava.addVmArgument( argument ); | |||||
} | } | ||||
public Socket createSocket() | public Socket createSocket() | ||||
@@ -249,7 +247,7 @@ public class Coverage | |||||
{ | { | ||||
// we need to run Coverage from his directory due to dll/jar issues | // we need to run Coverage from his directory due to dll/jar issues | ||||
cmdl.setExecutable( new File( m_home, "jplauncher" ).getAbsolutePath() ); | cmdl.setExecutable( new File( m_home, "jplauncher" ).getAbsolutePath() ); | ||||
cmdl.createArgument().setValue( "-jp_input=" + paramfile.getAbsolutePath() ); | |||||
cmdl.addArgument( "-jp_input=" + paramfile.getAbsolutePath() ); | |||||
// use the custom handler for stdin issues | // use the custom handler for stdin issues | ||||
final Execute2 exe = new Execute2(); | final Execute2 exe = new Execute2(); | ||||
@@ -187,7 +187,7 @@ public abstract class MSVSS extends Task | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_LOGIN + m_vssLogin ); | |||||
cmd.addArgument( FLAG_LOGIN + m_vssLogin ); | |||||
} | } | ||||
} | } | ||||
@@ -99,20 +99,20 @@ public class MSVSSCHECKIN extends MSVSS | |||||
if( m_AutoResponse == null ) | if( m_AutoResponse == null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_AUTORESPONSE_DEF ); | |||||
cmd.addArgument( FLAG_AUTORESPONSE_DEF ); | |||||
} | } | ||||
else if( m_AutoResponse.equalsIgnoreCase( "Y" ) ) | else if( m_AutoResponse.equalsIgnoreCase( "Y" ) ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_AUTORESPONSE_YES ); | |||||
cmd.addArgument( FLAG_AUTORESPONSE_YES ); | |||||
} | } | ||||
else if( m_AutoResponse.equalsIgnoreCase( "N" ) ) | else if( m_AutoResponse.equalsIgnoreCase( "N" ) ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_AUTORESPONSE_NO ); | |||||
cmd.addArgument( FLAG_AUTORESPONSE_NO ); | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_AUTORESPONSE_DEF ); | |||||
cmd.addArgument( FLAG_AUTORESPONSE_DEF ); | |||||
}// end of else | }// end of else | ||||
} | } | ||||
@@ -157,7 +157,7 @@ public class MSVSSCHECKIN extends MSVSS | |||||
getLogger().info( "Created dir: " + dir.getAbsolutePath() ); | getLogger().info( "Created dir: " + dir.getAbsolutePath() ); | ||||
} | } | ||||
cmd.createArgument().setValue( FLAG_OVERRIDE_WORKING_DIR + m_LocalPath ); | |||||
cmd.addArgument( FLAG_OVERRIDE_WORKING_DIR + m_LocalPath ); | |||||
} | } | ||||
} | } | ||||
@@ -172,7 +172,7 @@ public class MSVSSCHECKIN extends MSVSS | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_RECURSION ); | |||||
cmd.addArgument( FLAG_RECURSION ); | |||||
} | } | ||||
} | } | ||||
@@ -187,7 +187,7 @@ public class MSVSSCHECKIN extends MSVSS | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_WRITABLE ); | |||||
cmd.addArgument( FLAG_WRITABLE ); | |||||
} | } | ||||
} | } | ||||
@@ -218,10 +218,10 @@ public class MSVSSCHECKIN extends MSVSS | |||||
// ss Checkin VSS items [-H] [-C] [-I-] [-N] [-O] [-R] [-W] [-Y] [-?] | // ss Checkin VSS items [-H] [-C] [-I-] [-N] [-O] [-R] [-W] [-Y] [-?] | ||||
// as specified in the SS.EXE help | // as specified in the SS.EXE help | ||||
commandLine.setExecutable( getSSCommand() ); | commandLine.setExecutable( getSSCommand() ); | ||||
commandLine.createArgument().setValue( COMMAND_CHECKIN ); | |||||
commandLine.addArgument( COMMAND_CHECKIN ); | |||||
// VSS items | // VSS items | ||||
commandLine.createArgument().setValue( getVsspath() ); | |||||
commandLine.addArgument( getVsspath() ); | |||||
// -GL | // -GL | ||||
getLocalpathCommand( commandLine ); | getLocalpathCommand( commandLine ); | ||||
// -I- or -I-Y or -I-N | // -I- or -I-Y or -I-N | ||||
@@ -233,7 +233,7 @@ public class MSVSSCHECKIN extends MSVSS | |||||
// -Y | // -Y | ||||
getLoginCommand( commandLine ); | getLoginCommand( commandLine ); | ||||
// -C | // -C | ||||
commandLine.createArgument().setValue( "-C" + getComment() ); | |||||
commandLine.addArgument( "-C" + getComment() ); | |||||
result = run( commandLine ); | result = run( commandLine ); | ||||
if( result != 0 ) | if( result != 0 ) | ||||
@@ -136,20 +136,20 @@ public class MSVSSCHECKOUT extends MSVSS | |||||
if( m_AutoResponse == null ) | if( m_AutoResponse == null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_AUTORESPONSE_DEF ); | |||||
cmd.addArgument( FLAG_AUTORESPONSE_DEF ); | |||||
} | } | ||||
else if( m_AutoResponse.equalsIgnoreCase( "Y" ) ) | else if( m_AutoResponse.equalsIgnoreCase( "Y" ) ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_AUTORESPONSE_YES ); | |||||
cmd.addArgument( FLAG_AUTORESPONSE_YES ); | |||||
} | } | ||||
else if( m_AutoResponse.equalsIgnoreCase( "N" ) ) | else if( m_AutoResponse.equalsIgnoreCase( "N" ) ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_AUTORESPONSE_NO ); | |||||
cmd.addArgument( FLAG_AUTORESPONSE_NO ); | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_AUTORESPONSE_DEF ); | |||||
cmd.addArgument( FLAG_AUTORESPONSE_DEF ); | |||||
}// end of else | }// end of else | ||||
} | } | ||||
@@ -184,7 +184,7 @@ public class MSVSSCHECKOUT extends MSVSS | |||||
getLogger().info( "Created dir: " + dir.getAbsolutePath() ); | getLogger().info( "Created dir: " + dir.getAbsolutePath() ); | ||||
} | } | ||||
cmd.createArgument().setValue( FLAG_OVERRIDE_WORKING_DIR + m_LocalPath ); | |||||
cmd.addArgument( FLAG_OVERRIDE_WORKING_DIR + m_LocalPath ); | |||||
} | } | ||||
} | } | ||||
@@ -199,7 +199,7 @@ public class MSVSSCHECKOUT extends MSVSS | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_RECURSION ); | |||||
cmd.addArgument( FLAG_RECURSION ); | |||||
} | } | ||||
} | } | ||||
@@ -214,15 +214,15 @@ public class MSVSSCHECKOUT extends MSVSS | |||||
if( m_Version != null ) | if( m_Version != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_VERSION + m_Version ); | |||||
cmd.addArgument( FLAG_VERSION + m_Version ); | |||||
} | } | ||||
else if( m_Date != null ) | else if( m_Date != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_VERSION_DATE + m_Date ); | |||||
cmd.addArgument( FLAG_VERSION_DATE + m_Date ); | |||||
} | } | ||||
else if( m_Label != null ) | else if( m_Label != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_VERSION_LABEL + m_Label ); | |||||
cmd.addArgument( FLAG_VERSION_LABEL + m_Label ); | |||||
} | } | ||||
} | } | ||||
@@ -253,10 +253,10 @@ public class MSVSSCHECKOUT extends MSVSS | |||||
// ss Checkout VSS items [-G] [-C] [-H] [-I-] [-N] [-O] [-R] [-V] [-Y] [-?] | // ss Checkout VSS items [-G] [-C] [-H] [-I-] [-N] [-O] [-R] [-V] [-Y] [-?] | ||||
// as specified in the SS.EXE help | // as specified in the SS.EXE help | ||||
commandLine.setExecutable( getSSCommand() ); | commandLine.setExecutable( getSSCommand() ); | ||||
commandLine.createArgument().setValue( COMMAND_CHECKOUT ); | |||||
commandLine.addArgument( COMMAND_CHECKOUT ); | |||||
// VSS items | // VSS items | ||||
commandLine.createArgument().setValue( getVsspath() ); | |||||
commandLine.addArgument( getVsspath() ); | |||||
// -GL | // -GL | ||||
getLocalpathCommand( commandLine ); | getLocalpathCommand( commandLine ); | ||||
// -I- or -I-Y or -I-N | // -I- or -I-Y or -I-N | ||||
@@ -344,20 +344,20 @@ public class MSVSSGET extends MSVSS | |||||
if( m_AutoResponse == null ) | if( m_AutoResponse == null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_AUTORESPONSE_DEF ); | |||||
cmd.addArgument( FLAG_AUTORESPONSE_DEF ); | |||||
} | } | ||||
else if( m_AutoResponse.equalsIgnoreCase( "Y" ) ) | else if( m_AutoResponse.equalsIgnoreCase( "Y" ) ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_AUTORESPONSE_YES ); | |||||
cmd.addArgument( FLAG_AUTORESPONSE_YES ); | |||||
} | } | ||||
else if( m_AutoResponse.equalsIgnoreCase( "N" ) ) | else if( m_AutoResponse.equalsIgnoreCase( "N" ) ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_AUTORESPONSE_NO ); | |||||
cmd.addArgument( FLAG_AUTORESPONSE_NO ); | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_AUTORESPONSE_DEF ); | |||||
cmd.addArgument( FLAG_AUTORESPONSE_DEF ); | |||||
}// end of else | }// end of else | ||||
} | } | ||||
@@ -392,7 +392,7 @@ public class MSVSSGET extends MSVSS | |||||
getLogger().info( "Created dir: " + dir.getAbsolutePath() ); | getLogger().info( "Created dir: " + dir.getAbsolutePath() ); | ||||
} | } | ||||
cmd.createArgument().setValue( FLAG_OVERRIDE_WORKING_DIR + m_LocalPath ); | |||||
cmd.addArgument( FLAG_OVERRIDE_WORKING_DIR + m_LocalPath ); | |||||
} | } | ||||
} | } | ||||
@@ -400,7 +400,7 @@ public class MSVSSGET extends MSVSS | |||||
{ | { | ||||
if( m_Quiet ) | if( m_Quiet ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_QUIET ); | |||||
cmd.addArgument( FLAG_QUIET ); | |||||
} | } | ||||
} | } | ||||
@@ -415,7 +415,7 @@ public class MSVSSGET extends MSVSS | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_RECURSION ); | |||||
cmd.addArgument( FLAG_RECURSION ); | |||||
} | } | ||||
} | } | ||||
@@ -430,15 +430,15 @@ public class MSVSSGET extends MSVSS | |||||
if( m_Version != null ) | if( m_Version != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_VERSION + m_Version ); | |||||
cmd.addArgument( FLAG_VERSION + m_Version ); | |||||
} | } | ||||
else if( m_Date != null ) | else if( m_Date != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_VERSION_DATE + m_Date ); | |||||
cmd.addArgument( FLAG_VERSION_DATE + m_Date ); | |||||
} | } | ||||
else if( m_Label != null ) | else if( m_Label != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_VERSION_LABEL + m_Label ); | |||||
cmd.addArgument( FLAG_VERSION_LABEL + m_Label ); | |||||
} | } | ||||
} | } | ||||
@@ -453,7 +453,7 @@ public class MSVSSGET extends MSVSS | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_WRITABLE ); | |||||
cmd.addArgument( FLAG_WRITABLE ); | |||||
} | } | ||||
} | } | ||||
@@ -484,10 +484,10 @@ public class MSVSSGET extends MSVSS | |||||
// ss Get VSS items [-G] [-H] [-I-] [-N] [-O] [-R] [-V] [-W] [-Y] [-?] | // ss Get VSS items [-G] [-H] [-I-] [-N] [-O] [-R] [-V] [-W] [-Y] [-?] | ||||
// as specified in the SS.EXE help | // as specified in the SS.EXE help | ||||
commandLine.setExecutable( getSSCommand() ); | commandLine.setExecutable( getSSCommand() ); | ||||
commandLine.createArgument().setValue( COMMAND_GET ); | |||||
commandLine.addArgument( COMMAND_GET ); | |||||
// VSS items | // VSS items | ||||
commandLine.createArgument().setValue( getVsspath() ); | |||||
commandLine.addArgument( getVsspath() ); | |||||
// -GL | // -GL | ||||
getLocalpathCommand( commandLine ); | getLocalpathCommand( commandLine ); | ||||
// -I- or -I-Y or -I-N | // -I- or -I-Y or -I-N | ||||
@@ -237,13 +237,13 @@ public class MSVSSHISTORY extends MSVSS | |||||
// ss History elements [-H] [-L] [-N] [-O] [-V] [-Y] [-#] [-?] | // ss History elements [-H] [-L] [-N] [-O] [-V] [-Y] [-#] [-?] | ||||
// as specified in the SS.EXE help | // as specified in the SS.EXE help | ||||
commandLine.setExecutable( getSSCommand() ); | commandLine.setExecutable( getSSCommand() ); | ||||
commandLine.createArgument().setValue( COMMAND_HISTORY ); | |||||
commandLine.addArgument( COMMAND_HISTORY ); | |||||
// VSS items | // VSS items | ||||
commandLine.createArgument().setValue( getVsspath() ); | |||||
commandLine.addArgument( getVsspath() ); | |||||
// -I- | // -I- | ||||
commandLine.createArgument().setValue( "-I-" );// ignore all errors | |||||
commandLine.addArgument( "-I-" );// ignore all errors | |||||
// -V | // -V | ||||
// Label an existing file or project version | // Label an existing file or project version | ||||
@@ -253,13 +253,13 @@ public class MSVSSHISTORY extends MSVSS | |||||
// -R | // -R | ||||
if( m_Recursive ) | if( m_Recursive ) | ||||
{ | { | ||||
commandLine.createArgument().setValue( FLAG_RECURSION ); | |||||
commandLine.addArgument( FLAG_RECURSION ); | |||||
} | } | ||||
// -B / -D / -F- | // -B / -D / -F- | ||||
if( m_Style.length() > 0 ) | if( m_Style.length() > 0 ) | ||||
{ | { | ||||
commandLine.createArgument().setValue( m_Style ); | |||||
commandLine.addArgument( m_Style ); | |||||
} | } | ||||
// -Y | // -Y | ||||
@@ -288,7 +288,7 @@ public class MSVSSHISTORY extends MSVSS | |||||
{ | { | ||||
if( m_OutputFileName != null ) | if( m_OutputFileName != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_OUTPUT + m_OutputFileName ); | |||||
cmd.addArgument( FLAG_OUTPUT + m_OutputFileName ); | |||||
} | } | ||||
} | } | ||||
@@ -303,7 +303,7 @@ public class MSVSSHISTORY extends MSVSS | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_RECURSION ); | |||||
cmd.addArgument( FLAG_RECURSION ); | |||||
} | } | ||||
} | } | ||||
@@ -316,7 +316,7 @@ public class MSVSSHISTORY extends MSVSS | |||||
{ | { | ||||
if( m_User != null ) | if( m_User != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_USER + m_User ); | |||||
cmd.addArgument( FLAG_USER + m_User ); | |||||
} | } | ||||
} | } | ||||
@@ -336,7 +336,7 @@ public class MSVSSHISTORY extends MSVSS | |||||
if( m_FromDate != null && m_ToDate != null ) | if( m_FromDate != null && m_ToDate != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_VERSION_DATE + m_ToDate + VALUE_FROMDATE + m_FromDate ); | |||||
cmd.addArgument( FLAG_VERSION_DATE + m_ToDate + VALUE_FROMDATE + m_FromDate ); | |||||
} | } | ||||
else if( m_ToDate != null && m_NumDays != Integer.MIN_VALUE ) | else if( m_ToDate != null && m_NumDays != Integer.MIN_VALUE ) | ||||
{ | { | ||||
@@ -350,7 +350,7 @@ public class MSVSSHISTORY extends MSVSS | |||||
String msg = "Error parsing date: " + m_ToDate; | String msg = "Error parsing date: " + m_ToDate; | ||||
throw new TaskException( msg ); | throw new TaskException( msg ); | ||||
} | } | ||||
cmd.createArgument().setValue( FLAG_VERSION_DATE + m_ToDate + VALUE_FROMDATE + startDate ); | |||||
cmd.addArgument( FLAG_VERSION_DATE + m_ToDate + VALUE_FROMDATE + startDate ); | |||||
} | } | ||||
else if( m_FromDate != null && m_NumDays != Integer.MIN_VALUE ) | else if( m_FromDate != null && m_NumDays != Integer.MIN_VALUE ) | ||||
{ | { | ||||
@@ -364,17 +364,17 @@ public class MSVSSHISTORY extends MSVSS | |||||
String msg = "Error parsing date: " + m_FromDate; | String msg = "Error parsing date: " + m_FromDate; | ||||
throw new TaskException( msg ); | throw new TaskException( msg ); | ||||
} | } | ||||
cmd.createArgument().setValue( FLAG_VERSION_DATE + endDate + VALUE_FROMDATE + m_FromDate ); | |||||
cmd.addArgument( FLAG_VERSION_DATE + endDate + VALUE_FROMDATE + m_FromDate ); | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
if( m_FromDate != null ) | if( m_FromDate != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_VERSION + VALUE_FROMDATE + m_FromDate ); | |||||
cmd.addArgument( FLAG_VERSION + VALUE_FROMDATE + m_FromDate ); | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_VERSION_DATE + m_ToDate ); | |||||
cmd.addArgument( FLAG_VERSION_DATE + m_ToDate ); | |||||
} | } | ||||
} | } | ||||
} | } | ||||
@@ -395,15 +395,15 @@ public class MSVSSHISTORY extends MSVSS | |||||
if( m_FromLabel != null && m_ToLabel != null ) | if( m_FromLabel != null && m_ToLabel != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_VERSION_LABEL + m_ToLabel + VALUE_FROMLABEL + m_FromLabel ); | |||||
cmd.addArgument( FLAG_VERSION_LABEL + m_ToLabel + VALUE_FROMLABEL + m_FromLabel ); | |||||
} | } | ||||
else if( m_FromLabel != null ) | else if( m_FromLabel != null ) | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_VERSION + VALUE_FROMLABEL + m_FromLabel ); | |||||
cmd.addArgument( FLAG_VERSION + VALUE_FROMLABEL + m_FromLabel ); | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
cmd.createArgument().setValue( FLAG_VERSION_LABEL + m_ToLabel ); | |||||
cmd.addArgument( FLAG_VERSION_LABEL + m_ToLabel ); | |||||
} | } | ||||
} | } | ||||