Refactor: Coalesce account watch entry updates
Simplifies and consolidates logic for updating account watch entries.
Change-Id: I4a793543b6bfce0c2f76b39d612293bc57ab7a8c
diff --git a/src/main/java/com/googlesource/gerrit/plugins/renameproject/database/DatabaseRenameHandler.java b/src/main/java/com/googlesource/gerrit/plugins/renameproject/database/DatabaseRenameHandler.java
index dc70b30..12043ea 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/renameproject/database/DatabaseRenameHandler.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/renameproject/database/DatabaseRenameHandler.java
@@ -123,20 +123,18 @@
projectWatches.get(watchKey));
oldProjectWatches.add(watchKey);
try {
+ String updateMessage =
+ String.format(
+ "Remove watch entries for %s and Add watch entries for %s",
+ oldProjectKey.get(), newProjectKey.get());
accountsUpdateProvider
.get()
.update(
- "Add watch entry",
+ updateMessage,
accountId,
- (accountState, update) ->
- update.updateProjectWatches(newProjectWatches).build());
- accountsUpdateProvider
- .get()
- .update(
- "Remove watch entry",
- accountId,
- (accountState, update) ->
- update.deleteProjectWatches(oldProjectWatches).build());
+ u ->
+ u.deleteProjectWatches(oldProjectWatches)
+ .updateProjectWatches(newProjectWatches));
} catch (ConfigInvalidException e) {
log.error(
"Updating watch entry for user {} in project {} failed. Watch config found"