private Artifact loadFromDirectory()

in core/src/main/java/com/spotify/missinglink/ArtifactLoader.java [161:177]


  private Artifact loadFromDirectory(ArtifactName artifactName, File dir) throws IOException {
    Map<ClassTypeDescriptor, DeclaredClass> classes = new HashMap<>();

    List<File> classFilesInDir =
        Files.walk(dir.toPath())
            .map(Path::toFile)
            .filter(file -> file.isFile() && file.getName().endsWith(".class"))
            .collect(toList());

    for (File file : classFilesInDir) {
      try (FileInputStream fis = new FileInputStream(file)) {
        DeclaredClass cl = ClassLoader.load(fis);
        classes.put(cl.className(), cl);
      }
    }
    return artifact(artifactName, classes);
  }