ChangeData: inline approvals() and drop Map from approvalsMap()

Change-Id: I9582be11bda331e03e758d6e8a35057886d976d7
This commit is contained in:
Dave Borowitz
2014-01-21 16:47:48 -08:00
parent 55bc67720e
commit b713b6393f
8 changed files with 11 additions and 20 deletions

View File

@@ -87,7 +87,7 @@ public class ApprovalCopier {
try {
ProjectState project =
projectCache.checkedGet(cd.change().getDest().getParentKey());
ListMultimap<PatchSet.Id, PatchSetApproval> all = cd.approvalsMap();
ListMultimap<PatchSet.Id, PatchSetApproval> all = cd.approvals();
Table<String, Account.Id, PatchSetApproval> byUser =
HashBasedTable.create();

View File

@@ -501,7 +501,7 @@ public class ChangeJson {
// All users ever added, even if they can't vote on one or all labels.
Set<Account.Id> allUsers = Sets.newHashSet();
ListMultimap<PatchSet.Id, PatchSetApproval> allApprovals =
cd.approvalsMap();
cd.approvals();
for (PatchSetApproval psa : allApprovals.values()) {
allUsers.add(psa.getAccountId());
}
@@ -547,7 +547,7 @@ public class ChangeJson {
LabelTypes labelTypes, boolean standard, boolean detailed)
throws OrmException {
Set<Account.Id> allUsers = Sets.newHashSet();
for (PatchSetApproval psa : cd.approvals()) {
for (PatchSetApproval psa : cd.approvals().values()) {
allUsers.add(psa.getAccountId());
}

View File

@@ -215,7 +215,7 @@ public class ChangeField {
public Iterable<Integer> get(ChangeData input, FillArgs args)
throws OrmException {
Set<Integer> r = Sets.newHashSet();
for (PatchSetApproval a : input.approvals()) {
for (PatchSetApproval a : input.approvals().values()) {
r.add(a.getAccountId().get());
}
return r;

View File

@@ -451,21 +451,12 @@ public class ChangeData {
return null;
}
/**
* @return patch set approvals for the change in timestamp order.
* @throws OrmException an error occurred reading the database.
*/
public List<PatchSetApproval> approvals()
throws OrmException {
return ImmutableList.copyOf(approvalsMap().values());
}
/**
* @return all patch set approvals for the change, keyed by ID, ordered by
* timestamp within each patch set.
* @throws OrmException an error occurred reading the database.
*/
public ListMultimap<PatchSet.Id, PatchSetApproval> approvalsMap()
public ListMultimap<PatchSet.Id, PatchSetApproval> approvals()
throws OrmException {
if (allApprovals == null) {
allApprovals = approvalsUtil.byChange(db, notes());
@@ -475,7 +466,7 @@ public class ChangeData {
public SetMultimap<ReviewerState, Account.Id> reviewers()
throws OrmException {
return approvalsUtil.getReviewers(notes(), approvals());
return approvalsUtil.getReviewers(notes(), approvals().values());
}
public Collection<PatchLineComment> comments()

View File

@@ -34,7 +34,7 @@ class IsReviewedPredicate extends IndexPredicate<ChangeData> {
}
PatchSet.Id current = c.currentPatchSetId();
for (PatchSetApproval p : object.approvals()) {
for (PatchSetApproval p : object.approvals().values()) {
if (p.getPatchSetId().equals(current) && p.getValue() != 0) {
return true;
}

View File

@@ -335,11 +335,11 @@ public class QueryProcessor {
if (includePatchSets) {
if (includeFiles) {
eventFactory.addPatchSets(c, d.patches(),
includeApprovals ? d.approvalsMap().asMap() : null,
includeApprovals ? d.approvals().asMap() : null,
includeFiles, d.change(), labelTypes);
} else {
eventFactory.addPatchSets(c, d.patches(),
includeApprovals ? d.approvalsMap().asMap() : null,
includeApprovals ? d.approvals().asMap() : null,
labelTypes);
}
}

View File

@@ -34,7 +34,7 @@ class ReviewerPredicate extends IndexPredicate<ChangeData> {
@Override
public boolean match(final ChangeData object) throws OrmException {
for (PatchSetApproval p : object.approvals()) {
for (PatchSetApproval p : object.approvals().values()) {
if (id.equals(p.getAccountId())) {
return true;
}

View File

@@ -41,7 +41,7 @@ class ReviewerinPredicate extends OperatorPredicate<ChangeData> {
@Override
public boolean match(final ChangeData object) throws OrmException {
for (PatchSetApproval p : object.approvals()) {
for (PatchSetApproval p : object.approvals().values()) {
final IdentifiedUser reviewer = userFactory.create(dbProvider,
p.getAccountId());
if (reviewer.getEffectiveGroups().contains(uuid)) {