/// <summary> ///Delete local file /// </summary> /// <param name="InputFileDescription fileDesc">FileDescription object which contains the file data</param> /// <returns>bool</returns> public bool removeFile(InputFileDescription fileDesc) { //Initialize the result variable with the default value bool result = false; if (fileDesc != null) { try { if (!String.IsNullOrEmpty(fileDesc.Path)) { //Delete the file File.Delete(fileDesc.Path); result = true; } else { throw new DocumentsToolsException(); } } catch (DocumentsToolsException) { throw new GdtFileNotFoundException(locale, this.exceptionHandler); } } else { throw new GdtNullReferenceException(locale, this.exceptionHandler); } return(result); }
/// <summary> ///Save file localy from stream /// </summary> /// <param name="Stream st">File stream</param> /// <param name="string path">Folder where to save</param> /// <returns> InputFileDescription</returns> public InputFileDescription saveFile(Stream st, InputFileDescription inputFileDesc) { //Result ibject InputFileDescription fileDesc = new InputFileDescription(); try { if (st != null) { if (!String.IsNullOrEmpty(inputFileDesc.OperationId) && !String.IsNullOrEmpty(inputFileDesc.Name)) { string directory = getDirectory(inputFileDesc.OperationId); //Create new FileStream object which will be saved localy string pathForFile = String.Concat(directory, "/" + inputFileDesc.Name); try { using (System.IO.FileStream output = new System.IO.FileStream(pathForFile, FileMode.Create, FileAccess.Write)) { //Save stream to the local file st.CopyTo(output); //Set result data FileInfo fileInfo = new FileInfo(pathForFile); fileDesc.CreationTime = fileInfo.CreationTimeUtc; fileDesc.ModificationTime = fileInfo.LastWriteTimeUtc; fileDesc.UploadTime = DateTime.UtcNow; fileDesc.Name = Path.GetFileName(pathForFile); fileDesc.Path = directory; fileDesc.Size = st.Length; } } catch (DocumentsToolsException) { throw new GdtFileNotFoundException(locale, this.exceptionHandler); } } else { throw new GdtFileNotFoundException(locale, this.exceptionHandler); } } else { throw new GdtNullReferenceException(locale, this.exceptionHandler); } } catch (DocumentsToolsException ex) { throw ex; } return(fileDesc); }
/// <summary> ///Get file description /// </summary> /// <param name="FileDescription fileDesc">FileDescription of the </param> /// <returns>InputFileDescription</returns> public InputFileDescription getFileDescription(FileDescription fileDesc) { //Initialaze the InputFileDescription obhect wich will be returned InputFileDescription fileDescription = new InputFileDescription(); //Check if fileid is empty if (fileDesc != null) { try { if (!String.IsNullOrEmpty(fileDesc.Name) && !String.IsNullOrEmpty(fileDesc.OperationId)) { string path = getDirectory(fileDesc.OperationId); //Get FileInfo for the fileId FileInfo fi = new FileInfo(path + "/" + fileDesc.Name); //Set result data fileDescription.Name = fi.Name; fileDescription.Path = path; fileDescription.Size = fi.Length; fileDescription.CreationTime = fi.CreationTimeUtc; } else { throw new GdtFileNotFoundException(locale, this.exceptionHandler); } } catch (DocumentsToolsException) { throw new GdtNullReferenceException(locale, this.exceptionHandler); } } else { throw new GdtNullReferenceException(locale, this.exceptionHandler); } return(fileDescription); }