From 9f630cce71ea983c1837f3ab5952d680f6a9e847 Mon Sep 17 00:00:00 2001 From: "Joel W. Reed" Date: Fri, 13 Jul 2007 10:05:51 -0400 Subject: [PATCH] options cleanup --- tools/tf/Command.cs | 10 ++++++---- tools/tf/Driver.cs | 25 +++++++++++++++++++------ tools/tf/WorkfoldCommand.cs | 2 +- tools/tf/WorkspacesCommand.cs | 2 +- 4 files changed, 27 insertions(+), 12 deletions(-) diff --git a/tools/tf/Command.cs b/tools/tf/Command.cs index 1ac7b3a..1207c3a 100644 --- a/tools/tf/Command.cs +++ b/tools/tf/Command.cs @@ -40,6 +40,7 @@ abstract class Command private string[] arguments; private CommandOptions options = new CommandOptions(); private VersionControlServer vcs; + protected Driver driver; public string[] Arguments { @@ -67,6 +68,7 @@ abstract class Command public Command(Driver driver) { + this.driver = driver; this.vcs = driver.VersionControlServer; options.ProcessArgs(driver.Arguments); this.arguments = Options.RemainingArguments; @@ -91,7 +93,7 @@ abstract class Command Environment.Exit(1); } - return VersionControlServer.GetWorkspace(name, Options.Username); + return VersionControlServer.GetWorkspace(name, driver.Username); } public Workspace GetWorkspaceFromCache() @@ -105,7 +107,7 @@ abstract class Command WorkspaceInfo info = Workstation.Current.GetLocalWorkspaceInfo(path); if (info == null && (!String.IsNullOrEmpty(Options.Workspace))) { - string ownerName = String.Format("{0}\\{1}", Options.Domain, Options.Username).ToUpper(); + string ownerName = String.Format("{0}\\{1}", driver.Domain, driver.Username).ToUpper(); info = Workstation.Current.GetLocalWorkspaceInfo(vcs, Options.Workspace, ownerName); } @@ -128,7 +130,7 @@ abstract class Command { get { if (!String.IsNullOrEmpty(Options.Version)) - return VersionSpec.ParseSingleSpec(Options.Version, Options.Username); + return VersionSpec.ParseSingleSpec(Options.Version, driver.Username); return VersionSpec.Latest; } } @@ -160,7 +162,7 @@ abstract class Command public string Owner { get { - if (String.IsNullOrEmpty(Options.Owner)) return Options.Username; + if (String.IsNullOrEmpty(Options.Owner)) return driver.Username; if (Options.Owner == "*") return null; return Options.Owner; } diff --git a/tools/tf/Driver.cs b/tools/tf/Driver.cs index 976d325..651c9bd 100644 --- a/tools/tf/Driver.cs +++ b/tools/tf/Driver.cs @@ -58,6 +58,19 @@ partial class Driver : ICertificatePolicy private string[] Commands; public string[] Arguments; + private string domain; + private string username; + + public string Domain + { + get { return domain; } + } + + public string Username + { + get { return username; } + } + public Driver(string[] args) { Arguments = args; @@ -100,14 +113,14 @@ partial class Driver : ICertificatePolicy } int slash = userinfo.IndexOf('\\'); - if (-1 == slash) Options.Username = userinfo; + if (-1 == slash) username = userinfo; else { - Options.Domain = userinfo.Substring(0, slash); - Options.Username = userinfo.Substring(slash+1); + domain = userinfo.Substring(0, slash); + username = userinfo.Substring(slash+1); } - _tfs = new TeamFoundationServer(server, new NetworkCredential(Options.Username, pwd, Options.Domain)); + _tfs = new TeamFoundationServer(server, new NetworkCredential(username, pwd, domain)); _versionControl = (VersionControlServer) _tfs.GetService(typeof(VersionControlServer)); _versionControl.Conflict += ConflictEventHandler; @@ -116,7 +129,7 @@ partial class Driver : ICertificatePolicy // save credentials if passed bool saveSetting = Settings.Current.GetAsBool("Credentials.Save"); if (saveSetting && !String.IsNullOrEmpty(Options.Login)) - TfsKeyring.SetCredentials(server, Options.Domain, Options.Username, pwd); + TfsKeyring.SetCredentials(server, Domain, Username, pwd); return _versionControl; } @@ -260,7 +273,7 @@ partial class Driver : ICertificatePolicy catch (TeamFoundationServerException e) { Console.Error.WriteLine(e.Message); - // Console.WriteLine(options.Domain + "\\" + options.Username); + // Console.WriteLine(Domain + "\\" + Username); } } } diff --git a/tools/tf/WorkfoldCommand.cs b/tools/tf/WorkfoldCommand.cs index b74a541..e1af5a9 100644 --- a/tools/tf/WorkfoldCommand.cs +++ b/tools/tf/WorkfoldCommand.cs @@ -44,7 +44,7 @@ class WorkfoldCommand : Command { Console.WriteLine("=".PadRight(WindowWidth, '=')); Console.WriteLine("Workspace: " + workspace.Name); - Console.WriteLine("Server : " + Options.Server); + Console.WriteLine("Server : " + driver.GetServerUrl()); foreach (WorkingFolder folder in workspace.Folders) { diff --git a/tools/tf/WorkspacesCommand.cs b/tools/tf/WorkspacesCommand.cs index 2fad776..bf24884 100644 --- a/tools/tf/WorkspacesCommand.cs +++ b/tools/tf/WorkspacesCommand.cs @@ -115,7 +115,7 @@ class WorkspacesCommand : Command Console.WriteLine("Owner : " + workspace.OwnerName); Console.WriteLine("Computer : " + workspace.Computer); Console.WriteLine("Comment : " + workspace.Comment); - Console.WriteLine("Server : " + Options.Server); + Console.WriteLine("Server : " + driver.GetServerUrl()); Console.WriteLine(); Console.WriteLine("Working folders:"); -- 2.11.4.GIT