protected override void OnUpdating(DataEvent ev) { ReadsDataEvent read = ev as ReadsDataEvent; // // IsSynced keeps track of initial sync, Resync keeps track of resync. // This convoluted logic is because of retrofitting PAGIS to allow // already synced reads to be resent via Wi-Fi. // // Also don't delete our linked tables if this is a scrubbed read because we can't recreate the hit // DataEvents are like the coolest thing ever if (!read.IsSynced && !read.Resync && read.VRM != "LPN_SCRUB") { foreach (DataTableBase linkedTable in this.LinkedTables) { foreach (DataEvent linkedEvent in ev.LinkedDataEvents(linkedTable)) { linkedTable.Delete(linkedEvent); } ev.LinkedDataEvents(linkedTable).Clear(); } if (this.DataFile.DataRepository is SystemRepository) { (this.DataFile.DataRepository as SystemRepository).HotLists.HotLists.ProcessRead(read); } } base.OnUpdating(ev); }