private void Restore(Backup backup, string backupId, ConfirmCallback shouldBackup, ConfirmCallback canOverwrite) { backupId = _backupRepository.GetBackupId(backup, backupId); if (shouldBackup(backup, backupId)) { var newBackupId = _backupRepository.GetBackupId(); Backup(backup, newBackupId, canOverwrite); } _backupRepository.LoadBackup(backup, backupId); }