Unify loggers into a list.

release-1.0.0
Icedream 2015-01-12 05:21:34 +01:00
parent 7b520b78cd
commit 1611a8e1cd
1 changed files with 16 additions and 14 deletions

View File

@ -312,6 +312,19 @@ namespace CitizenMP.Server.Installer
var pc = new ProjectCollection(); var pc = new ProjectCollection();
pc.RegisterLogger(new ConsoleLogger(LoggerVerbosity.Minimal)); pc.RegisterLogger(new ConsoleLogger(LoggerVerbosity.Minimal));
var loggers = new List<ILogger>();
if (logPath != null)
loggers.Add(new FileLogger
{
Parameters = string.Format("LogFile={0}", logPath),
Verbosity = LoggerVerbosity.Detailed,
ShowSummary = true,
SkipProjectStartedText = true
});
loggers.Add(new ConsoleLogger(LoggerVerbosity.Minimal) { ShowSummary = false, SkipProjectStartedText = true });
// Use a different build route if running on the Mono interpreter
if (!IsWin32())
{ {
// Import Mozilla certs for NuGet to not fail out // Import Mozilla certs for NuGet to not fail out
try try
@ -330,6 +343,8 @@ namespace CitizenMP.Server.Installer
// Build doesn't work with the new API on Mono, use the deprecated api // Build doesn't work with the new API on Mono, use the deprecated api
#pragma warning disable 618 #pragma warning disable 618
foreach (var logger in loggers)
Engine.GlobalEngine.RegisterLogger(logger);
var project = new Project(Engine.GlobalEngine) {BuildEnabled = true}; var project = new Project(Engine.GlobalEngine) {BuildEnabled = true};
project.Load(projectFilePath); project.Load(projectFilePath);
foreach (var property in buildProperties) foreach (var property in buildProperties)
@ -346,20 +361,7 @@ namespace CitizenMP.Server.Installer
var result = BuildManager.DefaultBuildManager.Build( var result = BuildManager.DefaultBuildManager.Build(
new BuildParameters(pc) new BuildParameters(pc)
{ {
Loggers = Loggers = loggers.ToArray(),
new[]
{
logPath != null
? new FileLogger
{
Parameters =
"logfile=" + logPath,
Verbosity = LoggerVerbosity.Detailed,
ShowSummary = true,
SkipProjectStartedText = true
}
: new ConsoleLogger(LoggerVerbosity.Quiet)
},
MaxNodeCount = Environment.ProcessorCount MaxNodeCount = Environment.ProcessorCount
}, buildReq); }, buildReq);