From cc8886aa02a56bdb9ce631c2c0abc67e55dd145f Mon Sep 17 00:00:00 2001 From: Kamil Patryk Kozakowski Date: Sun, 20 Jul 2025 13:56:43 +0200 Subject: [PATCH] better api --- .../click/kamil/filecombine/JavaConcatenator.java | 4 ++-- .../kamil/springstatemachineexporter/ast/Main.java | 2 +- .../ast/common/FileUtils.java | 12 ++++++++++-- 3 files changed, 13 insertions(+), 5 deletions(-) diff --git a/src/main/java/click/kamil/filecombine/JavaConcatenator.java b/src/main/java/click/kamil/filecombine/JavaConcatenator.java index da4ab12..9d56ca4 100644 --- a/src/main/java/click/kamil/filecombine/JavaConcatenator.java +++ b/src/main/java/click/kamil/filecombine/JavaConcatenator.java @@ -19,7 +19,7 @@ public class JavaConcatenator { String targetPackage = "click.kamil"; - List javaFiles = FileUtils.findFilesWithExtension(sourceDir, ".java"); + List javaFiles = FileUtils.findFilesWithExtension(Set.of(sourceDir), ".java"); Set uniqueImports = new TreeSet<>(); List classBodies = new ArrayList<>(); @@ -59,7 +59,7 @@ public class JavaConcatenator { } private static FileParseResult parseAndTransform(String source) { - ASTParser parser = ASTParser.newParser(AST.JLS17); + ASTParser parser = ASTParser.newParser(AST.getJLSLatest()); parser.setSource(source.toCharArray()); parser.setKind(ASTParser.K_COMPILATION_UNIT); parser.setResolveBindings(false); diff --git a/src/main/java/click/kamil/springstatemachineexporter/ast/Main.java b/src/main/java/click/kamil/springstatemachineexporter/ast/Main.java index 98e1ca3..aa2f1bf 100644 --- a/src/main/java/click/kamil/springstatemachineexporter/ast/Main.java +++ b/src/main/java/click/kamil/springstatemachineexporter/ast/Main.java @@ -30,7 +30,7 @@ public class Main { public static void main(String[] args) throws IOException { AstFileFinder finder = new AstFileFinder(); - List javaFiles = FileUtils.findFilesWithExtension(Paths.get(START_DIR), EXTENSION); + List javaFiles = FileUtils.findFilesWithExtension(Set.of(Paths.get(START_DIR)), EXTENSION); // List of output handlers List outputs = List.of( diff --git a/src/main/java/click/kamil/springstatemachineexporter/ast/common/FileUtils.java b/src/main/java/click/kamil/springstatemachineexporter/ast/common/FileUtils.java index b62e6a8..84e52a9 100644 --- a/src/main/java/click/kamil/springstatemachineexporter/ast/common/FileUtils.java +++ b/src/main/java/click/kamil/springstatemachineexporter/ast/common/FileUtils.java @@ -4,12 +4,20 @@ import java.io.IOException; import java.nio.file.Files; import java.nio.file.Path; import java.util.List; +import java.util.Set; import java.util.stream.Collectors; import java.util.stream.Stream; public class FileUtils { - public static List findFilesWithExtension(Path startDir, String extension) throws IOException { - try (Stream paths = Files.walk(startDir)) { + public static List findFilesWithExtension(Set startDirs, String extension) throws RuntimeException { + try (Stream paths = startDirs.stream() + .flatMap(startDir -> { + try { + return Files.walk(startDir); + } catch (IOException e) { + throw new RuntimeException(e); + } + })) { return paths .filter(p -> Files.isRegularFile(p) && p.toString().endsWith(extension)) .collect(Collectors.toList());