in src/main/java/org/apache/maven/buildcache/checksum/MavenProjectInput.java [416:441]
private void startWalk(
Path candidate, String glob, boolean recursive, List<Path> collectedFiles, Set<WalkKey> visitedDirs) {
Path normalized = candidate.isAbsolute() ? candidate : baseDirPath.resolve(candidate);
normalized = normalized.toAbsolutePath().normalize();
WalkKey key = new WalkKey(normalized, glob, recursive);
if (visitedDirs.contains(key) || !Files.exists(normalized)) {
return;
}
if (Files.isDirectory(normalized)) {
if (baseDirPath.startsWith(normalized)) { // requested to walk parent, can do only non recursive
key = new WalkKey(normalized, glob, false);
}
try {
walkDir(key, collectedFiles, visitedDirs);
visitedDirs.add(key);
} catch (IOException e) {
throw new RuntimeException(e);
}
} else {
if (!isFilteredOutSubpath(normalized)) {
LOGGER.debug("Adding: {}", normalized);
collectedFiles.add(normalized);
}
}
}