public class ApprovalsUtil
extends java.lang.Object
Approvals are overloaded, they represent both approvals and reviewers which should be CCed on a change. To ensure that reviewers are not lost there must always be an approval on each patchset for each reviewer, even if the reviewer hasn't actually given a score to the change. To mark the "no score" case, a dummy approval, which may live in any of the available categories, with a score of 0 is used.
The methods in this class only modify the gwtorm database.
Constructor and Description |
---|
ApprovalsUtil(NotesMigration migration,
ApprovalCopier copier) |
Modifier and Type | Method and Description |
---|---|
void |
addApprovals(com.google.gerrit.reviewdb.server.ReviewDb db,
ChangeUpdate update,
com.google.gerrit.common.data.LabelTypes labelTypes,
com.google.gerrit.reviewdb.client.PatchSet ps,
com.google.gerrit.reviewdb.client.PatchSetInfo info,
com.google.gerrit.reviewdb.client.Change change,
ChangeControl changeCtl,
java.util.Map<java.lang.String,java.lang.Short> approvals) |
java.util.List<com.google.gerrit.reviewdb.client.PatchSetApproval> |
addReviewers(com.google.gerrit.reviewdb.server.ReviewDb db,
ChangeNotes notes,
ChangeUpdate update,
com.google.gerrit.common.data.LabelTypes labelTypes,
com.google.gerrit.reviewdb.client.Change change,
java.lang.Iterable<com.google.gerrit.reviewdb.client.Account.Id> wantReviewers) |
java.util.List<com.google.gerrit.reviewdb.client.PatchSetApproval> |
addReviewers(com.google.gerrit.reviewdb.server.ReviewDb db,
ChangeUpdate update,
com.google.gerrit.common.data.LabelTypes labelTypes,
com.google.gerrit.reviewdb.client.Change change,
com.google.gerrit.reviewdb.client.PatchSet ps,
com.google.gerrit.reviewdb.client.PatchSetInfo info,
java.lang.Iterable<com.google.gerrit.reviewdb.client.Account.Id> wantReviewers,
java.util.Collection<com.google.gerrit.reviewdb.client.Account.Id> existingReviewers) |
com.google.common.collect.ListMultimap<com.google.gerrit.reviewdb.client.PatchSet.Id,com.google.gerrit.reviewdb.client.PatchSetApproval> |
byChange(com.google.gerrit.reviewdb.server.ReviewDb db,
ChangeNotes notes) |
java.lang.Iterable<com.google.gerrit.reviewdb.client.PatchSetApproval> |
byPatchSet(com.google.gerrit.reviewdb.server.ReviewDb db,
ChangeControl ctl,
com.google.gerrit.reviewdb.client.PatchSet.Id psId) |
java.lang.Iterable<com.google.gerrit.reviewdb.client.PatchSetApproval> |
byPatchSetUser(com.google.gerrit.reviewdb.server.ReviewDb db,
ChangeControl ctl,
com.google.gerrit.reviewdb.client.PatchSet.Id psId,
com.google.gerrit.reviewdb.client.Account.Id accountId) |
static void |
checkLabel(com.google.gerrit.common.data.LabelTypes labelTypes,
java.lang.String name,
java.lang.Short value) |
com.google.common.collect.ImmutableSetMultimap<ReviewerState,com.google.gerrit.reviewdb.client.Account.Id> |
getReviewers(ChangeNotes notes,
java.lang.Iterable<com.google.gerrit.reviewdb.client.PatchSetApproval> allApprovals)
Get all reviewers for a change.
|
com.google.common.collect.ImmutableSetMultimap<ReviewerState,com.google.gerrit.reviewdb.client.Account.Id> |
getReviewers(com.google.gerrit.reviewdb.server.ReviewDb db,
ChangeNotes notes)
Get all reviewers for a change.
|
static com.google.gerrit.reviewdb.client.PatchSetApproval |
getSubmitter(com.google.gerrit.reviewdb.client.PatchSet.Id c,
java.lang.Iterable<com.google.gerrit.reviewdb.client.PatchSetApproval> approvals) |
com.google.gerrit.reviewdb.client.PatchSetApproval |
getSubmitter(com.google.gerrit.reviewdb.server.ReviewDb db,
ChangeNotes notes,
com.google.gerrit.reviewdb.client.PatchSet.Id c) |
static java.util.List<com.google.gerrit.reviewdb.client.PatchSetApproval> |
sortApprovals(java.lang.Iterable<com.google.gerrit.reviewdb.client.PatchSetApproval> approvals) |
@Inject public ApprovalsUtil(NotesMigration migration, ApprovalCopier copier)
public static java.util.List<com.google.gerrit.reviewdb.client.PatchSetApproval> sortApprovals(java.lang.Iterable<com.google.gerrit.reviewdb.client.PatchSetApproval> approvals)
public com.google.common.collect.ImmutableSetMultimap<ReviewerState,com.google.gerrit.reviewdb.client.Account.Id> getReviewers(com.google.gerrit.reviewdb.server.ReviewDb db, ChangeNotes notes) throws com.google.gwtorm.server.OrmException
db
- review database.notes
- change notes.Multimap.values()
, and
ReviewerState.REMOVED
is not present.com.google.gwtorm.server.OrmException
- if reviewers for the change could not be read.public com.google.common.collect.ImmutableSetMultimap<ReviewerState,com.google.gerrit.reviewdb.client.Account.Id> getReviewers(ChangeNotes notes, java.lang.Iterable<com.google.gerrit.reviewdb.client.PatchSetApproval> allApprovals) throws com.google.gwtorm.server.OrmException
allApprovals
- all approvals to consider; must all belong to the same
change.Multimap.values()
, and
ReviewerState.REMOVED
is not present.com.google.gwtorm.server.OrmException
public java.util.List<com.google.gerrit.reviewdb.client.PatchSetApproval> addReviewers(com.google.gerrit.reviewdb.server.ReviewDb db, ChangeUpdate update, com.google.gerrit.common.data.LabelTypes labelTypes, com.google.gerrit.reviewdb.client.Change change, com.google.gerrit.reviewdb.client.PatchSet ps, com.google.gerrit.reviewdb.client.PatchSetInfo info, java.lang.Iterable<com.google.gerrit.reviewdb.client.Account.Id> wantReviewers, java.util.Collection<com.google.gerrit.reviewdb.client.Account.Id> existingReviewers) throws com.google.gwtorm.server.OrmException
com.google.gwtorm.server.OrmException
public java.util.List<com.google.gerrit.reviewdb.client.PatchSetApproval> addReviewers(com.google.gerrit.reviewdb.server.ReviewDb db, ChangeNotes notes, ChangeUpdate update, com.google.gerrit.common.data.LabelTypes labelTypes, com.google.gerrit.reviewdb.client.Change change, java.lang.Iterable<com.google.gerrit.reviewdb.client.Account.Id> wantReviewers) throws com.google.gwtorm.server.OrmException
com.google.gwtorm.server.OrmException
public void addApprovals(com.google.gerrit.reviewdb.server.ReviewDb db, ChangeUpdate update, com.google.gerrit.common.data.LabelTypes labelTypes, com.google.gerrit.reviewdb.client.PatchSet ps, com.google.gerrit.reviewdb.client.PatchSetInfo info, com.google.gerrit.reviewdb.client.Change change, ChangeControl changeCtl, java.util.Map<java.lang.String,java.lang.Short> approvals) throws com.google.gwtorm.server.OrmException
com.google.gwtorm.server.OrmException
public static void checkLabel(com.google.gerrit.common.data.LabelTypes labelTypes, java.lang.String name, java.lang.Short value)
public com.google.common.collect.ListMultimap<com.google.gerrit.reviewdb.client.PatchSet.Id,com.google.gerrit.reviewdb.client.PatchSetApproval> byChange(com.google.gerrit.reviewdb.server.ReviewDb db, ChangeNotes notes) throws com.google.gwtorm.server.OrmException
com.google.gwtorm.server.OrmException
public java.lang.Iterable<com.google.gerrit.reviewdb.client.PatchSetApproval> byPatchSet(com.google.gerrit.reviewdb.server.ReviewDb db, ChangeControl ctl, com.google.gerrit.reviewdb.client.PatchSet.Id psId) throws com.google.gwtorm.server.OrmException
com.google.gwtorm.server.OrmException
public java.lang.Iterable<com.google.gerrit.reviewdb.client.PatchSetApproval> byPatchSetUser(com.google.gerrit.reviewdb.server.ReviewDb db, ChangeControl ctl, com.google.gerrit.reviewdb.client.PatchSet.Id psId, com.google.gerrit.reviewdb.client.Account.Id accountId) throws com.google.gwtorm.server.OrmException
com.google.gwtorm.server.OrmException
public com.google.gerrit.reviewdb.client.PatchSetApproval getSubmitter(com.google.gerrit.reviewdb.server.ReviewDb db, ChangeNotes notes, com.google.gerrit.reviewdb.client.PatchSet.Id c)
public static com.google.gerrit.reviewdb.client.PatchSetApproval getSubmitter(com.google.gerrit.reviewdb.client.PatchSet.Id c, java.lang.Iterable<com.google.gerrit.reviewdb.client.PatchSetApproval> approvals)