2 instantiations of RegisteredTaskRecord
Microsoft.Build (2)
Instance\TaskRegistry.cs (2)
696RegisteredTaskRecord newRecord = new RegisteredTaskRecord( 1916var instance = new RegisteredTaskRecord();
46 references to RegisteredTaskRecord
Microsoft.Build (46)
BackEnd\Components\RequestBuilder\RequestBuilder.cs (1)
1381foreach (TaskRegistry.RegisteredTaskRecord registeredTaskRecord in taskRegistry.TaskRegistrations.Values.SelectMany(record => record))
Instance\TaskFactoryWrapper.cs (2)
78internal TaskRegistry.RegisteredTaskRecord.Stats? Statistics { get; private init; } 92TaskRegistry.RegisteredTaskRecord.Stats? statistics = null)
Instance\TaskRegistry.cs (43)
129private readonly ConcurrentDictionary<RegisteredTaskIdentity, RegisteredTaskRecord> _cachedTaskRecordsWithExactMatch = 138private readonly ConcurrentDictionary<string, ConcurrentDictionary<RegisteredTaskIdentity, RegisteredTaskRecord>> _cachedTaskRecordsWithFuzzyMatch = new(StringComparer.OrdinalIgnoreCase); 147private Dictionary<RegisteredTaskIdentity, List<RegisteredTaskRecord>> _taskRegistrations; 154private readonly Dictionary<string, List<RegisteredTaskRecord>> _overriddenTasks = new Dictionary<string, List<RegisteredTaskRecord>>(); 223internal IDictionary<RegisteredTaskIdentity, List<RegisteredTaskRecord>> TaskRegistrations 321if (String.IsNullOrEmpty(taskFactory) || taskFactory.Equals(RegisteredTaskRecord.AssemblyTaskFactory, StringComparison.OrdinalIgnoreCase) || taskFactory.Equals(RegisteredTaskRecord.TaskHostFactory, StringComparison.OrdinalIgnoreCase)) 364if (String.Equals(taskFactory, RegisteredTaskRecord.CodeTaskFactory, StringComparison.OrdinalIgnoreCase) || String.Equals(taskFactory, RegisteredTaskRecord.XamlTaskFactory, StringComparison.OrdinalIgnoreCase)) 414RegisteredTaskRecord.ParameterGroupAndTaskElementRecord parameterGroupAndTaskElementRecord = null; 418parameterGroupAndTaskElementRecord = new RegisteredTaskRecord.ParameterGroupAndTaskElementRecord(); 465RegisteredTaskRecord record = GetTaskRegistrationRecord(taskName, taskProjectFile, taskIdentityParameters, exactMatchRequired, targetLoggingContext, elementLocation, out bool retrievedFromCache, isMultiThreadedBuild); 476if (record.TaskFactoryAttributeName.Equals(RegisteredTaskRecord.AssemblyTaskFactory) || record.TaskFactoryAttributeName.Equals(RegisteredTaskRecord.TaskHostFactory)) 509internal RegisteredTaskRecord GetTaskRegistrationRecord( 519RegisteredTaskRecord taskRecord = null; 526if (_overriddenTasks.TryGetValue(taskName, out List<RegisteredTaskRecord> recs)) 531foreach (RegisteredTaskRecord rec in recs) 560if (_cachedTaskRecordsWithFuzzyMatch.TryGetValue(taskIdentity.Name, out ConcurrentDictionary<RegisteredTaskIdentity, RegisteredTaskRecord> taskRecords)) 571foreach (RegisteredTaskRecord record in taskRecords.Values) 592IEnumerable<RegisteredTaskRecord> registrations = GetRelevantOrderedRegistrations(taskIdentity, exactMatchRequired); 627ConcurrentDictionary<RegisteredTaskIdentity, RegisteredTaskRecord> taskRecords 643private IEnumerable<RegisteredTaskRecord> GetRelevantOrderedRegistrations(RegisteredTaskIdentity taskIdentity, bool exactMatchRequired) 645if (_taskRegistrations.TryGetValue(taskIdentity, out List<RegisteredTaskRecord> taskAssemblies)) 672RegisteredTaskRecord.ParameterGroupAndTaskElementRecord inlineTaskRecord, 688List<RegisteredTaskRecord> registeredTaskEntries; 692registeredTaskEntries = new List<RegisteredTaskRecord>(); 696RegisteredTaskRecord newRecord = new RegisteredTaskRecord( 713if (_overriddenTasks.TryGetValue(unqualifiedTaskName, out List<RegisteredTaskRecord> recs)) 715foreach (RegisteredTaskRecord rec in recs) 728List<RegisteredTaskRecord> unqualifiedTaskNameMatches = new(); 738private static Dictionary<RegisteredTaskIdentity, List<RegisteredTaskRecord>> CreateRegisteredTaskDictionary(int? capacity = null) 741? new Dictionary<RegisteredTaskIdentity, List<RegisteredTaskRecord>>(capacity.Value, RegisteredTaskIdentity.RegisteredTaskIdentityComparer.Exact) 742: new Dictionary<RegisteredTaskIdentity, List<RegisteredTaskRecord>>(RegisteredTaskIdentity.RegisteredTaskIdentityComparer.Exact); 750private RegisteredTaskRecord GetMatchingRegistration( 752IEnumerable<RegisteredTaskRecord> taskRecords, 1914internal static RegisteredTaskRecord FactoryForDeserialization(ITranslator translator) 1916var instance = new RegisteredTaskRecord(); 1927IDictionary<RegisteredTaskIdentity, List<RegisteredTaskRecord>> copy = _taskRegistrations; 1932_taskRegistrations = (Dictionary<RegisteredTaskIdentity, List<RegisteredTaskRecord>>)copy; 1946private void TranslateTaskRegistrationValue(ITranslator translator, ref List<RegisteredTaskRecord> taskRecords) 1948translator.Translate(ref taskRecords, RegisteredTaskRecord.FactoryForDeserialization);