Save dat file in database.

This commit is contained in:
2020-08-22 05:40:50 +01:00
parent 25dd3f4921
commit 3b0feee452
8 changed files with 352 additions and 8 deletions

View File

@@ -28,6 +28,8 @@ using System.Diagnostics;
using System.IO;
using Aaru.Checksums;
using RomRepoMgr.Core.EventArgs;
using RomRepoMgr.Database;
using RomRepoMgr.Database.Models;
using SabreTools.Library.DatFiles;
using ErrorEventArgs = RomRepoMgr.Core.EventArgs.ErrorEventArgs;
@@ -83,6 +85,31 @@ namespace RomRepoMgr.Core.Workers
return;
}
SetMessage?.Invoke(this, new MessageEventArgs
{
Message = "Adding DAT to database..."
});
// TODO: Check if there is a has in database but not in repo
var romSet = new RomSet
{
Author = datFile.Header.Author,
Comment = datFile.Header.Comment,
Date = datFile.Header.Date,
Description = datFile.Header.Description,
Filename = Path.GetFileName(_datPath),
Homepage = datFile.Header.Homepage,
Name = datFile.Header.Name,
Sha384 = datHash,
Version = datFile.Header.Version,
CreatedOn = DateTime.UtcNow,
UpdatedOn = DateTime.UtcNow
};
Context.Singleton.RomSets.Add(romSet);
Context.Singleton.SaveChanges();
SetMessage?.Invoke(this, new MessageEventArgs
{
Message = "Compressing DAT file..."