From 3fb889ab7aa3cb0dfae23e0379e28552e919ad72 Mon Sep 17 00:00:00 2001 From: Rob Mensching Date: Sat, 6 Jun 2020 15:49:09 -0700 Subject: Integrate change to TryParseCommand and other code cleanup --- .../CommandLine/CommandLineArguments.cs | 53 ++++++++++------------ 1 file changed, 24 insertions(+), 29 deletions(-) (limited to 'src/WixToolset.Core/CommandLine/CommandLineArguments.cs') diff --git a/src/WixToolset.Core/CommandLine/CommandLineArguments.cs b/src/WixToolset.Core/CommandLine/CommandLineArguments.cs index 3f412611..456e19d7 100644 --- a/src/WixToolset.Core/CommandLine/CommandLineArguments.cs +++ b/src/WixToolset.Core/CommandLine/CommandLineArguments.cs @@ -12,6 +12,11 @@ namespace WixToolset.Core.CommandLine internal class CommandLineArguments : ICommandLineArguments { + public CommandLineArguments(IWixToolsetServiceProvider serviceProvider) + { + this.Messaging = serviceProvider.GetService(); + } + public string[] OriginalArguments { get; set; } public string[] Arguments { get; set; } @@ -20,12 +25,7 @@ namespace WixToolset.Core.CommandLine public string ErrorArgument { get; set; } - private IWixToolsetServiceProvider ServiceProvider { get; } - - public CommandLineArguments(IWixToolsetServiceProvider serviceProvider) - { - this.ServiceProvider = serviceProvider; - } + private IMessaging Messaging { get; } public void Populate(string commandLine) { @@ -41,27 +41,25 @@ namespace WixToolset.Core.CommandLine this.ProcessArgumentsAndParseExtensions(this.OriginalArguments); } - public ICommandLineParser Parse() - { - var messaging = this.ServiceProvider.GetService(); - - return new CommandLineParser(messaging, this.Arguments, this.ErrorArgument); - } + public ICommandLineParser Parse() => new CommandLineParser(this.Messaging, this.Arguments, this.ErrorArgument); private void FlattenArgumentsWithResponseFilesIntoOriginalArguments(string[] commandLineArguments) { - List args = new List(); + var args = new List(); foreach (var arg in commandLineArguments) { - if ('@' == arg[0]) + if (arg != null) { - var responseFileArguments = CommandLineArguments.ParseResponseFile(arg.Substring(1)); - args.AddRange(responseFileArguments); - } - else - { - args.Add(arg); + if ('@' == arg[0]) + { + var responseFileArguments = CommandLineArguments.ParseResponseFile(arg.Substring(1)); + args.AddRange(responseFileArguments); + } + else + { + args.Add(arg); + } } } @@ -103,7 +101,7 @@ namespace WixToolset.Core.CommandLine { string arguments; - using (StreamReader reader = new StreamReader(responseFile)) + using (var reader = new StreamReader(responseFile)) { arguments = reader.ReadToEnd(); } @@ -131,7 +129,7 @@ namespace WixToolset.Core.CommandLine // The current argument string being built; when completed it will be added to the list. var arg = new StringBuilder(); - for (int i = 0; i <= arguments.Length; i++) + for (var i = 0; i <= arguments.Length; i++) { if (i == arguments.Length || (Char.IsWhiteSpace(arguments[i]) && !insideQuote)) { @@ -182,10 +180,10 @@ namespace WixToolset.Core.CommandLine var id = Environment.GetEnvironmentVariables(); var regex = new Regex("(?<=\\%)(?:[\\w\\.]+)(?=\\%)"); - MatchCollection matches = regex.Matches(arguments); + var matches = regex.Matches(arguments); - string value = String.Empty; - for (int i = 0; i <= (matches.Count - 1); i++) + var value = String.Empty; + for (var i = 0; i <= (matches.Count - 1); i++) { try { @@ -204,9 +202,6 @@ namespace WixToolset.Core.CommandLine return arguments; } - private static bool IsSwitchAt(string[] args, int index) - { - return args.Length > index && !String.IsNullOrEmpty(args[index]) && ('/' == args[index][0] || '-' == args[index][0]); - } + private static bool IsSwitchAt(string[] args, int index) => args.Length > index && !String.IsNullOrEmpty(args[index]) && ('/' == args[index][0] || '-' == args[index][0]); } } -- cgit v1.2.3-55-g6feb