in src/main/java/com/googlesource/gerrit/plugins/findowners/OwnersDb.java [273:305]
void addFile(
Map<String, String> readFiles,
String project,
String branch,
String dirPath,
String filePath,
String[] lines) {
Parser parser =
new Parser(permissionBackend, readFiles, repoManager, project, branch, filePath, logs);
Parser.Result result = parser.parseFile(dirPath, lines);
if (result.stopLooking) {
stopLooking.add(dirPath);
}
noParentGlobs.addAll(result.noParentGlobs);
addPreferredEmails(result.owner2paths.keySet());
for (String owner : result.owner2paths.keySet()) {
String email = preferredEmails.get(owner);
if (email == null) {
logger.atSevere().log("found null preferredEmail of %s", owner);
email = owner;
}
for (String path : result.owner2paths.get(owner)) {
addOwnerPathPair(email, path);
}
}
for (String glob : result.noParentGlobs) {
add2dir2Globs(Util.getDirName(glob) + "/", glob);
}
if (config.getReportSyntaxError()) {
Ordering.natural().sortedCopy(result.errors).forEach(e -> logger.atSevere().log("%s", e));
Ordering.natural().sortedCopy(result.warnings).forEach(w -> logger.atWarning().log("%s", w));
}
}