@Override public Collection<String> classNames() { return classNames(this.root); }
private Collection<String> classNames(final File file) { final List<String> classNames = new LinkedList<>(); for (final File f : file.listFiles()) { if (f.isDirectory()) { classNames.addAll(classNames(f)); } else if (f.getName().endsWith(".class")) { classNames.add(fileToClassName(f)); } } return classNames; }
public static Collection<String> findOccupiedPackagesIn(File dir) { if (dir.exists()) { DirectoryClassPathRoot root = new DirectoryClassPathRoot(dir); Set<String> occupiedPackages = new HashSet<>(); FCollection.mapTo(root.classNames(), classToPackageGlob(), occupiedPackages); return occupiedPackages; } return Collections.emptyList(); }
private Predicate<String> createClassPredicate() { final Collection<String> classes = new HashSet<>(); for (final File buildOutputDirectory : this.compiledCodeDirectories) { if (buildOutputDirectory.exists()) { final DirectoryClassPathRoot dcRoot = new DirectoryClassPathRoot(buildOutputDirectory); classes.addAll(FCollection.map(dcRoot.classNames(), toPredicate())); } } return Prelude.or(FCollection.map(classes, Glob.toGlobPredicate())); }
@Test public void shouldReturnClassNames() { final File root = new File("target/test-classes/"); // this is going to be // flakey as hell this.testee = new DirectoryClassPathRoot(root); assertTrue(this.testee.classNames().contains( DirectoryClassPathRootTest.class.getName())); }
@Override public Collection<String> classNames() { return classNames(this.root); }
private Collection<String> classNames(final File file) { final List<String> classNames = new LinkedList<>(); for (final File f : file.listFiles()) { if (f.isDirectory()) { classNames.addAll(classNames(f)); } else if (f.getName().endsWith(".class")) { classNames.add(fileToClassName(f)); } } return classNames; }
public static Collection<String> findOccupiedPackagesIn(File dir) { if (dir.exists()) { DirectoryClassPathRoot root = new DirectoryClassPathRoot(dir); Set<String> occupiedPackages = new HashSet<>(); FCollection.mapTo(root.classNames(), classToPackageGlob(), occupiedPackages); return occupiedPackages; } return Collections.emptyList(); }