Collection<DetectedLibraryRoot> (@NotNull VirtualFile rootCandidate, @NotNull ProgressIndicator progressIndicator) { List<DetectedLibraryRoot> result = new ArrayList<>(); for (RootDetector detector : myDetectors) { final Collection<VirtualFile> files = detector.detectRoots(rootCandidate, progressIndicator); for (VirtualFile file : files) { result.add(new DetectedLibraryRoot(file, detector.getRootType(), detector.isJarDirectory())); } } return result; }