public static string Dump(this ClanWarLog warLog) { var sb = new StringBuilder(); if (warLog != null) { foreach (var entry in warLog.Where(w => w.Opponent.Tag != null)) { sb.Append(Environment.NewLine); sb.Append(entry.Dump()); } } return(sb.ToString()); }
protected virtual bool HasUpdated(ClanWarLog?stored, ClanWarLog fetched) { if (stored?.Items == null || fetched?.Items == null) { return(false); } if (stored.Items.Count == 0 && fetched.Items.Count == 0) { return(false); } if (stored.Items.Count != fetched.Items.Count) { return(true); } return(stored.Items.Max(i => i?.EndTime ?? DateTime.MinValue) != fetched.Items.Max(i => i?.EndTime ?? DateTime.MinValue)); }
internal void OnClanWarLogUpdated(ClanWarLog?stored, ClanWarLog fetched) { Task.Run(() => ClanWarLogUpdated?.Invoke(this, new ClanWarLogUpdatedEventArgs(stored, fetched))); }
public ClanWarLogUpdatedEventArgs(ClanWarLog?stored, ClanWarLog fetched) { Fetched = fetched; Stored = stored; }