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 { try {
ProjectState project = ProjectState project =
projectCache.checkedGet(cd.change().getDest().getParentKey()); 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 = Table<String, Account.Id, PatchSetApproval> byUser =
HashBasedTable.create(); 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. // All users ever added, even if they can't vote on one or all labels.
Set<Account.Id> allUsers = Sets.newHashSet(); Set<Account.Id> allUsers = Sets.newHashSet();
ListMultimap<PatchSet.Id, PatchSetApproval> allApprovals = ListMultimap<PatchSet.Id, PatchSetApproval> allApprovals =
cd.approvalsMap(); cd.approvals();
for (PatchSetApproval psa : allApprovals.values()) { for (PatchSetApproval psa : allApprovals.values()) {
allUsers.add(psa.getAccountId()); allUsers.add(psa.getAccountId());
} }
@@ -547,7 +547,7 @@ public class ChangeJson {
LabelTypes labelTypes, boolean standard, boolean detailed) LabelTypes labelTypes, boolean standard, boolean detailed)
throws OrmException { throws OrmException {
Set<Account.Id> allUsers = Sets.newHashSet(); Set<Account.Id> allUsers = Sets.newHashSet();
for (PatchSetApproval psa : cd.approvals()) { for (PatchSetApproval psa : cd.approvals().values()) {
allUsers.add(psa.getAccountId()); allUsers.add(psa.getAccountId());
} }

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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