public IEnumerable <WidgetType> LoadWidgetTypes() { if (controlTypes == null || controlTypes.Count <= 0) { controlTypes = new List <WidgetType>(); var conFiles = fileProvider.GetFiles("Widgets/*", "*.cshtml", false) .Union(fileProvider.GetFiles("Widgets", "*.cshtml", false)); var moduleFiles = fileProvider.GetFiles("Modules/*/Widgets/*", "*.cshtml", false) .Union(fileProvider.GetFiles("Modules/*/Widgets", "*.cshtml", false)); conFiles.ForEach(f => { WidgetType tt = new WidgetType(); tt.Name = f.FileNameWithoutExtension(); tt.Path = "~/" + fileProvider.MakeRelative(f.FullName); tt.Category = f.Directory.Name.ToLower() == "widgets" ? "" : f.Directory.Name; tt.Parameters = GetParameters(f.FullName); controlTypes.Add(tt); }); moduleFiles.ForEach(f => { WidgetType tt = new WidgetType(); tt.Name = f.FileNameWithoutExtension(); tt.Path = "~/" + fileProvider.MakeRelative(f.FullName); tt.Category = f.Directory.Name.ToLower() == "widgets" ? "" : f.Directory.Name; tt.Module = f.Directory.Name.ToLower() == "widgets" ? f.Directory.Parent.Name : f.Directory.Parent.Parent.Name; tt.Parameters = GetParameters(f.FullName); controlTypes.Add(tt); }); } return(controlTypes); }
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; }
protected virtual void DeleteOldZipFiles(DirectoryInfo directory) { var oldZips = fileSystemProvider.GetFiles(directory, "*.zip"); if (oldZips.Length <= 1) { return; } Array.Sort(oldZips, new FileInfoCompare()); var files = new List <FileInfo>(oldZips); files.RemoveAt(0); //do not delete the most current file foreach (var file in files) { try { fileSystemProvider.DeleteFile(file.FullName); } catch (Exception ex) { log.Error(ex); } } }
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 dynamic Files(string owner, string path, int orderBy = 0, int pi = 0, int ps = 50) { if (string.IsNullOrEmpty(owner)) { owner = "public"; } path = string.Concat(owner, "/", path); var files = fileProvider.GetFiles(path, "*.*"); switch (orderBy) { case 1: files = files.OrderBy(o => o.Name); break; case 0: default: files = files.OrderByDescending(o => o.CreationTime); break; } if (pi >= 0 && ps > 0) { files = files.Skip(pi * ps).Take(ps); } var vfs = files.Where(f => !f.Name.StartsWith("_")).Select(f => new { name = f.Name, url = UrlHelper.ClientUrl(rootPath.UriCombine(fileProvider.MakeRelative(f.FullName))), size = FileType.GetFriendlyFileSize((int)f.Length), creationTime = f.CreationTime.ToString("yyyy-MM-dd") }).ToArray(); return(vfs); }
public IEnumerable <TemplateType> LoadTemplateTypes() { if (templateTypes == null || templateTypes.Count <= 0) { templateTypes = new List <TemplateType>(); fileProvider.GetFiles(null, "*.cshtml", false) .ForEach(f => { TemplateType tt = new TemplateType(); tt.Name = f.FileNameWithoutExtension(); tt.Path = f.Name; tt.Sections = GetSections(f.FullName); templateTypes.Add(tt); }); } return(templateTypes); }
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); } }