public override IEnumerable <IFileSystemInfo> EnumerateFileSystemInfos(string pattern, SearchOption searchOption) { return(_paths.EnumerateFileSystemEntries(_physicalPath, pattern, searchOption).Select(x => { string baseName = x.Substring(((FileSystemMountPoint)MountPoint).MountPointRootPath.Length).Replace(Path.DirectorySeparatorChar, '/'); if (baseName.Length == 0) { baseName = "/"; } if (baseName[0] != '/') { baseName = "/" + baseName; } if (_fileSystem.DirectoryExists(x) && baseName[baseName.Length - 1] != '/') { baseName = baseName + "/"; } return MountPoint.FileSystemInfo(baseName); })); }
public override IEnumerable <IFileSystemInfo> EnumerateFileSystemInfos(string pattern, SearchOption searchOption) { return(_dir.EnumerateFileSystemInfos(pattern, searchOption).Select(x => { string baseName = x.FullName.Substring(MountPoint.Info.Place.Length).Replace(Path.DirectorySeparatorChar, '/'); if (baseName.Length == 0) { baseName = "/"; } if (baseName[0] != '/') { baseName = "/" + baseName; } if (x is DirectoryInfo && baseName[baseName.Length - 1] != '/') { baseName = baseName + "/"; } return MountPoint.FileSystemInfo(baseName); })); }