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

## Class SOSGet

- java.lang.Object
- - org.apache.tools.ant.ProjectComponent
  - - org.apache.tools.ant.Task
    - - org.apache.tools.ant.taskdefs.optional.sos.SOS
      - - org.apache.tools.ant.taskdefs.optional.sos.SOSGet

- All Implemented Interfaces:
    java.lang.Cloneable, SOSCmd

      public class SOSGet
      extends SOS

  Retrieves a read-only copy of the specified project or file from Visual SourceSafe via a SourceOffSite server.

- - ### Field Summary

    - ### Fields inherited from class org.apache.tools.ant.taskdefs.optional.sos.SOS

      `commandLine`

    - ### 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 and Description
    `SOSGet()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected Commandline` | `buildCmdLine()` Build the command line
    `void` | `setFile(java.lang.String filename)` The Filename to act upon.
    `void` | `setLabel(java.lang.String label)` The labeled version to operate on in SourceSafe.
    `void` | `setRecursive(boolean recursive)` Flag to recursively apply the action.
    `void` | `setVersion(java.lang.String version)` Set the version number to get - only works with SOSGet on a file.

    - ### Methods inherited from class org.apache.tools.ant.taskdefs.optional.sos.SOS

      `execute, getComment, getFilename, getLabel, getLocalPath, getNoCache, getNoCompress, getOptionalAttributes, getPassword, getProjectPath, getRecursive, getRequiredAttributes, getSosCommand, getSosHome, getSosServerPath, getUsername, getVerbose, getVersion, getVssServerPath, run, setInternalComment, setInternalFilename, setInternalLabel, setInternalRecursive, setInternalVersion, setLocalPath, setNoCache, setNoCompress, setPassword, setProjectPath, setSosCmd, setSosHome, setSosServerPath, setUsername, setVerbose, setVssServerPath`

    - ### 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`

- - ### Constructor Detail

    - #### SOSGet

          public SOSGet()

  - ### Method Detail

    - #### setFile

          public final void setFile(java.lang.String filename)

      The Filename to act upon. If no file is specified then the tasks act upon the project.
      Parameters:
        `filename` - The new file value

    - #### setRecursive

          public void setRecursive(boolean recursive)

      Flag to recursively apply the action. Defaults to false
      Parameters:
        `recursive` - True for recursive operation.

    - #### setVersion

          public void setVersion(java.lang.String version)

      Set the version number to get - only works with SOSGet on a file.
      Parameters:
        `version` - The new version value

    - #### setLabel

          public void setLabel(java.lang.String label)

      The labeled version to operate on in SourceSafe.
      Parameters:
        `label` - The new label value

    - #### buildCmdLine

          protected Commandline buildCmdLine()

      Build the command line

      GetFile required parameters: -server -name -password -database -project -file
      GetFile optional parameters: -workdir -revision -verbose -nocache -nocompression -soshome
      GetProject required parameters: -server -name -password -database -project
      GetProject optional parameters: -label -workdir -recursive -verbose -nocache -nocompression -soshome

      Returns:
        Commandline the generated command to be executed