Improve Overrides in event plugin Provide a functional default getDestination() that can be overridden for sharding, and override it for testing with the original "dumb" version. Also add more missing @Overrides. Change-Id: Ibbfca57616390c1c6abe7c0e492c84a1cac941ea
diff --git a/src/main/java/com/googlesource/gerrit/plugins/events/fsstore/EventSequence.java b/src/main/java/com/googlesource/gerrit/plugins/events/fsstore/EventSequence.java index 1c51219..4a91642 100644 --- a/src/main/java/com/googlesource/gerrit/plugins/events/fsstore/EventSequence.java +++ b/src/main/java/com/googlesource/gerrit/plugins/events/fsstore/EventSequence.java
@@ -107,12 +107,14 @@ return currentValue + 1; } + @Override protected UniqueUpdate createUniqueUpdate(String uuid, boolean ours, long maxTries) throws IOException { return new UniqueUpdate(uuid, ours, maxTries); } + /** Override to shard */ protected Path getEventDestination(Long n) { - return paths.base.resolve(EVENT); + return paths.base.resolve(EVENT).resolve(n.toString()); } }
diff --git a/src/main/java/com/googlesource/gerrit/plugins/events/fsstore/FsSequence.java b/src/main/java/com/googlesource/gerrit/plugins/events/fsstore/FsSequence.java index 7d2d98e..5b7135e 100644 --- a/src/main/java/com/googlesource/gerrit/plugins/events/fsstore/FsSequence.java +++ b/src/main/java/com/googlesource/gerrit/plugins/events/fsstore/FsSequence.java
@@ -109,6 +109,7 @@ return currentValue + 1; } + @Override protected UniqueUpdate createUniqueUpdate(String uuid, boolean ours, long maxTries) throws IOException { return new UniqueUpdate(uuid, ours, maxTries);
diff --git a/src/main/java/com/googlesource/gerrit/plugins/events/fsstore/FsStore.java b/src/main/java/com/googlesource/gerrit/plugins/events/fsstore/FsStore.java index 08b0a3b..a9cec81 100644 --- a/src/main/java/com/googlesource/gerrit/plugins/events/fsstore/FsStore.java +++ b/src/main/java/com/googlesource/gerrit/plugins/events/fsstore/FsStore.java
@@ -48,6 +48,7 @@ this.paths = paths; } + @Override protected Path getEventDestination(Long n) { Path event = paths.events.path(n); try {
diff --git a/src/test/java/com/googlesource/gerrit/plugins/events/fsstore/EventSequenceTest.java b/src/test/java/com/googlesource/gerrit/plugins/events/fsstore/EventSequenceTest.java index 5e0fb94..54618ff 100644 --- a/src/test/java/com/googlesource/gerrit/plugins/events/fsstore/EventSequenceTest.java +++ b/src/test/java/com/googlesource/gerrit/plugins/events/fsstore/EventSequenceTest.java
@@ -37,7 +37,14 @@ if (myBase == null) { myBase = Files.createTempDirectory(dir); } - seq = new EventSequence(myBase); + seq = + new EventSequence(myBase) { + @Override + protected Path getEventDestination(Long n) { + return paths.base.resolve(EVENT); + } + }; + seq.initFs((long) 0); }