namespace Thor.Shared; public abstract class RegisterBase where EntryType : EntryBase where ResultType : class { protected List Entries { get; } = []; public void Add(EntryType entry) { Entries.Add(entry); } public void Clear() { Entries.Clear(); } public List GetEntriesOrdered(string itemid) { var entries = Entries .Where(e => e.Target == itemid) .ToList(); entries.Sort((a, b) => a.When.CompareTo(b.When)); return entries; } public List GetEntriesOrdered() { var entries = Entries .ToList(); entries.Sort((a, b) => a.When.CompareTo(b.When)); return entries; } }