public static Dictionary <string, HashSet <string> > LoadCustomViewMapFile(IBuildEngine4 engine, string mapFile) { var cachedMap = engine?.GetRegisteredTaskObjectAssemblyLocal <Dictionary <string, HashSet <string> > > (mapFile, RegisteredTaskObjectLifetime.Build); if (cachedMap != null) { return(cachedMap); } var map = new Dictionary <string, HashSet <string> > (); if (!File.Exists(mapFile)) { return(map); } foreach (var s in File.ReadLines(mapFile)) { var items = s.Split(new char [] { ';' }, count: 2); var key = items [0]; var value = items [1]; HashSet <string> set; if (!map.TryGetValue(key, out set)) { map.Add(key, set = new HashSet <string> ()); } set.Add(value); } return(map); }
public static Aapt2Daemon GetInstance(IBuildEngine4 engine, string aapt2, int numberOfInstances, int initalNumberOfDaemons, bool registerInDomain = false) { var area = registerInDomain ? RegisteredTaskObjectLifetime.AppDomain : RegisteredTaskObjectLifetime.Build; var daemon = engine.GetRegisteredTaskObjectAssemblyLocal <Aapt2Daemon> (RegisterTaskObjectKey, area); if (daemon == null) { daemon = new Aapt2Daemon(aapt2, numberOfInstances, initalNumberOfDaemons); engine.RegisterTaskObjectAssemblyLocal(RegisterTaskObjectKey, daemon, area, allowEarlyCollection: false); } return(daemon); }
public static Dictionary <string, string> LoadResourceCaseMap(IBuildEngine4 engine) => engine.GetRegisteredTaskObjectAssemblyLocal <Dictionary <string, string> > (ResourceCaseMapKey, RegisteredTaskObjectLifetime.Build) ?? new Dictionary <string, string> (0);