TeamCity.MSBuild.Logger/TeamCityMSBuildLogger.cs (27 lines of code) (raw):

// ReSharper disable UnusedType.Global namespace TeamCity.MSBuild.Logger { using Microsoft.Build.Framework; // ReSharper disable once UnusedMember.Global public class TeamCityMsBuildLogger : INodeLogger { private readonly Composition _composition = new(); private INodeLogger Logger => _composition.Logger; public string Parameters { get => Logger.Parameters; set => Logger.Parameters = value; } public LoggerVerbosity Verbosity { get => Logger.Verbosity; set => Logger.Verbosity = value; } public void Initialize(IEventSource eventSource, int nodeCount) => Logger.Initialize(eventSource, nodeCount); public void Initialize(IEventSource eventSource) => Logger.Initialize(eventSource); public void Shutdown() { Logger.Shutdown(); _composition.Dispose(); } } }