boolean ( File file, String filePath, int rootPathLength, Map<String, HotSwapFile> container, HotSwapProgress progress, long timeStamp ) { if (progress.isCancelled()) { return false; } final File[] files = file.listFiles(); if (files != null) { for (File child : files) { if (!collectModifiedClasses(child, filePath + "/" + child.getName(), rootPathLength, container, progress, timeStamp)) { return false; } } } else { // not a dir String qualifiedName = getQualifiedName(filePath, rootPathLength); if (qualifiedName != null && file.lastModified() > timeStamp) { progress.setText(JavaDebuggerBundle.message("progress.hotswap.scanning.path", filePath)); container.put(qualifiedName, new HotSwapFile(file)); } } return true; }