public void DeleteBackup(BackupDefenition bs) { if (bs == null) { return; } try { if (_backups.ContainsKey(bs.Name)) { _backups.Remove(bs.Name); } foreach (XmlElement xmlElement in _backupXml.ChildNodes) { if (xmlElement.GetAttribute("name").Equals(bs.Name)) { _backupXml.RemoveChild(xmlElement); } } } catch (Exception ex) { Logger.Log(LogLevel.Severe, "Backupmanager", "Severe error in deleteBackup(bs)!", ex.Message); } if (BackupsLoaded != null) { BackupsLoaded(); } }
private void BtnBackupExecute_Click(Object sender, EventArgs e) { if (SlvBackups.SelectedItems.Count < 1 || SlvBackups.SelectedItems[0] == null) { return; } BackupDefenition backup = Backup.Reference.GetBackupByName(SlvBackups.SelectedItems[0].SubItems[0].Text); backup.Execute(); }
public void SaveBackup(BackupDefenition oldBackup, BackupDefenition newBackup) { Logger.Log(LogLevel.Info, "Backupmanager", "Updating backup: " + oldBackup.Name + " - Will be replaced by its updated version"); DeleteBackup(oldBackup); AddBackupToXml(newBackup); if (BackupsLoaded != null) { BackupsLoaded(); } }
private void BtnBackupRemove_Click(Object sender, EventArgs e) { if (SlvBackups.SelectedItems.Count < 1 || SlvBackups.SelectedItems[0] == null) { return; } BackupDefenition backup = Backup.Reference.GetBackupByName(SlvBackups.SelectedItems[0].SubItems[0].Text); Backup.Reference.DeleteBackup(backup); UpdateUi(); }
private void BtnOk_Click(Object sender, EventArgs e) { Defenition = new BackupDefenition {Name = TxtName.Text}; foreach (string dir in TxtFolders.Text.Split(';')) { Defenition.AddFolder(dir); } Defenition.TargetDirectory = TxtDestination.Text; Defenition.Compression = ChkCompression.Checked; DialogResult = DialogResult.OK; Close(); }
private void BtnOk_Click(Object sender, EventArgs e) { Defenition = new BackupDefenition { Name = TxtName.Text }; foreach (string dir in TxtFolders.Text.Split(';')) { Defenition.AddFolder(dir); } Defenition.TargetDirectory = TxtDestination.Text; Defenition.Compression = ChkCompression.Checked; DialogResult = DialogResult.OK; Close(); }
private void BtnBackupEdit_Click(Object sender, EventArgs e) { if (SlvBackups.SelectedItems.Count < 1 || SlvBackups.SelectedItems[0] == null) { return; } BackupDefenition backup = Backup.Reference.GetBackupByName(SlvBackups.SelectedItems[0].SubItems[0].Text); BackupDialog bd = new BackupDialog(backup); if (bd.ShowDialog() == DialogResult.OK) { Backup.Reference.SaveBackup(backup, bd.Defenition); } UpdateUi(); }
/// <summary> /// Load all folders and files from the xml defenition /// </summary> /// <param name="xmle">The xml element defining the backup</param> /// <returns>Returns the backup defenition</returns> public static BackupDefenition LoadXml(XmlElement xmle) { if (xmle != null) { BackupDefenition bd = new BackupDefenition(); try { bd.Name = xmle.GetAttribute("name"); XmlElement foldersElement = (XmlElement)xmle.GetElementsByTagName("folders")[0]; foreach (string folder in foldersElement.InnerText.Split(';')) { string entry = folder.Trim(';').Trim(); if (Directory.Exists(entry)) { bd.AddFolder(entry); } if (File.Exists(entry)) { bd.AddFile(entry); } } XmlElement destinationE = (XmlElement)xmle.GetElementsByTagName("destination")[0]; bd.TargetDirectory = destinationE.InnerText; XmlElement compressionE = (XmlElement)xmle.GetElementsByTagName("compression")[0]; bd.Compression = (compressionE.InnerText.ToLower() == "true"); Logger.Log(LogLevel.Info, "Backupmanager", "Loaded backup:" + bd.Name + " :Backup enabled"); } catch (Exception ex) { Logger.Log(LogLevel.Warning, "Backupmanager", "Could not load backup:" + ex.Message); return(null); } return(bd); } Logger.Log(LogLevel.Warning, "Backupmanager", "Skipped backup! Wrong XML"); MetroMessageBox.Show(Application.OpenForms[0], Locale.Tr( "One of your backup profiles wasn't loaded: the file is probably corrupt! The backup profile was removed."), Locale.Tr("Can't load backup profile"), MessageBoxButtons.OK, MessageBoxIcon.Error); return(null); }
public bool AddBackupToXml(BackupDefenition bs) { if (bs == null) { return(false); } if (Backups.ContainsKey(bs.Name)) { MetroMessageBox.Show(Application.OpenForms[0], "Couldn't save backup! You already defined another backup with this name:" + bs.Name, "Couldn't save backup", MessageBoxButtons.OK, MessageBoxIcon.Warning); return(false); } if (string.IsNullOrEmpty(bs.Name)) { MetroMessageBox.Show(Application.OpenForms[0], "Couldn't save backup! You didn't enter a name for this backup!", "Couldn't save backup", MessageBoxButtons.OK, MessageBoxIcon.Warning); return(false); } try { string content = "<backup name=\"" + bs.Name + "\">" + " <folders>"+ StringUtil.ListToCsv(bs.Folders, ';') + "</folders>" + " <destination>"+ bs.TargetDirectory + "</destination>" + " <compression>"+ bs.Compression.ToString().ToLower() + "</compression>" + "</backup>"; _backupXml.FirstChild.InnerXml += content; _backupXml.Save(_backupXmlPath); Backups.Add(bs.Name, bs); if (BackupsLoaded != null) { BackupsLoaded(); } } catch (Exception ex) { Logger.Log(LogLevel.Severe, "Backupmanager", "Severe error in addBackup! " + ex.Message); return(false); } return(true); }
/// <summary> /// Load all folders and files from the xml defenition /// </summary> /// <param name="xmle">The xml element defining the backup</param> /// <returns>Returns the backup defenition</returns> public static BackupDefenition LoadXml(XmlElement xmle) { if (xmle != null) { BackupDefenition bd = new BackupDefenition(); try { bd.Name = xmle.GetAttribute("name"); XmlElement foldersElement = (XmlElement) xmle.GetElementsByTagName("folders")[0]; foreach (string folder in foldersElement.InnerText.Split(';')) { string entry = folder.Trim(';').Trim(); if (Directory.Exists(entry)) bd.AddFolder(entry); if (File.Exists(entry)) bd.AddFile(entry); } XmlElement destinationE = (XmlElement) xmle.GetElementsByTagName("destination")[0]; bd.TargetDirectory = destinationE.InnerText; XmlElement compressionE = (XmlElement) xmle.GetElementsByTagName("compression")[0]; bd.Compression = (compressionE.InnerText.ToLower() == "true"); Logger.Log(LogLevel.Info, "Backupmanager", "Loaded backup:" + bd.Name + " :Backup enabled"); } catch (Exception ex) { Logger.Log(LogLevel.Warning, "Backupmanager", "Could not load backup:" + ex.Message); return null; } return bd; } Logger.Log(LogLevel.Warning, "Backupmanager", "Skipped backup! Wrong XML"); MetroMessageBox.Show(Application.OpenForms[0], Locale.Tr( "One of your backup profiles wasn't loaded: the file is probably corrupt! The backup profile was removed."), Locale.Tr("Can't load backup profile"), MessageBoxButtons.OK, MessageBoxIcon.Error); return null; }
public void LoadAllBackups() { try { _backups = new Dictionary <string, BackupDefenition>(); Logger.Log(LogLevel.Info, "Backupmanager", "Loading backups..."); XmlElement rootElement = (XmlElement)_backupXml.GetElementsByTagName("backups")[0]; XmlNodeList elements = rootElement.GetElementsByTagName("backup"); if (elements.Count > 0) { for (int i = 0; i < elements.Count; i++) { Logger.Log(LogLevel.Info, "Backupmanager", "Parsing backup " + i + 1 + " out of " + elements.Count); XmlElement xmle = (XmlElement)elements[i]; BackupDefenition backup = new BackupDefenition(); backup.LoadXml(xmle); if (!_backups.ContainsKey(backup.Name)) { _backups.Add(backup.Name, backup); } else { Logger.Log(LogLevel.Warning, "Backupmanager", "Backup not loaded due to duplicate name!"); } } } Logger.Log(LogLevel.Info, "Backupmanager", "Loaded backups: " + _backups.Count + " backups loaded"); if (BackupsLoaded != null) { BackupsLoaded(); } } catch (Exception exception) { Logger.Log(LogLevel.Severe, "Backupmanager", "Failed to load backups!", exception.Message); } }
public bool AddBackupToXml(BackupDefenition bs) { if (bs == null) return false; if (_backups.ContainsKey(bs.Name)) { MetroMessageBox.Show(Application.OpenForms[0], "Couldn't save backup! You already defined another backup with this name:" + bs.Name, "Couldn't save backup", MessageBoxButtons.OK, MessageBoxIcon.Warning); return false; } if (string.IsNullOrEmpty(bs.Name)) { MetroMessageBox.Show(Application.OpenForms[0], "Couldn't save backup! You didn't enter a name for this backup!", "Couldn't save backup", MessageBoxButtons.OK, MessageBoxIcon.Warning); return false; } try { string content = "<backup name=\"" + bs.Name + "\">" + " <folders>" + StringUtil.ListToCsv(bs.Folders, ';') + "</folders>" + " <destination>" + bs.TargetDirectory + "</destination>" + " <compression>" + bs.Compression.ToString().ToLower() + "</compression>" + "</backup>"; _backupXml.FirstChild.InnerXml += content; _backupXml.Save(_backupXmlPath); _backups.Add(bs.Name, bs); if (BackupsLoaded != null) { BackupsLoaded(); } } catch (Exception ex) { Logger.Log(LogLevel.Severe, "Backupmanager", "Severe error in addBackup! " + ex.Message); return false; } return true; }
public BackupDialog(BackupDefenition defenition) { Load += BackupDialog_Load; InitializeComponent(); Defenition = defenition; }
public void LoadAllBackups() { try { _backups = new Dictionary<string, BackupDefenition>(); Logger.Log(LogLevel.Info, "Backupmanager", "Loading backups..."); XmlElement rootElement = (XmlElement) _backupXml.GetElementsByTagName("backups")[0]; XmlNodeList elements = rootElement.GetElementsByTagName("backup"); if (elements.Count > 0) { for (int i = 0; i < elements.Count; i++) { Logger.Log(LogLevel.Info, "Backupmanager", "Parsing backup " + i + 1 + " out of " + elements.Count); XmlElement xmle = (XmlElement) elements[i]; BackupDefenition backup = new BackupDefenition(); backup.LoadXml(xmle); if (!_backups.ContainsKey(backup.Name)) { _backups.Add(backup.Name, backup); } else { Logger.Log(LogLevel.Warning, "Backupmanager", "Backup not loaded due to duplicate name!"); } } } Logger.Log(LogLevel.Info, "Backupmanager", "Loaded backups: " + _backups.Count + " backups loaded"); if (BackupsLoaded != null) { BackupsLoaded(); } } catch (Exception exception) { Logger.Log(LogLevel.Severe, "Backupmanager", "Failed to load backups!", exception.Message); } }
public void DeleteBackup(BackupDefenition bs) { if (bs == null) return; try { if (_backups.ContainsKey(bs.Name)) _backups.Remove(bs.Name); foreach (XmlElement xmlElement in _backupXml.ChildNodes) { if (xmlElement.GetAttribute("name").Equals(bs.Name)) _backupXml.RemoveChild(xmlElement); } } catch (Exception ex) { Logger.Log(LogLevel.Severe, "Backupmanager", "Severe error in deleteBackup(bs)!", ex.Message); } if (BackupsLoaded != null) { BackupsLoaded(); } }