mirror of
https://github.com/xivdev/Penumbra.git
synced 2025-12-14 12:44:19 +01:00
29 lines
991 B
C#
29 lines
991 B
C#
using System.Collections.Generic;
|
|
using System.IO;
|
|
using System.Linq;
|
|
using OtterGui.Classes;
|
|
using OtterGui.Log;
|
|
using Penumbra.Util;
|
|
|
|
namespace Penumbra.Services;
|
|
|
|
public class BackupService
|
|
{
|
|
public BackupService(Logger logger, StartTracker timer, FilenameService fileNames)
|
|
{
|
|
using var t = timer.Measure(StartTimeType.Backup);
|
|
var files = PenumbraFiles(fileNames);
|
|
Backup.CreateBackup(logger, new DirectoryInfo(fileNames.ConfigDirectory), files);
|
|
}
|
|
|
|
// Collect all relevant files for penumbra configuration.
|
|
private static IReadOnlyList<FileInfo> PenumbraFiles(FilenameService fileNames)
|
|
{
|
|
var list = fileNames.CollectionFiles.ToList();
|
|
list.AddRange(fileNames.LocalDataFiles);
|
|
list.Add(new FileInfo(fileNames.ConfigFile));
|
|
list.Add(new FileInfo(fileNames.FilesystemFile));
|
|
list.Add(new FileInfo(fileNames.ActiveCollectionsFile));
|
|
return list;
|
|
}
|
|
}
|