AtomicityHelper: Use factory to instantiate SubmitRuleEvaluator
In change I429e7a67e the constructor of SubmitRuleEvaluator was
made private and a factory was introduced.
Rework the instantiation of SubmitRuleEvaluator to use the factory.
As a result, it is no longer necessary to inject AccountCache and
Accounts instances.
Change-Id: I97cb244f10b1c20d5010800d58b62cdd87b54bd6
diff --git a/src/main/java/com/criteo/gerrit/plugins/automerge/AtomicityHelper.java b/src/main/java/com/criteo/gerrit/plugins/automerge/AtomicityHelper.java
index befccda..71feb75 100644
--- a/src/main/java/com/criteo/gerrit/plugins/automerge/AtomicityHelper.java
+++ b/src/main/java/com/criteo/gerrit/plugins/automerge/AtomicityHelper.java
@@ -12,8 +12,6 @@
import com.google.gerrit.reviewdb.client.Project;
import com.google.gerrit.reviewdb.server.ReviewDb;
import com.google.gerrit.server.IdentifiedUser;
-import com.google.gerrit.server.account.AccountCache;
-import com.google.gerrit.server.account.Accounts;
import com.google.gerrit.server.account.Emails;
import com.google.gerrit.server.change.ChangesCollection;
import com.google.gerrit.server.change.GetRelated;
@@ -58,10 +56,6 @@
@Inject Provider<PostReview> reviewer;
- @Inject AccountCache accountCache;
-
- @Inject Accounts accounts;
-
@Inject Submit submitter;
@Inject Emails emails;
@@ -70,6 +64,8 @@
@Inject PermissionBackend permissionBackend;
+ @Inject SubmitRuleEvaluator.Factory submitRuleEvaluatorFactory;
+
/**
* Check if the current patchset of the specified change has dependent unmerged changes.
*
@@ -115,7 +111,8 @@
changeDataFactory.create(db.get(), new Project.NameKey(project), new Change.Id(change));
// For draft reviews, the patchSet must be set to avoid an NPE.
final List<SubmitRecord> cansubmit =
- new SubmitRuleEvaluator(accountCache, accounts, emails, changeData)
+ submitRuleEvaluatorFactory
+ .create(changeData)
.setPatchSet(changeData.currentPatchSet())
.evaluate();
log.debug(String.format("Checking if change %d is submitable.", change));