internal virtual Repository[] GetOverrides(string path) { // If we don't have override file, ignore if (!File.Exists(path)) { return(null); } StrictXmlDeserializer <UpfileOverride> deserializer = new StrictXmlDeserializer <UpfileOverride>(); using (FileStream fs = new FileStream(path, FileMode.Open)) { try { UpfileOverride upOverride = deserializer.Deserialize(fs); foreach (Repository repo in upOverride.Repositories) { if (repo is FileRepository) { (repo as FileRepository).Path = Uplift.Common.FileSystemUtil.MakePathOSFriendly((repo as FileRepository).Path); } } return(upOverride.Repositories); } catch (InvalidOperationException) { Debug.LogError(string.Format("Global Override file at {0} is not well formed", path)); return(null); } } }
internal virtual void LoadOverrides(string path) { // If we don't have override file, ignore if (!File.Exists(path)) { return; } XmlSerializer serializer = new XmlSerializer(typeof(UpfileOverride)); using (FileStream fs = new FileStream(path, FileMode.Open)) { try { UpfileOverride upOverride = serializer.Deserialize(fs) as UpfileOverride; foreach (Repository repo in upOverride.Repositories) { if (repo is FileRepository) { (repo as FileRepository).Path = FileSystemUtil.MakePathOSFriendly((repo as FileRepository).Path); } } if (Repositories == null) { Repositories = upOverride.Repositories; } else { int repositoriesSize = Repositories.Length + upOverride.Repositories.Length; Repository[] newRepositoryArray = new Repository[repositoriesSize]; Array.Copy(Repositories, newRepositoryArray, Repositories.Length); Array.Copy(upOverride.Repositories, 0, newRepositoryArray, Repositories.Length, upOverride.Repositories.Length); Repositories = newRepositoryArray; } } catch (InvalidOperationException) { Debug.LogError(string.Format("Global Override file at {0} is not well formed", path)); } } }