public IDirectory(string DirectoryPath, int Flags, IFileSystemProvider Provider) { m_Commands = new Dictionary <int, ServiceProcessRequest>() { { 0, Read }, { 1, GetEntryCount } }; this.Provider = Provider; this.DirectoryPath = DirectoryPath; DirectoryEntries = new List <DirectoryEntry>(); if ((Flags & 1) != 0) { DirectoryEntries.AddRange(Provider.GetDirectories(DirectoryPath)); } if ((Flags & 2) != 0) { DirectoryEntries.AddRange(Provider.GetFiles(DirectoryPath)); } CurrentItemIndex = 0; }
public IDirectory(string directoryPath, int flags, IFileSystemProvider provider) { _commands = new Dictionary <int, ServiceProcessRequest> { { 0, Read }, { 1, GetEntryCount } }; _provider = provider; DirectoryPath = directoryPath; _directoryEntries = new List <DirectoryEntry>(); if ((flags & 1) != 0) { _directoryEntries.AddRange(provider.GetDirectories(directoryPath)); } if ((flags & 2) != 0) { _directoryEntries.AddRange(provider.GetFiles(directoryPath)); } _currentItemIndex = 0; }
private void ConfigureRoute(string baseDirectory) { //Get All files in directory var files = _fileSystemProvider.GetFiles( baseDirectory, _configManager.Configuration.FileTypes).ToList(); foreach (var fileInfo in files) { var directory = fileInfo.Directory ?? new DirectoryInfo(baseDirectory); var route = MapRouteModel(directory, fileInfo); Routes[route.Url] = route; } var subDirectories = _fileSystemProvider.GetDirectories(baseDirectory, "*", SearchOption.AllDirectories); //Recersively Call the ConfigureRoute(string path) method to populate all routes. foreach (var directoryInfo in subDirectories) { ConfigureRoute(directoryInfo.FullName); } }