aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/Tango.EmbroideryUI/EmbroideryMaterialsHelper.cs
blob: 86704a2fdf67d8da6f00b22f169f2298e87d0862 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Tango.PPC.Common.BackupRestore
{
    /// <summary>
    /// Represents a backup/restore manager.
    /// </summary>
    public interface IBackupManager
    {
        /// <summary>
        /// Occurs when the backup/restore procedure makes progress.
        /// </summary>
        event EventHandler<BackupRestoreProgressEventArgs> Progress;

        /// <summary>
        /// Creates a backup file containing database, application and firmware versions.
        /// </summary>
        /// <param name="filePath">The file path.</param>
        /// <param name="name">The backup name.</param>
        /// <param name="settings">Backup configuration.</param>
        /// <returns></returns>
        Task CreateBackup(String filePath, String name, BackupSettings settings);

        /// <summary>
        /// Restores a backup located in the specified file path.
        /// </summary>
        /// <param name="filePath">The file path.</param>
        /// <param name="settings">The restore settings</param>
        /// <returns></returns>
        Task<RestoreResult> Restore(String filePath, RestoreSettings settings);

        /// <summary>
        /// Extracts the backup configuration from the specified backup file.
        /// </summary>
        /// <param name="filePath">The file path.</param>
        /// <returns></returns>
        Task<BackupFile> ExtractBackupConfiguration(String filePath);
    }
}