Add ChangeMessagesUtil to assist with notedb migration

Like ApprovalsUtil, we added an abstraction layer to assist in the
migration to notedb. This utility class helps to write to either the
notedb or the reviewdb depending on the state of the NotesMigration
instance. Additionally, in this change, I modified all callers of
ChangeMessageAccess (which uses the ReviewDb) to instead use
ChangeMessagesUtil.

Change-Id: Id007ed8e01bd1318f70d804124e1f482a77234fd
This commit is contained in:
Yacob Yonas
2014-06-11 09:47:24 -07:00
parent 9755152e9f
commit 086006ec35
16 changed files with 352 additions and 161 deletions

View File

@@ -27,6 +27,7 @@ import com.google.gerrit.reviewdb.client.ChangeMessage;
import com.google.gerrit.reviewdb.client.PatchSetApproval;
import com.google.gerrit.reviewdb.server.ReviewDb;
import com.google.gerrit.server.ApprovalsUtil;
import com.google.gerrit.server.ChangeMessagesUtil;
import com.google.gerrit.server.ChangeUtil;
import com.google.gerrit.server.IdentifiedUser;
import com.google.gerrit.server.change.DeleteReviewer.Input;
@@ -40,7 +41,6 @@ import com.google.inject.Provider;
import com.google.inject.Singleton;
import java.io.IOException;
import java.util.Collections;
import java.util.List;
@Singleton
@@ -51,6 +51,7 @@ public class DeleteReviewer implements RestModifyView<ReviewerResource, Input> {
private final Provider<ReviewDb> dbProvider;
private final ChangeUpdate.Factory updateFactory;
private final ApprovalsUtil approvalsUtil;
private final ChangeMessagesUtil cmUtil;
private final ChangeIndexer indexer;
private final IdentifiedUser.GenericFactory userFactory;
@@ -58,11 +59,13 @@ public class DeleteReviewer implements RestModifyView<ReviewerResource, Input> {
DeleteReviewer(Provider<ReviewDb> dbProvider,
ChangeUpdate.Factory updateFactory,
ApprovalsUtil approvalsUtil,
ChangeMessagesUtil cmUtil,
ChangeIndexer indexer,
IdentifiedUser.GenericFactory userFactory) {
this.dbProvider = dbProvider;
this.updateFactory = updateFactory;
this.approvalsUtil = approvalsUtil;
this.cmUtil = cmUtil;
this.indexer = indexer;
this.userFactory = userFactory;
}
@@ -111,7 +114,7 @@ public class DeleteReviewer implements RestModifyView<ReviewerResource, Input> {
((IdentifiedUser) control.getCurrentUser()).getAccountId(),
TimeUtil.nowTs(), rsrc.getChange().currentPatchSetId());
changeMessage.setMessage(msg.toString());
db.changeMessages().insert(Collections.singleton(changeMessage));
cmUtil.addChangeMessage(db, update, changeMessage);
}
db.commit();