public IEnumerable <IPathEntry> Build(Model.Engine.SearchResult entry, int entryIndex) { bool groupIndicator = (entryIndex & 1) == 1; var context = entry.Metadata[typeof(DuplicateFileCriterion)]; var entries = ((DuplicateFileCriterionContext)context).Childs; if (entries == null) { throw new OperationCanceledException("Cannot get the entries from the metadata of file '" + entry.FileSystemInfo.FullName + "'."); } yield return(new PathDuplicateEntry(entry.FileSystemInfo, groupIndicator)); foreach (var content in entries) { yield return(new PathDuplicateEntry(content, groupIndicator)); } }
public IEnumerable <IPathEntry> Build(Model.Engine.SearchResult entry, int entryIndex) { var context = entry.Metadata[typeof(NameAndZipCriterion)]; var entries = ((ZipCriterionContext)context).Childs; if (entries == null) { throw new OperationCanceledException("Cannot get the entries from the metadata of file '" + entry.FileSystemInfo.FullName + "'."); } if (entries.Count > 0) { foreach (var content in entries) { yield return(new PathZipEntry(entry.FileSystemInfo, content)); } } else { yield return(new PathZipEntry(entry.FileSystemInfo, null)); } }
public IEnumerable <IPathEntry> Build(Model.Engine.SearchResult entry, int entryIndex) { return(new[] { new PathEntry(entry.FileSystemInfo) }); }