Fix merge Ib6aa8adbd causing 2x updates of refs/multi-site/version/*

Ib6aa8adbd doubled the binding of ProjectVersionRefUpdateImpl
to the stream event listener. This combined with the lack of a Singleton
annotation caused the triggering of a project version update twice per ref-update.

The issue was not present in stable-3.4, because the binding was
happening just once and the lack of the singleton did not have
consequences.

Change-Id: Iee3e74bd79bd49cc9dafe9317734def8c8655ef7
diff --git a/src/main/java/com/googlesource/gerrit/plugins/multisite/event/EventModule.java b/src/main/java/com/googlesource/gerrit/plugins/multisite/event/EventModule.java
index 53bcbc0..5e70aca 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/multisite/event/EventModule.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/multisite/event/EventModule.java
@@ -20,7 +20,6 @@
 import com.google.gerrit.lifecycle.LifecycleModule;
 import com.google.gerrit.server.events.EventListener;
 import com.google.inject.Inject;
-import com.google.inject.Scopes;
 import com.google.inject.multibindings.OptionalBinder;
 import com.googlesource.gerrit.plugins.multisite.Configuration;
 import com.googlesource.gerrit.plugins.multisite.forwarder.events.EventTopic;
@@ -37,8 +36,6 @@
 
   @Override
   protected void configure() {
-    DynamicSet.bind(binder(), EventListener.class).to(ProjectVersionRefUpdateImpl.class);
-
     bind(StreamEventPublisherConfig.class)
         .toInstance(
             new StreamEventPublisherConfig(
@@ -51,10 +48,7 @@
         OptionalBinder.newOptionalBinder(binder(), ProjectVersionRefUpdate.class);
     if (configuration.getSharedRefDbConfiguration().getSharedRefDb().isEnabled()) {
       DynamicSet.bind(binder(), EventListener.class).to(ProjectVersionRefUpdateImpl.class);
-      projectVersionRefUpdateBinder
-          .setBinding()
-          .to(ProjectVersionRefUpdateImpl.class)
-          .in(Scopes.SINGLETON);
+      projectVersionRefUpdateBinder.setBinding().to(ProjectVersionRefUpdateImpl.class);
     }
   }
 }
diff --git a/src/main/java/com/googlesource/gerrit/plugins/multisite/validation/ProjectVersionRefUpdateImpl.java b/src/main/java/com/googlesource/gerrit/plugins/multisite/validation/ProjectVersionRefUpdateImpl.java
index d412913..4d2515e 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/multisite/validation/ProjectVersionRefUpdateImpl.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/multisite/validation/ProjectVersionRefUpdateImpl.java
@@ -32,6 +32,7 @@
 import com.google.gerrit.server.extensions.events.GitReferenceUpdated;
 import com.google.gerrit.server.git.GitRepositoryManager;
 import com.google.inject.Inject;
+import com.google.inject.Singleton;
 import com.googlesource.gerrit.plugins.multisite.ProjectVersionLogger;
 import java.io.IOException;
 import java.nio.charset.StandardCharsets;
@@ -43,6 +44,7 @@
 import org.eclipse.jgit.lib.RefUpdate;
 import org.eclipse.jgit.lib.Repository;
 
+@Singleton
 public class ProjectVersionRefUpdateImpl implements EventListener, ProjectVersionRefUpdate {
   private static final FluentLogger logger = FluentLogger.forEnclosingClass();
   private static final Set<RefUpdate.Result> SUCCESSFUL_RESULTS =