示例#1
0
 public void Merge(IProjectSettingsFile projectSettingsFile, YamlNode settingsNode)
 {
     ProjectSettingsFiles = ProjectSettingsFiles.Cast <IProjectSettingsFile>().Append(new ProjectSettingsFile {
         FileName = projectSettingsFile.FileName,
         RootNode = projectSettingsFile.RootNode.GetChildBranch(settingsNode)
     }).Merge()
                            .Cast <ProjectSettingsFile>().ToList();
 }
示例#2
0
        public void Revert(IProjectSettingsFile projectSettingsFile, YamlNode settingsNode)
        {
            Revert(projectSettingsFile);
            var rootNode = projectSettingsFile.RootNode.Diff(projectSettingsFile.RootNode.GetChildBranch(settingsNode));

            if (rootNode != null)
            {
                ProjectSettingsFiles = ProjectSettingsFiles.Cast <IProjectSettingsFile>().Append(new ProjectSettingsFile {
                    FileName = projectSettingsFile.FileName,
                    RootNode = rootNode
                }).
                                       Merge().Cast <ProjectSettingsFile>().ToList();
            }
        }
示例#3
0
        private void EnumerateSettingFiles(string directory)
        {
            var entries = _fileSystem.GetFileSystemEntries(directory, ProjectSettingsFiles.SettingsFilePattern, SearchOption.AllDirectories);

            foreach (var entry in entries)
            {
                var fileName = Path.GetFileName(entry);
                if (ProjectSettingsFiles.IsProjectSettingFile(fileName))
                {
                    var relativePath = entry.MakeRRelativePath(_projectPath);
                    _filesMap[relativePath] = entry;
                }
            }
        }
示例#4
0
 public void Merge(IProjectSettingsFile projectSettingsFile)
 {
     ProjectSettingsFiles = ProjectSettingsFiles.Cast <IProjectSettingsFile>().Append(projectSettingsFile).Merge()
                            .Cast <ProjectSettingsFile>().ToList();
 }
示例#5
0
 public void Merge(IEnumerable <IProjectSettingsFile> projectSettingsFiles)
 {
     ProjectSettingsFiles = ProjectSettingsFiles.Cast <IProjectSettingsFile>()
                            .Concat(projectSettingsFiles).Merge().Cast <ProjectSettingsFile>().ToList();
 }
示例#6
0
 public void Revert(IProjectSettingsFile projectSettingsFile)
 {
     ProjectSettingsFiles = ProjectSettingsFiles.Where(p => p != projectSettingsFile).ToList();
 }
示例#7
0
 public void Revert()
 {
     ProjectSettingsFiles.Clear();
 }