diff --git a/gaseous-server/Classes/ImportGames.cs b/gaseous-server/Classes/ImportGames.cs index 1157d4d..d72a143 100644 --- a/gaseous-server/Classes/ImportGames.cs +++ b/gaseous-server/Classes/ImportGames.cs @@ -469,7 +469,7 @@ namespace gaseous_server.Classes } } - public static void LibraryScan() + public static void LibraryScan(bool FullSignatureScan = false) { Logging.Log(Logging.LogType.Information, "Library Scan", "Starting library scan"); @@ -577,7 +577,7 @@ namespace gaseous_server.Classes FileInfo fi = new FileInfo(romPath); Models.Signatures_Games sig = GetFileSignature(hash, fi, romPath); - if (sig.Rom.SignatureSource != Models.Signatures_Games.RomItem.SignatureSourceType.None) + if (sig.Rom.SignatureSource != Models.Signatures_Games.RomItem.SignatureSourceType.None || FullSignatureScan == true) { Logging.Log(Logging.LogType.Information, "Library Scan", " Update signature found for " + romPath); diff --git a/gaseous-server/ProcessQueue.cs b/gaseous-server/ProcessQueue.cs index dcff93d..bff2d59 100644 --- a/gaseous-server/ProcessQueue.cs +++ b/gaseous-server/ProcessQueue.cs @@ -93,9 +93,13 @@ namespace gaseous_server case QueueItemType.LibraryScan: Logging.Log(Logging.LogType.Information, "Timered Event", "Starting Library Scanner"); - Classes.ImportGame.LibraryScan(); + Classes.ImportGame.LibraryScan(false); break; + case QueueItemType.LibraryScanFull: + Logging.Log(Logging.LogType.Information, "Timered Event", "Starting Full Library Scanner"); + Classes.ImportGame.LibraryScan(true); + break; } } catch (Exception ex) @@ -125,7 +129,8 @@ namespace gaseous_server TitleIngestor, MetadataRefresh, OrganiseLibrary, - LibraryScan + LibraryScan, + LibraryScanFull } public enum QueueItemState diff --git a/gaseous-server/Program.cs b/gaseous-server/Program.cs index 82181bf..eee053e 100644 --- a/gaseous-server/Program.cs +++ b/gaseous-server/Program.cs @@ -112,7 +112,16 @@ ProcessQueue.QueueItems.Add(new ProcessQueue.QueueItem( ProcessQueue.QueueItemType.LibraryScan, 30, new List { ProcessQueue.QueueItemType.TitleIngestor, - ProcessQueue.QueueItemType.OrganiseLibrary + ProcessQueue.QueueItemType.OrganiseLibrary, + ProcessQueue.QueueItemType.LibraryScanFull + }) + ); +ProcessQueue.QueueItems.Add(new ProcessQueue.QueueItem( + ProcessQueue.QueueItemType.LibraryScanFull, 10080, new List + { + ProcessQueue.QueueItemType.TitleIngestor, + ProcessQueue.QueueItemType.OrganiseLibrary, + ProcessQueue.QueueItemType.LibraryScan }) );