38 lines
792 B
C#
38 lines
792 B
C#
namespace Thor.Shared;
|
|
|
|
public abstract class RegisterBase<EntryType, ResultType>
|
|
where EntryType : EntryBase
|
|
where ResultType : class
|
|
{
|
|
protected List<EntryType> Entries { get; } = [];
|
|
|
|
public void Add(EntryType entry)
|
|
{
|
|
Entries.Add(entry);
|
|
}
|
|
|
|
public void Clear()
|
|
{
|
|
Entries.Clear();
|
|
}
|
|
|
|
public List<EntryType> 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<EntryType> GetEntriesOrdered()
|
|
{
|
|
var entries = Entries
|
|
.ToList();
|
|
entries.Sort((a, b) => a.When.CompareTo(b.When));
|
|
|
|
return entries;
|
|
}
|
|
}
|