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 Commandline
commandLine
Commandline to be executed.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 void
execute()
Execute the created command line.protected java.lang.String
getComment()
Get the commentprotected java.lang.String
getFilename()
Get the filename to be acted upon.protected java.lang.String
getLabel()
Get the labelprotected java.lang.String
getLocalPath()
Builds and returns the working directory.protected java.lang.String
getNoCache()
Get the NoCache flag.protected java.lang.String
getNoCompress()
Get the NoCompress flag.protected void
getOptionalAttributes()
Adds the optional attributes to the command line.protected java.lang.String
getPassword()
Get the passwordprotected java.lang.String
getProjectPath()
Get the project pathprotected java.lang.String
getRecursive()
Get the 'recursive' Flag.protected void
getRequiredAttributes()
Sets the executable and add the required attributes to the command line.protected java.lang.String
getSosCommand()
Get the executable to run.protected java.lang.String
getSosHome()
Get the SOS home directory.protected java.lang.String
getSosServerPath()
Get the SOS serve path.protected java.lang.String
getUsername()
Get the usernameprotected java.lang.String
getVerbose()
Get the 'verbose' Flag.protected java.lang.String
getVersion()
Get the versionprotected java.lang.String
getVssServerPath()
Get the VSS server pathprotected int
run(Commandline cmd)
Execute the created command line.protected void
setInternalComment(java.lang.String text)
Set the comment text.protected void
setInternalFilename(java.lang.String file)
Set the file name.protected void
setInternalLabel(java.lang.String text)
Set the label.protected void
setInternalRecursive(boolean recurse)
Set the recursive flag.protected void
setInternalVersion(java.lang.String text)
Set the version.void
setLocalPath(Path path)
Override the working directory and get to the specified path.void
setNoCache(boolean nocache)
Flag to disable the cache when set.void
setNoCompress(boolean nocompress)
Flag to disable compression when set.void
setPassword(java.lang.String password)
The SourceSafe password.void
setProjectPath(java.lang.String projectpath)
The SourceSafe project path.void
setSosCmd(java.lang.String dir)
The directory where soscmd(.exe) is located.void
setSosHome(java.lang.String sosHome)
Path to the SourceOffSite home directory.void
setSosServerPath(java.lang.String sosServerPath)
The address and port of SourceOffSite Server, for example 192.168.0.1:8888.void
setUsername(java.lang.String username)
The SourceSafe username.void
setVerbose(boolean verbose)
Enable verbose output.void
setVssServerPath(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 Details
-
commandLine
Commandline to be executed.
-
-
Constructor Details
-
SOS
public SOS()
-
-
Method Details
-
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
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
Execute the created command line.- Overrides:
execute
in classTask
- Throws:
BuildException
- on error.
-
run
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.
-