Class 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 Detail

      • commandLine

        protected Commandline commandLine
        Commandline to be executed.
    • Constructor Detail

      • SOS

        public SOS()
    • 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.
      • 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.