in src/main/java/com/googlesource/gerrit/plugins/findowners/Action.java [159:196]
public Response<RestResult> getChangeData(Parameters params, ChangeData changeData)
throws BadRequestException {
int patchset = getValidPatchsetNum(changeData, params.patchset);
ProjectState projectState =
projectCache.get(changeData.project()).orElseThrow(illegalState(changeData.project()));
Boolean useCache = params.nocache == null || !params.nocache;
OwnersDb db =
Cache.getInstance(config, repoManager)
.get(
useCache,
permissionBackend,
projectState,
accountCache,
emails,
repoManager,
changeData,
patchset);
Collection<String> changedFiles = changeData.currentFilePaths();
Map<String, Set<String>> file2Owners = db.findOwners(changedFiles);
boolean addDebugMsg = (params.debug != null) ? params.debug : config.getAddDebugMsg();
RestResult obj = new RestResult(config, projectState, changeData, addDebugMsg);
obj.patchset = patchset;
obj.ownerRevision = db.revision;
if (addDebugMsg) {
obj.dbgmsgs.user = getUserName();
obj.dbgmsgs.errors = db.errors;
obj.dbgmsgs.path2owners = Util.makeSortedMap(db.path2Owners);
obj.dbgmsgs.owner2paths = Util.makeSortedMap(db.owner2Paths);
obj.dbgmsgs.logs = db.logs;
}
obj.file2owners = Util.makeSortedMap(file2Owners);
obj.reviewers = getReviewers(changeData, accountCache);
obj.owners = getOwners(db, changedFiles);
obj.files = new ArrayList<>(changedFiles);
return Response.ok(obj);
}