internal static TaskParameterEventArgs CreateTaskParameterEventArgs( BuildEventContext buildEventContext, TaskParameterMessageKind messageKind, string itemType, IList items, bool logItemMetadata, DateTime timestamp, int line = 0, int column = 0) { // Only create a snapshot of items if we use AppDomains #if FEATURE_APPDOMAIN CreateItemsSnapshot(ref items); #endif var args = new TaskParameterEventArgs( messageKind, itemType, items, logItemMetadata, timestamp); args.BuildEventContext = buildEventContext; args.LineNumber = line; args.ColumnNumber = column; return(args); }
internal static TaskParameterEventArgs CreateTaskParameterEventArgs( BuildEventContext buildEventContext, TaskParameterMessageKind messageKind, string itemType, IList items, bool logItemMetadata, DateTime timestamp, int line, int column) { var args = new TaskParameterEventArgs( messageKind, itemType, items, logItemMetadata, timestamp); args.BuildEventContext = buildEventContext; // sigh this is terrible for perf LineNumberField.SetValue(args, line); ColumnNumberField.SetValue(args, column); // Should probably make these public // args.LineNumber = line; // args.ColumnNumber = column; return(args); }
/// <summary> /// Creates an instance of this class for the given task parameter. /// </summary> public TaskParameterEventArgs ( TaskParameterMessageKind kind, string itemType, IList items, bool logItemMetadata, DateTime eventTimestamp, int line, int column ) : base( subcategory: null, code: null, file: null, lineNumber: line, columnNumber: column, endLineNumber: 0, endColumnNumber: 0, message: null, helpKeyword: null, senderName: null, MessageImportance.Low, eventTimestamp) { Kind = kind; ItemType = itemType; Items = items; LogItemMetadata = logItemMetadata; }
/// <summary> /// Creates an instance of this class for the given task parameter. /// </summary> public TaskParameterEventArgs ( TaskParameterMessageKind kind, string itemType, IList items, bool logItemMetadata, DateTime eventTimestamp ) : base(null, null, null, MessageImportance.Low, eventTimestamp) { Kind = kind; ItemType = itemType; Items = items; LogItemMetadata = logItemMetadata; }
internal static void LogTaskParameter( LoggingContext loggingContext, TaskParameterMessageKind messageKind, string itemType, IList items, bool logItemMetadata) { var args = CreateTaskParameterEventArgs( loggingContext.BuildEventContext, messageKind, itemType, items, logItemMetadata, DateTime.UtcNow); loggingContext.LogBuildEvent(args); }
/// <summary> /// Creates an instance of this class for the given task parameter. /// </summary> public TaskParameterEventArgs ( TaskParameterMessageKind kind, string itemName, IList items, bool logItemMetadata, DateTime eventTimestamp, Func <TaskParameterEventArgs, string> messageGetter ) : base("", null, "", MessageImportance.Low, eventTimestamp) { Kind = kind; ItemName = itemName; Items = items; LogItemMetadata = logItemMetadata; this.messageGetter = messageGetter; }
internal static TaskParameterEventArgs CreateTaskParameterEventArgs( BuildEventContext buildEventContext, TaskParameterMessageKind messageKind, string itemType, IList items, bool logItemMetadata, DateTime timestamp) { var args = new TaskParameterEventArgs( messageKind, itemType, items, logItemMetadata, timestamp); args.BuildEventContext = buildEventContext; return(args); }
internal static string GetTaskParameterText(TaskParameterMessageKind messageKind, string itemType, IList items, bool logItemMetadata) { var resourceText = messageKind switch { TaskParameterMessageKind.AddItem => ItemGroupIncludeLogMessagePrefix, TaskParameterMessageKind.RemoveItem => ItemGroupRemoveLogMessage, TaskParameterMessageKind.TaskInput => TaskParameterPrefix, TaskParameterMessageKind.TaskOutput => OutputItemParameterMessagePrefix, _ => throw new NotImplementedException($"Unsupported {nameof(TaskParameterMessageKind)} value: {messageKind}") }; var itemGroupText = GetParameterText( resourceText, itemType, items, logItemMetadata); return(itemGroupText); } }
internal static void LogTaskParameter( LoggingContext loggingContext, TaskParameterMessageKind messageKind, string itemType, IList items, bool logItemMetadata, IElementLocation location = null) { var args = CreateTaskParameterEventArgs( loggingContext.BuildEventContext, messageKind, itemType, items, logItemMetadata, DateTime.UtcNow, location?.Line ?? 0, location?.Column ?? 0); loggingContext.LogBuildEvent(args); }