using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Tango.PMR.Exports;
using Tango.Web;
namespace Tango.PPC.Common.BackupRestore
{
/// <summary>
/// Represents a backup file record.
/// </summary>
public class BackupFile
{
/// <summary>
/// Gets or sets the backup file version.
/// </summary>
public int Version { get; set; }
/// <summary>
/// Gets or sets the backup name.
/// </summary>
public String Name { get; set; }
/// <summary>
/// Gets or sets the creation date.
/// </summary>
public DateTime Date { get; set; }
/// <summary>
/// Gets or sets the machine serial number.
/// </summary>
public String MachineSerialNumber { get; set; }
/// <summary>
/// Gets or sets the application version.
/// </summary>
public String ApplicationVersion { get; set; }
/// <summary>
/// Gets or sets the firmware version.
/// </summary>
public String FirmwareVersion { get; set; }
/// <summary>
/// Gets or sets the settings file.
/// </summary>
public String SettingsFile { get; set; }
/// <summary>
/// Gets or sets the job files.
/// </summary>
public List<JobFile> JobFiles { get; set; }
/// <summary>
/// Gets or sets the backup settings.
/// </summary>
public BackupSettings Settings { get; set; }
/// <summary>
/// Initializes a new instance of the <see cref="BackupFile"/> class.
/// </summary>
public BackupFile()
{
Settings = new BackupSettings();
JobFiles = new List<JobFile>();
}
public String ToJson()
{
return JsonConvert.SerializeObject(this);
}
public static BackupFile FromJson(String json)
{
return JsonConvert.DeserializeObject<BackupFile>(json);
}
}
}