summaryrefslogtreecommitdiffstats
path: root/src/main/java/com/googlesource/gerrit/plugins/replication/ReplicationTasksStorage.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/com/googlesource/gerrit/plugins/replication/ReplicationTasksStorage.java')
-rw-r--r--src/main/java/com/googlesource/gerrit/plugins/replication/ReplicationTasksStorage.java13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/main/java/com/googlesource/gerrit/plugins/replication/ReplicationTasksStorage.java b/src/main/java/com/googlesource/gerrit/plugins/replication/ReplicationTasksStorage.java
index a8d075d..64397f9 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/replication/ReplicationTasksStorage.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/replication/ReplicationTasksStorage.java
@@ -16,6 +16,7 @@ package com.googlesource.gerrit.plugins.replication;
import static java.nio.charset.StandardCharsets.UTF_8;
+import com.google.common.annotations.VisibleForTesting;
import com.google.common.flogger.FluentLogger;
import com.google.common.hash.Hashing;
import com.google.gson.Gson;
@@ -35,6 +36,8 @@ import org.eclipse.jgit.transport.URIish;
public class ReplicationTasksStorage {
private static final FluentLogger logger = FluentLogger.forEnclosingClass();
+ private boolean disableDeleteForTesting;
+
public static class ReplicateRefUpdate {
public final String project;
public final String ref;
@@ -81,11 +84,21 @@ public class ReplicationTasksStorage {
return eventKey;
}
+ @VisibleForTesting
+ public void disableDeleteForTesting(boolean deleteDisabled) {
+ this.disableDeleteForTesting = deleteDisabled;
+ }
+
public void delete(ReplicateRefUpdate r) {
String taskJson = GSON.toJson(r) + "\n";
String taskKey = sha1(taskJson).name();
Path file = refUpdates().resolve(taskKey);
+ if (disableDeleteForTesting) {
+ logger.atFine().log("DELETE %s (%s:%s => %s) DISABLED", file, r.project, r.ref, r.uri);
+ return;
+ }
+
try {
logger.atFine().log("DELETE %s (%s:%s => %s)", file, r.project, r.ref, r.uri);
Files.delete(file);