From c4bc88af236ef3e3774b43be81d53cd6d81585c8 Mon Sep 17 00:00:00 2001 From: Euro Lew Date: Wed, 22 May 2024 14:50:37 +0100 Subject: [PATCH] BACKPORT-CONFLICT --- .../zeebe/snapshots/MutableChecksumsSFV.java | 19 ++++++++++++++++++ .../zeebe/snapshots/impl/SfvChecksumImpl.java | 20 +++++++++++++++++++ 2 files changed, 39 insertions(+) diff --git a/zeebe/snapshot/src/main/java/io/camunda/zeebe/snapshots/MutableChecksumsSFV.java b/zeebe/snapshot/src/main/java/io/camunda/zeebe/snapshots/MutableChecksumsSFV.java index ddb7fd01bdeb..11cc0d757283 100644 --- a/zeebe/snapshot/src/main/java/io/camunda/zeebe/snapshots/MutableChecksumsSFV.java +++ b/zeebe/snapshot/src/main/java/io/camunda/zeebe/snapshots/MutableChecksumsSFV.java @@ -39,4 +39,23 @@ public interface MutableChecksumsSFV extends ImmutableChecksumsSFV { * @param lines the lines (in SFV) to build up the checksum collection */ void updateFromSfvFile(final String... lines); +<<<<<<< HEAD +======= + + /** + * Update the checksum map with the given checksum + * + * @param filePath path to file + * @param checksum check of file given + */ + void updateFromChecksum(final Path filePath, final Long checksum); + + /** + * Returns if all file checksums match exactly. + * + * @param o The other checksum + * @return boolean denoting match + */ + boolean sameChecksums(ImmutableChecksumsSFV o); +>>>>>>> b85ac5f5 (feat: added a way to update purely from checksum for mutable checksums) } diff --git a/zeebe/snapshot/src/main/java/io/camunda/zeebe/snapshots/impl/SfvChecksumImpl.java b/zeebe/snapshot/src/main/java/io/camunda/zeebe/snapshots/impl/SfvChecksumImpl.java index 77565320c005..217d0db97a2b 100644 --- a/zeebe/snapshot/src/main/java/io/camunda/zeebe/snapshots/impl/SfvChecksumImpl.java +++ b/zeebe/snapshot/src/main/java/io/camunda/zeebe/snapshots/impl/SfvChecksumImpl.java @@ -157,6 +157,26 @@ public void updateFromSfvFile(final String... lines) { } } +<<<<<<< HEAD +======= + @Override + public void updateFromChecksum(final Path filePath, final Long checksum) { + final String fileName = filePath.getFileName().toString(); + checksums.put(fileName, checksum); + } + + @Override + public boolean sameChecksums(final ImmutableChecksumsSFV o) { + if (this == o) { + return true; + } + if (o == null) { + return false; + } + return Objects.equals(checksums, o.getChecksums()); + } + +>>>>>>> b85ac5f5 (feat: added a way to update purely from checksum for mutable checksums) private static class PreDefinedImmutableChecksum implements Checksum { private final long crc;