| File: BuildCheck\Infrastructure\CheckContext\ICheckContext.cs | Web Access |
| Project: src\msbuild\src\Build\Microsoft.Build.csproj (Microsoft.Build) |
// Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the MIT license. using System; using Microsoft.Build.Framework; using Microsoft.Build.Shared; namespace Microsoft.Build.Experimental.BuildCheck; /// <summary> /// Interface that contains an instance of <see cref="BuildEventContext"/> and methods to dispatch it. /// </summary> internal interface ICheckContext { /// <summary> /// Instance of <see cref="BuildEventContext"/>. /// </summary> BuildEventContext BuildEventContext { get; } /// <summary> /// Dispatch the instance of <see cref="BuildEventContext"/> as a comment. /// </summary> void DispatchAsComment(MessageImportance importance, string messageResourceName, params object?[] messageArgs); /// <summary> /// Dispatch a <see cref="BuildEventArgs"/>. /// </summary> void DispatchBuildEvent(BuildEventArgs buildEvent); /// <summary> /// Dispatch the instance of <see cref="BuildEventContext"/> as an error message. /// </summary> void DispatchAsErrorFromText(string? subcategoryResourceName, string? errorCode, string? helpKeyword, BuildEventFileInfo file, string message); /// <summary> /// Dispatch the instance of <see cref="BuildEventContext"/> as a comment with provided text for the message. /// </summary> void DispatchAsCommentFromText(MessageImportance importance, string message); /// <summary> /// Dispatch the instance of <see cref="BuildEventContext"/> as a warning message. /// </summary> void DispatchAsWarningFromText(string? subcategoryResourceName, string? errorCode, string? helpKeyword, BuildEventFileInfo file, string message); /// <summary> /// Dispatch the telemetry data for a failed acquisition. /// </summary> void DispatchFailedAcquisitionTelemetry(string assemblyName, Exception exception); /// <summary> /// If supported - dispatches the telemetry data. /// </summary> void DispatchTelemetry(BuildCheckTracingData data); }