public static void CreateDemoRequiredFiles() { BackupFiles objBackupFiles; BackupFile objBackupFile; FilesToBackup objFilesToBackup; FileToBackUp objFileToBackup; SingleFileToBackUp objSingleFileToBackup; //Procedure for reading file from tape; Backup files must have a Size, NewFileName, FilePath and StartTapeLocation to be restored objBackupFiles = new BackupFiles(); objBackupFile = new BackupFile { StartTapeLocation = 0, EndTapeLocation = 84673, FilePath = Directory.GetCurrentDirectory() + "\\", FileName = "Test1.txt", Size = 5549095658 }; objBackupFiles.Add(objBackupFile); objBackupFile = new BackupFile { StartTapeLocation = 84673, EndTapeLocation = 84990, FilePath = Directory.GetCurrentDirectory() + "\\", FileName = "Test2.txt", Size = 20764304 }; objBackupFiles.Add(objBackupFile); objBackupFiles.SaveToXMLFile(Directory.GetCurrentDirectory() + "\\", "BackedUpFilesExample.xml"); //Backup files must have a FilePath and FileName in order to be written to the tape; StartTapeLocation is required when writing a single file, //otherwise the app assigns locations as it's backing up multiple files objFilesToBackup = new FilesToBackup(); objFileToBackup = new FileToBackUp { FilePath = Directory.GetCurrentDirectory() + "\\", FileName = "Test1.txt" }; objFilesToBackup.Add(objFileToBackup); objFileToBackup = new FileToBackUp { FilePath = Directory.GetCurrentDirectory() + "\\", FileName = "Test2.txt" }; objFilesToBackup.Add(objFileToBackup); objFilesToBackup.SaveToXMLFile(Directory.GetCurrentDirectory() + "\\", "FilesToBackupExample.xml"); objSingleFileToBackup = new SingleFileToBackUp { StartTapeLocation = 84673, FilePath = Directory.GetCurrentDirectory() + "\\", FileName = "Test2.txt" }; objSingleFileToBackup.Serialize(Directory.GetCurrentDirectory() + "\\FileToBackupExample.xml"); }
/// <summary> /// Updates the collection of backup files at index if it's exists, otherwise adds a new one. /// </summary> /// <param name="index"></param> /// <param name="backupFile"></param> public void UpdateBackupFile(int index, BackupFile backupFile) { if (BackupFiles[index] == null) { BackupFiles.Add(backupFile); return; } BackupFiles[index] = backupFile; }
/// <summary> /// Create/store a backup of the specified file, and then downloads it locally to a known path /// </summary> /// <param name="modItem"></param> /// <param name="fileName"></param> /// <param name="installFilePath"></param> public void CreateBackupFile(ModItem modItem, string fileName, string installFilePath) { var fileBackupFolder = GetGameBackupFolder(modItem); _ = Directory.CreateDirectory(fileBackupFolder); var backupFile = new BackupFile { CategoryId = modItem.GameId, FileName = fileName, LocalPath = Path.Combine(fileBackupFolder, fileName), InstallPath = installFilePath }; FtpExtensions.DownloadFile(backupFile.LocalPath, backupFile.InstallPath); BackupFiles.Add(backupFile); }
public FileEntry AddBackupFile(string fileName /* C:/Windows/write.exe */, int replicationDegree) { if (string.IsNullOrWhiteSpace(fileName)) { throw new ArgumentNullException("fileName"); } if (!File.Exists(fileName)) { return(null); } // get a unique filename from the original file path // if the new filename already exists, append a number to it var fileNameWithoutPath = Path.GetFileName(fileName); /* write.exe */ var newFileName = fileNameWithoutPath; var count = 1; while (BackupFiles.ContainsKey(newFileName)) { var ext = Path.GetExtension(newFileName); var name = Path.GetFileNameWithoutExtension(newFileName); newFileName = name + '_' + count + ext; count++; } var fileEntry = new FileEntry { FileName = newFileName, OriginalFileName = fileName, ReplicationDegree = replicationDegree }; BackupFiles.Add(newFileName, fileEntry); return(fileEntry); }
private static void BackupSingleFile(string strFileToBackupFilePathAndName) { SingleFileToBackUp objSingleFileToBackup; //BackupFiles objBackupFiles; BackupFile objBackupFile; try { using (StreamWriter w = File.CreateText("log.txt")) { Log(string.Format("Backup Operation Started at {0}", DateTime.Now), w); // Close the writer and underlying file. w.Close(); } BackupFileList = new BackupFiles(); objSingleFileToBackup = SingleFileToBackUp.DeSerialize(strFileToBackupFilePathAndName); objBackupFile = new BackupFile { FileName = objSingleFileToBackup.FileName, FilePath = objSingleFileToBackup.FilePath, StartTapeLocation = objSingleFileToBackup.StartTapeLocation }; Backup.WriteFileToTape(objBackupFile); BackupFileList.Add(objBackupFile); BackupFileList.SaveToXMLFile(Directory.GetCurrentDirectory() + "\\", "BackedUpFile.xml"); using (StreamWriter w = File.AppendText("log.txt")) { Log(string.Format("Backup Operation Ended at {0}", DateTime.Now), w); // Close the writer and underlying file. w.Close(); } } catch (Exception objEx) { using (StreamWriter w = File.AppendText("log.txt")) { Log(string.Format("Error {0}", objEx.ToString()), w); // Close the writer and underlying file. w.Close(); } } }
public void WriteFileToTape(BackupFile objBackupFile) { BackupFiles objBackupFiles = new BackupFiles(); objBackupFiles.Add(objBackupFile); WriteFilesToTape(objBackupFiles, true); }
public void ReadFileFromTape(BackupFile objBackupFile) { BackupFiles objBackupFiles; objBackupFiles = new BackupFiles(); objBackupFiles.Add(objBackupFile); ReadFilesFromTape(objBackupFiles); }