Class SOS
- java.lang.Object
-
- org.apache.tools.ant.ProjectComponent
-
- org.apache.tools.ant.Task
-
- org.apache.tools.ant.taskdefs.optional.sos.SOS
-
- All Implemented Interfaces:
java.lang.Cloneable,SOSCmd
- Direct Known Subclasses:
SOSCheckin,SOSCheckout,SOSGet,SOSLabel
public abstract class SOS extends Task implements SOSCmd
A base class for creating tasks for executing commands on SourceOffSite. These tasks were inspired by the VSS tasks.
-
-
Field Summary
Fields Modifier and Type Field Description protected CommandlinecommandLineCommandline to be executed.-
Fields inherited from class org.apache.tools.ant.ProjectComponent
description, location, project
-
Fields inherited from interface org.apache.tools.ant.taskdefs.optional.sos.SOSCmd
COMMAND_CHECKIN_FILE, COMMAND_CHECKIN_PROJECT, COMMAND_CHECKOUT_FILE, COMMAND_CHECKOUT_PROJECT, COMMAND_GET_FILE, COMMAND_GET_PROJECT, COMMAND_HISTORY, COMMAND_LABEL, COMMAND_SOS_EXE, FLAG_COMMAND, FLAG_COMMENT, FLAG_FILE, FLAG_LABEL, FLAG_NO_CACHE, FLAG_NO_COMPRESSION, FLAG_PASSWORD, FLAG_PROJECT, FLAG_RECURSION, FLAG_SOS_HOME, FLAG_SOS_SERVER, FLAG_USERNAME, FLAG_VERBOSE, FLAG_VERSION, FLAG_VSS_SERVER, FLAG_WORKING_DIR, PROJECT_PREFIX
-
-
Constructor Summary
Constructors Constructor Description SOS()
-
Method Summary
Modifier and Type Method Description voidexecute()Execute the created command line.protected java.lang.StringgetComment()Get the commentprotected java.lang.StringgetFilename()Get the filename to be acted upon.protected java.lang.StringgetLabel()Get the labelprotected java.lang.StringgetLocalPath()Builds and returns the working directory.protected java.lang.StringgetNoCache()Get the NoCache flag.protected java.lang.StringgetNoCompress()Get the NoCompress flag.protected voidgetOptionalAttributes()Adds the optional attributes to the command line.protected java.lang.StringgetPassword()Get the passwordprotected java.lang.StringgetProjectPath()Get the project pathprotected java.lang.StringgetRecursive()Get the 'recursive' Flag.protected voidgetRequiredAttributes()Sets the executable and add the required attributes to the command line.protected java.lang.StringgetSosCommand()Get the executable to run.protected java.lang.StringgetSosHome()Get the SOS home directory.protected java.lang.StringgetSosServerPath()Get the SOS serve path.protected java.lang.StringgetUsername()Get the usernameprotected java.lang.StringgetVerbose()Get the 'verbose' Flag.protected java.lang.StringgetVersion()Get the versionprotected java.lang.StringgetVssServerPath()Get the VSS server pathprotected intrun(Commandline cmd)Execute the created command line.protected voidsetInternalComment(java.lang.String text)Set the comment text.protected voidsetInternalFilename(java.lang.String file)Set the file name.protected voidsetInternalLabel(java.lang.String text)Set the label.protected voidsetInternalRecursive(boolean recurse)Set the recursive flag.protected voidsetInternalVersion(java.lang.String text)Set the version.voidsetLocalPath(Path path)Override the working directory and get to the specified path.voidsetNoCache(boolean nocache)Flag to disable the cache when set.voidsetNoCompress(boolean nocompress)Flag to disable compression when set.voidsetPassword(java.lang.String password)The SourceSafe password.voidsetProjectPath(java.lang.String projectpath)The SourceSafe project path.voidsetSosCmd(java.lang.String dir)The directory where soscmd(.exe) is located.voidsetSosHome(java.lang.String sosHome)Path to the SourceOffSite home directory.voidsetSosServerPath(java.lang.String sosServerPath)The address and port of SourceOffSite Server, for example 192.168.0.1:8888.voidsetUsername(java.lang.String username)The SourceSafe username.voidsetVerbose(boolean verbose)Enable verbose output.voidsetVssServerPath(java.lang.String vssServerPath)The path to the location of the ss.ini file.-
Methods inherited from class org.apache.tools.ant.Task
bindToOwner, getOwningTarget, getRuntimeConfigurableWrapper, getTaskName, getTaskType, getWrapper, handleErrorFlush, handleErrorOutput, handleFlush, handleInput, handleOutput, init, isInvalid, log, log, log, log, maybeConfigure, perform, reconfigure, setOwningTarget, setRuntimeConfigurableWrapper, setTaskName, setTaskType
-
Methods inherited from class org.apache.tools.ant.ProjectComponent
clone, getDescription, getLocation, getProject, setDescription, setLocation, setProject
-
-
-
-
Field Detail
-
commandLine
protected Commandline commandLine
Commandline to be executed.
-
-
Method Detail
-
setNoCache
public final void setNoCache(boolean nocache)
Flag to disable the cache when set. Required if SOSHOME is set as an environment variable. Defaults to false.- Parameters:
nocache- True to disable caching.
-
setNoCompress
public final void setNoCompress(boolean nocompress)
Flag to disable compression when set. Defaults to false.- Parameters:
nocompress- True to disable compression.
-
setSosCmd
public final void setSosCmd(java.lang.String dir)
The directory where soscmd(.exe) is located. soscmd must be on the path if omitted.- Parameters:
dir- The new sosCmd value.
-
setUsername
public final void setUsername(java.lang.String username)
The SourceSafe username.- Parameters:
username- The new username value.
-
setPassword
public final void setPassword(java.lang.String password)
The SourceSafe password.- Parameters:
password- The new password value.
-
setProjectPath
public final void setProjectPath(java.lang.String projectpath)
The SourceSafe project path.- Parameters:
projectpath- The new projectpath value.
-
setVssServerPath
public final void setVssServerPath(java.lang.String vssServerPath)
The path to the location of the ss.ini file.- Parameters:
vssServerPath- The new vssServerPath value.
-
setSosHome
public final void setSosHome(java.lang.String sosHome)
Path to the SourceOffSite home directory.- Parameters:
sosHome- The new sosHome value.
-
setSosServerPath
public final void setSosServerPath(java.lang.String sosServerPath)
The address and port of SourceOffSite Server, for example 192.168.0.1:8888.- Parameters:
sosServerPath- The new sosServerPath value.
-
setLocalPath
public final void setLocalPath(Path path)
Override the working directory and get to the specified path.- Parameters:
path- The new localPath value.
-
setVerbose
public void setVerbose(boolean verbose)
Enable verbose output. Defaults to false.- Parameters:
verbose- True for verbose output.
-
setInternalFilename
protected void setInternalFilename(java.lang.String file)
Set the file name.- Parameters:
file- the filename to use.
-
setInternalRecursive
protected void setInternalRecursive(boolean recurse)
Set the recursive flag.- Parameters:
recurse- if true use the recursive flag on the command line.
-
setInternalComment
protected void setInternalComment(java.lang.String text)
Set the comment text.- Parameters:
text- the comment text to use.
-
setInternalLabel
protected void setInternalLabel(java.lang.String text)
Set the label.- Parameters:
text- the label to use.
-
setInternalVersion
protected void setInternalVersion(java.lang.String text)
Set the version.- Parameters:
text- the version to use.
-
getSosCommand
protected java.lang.String getSosCommand()
Get the executable to run. Add the path if it was specified in the build file- Returns:
- the executable to run.
-
getComment
protected java.lang.String getComment()
Get the comment- Returns:
- if it was set, null if not.
-
getVersion
protected java.lang.String getVersion()
Get the version- Returns:
- if it was set, null if not.
-
getLabel
protected java.lang.String getLabel()
Get the label- Returns:
- if it was set, null if not.
-
getUsername
protected java.lang.String getUsername()
Get the username- Returns:
- if it was set, null if not.
-
getPassword
protected java.lang.String getPassword()
Get the password- Returns:
- empty string if it wasn't set.
-
getProjectPath
protected java.lang.String getProjectPath()
Get the project path- Returns:
- if it was set, null if not.
-
getVssServerPath
protected java.lang.String getVssServerPath()
Get the VSS server path- Returns:
- if it was set, null if not.
-
getSosHome
protected java.lang.String getSosHome()
Get the SOS home directory.- Returns:
- if it was set, null if not.
-
getSosServerPath
protected java.lang.String getSosServerPath()
Get the SOS serve path.- Returns:
- if it was set, null if not.
-
getFilename
protected java.lang.String getFilename()
Get the filename to be acted upon.- Returns:
- if it was set, null if not.
-
getNoCompress
protected java.lang.String getNoCompress()
Get the NoCompress flag.- Returns:
- the 'nocompress' Flag if the attribute was 'true', otherwise an empty string.
-
getNoCache
protected java.lang.String getNoCache()
Get the NoCache flag.- Returns:
- the 'nocache' Flag if the attribute was 'true', otherwise an empty string.
-
getVerbose
protected java.lang.String getVerbose()
Get the 'verbose' Flag.- Returns:
- the 'verbose' Flag if the attribute was 'true', otherwise an empty string.
-
getRecursive
protected java.lang.String getRecursive()
Get the 'recursive' Flag.- Returns:
- the 'recursive' Flag if the attribute was 'true', otherwise an empty string.
-
getLocalPath
protected java.lang.String getLocalPath()
Builds and returns the working directory.The localpath is created if it didn't exist.
- Returns:
- the absolute path of the working directory.
-
execute
public void execute() throws BuildExceptionExecute the created command line.- Overrides:
executein classTask- Throws:
BuildException- on error.
-
run
protected int run(Commandline cmd)
Execute the created command line.- Parameters:
cmd- The command line to run.- Returns:
- int the exit code.
- Throws:
BuildException- if something goes wrong
-
getRequiredAttributes
protected void getRequiredAttributes()
Sets the executable and add the required attributes to the command line.
-
getOptionalAttributes
protected void getOptionalAttributes()
Adds the optional attributes to the command line.
-
-