From 8081af846dc97237183ef82a90d1f59ca296b635 Mon Sep 17 00:00:00 2001 From: Wei Wang Date: Mon, 25 Aug 2014 21:22:22 -0700 Subject: [PATCH] "kpm restore --quiet" hides HTTP requests/cache information --- .../Program.cs | 18 ++++++++++++------ .../Reports.cs | 1 + .../Restore/RestoreCommand.cs | 4 ++-- 3 files changed, 15 insertions(+), 8 deletions(-) diff --git a/src/Microsoft.Framework.PackageManager/Program.cs b/src/Microsoft.Framework.PackageManager/Program.cs index b4c551612..53737e48c 100644 --- a/src/Microsoft.Framework.PackageManager/Program.cs +++ b/src/Microsoft.Framework.PackageManager/Program.cs @@ -62,6 +62,8 @@ public int Main(string[] args) CommandOptionType.SingleValue); var optNoCache = c.Option("--no-cache", "Do not use local cache", CommandOptionType.NoValue); var optPackageFolder = c.Option("--packages", "Path to restore packages", CommandOptionType.SingleValue); + var optQuiet = c.Option("--quiet", "Do not show output such as HTTP request/cache information", + CommandOptionType.NoValue); c.HelpOption("-?|-h|--help"); c.OnExecute(async () => @@ -72,6 +74,10 @@ public int Main(string[] args) Information = this, Verbose = optionVerbose.HasValue() ? (this as IReport) : new NullReport() }; + + // If "--verbose" and "--quiet" are specified together, "--verbose" wins + command.Reports.Quiet = optQuiet.HasValue() ? command.Reports.Verbose : this; + command.RestoreDirectory = argRoot.Value; command.Sources = optSource.Values; command.FallbackSources = optFallbackSource.Values; @@ -356,14 +362,14 @@ private static string GetVersion() var assemblyInformationalVersionAttribute = assembly.GetCustomAttribute(); return assemblyInformationalVersionAttribute.InformationalVersion; } - } - internal class NullReport : IReport - { - public void WriteLine(string message) + private class NullReport : IReport { - // Consume the write operation and do nothing - // Used when verbose option is not specified + public void WriteLine(string message) + { + // Consume the write operation and do nothing + // Used when verbose option is not specified + } } } } diff --git a/src/Microsoft.Framework.PackageManager/Reports.cs b/src/Microsoft.Framework.PackageManager/Reports.cs index 025c97074..3dc24dee7 100644 --- a/src/Microsoft.Framework.PackageManager/Reports.cs +++ b/src/Microsoft.Framework.PackageManager/Reports.cs @@ -7,5 +7,6 @@ public class Reports { public IReport Information { get; set; } public IReport Verbose { get; set; } + public IReport Quiet { get; set; } } } \ No newline at end of file diff --git a/src/Microsoft.Framework.PackageManager/Restore/RestoreCommand.cs b/src/Microsoft.Framework.PackageManager/Restore/RestoreCommand.cs index cc037d016..a58de1ada 100644 --- a/src/Microsoft.Framework.PackageManager/Restore/RestoreCommand.cs +++ b/src/Microsoft.Framework.PackageManager/Restore/RestoreCommand.cs @@ -420,7 +420,7 @@ private void AddRemoteProvidersFromSources(List remoteProviders, new RemoteWalkProvider( new PackageFolder( source.Source, - Reports.Information))); + Reports.Quiet))); } else { @@ -431,7 +431,7 @@ private void AddRemoteProvidersFromSources(List remoteProviders, source.UserName, source.Password, NoCache, - Reports.Information))); + Reports.Quiet))); } } }