Class MSVSS
java.lang.Object
org.apache.tools.ant.ProjectComponent
org.apache.tools.ant.Task
org.apache.tools.ant.taskdefs.optional.vss.MSVSS
- All Implemented Interfaces:
Cloneable
,MSVSSConstants
- Direct Known Subclasses:
MSVSSADD
,MSVSSCHECKIN
,MSVSSCHECKOUT
,MSVSSCP
,MSVSSCREATE
,MSVSSGET
,MSVSSHISTORY
,MSVSSLABEL
A base class for creating tasks for executing commands on Visual SourceSafe.
The class extends the 'exec' task as it operates by executing the ss.exe program supplied with SourceSafe. By default the task expects ss.exe to be in the path, you can override this be specifying the ssdir attribute.
This class provides set and get methods for 'login' and 'vsspath' attributes. It also contains constants for the flags that can be passed to SS.
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic class
Extension of EnumeratedAttribute to hold the values for file time stamp.static class
Extension of EnumeratedAttribute to hold the values for writable filess. -
Field Summary
Fields inherited from class org.apache.tools.ant.ProjectComponent
description, location, project
Fields inherited from interface org.apache.tools.ant.taskdefs.optional.vss.MSVSSConstants
COMMAND_ADD, COMMAND_CHECKIN, COMMAND_CHECKOUT, COMMAND_CP, COMMAND_CREATE, COMMAND_GET, COMMAND_HISTORY, COMMAND_LABEL, FLAG_AUTORESPONSE_DEF, FLAG_AUTORESPONSE_NO, FLAG_AUTORESPONSE_YES, FLAG_BRIEF, FLAG_CODEDIFF, FLAG_COMMENT, FLAG_FILETIME_DEF, FLAG_FILETIME_MODIFIED, FLAG_FILETIME_UPDATED, FLAG_LABEL, FLAG_LOGIN, FLAG_NO_FILE, FLAG_NO_GET, FLAG_OUTPUT, FLAG_OVERRIDE_WORKING_DIR, FLAG_QUIET, FLAG_RECURSION, FLAG_REPLACE_WRITABLE, FLAG_SKIP_WRITABLE, FLAG_USER, FLAG_VERSION, FLAG_VERSION_DATE, FLAG_VERSION_LABEL, FLAG_WRITABLE, PROJECT_PREFIX, SS_EXE, STYLE_BRIEF, STYLE_CODEDIFF, STYLE_DEFAULT, STYLE_NOFILE, TIME_CURRENT, TIME_MODIFIED, TIME_UPDATED, VALUE_FROMDATE, VALUE_FROMLABEL, VALUE_NO, VALUE_YES, WRITABLE_FAIL, WRITABLE_REPLACE, WRITABLE_SKIP
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
execute()
Executes the task.protected String
Gets the auto response string.protected String
Gets the comment string.Gets the value set for the FileTimeStamp.protected String
Builds and returns the -G- flag if required.protected String
getLabel()
Gets the label string.protected String
Gets the localpath string.protected String
getLogin()
Gets the login string.protected String
Gets the output file string.protected String
getQuiet()
Gets the quiet string.protected String
Gets the recursive string.protected String
Gets the sscommand string.protected String
getStyle()
Gets the style string.protected String
getUser()
Gets the user string.protected String
Gets the version string.protected String
Gets the Version date string.protected String
Gets the version string.protected String
Gets the version string.protected String
Gets the vssserverpath string.protected String
Gets the writable string.Gets the value to determine the behaviour when encountering writable files.final void
setFailOnError
(boolean failOnError) Indicates if the build should fail if the Sourcesafe command does.protected void
setInternalAutoResponse
(String autoResponse) Set the auto response attribute.protected void
setInternalComment
(String comment) Set the internal comment attribute.protected void
setInternalDate
(String date) Set the date attribute.protected void
setInternalDateFormat
(DateFormat dateFormat) Set the date format attribute.protected void
setInternalFailOnError
(boolean failOnError) Set the failOnError attribute.protected void
setInternalFileTimeStamp
(MSVSS.CurrentModUpdated timestamp) Set the timestamp attribute.protected void
setInternalFromDate
(String fromDate) Set the from date attribute.protected void
setInternalFromLabel
(String fromLabel) Set the from label attribute.protected void
setInternalGetLocalCopy
(boolean getLocalCopy) Set the getLocalCopy attribute.protected void
setInternalLabel
(String label) Set the label attribute.protected void
setInternalLocalPath
(String localPath) Set the local path comment attribute.protected void
setInternalNumDays
(int numDays) Set the num days attribute.protected void
setInternalOutputFilename
(String outputFileName) Set the outputFileName comment attribute.protected void
setInternalQuiet
(boolean quiet) Set the quiet attribute.protected void
setInternalRecursive
(boolean recursive) Set the recursive attribute.protected void
setInternalStyle
(String style) Set the style attribute.protected void
setInternalToDate
(String toDate) Set the to date attribute.protected void
setInternalToLabel
(String toLabel) Set the to label attribute.protected void
setInternalUser
(String user) Set the user attribute.protected void
setInternalVersion
(String version) Set the version attribute.protected void
setInternalWritable
(boolean writable) Set the writable attribute.protected void
setInternalWritableFiles
(MSVSS.WritableFiles writableFiles) Set the writableFiles attribute.final void
Login to use when accessing VSS, formatted as "username,password".final void
setServerpath
(String serverPath) Directory wheresrssafe.ini
resides.final void
Directory wheress.exe
resides.final void
setVsspath
(String vssPath) SourceSafe path which specifies the project/file(s) you wish to perform the action on.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
-
Constructor Details
-
MSVSS
public MSVSS()
-
-
Method Details
-
setSsdir
Directory wheress.exe
resides. By default the task expects it to be in the PATH.- Parameters:
dir
- The directory containing ss.exe.
-
setLogin
Login to use when accessing VSS, formatted as "username,password".You can omit the password if your database is not password protected. If you have a password and omit it, Ant will hang.
- Parameters:
vssLogin
- The login string to use.
-
setVsspath
SourceSafe path which specifies the project/file(s) you wish to perform the action on.A prefix of 'vss://' will be removed if specified.
- Parameters:
vssPath
- The VSS project path.
-
setServerpath
Directory wheresrssafe.ini
resides.- Parameters:
serverPath
- The path to the VSS server.
-
setFailOnError
public final void setFailOnError(boolean failOnError) Indicates if the build should fail if the Sourcesafe command does. Defaults to true.- Parameters:
failOnError
- True if task should fail on any error.
-
execute
Executes the task.Builds a command line to execute ss.exe and then calls Exec's run method to execute the command line.
- Overrides:
execute
in classTask
- Throws:
BuildException
- if the command cannot execute.
-
setInternalComment
Set the internal comment attribute.- Parameters:
comment
- the value to use.
-
setInternalAutoResponse
Set the auto response attribute.- Parameters:
autoResponse
- the value to use.
-
setInternalDate
Set the date attribute.- Parameters:
date
- the value to use.
-
setInternalDateFormat
Set the date format attribute.- Parameters:
dateFormat
- the value to use.
-
setInternalFailOnError
protected void setInternalFailOnError(boolean failOnError) Set the failOnError attribute.- Parameters:
failOnError
- the value to use.
-
setInternalFromDate
Set the from date attribute.- Parameters:
fromDate
- the value to use.
-
setInternalFromLabel
Set the from label attribute.- Parameters:
fromLabel
- the value to use.
-
setInternalLabel
Set the label attribute.- Parameters:
label
- the value to use.
-
setInternalLocalPath
Set the local path comment attribute.- Parameters:
localPath
- the value to use.
-
setInternalNumDays
protected void setInternalNumDays(int numDays) Set the num days attribute.- Parameters:
numDays
- the value to use.
-
setInternalOutputFilename
Set the outputFileName comment attribute.- Parameters:
outputFileName
- the value to use.
-
setInternalQuiet
protected void setInternalQuiet(boolean quiet) Set the quiet attribute.- Parameters:
quiet
- the value to use.
-
setInternalRecursive
protected void setInternalRecursive(boolean recursive) Set the recursive attribute.- Parameters:
recursive
- the value to use.
-
setInternalStyle
Set the style attribute.- Parameters:
style
- the value to use.
-
setInternalToDate
Set the to date attribute.- Parameters:
toDate
- the value to use.
-
setInternalToLabel
Set the to label attribute.- Parameters:
toLabel
- the value to use.
-
setInternalUser
Set the user attribute.- Parameters:
user
- the value to use.
-
setInternalVersion
Set the version attribute.- Parameters:
version
- the value to use.
-
setInternalWritable
protected void setInternalWritable(boolean writable) Set the writable attribute.- Parameters:
writable
- the value to use.
-
setInternalFileTimeStamp
Set the timestamp attribute.- Parameters:
timestamp
- the value to use.
-
setInternalWritableFiles
Set the writableFiles attribute.- Parameters:
writableFiles
- the value to use.
-
setInternalGetLocalCopy
protected void setInternalGetLocalCopy(boolean getLocalCopy) Set the getLocalCopy attribute.- Parameters:
getLocalCopy
- the value to use.
-
getSSCommand
Gets the sscommand string. "ss" or "c:\path\to\ss"- Returns:
- The path to ss.exe or just ss if sscommand is not set.
-
getVsspath
Gets the vssserverpath string.- Returns:
- null if vssserverpath is not set.
-
getQuiet
Gets the quiet string. -O-- Returns:
- An empty string if quiet is not set or is false.
-
getRecursive
Gets the recursive string. "-R"- Returns:
- An empty string if recursive is not set or is false.
-
getWritable
Gets the writable string. "-W"- Returns:
- An empty string if writable is not set or is false.
-
getLabel
Gets the label string. "-Lbuild1" Max label length is 32 chars- Returns:
- An empty string if label is not set.
-
getStyle
Gets the style string. "-Lbuild1"- Returns:
- An empty string if label is not set.
-
getVersionDateLabel
Gets the version string. Returns the first specified of version "-V1.0", date "-Vd01.01.01", label "-Vlbuild1".- Returns:
- An empty string if a version, date and label are not set.
-
getVersion
Gets the version string.- Returns:
- An empty string if a version is not set.
-
getLocalpath
Gets the localpath string. "-GLc:\source"The localpath is created if it didn't exist.
- Returns:
- An empty string if localpath is not set.
-
getComment
Gets the comment string. "-Ccomment text"- Returns:
- A comment of "-" if comment is not set.
-
getAutoresponse
Gets the auto response string. This can be Y "-I-Y" or N "-I-N".- Returns:
- The default value "-I-" if autoresponse is not set.
-
getLogin
Gets the login string. This can be user and password, "-Yuser,password" or just user "-Yuser".- Returns:
- An empty string if login is not set.
-
getOutput
Gets the output file string. "-Ooutput.file"- Returns:
- An empty string if user is not set.
-
getUser
Gets the user string. "-Uusername"- Returns:
- An empty string if user is not set.
-
getVersionLabel
Gets the version string. This can be to-from "-VLbuild2~Lbuild1", from "~Lbuild1" or to "-VLbuild2".- Returns:
- An empty string if neither tolabel or fromlabel are set.
-
getVersionDate
Gets the Version date string.- Returns:
- An empty string if neither Todate or from date are set.
- Throws:
BuildException
- if there is an error.
-
getGetLocalCopy
Builds and returns the -G- flag if required.- Returns:
- An empty string if get local copy is true.
-
getFileTimeStamp
Gets the value set for the FileTimeStamp. if it equals "current" then we return -GTC if it equals "modified" then we return -GTM if it equals "updated" then we return -GTU otherwise we return -GTC- Returns:
- The default file time flag, if not set.
-
getWritableFiles
Gets the value to determine the behaviour when encountering writable files.- Returns:
- An empty String, if not set.
-