public static void WarnAndClear(PNode focus, ContentBackingStore fromContent, bool clearFirst, Func <bool> clearMethod, ContentBackingStore destContent) { if (focus.IsOutOfSyncFor(fromContent)) { Warn("IsOutOfSyncFor " + fromContent + " due to SyncFromNow==" + focus.SyncFromNow + " in " + focus); } if (clearFirst) { if (clearMethod()) { if (focus.SyncFromNow == destContent) { Warn("Lost Data from " + focus.SyncFromNow + " in " + focus); } } focus.SyncFromNow = ContentBackingStore.None; } else { focus.SyncFromNow = ContentBackingStore.None; focus.SyncFromNow = destContent; } }
public bool IsOutOfSyncFor(ContentBackingStore type) { return(type != SyncFromNow && SyncFromNow != ContentBackingStore.None); }
public bool IsDataFrom(ContentBackingStore backingStore) { return(SourceKind == backingStore); }