private static string AddFile(int PortalId, Stream inStream, string fileName, string contentType, long length, string folderName, bool closeInputStream, bool clearCache, bool synchronize) { CommonLibrary.Services.FileSystem.FolderController objFolderController = new CommonLibrary.Services.FileSystem.FolderController(); CommonLibrary.Services.FileSystem.FileController objFileController = new CommonLibrary.Services.FileSystem.FileController(); string sourceFolderName = Globals.GetSubFolderPath(fileName, PortalId); CommonLibrary.Services.FileSystem.FolderInfo folder = objFolderController.GetFolder(PortalId, sourceFolderName, false); string sourceFileName = GetFileName(fileName); int intFileID; string retValue = ""; retValue += CheckValidFileName(fileName); if (!String.IsNullOrEmpty(retValue)) { return retValue; } string extension = Path.GetExtension(fileName).Replace(".", ""); if (String.IsNullOrEmpty(contentType)) { contentType = GetContentType(extension); } intFileID = objFileController.AddFile(PortalId, sourceFileName, extension, length, Null.NullInteger, Null.NullInteger, contentType, folderName, folder.FolderID, clearCache); if (folder.StorageLocation != (int)CommonLibrary.Services.FileSystem.FolderController.StorageLocationTypes.InsecureFileSystem || synchronize == false) { WriteStream(intFileID, inStream, fileName, folder.StorageLocation, closeInputStream); } retValue += UpdateFileData(intFileID, folder.FolderID, PortalId, sourceFileName, extension, contentType, length, folderName); if (folder.StorageLocation != (int)CommonLibrary.Services.FileSystem.FolderController.StorageLocationTypes.InsecureFileSystem) { DeleteFile(fileName); } if (folder.StorageLocation != (int)CommonLibrary.Services.FileSystem.FolderController.StorageLocationTypes.SecureFileSystem) { if (!fileName.EndsWith(".template")) { DeleteFile(fileName + Globals.glbProtectedExtension); } } return retValue; }
public static void AddFile(string FileName, int PortalId, string Folder, string HomeDirectoryMapPath, string contentType) { string strFile = HomeDirectoryMapPath + Folder + FileName; CommonLibrary.Services.FileSystem.FileController objFiles = new CommonLibrary.Services.FileSystem.FileController(); System.IO.FileInfo finfo = new System.IO.FileInfo(strFile); CommonLibrary.Services.FileSystem.FolderController objFolders = new CommonLibrary.Services.FileSystem.FolderController(); CommonLibrary.Services.FileSystem.FolderInfo objFolder = objFolders.GetFolder(PortalId, Folder, false); CommonLibrary.Services.FileSystem.FileInfo objFile; objFile = objFiles.GetFile(FileName, PortalId, objFolder.FolderID); if (objFile == null) { objFiles.AddFile(PortalId, FileName, finfo.Extension, finfo.Length, 0, 0, contentType, "", objFolder.FolderID, true); } else { objFiles.UpdateFile(objFile.FileId, objFile.FileName, finfo.Extension, finfo.Length, 0, 0, contentType, "", objFolder.FolderID); } }
private void ParseFiles(XmlNodeList nodeFiles, int PortalId, FolderInfo objFolder) { int FileId; FileController objController = new FileController(); CommonLibrary.Services.FileSystem.FileInfo objInfo; string fileName; foreach (XmlNode node in nodeFiles) { fileName = XmlUtils.GetNodeValue(node.CreateNavigator(), "filename"); objInfo = objController.GetFile(fileName, PortalId, objFolder.FolderID); if (objInfo == null) { objInfo = new CommonLibrary.Services.FileSystem.FileInfo(); objInfo.PortalId = PortalId; objInfo.FileName = fileName; objInfo.Extension = XmlUtils.GetNodeValue(node.CreateNavigator(), "extension"); objInfo.Size = XmlUtils.GetNodeValueInt(node, "size"); objInfo.Width = XmlUtils.GetNodeValueInt(node, "width"); objInfo.Height = XmlUtils.GetNodeValueInt(node, "height"); objInfo.ContentType = XmlUtils.GetNodeValue(node.CreateNavigator(), "contenttype"); objInfo.FolderId = objFolder.FolderID; objInfo.Folder = objFolder.FolderPath; FileId = objController.AddFile(objInfo); } else { FileId = objInfo.FileId; } } }