TreeBasedTask Class

Summary

Base for tree based star team tasks.
graph BT Type-->Base0["StarTeamTask"] click Base0 "/api/NAnt.Contrib.Tasks.StarTeam/StarTeamTask" Base0-->Base1["Core.Task"] Type["TreeBasedTask"] class Type type-node Derived0["StarTeamCheckin"]-->Type click Derived0 "/api/NAnt.Contrib.Tasks.StarTeam/StarTeamCheckin" Derived1["StarTeamList"]-->Type click Derived1 "/api/NAnt.Contrib.Tasks.StarTeam/StarTeamList" Derived2["StarTeamCheckout"]-->Type click Derived2 "/api/NAnt.Contrib.Tasks.StarTeam/StarTeamCheckout"

Syntax

public abstract class TreeBasedTask : StarTeamTask

Remarks

Abstracts tree-walking behavior common to many subtasks.

This class provides tree iteration functionality. Derived classes will implement their specific task functionally using the visitor pattern, specifically by implementing the method NAnt.Contrib.Tasks.StarTeam.TreeBasedTask.visit(StarTeam.StFolder,System.IO.FileInfo)

This class ported from the Ant task http://jakarta.apache.org/ant/manual/OptionalTasks/starteam.html

You need to have the StarTeam SDK installed for StarTeam tasks to function correctly.

Fields

Properties

Name Value Summary
Excludes string
Accepts comma de-limited list of expressions to exclude from tree operations. If nothing is specified. NO filespecs are excluded.
Forced bool
Default : false - force check in/out actions regardless of the status that StarTeam is maintaining for the file.
Includes string
Accepts comma de-limited list of expressions to include in tree operations. If nothing is set ALL filespecs are included.
Label string
Label used for checkout. If no label is set latest state of repository is checked out.
password string
The password used for login.
Inherited from StarTeamTask
projectname string
The name of the StarTeam project to be acted on
Inherited from StarTeamTask
recursive bool
Default : true - should tasks recurse through tree.
RootLocalFolder string
Root Local folder where files are to be checkout/in or manipulated. Defaults to the StarTeam default folder.
rootstarteamfolder string
Root StarTeam folder to begin operations on. Defaults to the root of the view.
servername string
Name of StarTeamServer.
Inherited from StarTeamTask
serverport string
Port number of the StarTeam connection.
Inherited from StarTeamTask
url string
One stop to set all parameters needed to connect to a StarTeam server.
Inherited from StarTeamTask
username string
The StarTeam user name used for login.
Inherited from StarTeamTask
viewname string
The name of the StarTeam view to be acted on.
Inherited from StarTeamTask

Methods

Name Value Summary
delistLocalFile(Hashtable, FileInfo) void
Removes file being worked with from the NAnt.Contrib.Tasks.StarTeam.TreeBasedTask.listLocalFiles(System.IO.FileInfo) generated hashtable.
ExecuteTask() void
Does the work of opening the supplied Starteam view and calling the NAnt.Contrib.Tasks.StarTeam.TreeBasedTask.visit(StarTeam.StFolder,System.IO.FileInfo) method setting the pattern in motion to perform the task.
getLabelID(StView) IStLabel
Helper method calls on the StarTeam API to retrieve an ID number for the specified view, corresponding to this.label.
IsIncluded(string) bool
Evaluates defined NAnt.Contrib.Tasks.StarTeam.TreeBasedTask.Includes and NAnt.Contrib.Tasks.StarTeam.TreeBasedTask.Excludes patterns against a filename.
listLocalFiles(FileInfo) Hashtable
Gets the collection of the local file names in the supplied directory. We need to check this collection against what we find in Starteam to understand what we need to do in order to synch with the repository.
static
populatePatterns(StringCollection, StringCollection) void
Convert path patterns to regularexpression patterns. Stored in the given string collection.
testPreconditions() void
Derived classes must override this method to define tests for any preconditons required by the task. This method is called at the beginning of the ExecuteTask method.
visit(StFolder, FileInfo) void
Derived classes must override this class to define actual processing to be performed on each folder in the tree defined for the task