Package org.apache.tools.ant.taskdefs.optional.sos

# 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 class org.apache.tools.ant.Task

`target, taskName, taskType, wrapper`

### 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
--- | --- | ---
`void` | `execute()` | Execute the created command line.
`protected java.lang.String` | `getComment()` | Get the comment
`protected java.lang.String` | `getFilename()` | Get the filename to be acted upon.
`protected java.lang.String` | `getLabel()` | Get the label
`protected 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 password
`protected java.lang.String` | `getProjectPath()` | Get the project path
`protected 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 username
`protected java.lang.String` | `getVerbose()` | Get the 'verbose' Flag.
`protected java.lang.String` | `getVersion()` | Get the version
`protected java.lang.String` | `getVssServerPath()` | Get the VSS server path
`protected 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`

### Methods inherited from class java.lang.Object

`equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Field Details

### commandLine

protected Commandline 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

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 BuildException
Execute the created command line.

Overrides:
  `execute` in class `Task`
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.