Merge "Ensure SubmitRecords are loaded in SubmittedTogether"
This commit is contained in:
@@ -135,7 +135,7 @@ public class SubmittedTogether implements RestReadView<ChangeResource> {
|
|||||||
if (c.getStatus().isOpen()) {
|
if (c.getStatus().isOpen()) {
|
||||||
ChangeSet cs =
|
ChangeSet cs =
|
||||||
mergeSuperSet.get().completeChangeSet(dbProvider.get(), c, resource.getUser());
|
mergeSuperSet.get().completeChangeSet(dbProvider.get(), c, resource.getUser());
|
||||||
cds = cs.changes().asList();
|
cds = ensureRequiredDataIsLoaded(cs.changes().asList());
|
||||||
hidden = cs.nonVisibleChanges().size();
|
hidden = cs.nonVisibleChanges().size();
|
||||||
} else if (c.getStatus().asChangeStatus() == ChangeStatus.MERGED) {
|
} else if (c.getStatus().asChangeStatus() == ChangeStatus.MERGED) {
|
||||||
cds = queryProvider.get().bySubmissionId(c.getSubmissionId());
|
cds = queryProvider.get().bySubmissionId(c.getSubmissionId());
|
||||||
@@ -184,4 +184,18 @@ public class SubmittedTogether implements RestReadView<ChangeResource> {
|
|||||||
}
|
}
|
||||||
return sorted;
|
return sorted;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private static List<ChangeData> ensureRequiredDataIsLoaded(List<ChangeData> cds)
|
||||||
|
throws OrmException {
|
||||||
|
// TODO(hiesel): Instead of calling these manually, either implement a helper that brings a
|
||||||
|
// database-backed change on-par with an index-backed change in terms of the populated fields in
|
||||||
|
// ChangeData or check if any of the ChangeDatas was loaded from the database and allow
|
||||||
|
// lazyloading if so.
|
||||||
|
for (ChangeData cd : cds) {
|
||||||
|
cd.submitRecords(ChangeJson.SUBMIT_RULE_OPTIONS_LENIENT);
|
||||||
|
cd.submitRecords(ChangeJson.SUBMIT_RULE_OPTIONS_STRICT);
|
||||||
|
cd.currentPatchSet();
|
||||||
|
}
|
||||||
|
return cds;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user