Example #1
0
 protected Art FindDbFolderItem(FileManagerFolder folder)
 {
     return
         ((from dbItem in FolderCache.Values
           where dbItem.IsFolder.Value && GetRelativeName(dbItem) == folder.RelativeName
           select dbItem).FirstOrDefault());
 }
 protected FileSystemItem FindFolderItemByRelativeName(FileManagerFolder folder)
 {
     return(FolderCache.Values.
            Select(entry => entry.Item).
            Where(item => item.IsFolder && GetRelativeName(item) == folder.RelativeName).
            FirstOrDefault());
 }
Example #3
0
        public override void UploadFile(FileManagerFolder folder, string fileName, Stream content)
        {
            using (var tran = Marfil.Inf.Genericos.Helper.TransactionScopeBuilder.CreateTransactionObject())
            {
                var fi        = new FileInfo(Path.Combine(_rutaBase, fileName));
                var idfichero = Guid.NewGuid();
                _ficherosService.create(new FicherosGaleriaModel()
                {
                    Id         = idfichero,
                    Nombre     = fileName,
                    Ruta       = Path.Combine(folder.FullName, fi.Name),
                    Tipo       = fi.Extension,
                    Fkcarpetas = new Guid(folder.Id),
                    Empresa    = _empresa
                });
                fi.Directory.Create();

                if (String.IsNullOrEmpty(_azureblob))
                {
                    File.WriteAllBytes(Path.Combine(_rutaBase, string.Format("{0}{1}", idfichero, fi.Extension)), Funciones.ReadAllBytes(content));
                }
                else
                {
                    _ficherosService.AgregarFicheroAzure(_empresa, _azureblob, fi.Name, fi.Extension, Funciones.ReadAllBytes(content));
                }

                tran.Complete();
            }
        }
Example #4
0
 public override IEnumerable <FileManagerFile> GetFiles(FileManagerFolder folder)
 {
     foreach (FileManagerFile file in base.GetFiles(folder))
     {
         var fileInfo = new FileInfo(MapPath(file.FullName));
         FileManagerFileProperties fileProperties = new FileManagerFileProperties()
         {
             Metadata = new Dictionary <string, object>()
         };
         var             fileSecurity      = File.GetAccessControl(MapPath(file.FullName));
         var             sid               = fileSecurity.GetOwner(typeof(SecurityIdentifier));
         FileVersionInfo myFileVersionInfo = FileVersionInfo.GetVersionInfo(MapPath(file.FullName));
         var             version           = myFileVersionInfo.FileVersion;
         string          description       = myFileVersionInfo.FileDescription;
         fileProperties.Metadata.Add("Name", file.Name);
         fileProperties.Metadata.Add("Type", ExtensionsDisplayName[file.Extension]);
         fileProperties.Metadata.Add("CreationDate", fileInfo.CreationTime.ToString("U"));
         fileProperties.Metadata.Add("AccessedDate", fileInfo.LastAccessTime.ToString("U"));
         fileProperties.Metadata.Add("Attributes", fileInfo.Attributes);
         fileProperties.Metadata.Add("LastWriteTime", fileInfo.LastWriteTime.ToString("U"));
         fileProperties.Metadata.Add("Owner", sid.Value);
         fileProperties.Metadata.Add("Description", description);
         fileProperties.Metadata.Add("Size", fileInfo.Length.ToString("#,#") + " bytes");
         yield return(new FileManagerFile(this, folder, file.Name, file.Id, fileProperties));
     }
 }
Example #5
0
        public override void CopyFolder(FileManagerFolder folder, FileManagerFolder newParentFolder)
        {
            long folderId          = GetItemId(folder);
            long newParentFolderId = GetItemId(newParentFolder);

            DataProvider.CopyFolder(folderId, newParentFolderId);
        }
Example #6
0
        public override void CopyFile(FileManagerFile file, FileManagerFolder newParentFolder)
        {
            long fileId            = GetItemId(file);
            long newParentFolderId = GetItemId(newParentFolder);

            DataProvider.CopyFile(fileId, newParentFolderId);
        }
 IEnumerable <FileManagerFile> GetPublicFileList(FileManagerFolder privateParentFolder)
 {
     return(base.GetFiles(privateParentFolder)
            .Where(file => filesToShow.Select(f => f.PrivateName).Contains(file.RelativeName))
            .Select(ConvertToPublicName)
            .ToList());
 }
Example #8
0
 public override IEnumerable <FileManagerFolder> GetFolders(FileManagerFolder parentFolder)
 {
     foreach (FileManagerFolder folder in base.GetFolders(parentFolder))
     {
         var folderInfo = new FileInfo(MapPath(folder.FullName));
         FileManagerFolderProperties folderProperties = new FileManagerFolderProperties()
         {
             Metadata = new Dictionary <string, object>()
         };
         var folderSecurity = File.GetAccessControl(MapPath(folder.FullName));
         var sid            = folderSecurity.GetOwner(typeof(SecurityIdentifier));
         folderProperties.Metadata.Add("Name", folder.Name);
         folderProperties.Metadata.Add("Type", "Folder");
         folderProperties.Metadata.Add("CreationDate", folderInfo.CreationTime.ToString("U"));
         folderProperties.Metadata.Add("AccessedDate", folderInfo.LastAccessTime.ToString("U"));
         folderProperties.Metadata.Add("Attributes", folderInfo.Attributes);
         folderProperties.Metadata.Add("LastWriteTime", folderInfo.LastWriteTime.ToString("U"));
         folderProperties.Metadata.Add("Owner", sid.Value);
         var  directoryInfo = new DirectoryInfo(MapPath(folder.FullName));
         var  filesInfo     = directoryInfo.GetFiles("*", SearchOption.AllDirectories);
         long folderSize    = 0;
         foreach (var info in filesInfo)
         {
             folderSize += info.Length;
         }
         var filesCount          = filesInfo.Length;
         var subDirectoriesCount = directoryInfo.GetDirectories("*", SearchOption.AllDirectories).Length;
         folderProperties.Metadata.Add("Size", folderSize.ToString("#,#") + " bytes");
         folderProperties.Metadata.Add("Contains", string.Format("Files: {0}, Folders: {1}", filesCount, subDirectoriesCount));
         yield return(new FileManagerFolder(this, parentFolder, folder.Name, folder.Id, folderProperties));
     }
 }
        public ActionResult ProcessConfigPartial(string relativePath, bool?isFileSelected)
        {
            string         selecetedFile = string.Empty;
            FileSystemItem item          = new FileSystemItem();

            if (!string.IsNullOrEmpty(relativePath))
            {
                string[] val = relativePath.Split(new char[] { '\\' }, StringSplitOptions.RemoveEmptyEntries).Skip(1).ToArray();
                for (int i = 0; i < val.Length; i++)
                {
                    selecetedFile = Path.Combine(selecetedFile, val[i]);
                }
                var provider = ProcessBlueprintControllerProcessBlueprintSettings.ProcessBlueprintFileSystemProvider;
                if (isFileSelected.HasValue && isFileSelected.Value == true)
                {
                    var file = new FileManagerFile(provider, selecetedFile);
                    item = ProcessBlueprintControllerProcessBlueprintSettings.ProcessBlueprintFileSystemProvider.GetFile(file);
                }
                else
                {
                    var folder = new FileManagerFolder(provider, selecetedFile);
                    item = ProcessBlueprintControllerProcessBlueprintSettings.ProcessBlueprintFileSystemProvider.GetFolder(folder);
                }
            }
            //FileManagerFile file = ProcessBlueprintControllerProcessBlueprintSettings.ProcessBlueprintFileSystemProvider.GetFile()


            return(PartialView("_PrivilegeConfigPartial", item));
        }
Example #10
0
    protected Item FindFileItemByParentFolder(string itemName, FileManagerFolder parentFolder)
    {
        Item parentItem = FindFolderItemByRelativeName(parentFolder);

        return(Data.Items.FirstOrDefault(
                   item => item.ParentItem != null && item.ParentItem.Id == parentItem.Id && !item.IsFolder && item.Name == itemName));
    }
Example #11
0
 void FillSubFoldersList(FileManagerFolder folder, List <FileManagerFolder> list)
 {
     list.Add(folder);
     foreach (FileManagerFolder subFolder in folder.GetFolders())
     {
         FillSubFoldersList(subFolder, list);
     }
 }
Example #12
0
    public override IEnumerable <FileManagerFolder> GetFolders(FileManagerFolder parentFolder)
    {
        Item folderItem = FindFolderItem(parentFolder);

        return(FolderCache.Values.
               Where(item => item.ParentItem == folderItem && item.IsFolder).
               Select(item => new FileManagerFolder(this, parentFolder, item.Name, item.Id.ToString())));
    }
Example #13
0
 public override IEnumerable <FileManagerFile> GetFiles(FileManagerFolder folder)
 {
     if (!IsRootFolder(folder))
     {
         return(new FileManagerFile[0]);
     }
     return(FileQueryInternal.Select(item => new FileManagerFile(this, folder, item.Name, item.Id.ToString())));
 }
Example #14
0
        public override IEnumerable <FileManagerFile> GetFiles(FileManagerFolder folder)
        {
            long folderId = GetItemId(folder);

            return(DataProvider.GetDocumentsInFolder(folderId).
                   ToList().
                   Select(i => CreateFileManagerFile(i, folder)));
        }
Example #15
0
 FileManagerFile CreateFileManagerFile(DocumentItem dataItem, FileManagerFolder folder)
 {
     return(new FileManagerFile(this, folder, dataItem.Name, dataItem.ID.ToString(),
                                new FileManagerFileProperties()
     {
         LastWriteTime = dataItem.LastWriteTime, Length = dataItem.ContentSize
     }));
 }
Example #16
0
        public override IEnumerable <FileManagerFile> GetFiles(FileManagerFolder folder)
        {
            ArtsFileSystemItem artFolderItem = FindArtsFolderItem(folder);

            return(from artItem in ArtsDataProvider.GetArts()
                   where !artItem.IsFolder && artItem.ParentID == artFolderItem.ArtID
                   select new FileManagerFile(this, folder, artItem.Name, artItem.ArtID.ToString()));
        }
Example #17
0
        IEnumerable <FileManagerItem> ExecuteFilterByExtension(string[] extensions, FileManagerFolder folder)
        {
            DirectoryInfo dir = GetDirectoryInfo(folder);

            return(dir.GetFiles("*", SearchOption.AllDirectories).
                   Where(file => extensions.Contains(file.Extension)).
                   Select(f => CreateFileManagerItem(f)));
        }
Example #18
0
        private FileSystemItem FindFolderItem(FileManagerFolder parentFolder)
        {
            var response = (from item in FolderCache.Values
                            where item.IsFolder && GetRelativeName(item) == parentFolder.RelativeName
                            select item).FirstOrDefault();

            return(response);
        }
Example #19
0
        public override IEnumerable <FileManagerFolder> GetFolders(FileManagerFolder parentFolder)
        {
            ArtsFileSystemItem artFolderItem = FindArtsFolderItem(parentFolder);

            return(from artItem in FolderCache.Values
                   where artItem.IsFolder && artItem.ParentID == artFolderItem.ArtID
                   select new FileManagerFolder(this, parentFolder, artItem.Name, artItem.ArtID.ToString()));
        }
Example #20
0
 public override void DeleteFolder(FileManagerFolder folder)
 {
     using (var tran = Marfil.Inf.Genericos.Helper.TransactionScopeBuilder.CreateTransactionObject())
     {
         _carpetasService.delete(_carpetasService.get(folder.Id));
         tran.Complete();
     }
 }
Example #21
0
        public override void RenameFolder(FileManagerFolder folder, string name)
        {
            var model = _carpetasService.get(folder.Id) as CarpetasModel;

            model.Nombre = name;
            model.Ruta   = Path.Combine(folder.Parent?.FullName ?? string.Empty, name);
            _carpetasService.edit(model);
        }
Example #22
0
    public override IEnumerable <FileManagerFile> GetFiles(FileManagerFolder folder)
    {
        long folderId = GetItemId(folder);

        return(Data.Items.
               Where(item => item.ParentItem != null && item.ParentItem.Id == folderId && !item.IsFolder).
               ToList().
               Select(item => new FileManagerFile(this, folder, item.Name, item.Id.ToString())));
    }
Example #23
0
    public override IEnumerable <FileManagerFile> GetFiles(FileManagerFolder folder)
    {
        FileSystemData folderItem = FindFolderItem(folder);

        return
            (from dbItem in DataSource
             where !dbItem.IsFolder && dbItem.ParentId == folderItem.Id
             select new FileManagerFile(this, folder, dbItem.Name));
    }
        public override DateTime GetLastWriteTime(FileManagerFolder folder)
        {
            var directory = GetDirectory(folder.FullName);

            directory.FetchAttributes();
            var properties = directory.Properties;

            return((properties.LastModified == null) ? base.GetLastWriteTime(folder) : Convert.ToDateTime(properties.LastModified.Value.DateTime));
        }
Example #25
0
    public override IEnumerable <FileManagerFolder> GetFolders(FileManagerFolder parentFolder)
    {
        FileSystemData dbFolderItem = FindFolderItem(parentFolder);

        return
            (from dbItem in DataSource
             where dbItem.IsFolder && dbItem.ParentId == dbFolderItem.Id
             select new FileManagerFolder(this, parentFolder, dbItem.Name));
    }
Example #26
0
    protected FileSystemData FindFolderItem(FileManagerFolder folder)
    {
        var folders = DataSource.Where(x => x.IsFolder);

        return
            ((from item in folders
              where item.IsFolder && GetRelativeName(item) == folder.RelativeName
              select item).FirstOrDefault());
    }
Example #27
0
    public override IEnumerable <FileManagerFile> GetFiles(FileManagerFolder folder)
    {
        Art dbFolderItem = FindDbFolderItem(folder);

        return
            (from dbItem in DataContext.Arts
             where !dbItem.IsFolder.Value && dbItem.ParentID.Value == dbFolderItem.ID
             select new FileManagerFile(this, folder, dbItem.Name, dbItem.ID.ToString()));
    }
Example #28
0
        public override IEnumerable <FileManagerFolder> GetFolders(FileManagerFolder parentFolder)
        {
            FileSystemItem folderItem = FindFolderItem(parentFolder);
            var            response   = (from item in FolderCache.Values
                                         where item.IsFolder && folderItem.FileId == item.ParentId
                                         select new FileManagerFolder(this, parentFolder, item.Name));

            return(response);
        }
Example #29
0
        public override IEnumerable <FileManagerFolder> GetFolders(FileManagerFolder parentFolder)
        {
            ELTFileSystemItem FileFolderItem = FindELTFolderItem(parentFolder);
            var folders = from FileItem in FolderCache.Values
                          where FileItem.IsFolder && FileItem.ParentID == FileFolderItem.ID
                          select new FileManagerFolder(this, parentFolder, FileItem.Name);

            return(folders);
        }
Example #30
0
    public override IEnumerable <FileManagerFolder> GetFolders(FileManagerFolder parentFolder)
    {
        Art dbFolderItem = FindDbFolderItem(parentFolder);

        return
            (from dbItem in FolderCache.Values
             where dbItem.IsFolder.Value && dbItem.ParentID.Value == dbFolderItem.ID
             select new FileManagerFolder(this, parentFolder, dbItem.Name, dbItem.ID.ToString()));
    }
Example #31
0
 protected Item FindFileItemByParentFolder(string itemName, FileManagerFolder parentFolder)
 {
     Item parentItem = FindFolderItemByRelativeName(parentFolder);
         return Data.Items.FirstOrDefault(
              item => item.ParentItem != null && item.ParentItem.Id == parentItem.Id && !item.IsFolder && item.Name == itemName);
 }
Example #32
0
 public override IEnumerable<FileManagerFile> GetFiles(FileManagerFolder folder)
 {
     long folderId = GetItemId(folder);
         return Data.Items.
              Where(item => item.ParentItem != null && item.ParentItem.Id == folderId && !item.IsFolder).
              ToList().
              Select(item => new FileManagerFile(this, folder, item.Name, item.Id.ToString()));
 }
 private FileSystemItem FindFolderItem(FileManagerFolder parentFolder)
 {
     return (from item in FolderCache.Values
             where item.IsFolder && GetRelativeName(item) == parentFolder.RelativeName
             select item).FirstOrDefault();
 }
 public override void MoveFile(FileManagerFile file, FileManagerFolder newParentFolder)
 {
     base.MoveFile(file, newParentFolder);
 }
 public override IEnumerable<FileManagerFile> GetFiles(FileManagerFolder folder)
 {
     FileSystemItem folderItem = FindFolderItem(folder);
     return from item in ProcessBlueprintDataProvider.GetAll()
            where !item.IsFolder && item.ParentId == folderItem.FileId
            select new FileManagerFile(this, folder, item.Name);
 }
 public override void DeleteFolder(FileManagerFolder folder)
 {
     base.DeleteFolder(folder);
 }
Example #37
0
 public override IEnumerable<FileManagerFile> GetFiles(FileManagerFolder folder)
 {
     if (!IsRootFolder(folder))
              return new FileManagerFile[0];
         return FileQueryInternal.Select(item => new FileManagerFile(this, folder, item.Name, item.Id.ToString()));
 }
Example #38
0
 public override void RenameFolder(FileManagerFolder folder, string name)
 {
 }
Example #39
0
 bool IsRootFolder(FileManagerFolder folder)
 {
     return string.IsNullOrEmpty(folder.RelativeName);
 }
Example #40
0
 public override void UploadFile(FileManagerFolder folder, string fileName, Stream content)
 {
     UpdateAndSaveChanges(folder,
              folderItem => Data.AddItem(new Item()
              {
                   Name = fileName,
                   Content = Data.CreateBinaryContent(content),
                   Owner = DocumentsApp.User.CurrentUser,
                   ParentItem = folderItem,
                   CreationTime = DateTime.UtcNow,
                   LastAccessTime = DateTime.UtcNow,
                   LastWriteTime = DateTime.UtcNow,
                   IsFolder = false
              }));
 }
Example #41
0
 public override void RenameFolder(FileManagerFolder folder, string name)
 {
     UpdateAndSaveChanges(folder, item => item.Name = name);
 }
Example #42
0
 public override void MoveFolder(FileManagerFolder folder, FileManagerFolder newParentFolder)
 {
     UpdateAndSaveChanges(folder, item => item.ParentItem = FindFolderItem(newParentFolder));
 }
Example #43
0
 public override void CreateFolder(FileManagerFolder parent, string name)
 {
     UpdateAndSaveChanges(parent,
              parentItem => Data.AddItem(new Item()
              {
                   IsFolder = true,
                   Owner = DocumentsApp.User.CurrentUser,
                   CreationTime = DateTime.UtcNow,
                   LastAccessTime = DateTime.UtcNow,
                   LastWriteTime = DateTime.UtcNow,
                   Name = name,
                   ParentItem = parentItem
              }));
 }
Example #44
0
 public override IEnumerable<FileManagerFolder> GetFolders(FileManagerFolder parentFolder)
 {
     Item folderItem = FindFolderItem(parentFolder);
         return FolderCache.Values.
              Where(item => item.ParentItem == folderItem && item.IsFolder).
              Select(item => new FileManagerFolder(this, parentFolder, item.Name, item.Id.ToString()));
 }
Example #45
0
 public override void UploadFile(FileManagerFolder folder, string fileName, Stream content)
 {
 }
Example #46
0
        protected Item FindFolderItem(FileManagerFolder folder)
        {
            if (folder.Id == null)
                     return FindFolderItemByRelativeName(folder);

                long folderId = GetItemId(folder);
                return FolderCache[folderId];
        }
Example #47
0
 public override IEnumerable<FileManagerFolder> GetFolders(FileManagerFolder parentFolder)
 {
     return new FileManagerFolder[0];
 }
Example #48
0
 protected Item FindFolderItemByRelativeName(FileManagerFolder folder)
 {
     return FolderCache.Values.
              Where(item => item.IsFolder && GetRelativeName(item) == folder.RelativeName).
              FirstOrDefault();
 }
 public override void CreateFolder(FileManagerFolder parent, string name)
 {
     base.CreateFolder(parent, name);
 }
Example #50
0
 protected void UpdateAndSaveChanges(FileManagerFolder folder, Action<Item> update)
 {
     UpdateAndSubmitChangesCore(FindFolderItem(folder), update);
 }
 public override bool Exists(FileManagerFolder folder)
 {
     return FindFolderItem(folder) != null;
 }
Example #52
0
 void CopyCore(Item item, string path, bool isFolder)
 {
     FileManagerFolder newParentFolder = new FileManagerFolder(this, path, (string)null);
         UpdateAndSaveChanges(newParentFolder,
              newParentItem => Data.AddItem(new Item()
              {
                   Name = item.Name,
                   Content = item.IsFolder ? null : Data.CreateBinaryContent(item.Content.Data),
                   ParentItem = newParentItem,
                   Owner = DocumentsApp.User.CurrentUser,
                   CreationTime = DateTime.UtcNow,
                   LastAccessTime = DateTime.UtcNow,
                   LastWriteTime = DateTime.UtcNow,
                   IsFolder = isFolder
              }));
 }
 public override IEnumerable<FileManagerFolder> GetFolders(FileManagerFolder parentFolder)
 {
     FileSystemItem folderItem = FindFolderItem(parentFolder);
     return (from item in FolderCache.Values
             where item.IsFolder && folderItem.ParentId == item.FileId
             select new FileManagerFolder(this, parentFolder, item.Name));
 }
Example #54
0
 void FillSubFoldersList(FileManagerFolder folder, List<FileManagerFolder> list)
 {
     list.Add(folder);
         foreach (FileManagerFolder subFolder in folder.GetFolders())
              FillSubFoldersList(subFolder, list);
 }
 public override void MoveFolder(FileManagerFolder folder, FileManagerFolder newParentFolder)
 {
     base.MoveFolder(folder, newParentFolder);
 }
Example #56
0
        public override void CopyFolder(FileManagerFolder folder, FileManagerFolder newParentFolder)
        {
            List<FileManagerFolder> folders = new List<FileManagerFolder>();
                FillSubFoldersList(folder, folders);
                int folderNameOffset = !string.IsNullOrEmpty(folder.Parent.RelativeName) ? folder.Parent.RelativeName.Length + 1 : 0;

                foreach (FileManagerFolder copyingFolder in folders)
                {
                     Item folderItem = FindFolderItem(copyingFolder);
                     string folderPath = newParentFolder.RelativeName;
                     if (copyingFolder != folder)
                          folderPath = Path.Combine(folderPath, copyingFolder.Parent.RelativeName.Substring(folderNameOffset));
                     CopyCore(folderItem, folderPath, true);
                     foreach (FileManagerFile currentFile in copyingFolder.GetFiles())
                     {
                          Item fileItem = FindFileItem(currentFile);
                          CopyCore(fileItem, Path.Combine(folderPath, copyingFolder.Name), false);
                     }
                }
        }
Example #57
0
 public override void CopyFile(FileManagerFile file, FileManagerFolder newParentFolder)
 {
     Item fileItem = FindFileItem(file);
         CopyCore(fileItem, newParentFolder.RelativeName, false);
 }
Example #58
0
 public override void DeleteFolder(FileManagerFolder folder)
 {
     UpdateAndSaveChanges(folder, item => Data.DeleteItem(item));
 }
Example #59
0
 public override DateTime GetLastWriteTime(FileManagerFolder folder)
 {
     DateTime result;
         Item folderItem = FindFolderItem(folder);
         if (!FolderLastWriteTimeCache.TryGetValue(folderItem.Id, out result))
         {
              result = DocumentsApp.FileSystem.GetFolderLastWriteTime(folderItem);
              FolderLastWriteTimeCache.Add(folderItem.Id, result);
         }
         return result;
 }
Example #60
0
 public override void MoveFile(FileManagerFile file, FileManagerFolder newParentFolder)
 {
     UpdateAndSubmitChanges(file, item => item.ParentItem = FindFolderItem(newParentFolder));
 }