public ArchiveTask(DirectoryInfoCache workDir, Action <IEnumerable <FileInfo>, string> archive, string extension) { Archive = archive; var node = DirectoryInfoCache.Forest(workDir); _walker = node.Walker; Extension = extension; SourceExtension = ".html"; }
public void StartSplit() { Abort = false; Current = StartDirectory; var root = DirectoryInfoCache.Forest(StartDirectory); _walker = root.Walker; _dirty.Clear(); WriteBlack(StartDirectory.FullName); SyncDirectoryInfoCacheToFileSystem(); }
public void SyncAllToFileSystem() { Debug.Assert(this.Parent == null); var walker = DirectoryInfoCache.Forest(this).Walker; while (walker.HasNext) { walker.MoveNext(); var node = walker.Current; if (node.CurrentEdge == ForestNode <DirectoryInfoCache> .Edge.Trailing) { continue; } node.Element.SyncToFileSystem(); } }