2
0

Compare commits

...

2 Commits

Author SHA1 Message Date
5cdc7d7207 Fix wrong jobtype 2023-11-05 16:14:23 +01:00
1bcbd1517f Addresses #81 2023-11-05 16:14:12 +01:00
2 changed files with 18 additions and 12 deletions

View File

@ -29,16 +29,11 @@ public class UpdateMetadata : Job
if(updatedManga.Equals(this.manga))
return Array.Empty<Job>();
cachedPublications.Remove(this.manga);
this.manga = updatedManga;
cachedPublications.Add(updatedManga);
this.manga.UpdateMetadata(updatedManga);
this.manga.SaveSeriesInfoJson(settings.downloadLocation, true);
if (parentJobId is not null)
if (parentJobId is not null && jobBoss.GetJobById(this.parentJobId) is DownloadNewChapters dncJob)
{
DownloadNewChapters dncJob = jobBoss.GetJobById(this.parentJobId) as DownloadNewChapters ??
throw new Exception("Jobtype has to be DownloadNewChapters");
dncJob.manga = updatedManga;
}
this.progressToken.Complete();

View File

@ -11,23 +11,23 @@ namespace Tranga;
/// </summary>
public struct Manga
{
public string sortName { get; }
public string sortName { get; private set; }
public List<string> authors { get; }
// ReSharper disable once UnusedAutoPropertyAccessor.Global
public Dictionary<string,string> altTitles { get; }
// ReSharper disable once MemberCanBePrivate.Global
public string? description { get; }
public string? description { get; private set; }
public string[] tags { get; }
// ReSharper disable once UnusedAutoPropertyAccessor.Global
public string? coverUrl { get; }
public string? coverFileNameInCache { get; set; }
public string? coverFileNameInCache { get; }
// ReSharper disable once UnusedAutoPropertyAccessor.Global
public Dictionary<string,string> links { get; }
// ReSharper disable once MemberCanBePrivate.Global
public int? year { get; }
public int? year { get; private set; }
public string? originalLanguage { get; }
// ReSharper disable twice MemberCanBePrivate.Global
public string status { get; }
public string status { get; private set; }
public ReleaseStatusByte releaseStatus { get; }
public enum ReleaseStatusByte : byte
{
@ -72,6 +72,17 @@ public struct Manga
this.releaseStatus = releaseStatus;
}
public void UpdateMetadata(Manga newManga)
{
this.sortName = newManga.sortName;
this.description = newManga.description;
foreach (string author in newManga.authors)
if(this.authors.Contains(author))
this.authors.Add(author);
this.status = newManga.status;
this.year = newManga.year;
}
public override bool Equals(object? obj)
{
if (obj is not Manga compareManga)