in java/main/src/main/java/com/epam/deltix/utilities/FileJanitor.java [143:165]
private static boolean/*isSuccess*/ listDeletable(final Path dir, final List<FileLock> openedFiles, final List<Path> foundFiles) throws IOException {
try (final DirectoryStream<Path> paths = Files.newDirectoryStream(dir)) {
for (final Path path : paths) {
if (isLockFile(path))
continue;
if (Files.isDirectory(path)) {
if (!listDeletable(path, openedFiles, foundFiles))
return false;
foundFiles.add(path);
} else {
final FileLock fl = tryOpenForWriteTest(path);
if (null == fl)
return false;
openedFiles.add(fl);
foundFiles.add(path);
}
}
}
return true;
}