/** * Similar with {@link #setDeletedIfModified(long...)}, but here the {@code procId} are given by * the {@code tracker}. If a procedure is modified by us, and also by the given {@code tracker}, * then we mark it as deleted. * @see #setDeletedIfModified(long...) */ public void setDeletedIfModifiedInBoth(ProcedureStoreTracker tracker) { setDeleteIf(tracker, (node, procId) -> node != null && node.isModified(procId)); }
/** * For the global tracker, we will use this method to build the holdingCleanupTracker, as the * modified flags will be cleared after rolling so we only need to test the deleted flags. * @see #setDeletedIfModifiedInBoth(ProcedureStoreTracker) */ public void setDeletedIfDeletedByThem(ProcedureStoreTracker tracker) { setDeleteIf(tracker, (node, procId) -> node == null || !node.contains(procId) || node.isDeleted(procId) == DeleteState.YES); }
/** * Similar with {@link #setDeletedIfModified(long...)}, but here the {@code procId} are given by * the {@code tracker}. If a procedure is modified by us, and also by the given {@code tracker}, * then we mark it as deleted. * @see #setDeletedIfModified(long...) */ public void setDeletedIfModifiedInBoth(ProcedureStoreTracker tracker) { setDeleteIf(tracker, (node, procId) -> node != null && node.isModified(procId)); }
/** * For the global tracker, we will use this method to build the holdingCleanupTracker, as the * modified flags will be cleared after rolling so we only need to test the deleted flags. * @see #setDeletedIfModifiedInBoth(ProcedureStoreTracker) */ public void setDeletedIfDeletedByThem(ProcedureStoreTracker tracker) { setDeleteIf(tracker, (node, procId) -> node == null || !node.contains(procId) || node.isDeleted(procId) == DeleteState.YES); }