private void ProcessDirectory(FolderInformation files, IFolder folder) { foreach (var file in files.files) { folder.AddFile(new File(file.name, file.size)); } foreach (var subdirectory in files.folders) { var subfolder = new Folder(subdirectory.name); this.ProcessDirectory(subdirectory, subfolder); folder.AddSubdirectory(subfolder); } }
internal void SaveFolderInformation(FolderInformation to, IFolder folder) { to.name = folder.Name; to.files = new List <FileInformation> (); to.folders = new List <FolderInformation> (); foreach (var file in folder.Files) { to.files.Add(new FileInformation { name = file.Name, size = (long)file.Size }); } foreach (var subdirectory in folder.Subdirectories) { var subfolder = new FolderInformation(); this.SaveFolderInformation(subfolder, subdirectory); to.folders.Add(subfolder); } }
internal void SaveFolderInformation (FolderInformation to, IFolder folder) { to.name = folder.Name; to.files = new List <FileInformation> (); to.folders = new List <FolderInformation> (); foreach (var file in folder.Files) to.files.Add (new FileInformation { name = file.Name, size = (long) file.Size }); foreach (var subdirectory in folder.Subdirectories) { var subfolder = new FolderInformation (); this.SaveFolderInformation (subfolder, subdirectory); to.folders.Add (subfolder); } }