in plugins/org.apache.karaf.eik.wtp.core/src/main/java/org/apache/karaf/eik/wtp/core/runtime/KarafRuntimeLocator.java [86:118]
private void searchDirectory(final File directory, final int depth,
final IRuntimeSearchListener listener, final IProgressMonitor monitor) {
final IRuntimeWorkingCopy runtime = resolveDirectoryToRuntime(directory, monitor);
if (runtime != null) {
listener.runtimeFound(runtime);
}
if (depth == 0 || monitor.isCanceled()) {
return;
}
final File[] files = directory.listFiles(new FileFilter() {
@Override
public boolean accept(final File file) {
return file.isDirectory();
}
});
if (files == null) {
return;
}
for (final File f : files) {
if (monitor.isCanceled()) {
return;
}
searchDirectory(f, depth - 1, listener, monitor);
}
}