Refactor ChangeHookRunner as an interface
This enables deciding at startup time if hooks will be supported, and if not stub in a dummy implementation that does nothing. This is mainly useful for my gerrit-review.googlesource.com environment where the standard hook system of spawning an external program is not supportable. The factoring is a simple step towards a more pluggable event system. Someone could implement a new version of ChangeHooks that uses a Guice multibinding to dispatch these events to multiple instances of the ChangeHooks API. Change-Id: I6e9fba78f87d6e9ba8aaf80d386230334a492ea2
This commit is contained in:
@@ -14,7 +14,7 @@
|
||||
|
||||
package com.google.gerrit.sshd.commands;
|
||||
|
||||
import com.google.gerrit.common.ChangeHookRunner;
|
||||
import com.google.gerrit.common.ChangeHooks;
|
||||
import com.google.gerrit.common.data.ApprovalType;
|
||||
import com.google.gerrit.common.data.ApprovalTypes;
|
||||
import com.google.gerrit.common.data.ReviewResult;
|
||||
@@ -150,7 +150,7 @@ public class ReviewCommand extends BaseCommand {
|
||||
private RestoredSender.Factory restoredSenderFactory;
|
||||
|
||||
@Inject
|
||||
private ChangeHookRunner hooks;
|
||||
private ChangeHooks hooks;
|
||||
|
||||
@Inject
|
||||
private GitRepositoryManager gitManager;
|
||||
|
@@ -14,7 +14,7 @@
|
||||
|
||||
package com.google.gerrit.sshd.commands;
|
||||
|
||||
import com.google.gerrit.common.ChangeHookRunner;
|
||||
import com.google.gerrit.common.ChangeHooks;
|
||||
import com.google.gerrit.common.ChangeListener;
|
||||
import com.google.gerrit.server.IdentifiedUser;
|
||||
import com.google.gerrit.server.events.ChangeEvent;
|
||||
@@ -43,7 +43,7 @@ final class StreamEvents extends BaseCommand {
|
||||
private IdentifiedUser currentUser;
|
||||
|
||||
@Inject
|
||||
private ChangeHookRunner hooks;
|
||||
private ChangeHooks hooks;
|
||||
|
||||
@Inject
|
||||
@StreamCommandExecutor
|
||||
|
Reference in New Issue
Block a user