aboutsummaryrefslogtreecommitdiff
path: root/javaparser-symbol-solver-core
diff options
context:
space:
mode:
authorDaan Schipper <daancschipper@gmail.com>2018-02-19 14:24:19 +0100
committerDaan Schipper <daancschipper@gmail.com>2018-02-27 13:34:41 +0100
commit354773c7727dfde5a6393e0fc4e42b35fe5df48e (patch)
treec598d257f1e90fbc7edbeb4f838e7f2f3122e9bf /javaparser-symbol-solver-core
parent9b6720e36b5a49705d837eab841911b8849367c4 (diff)
downloadjavaparser-354773c7727dfde5a6393e0fc4e42b35fe5df48e.tar.gz
rename of class, added some comments and added one final check for skipping a directory only when the root is succesfully added to known roots
Diffstat (limited to 'javaparser-symbol-solver-core')
-rw-r--r--javaparser-symbol-solver-core/src/main/java/com/github/javaparser/symbolsolver/utils/SymbolSolverQuickSetup.java (renamed from javaparser-symbol-solver-core/src/main/java/com/github/javaparser/symbolsolver/utils/SymbolSourceRoot.java)15
1 files changed, 10 insertions, 5 deletions
diff --git a/javaparser-symbol-solver-core/src/main/java/com/github/javaparser/symbolsolver/utils/SymbolSourceRoot.java b/javaparser-symbol-solver-core/src/main/java/com/github/javaparser/symbolsolver/utils/SymbolSolverQuickSetup.java
index 386c5815d..a9287d7d7 100644
--- a/javaparser-symbol-solver-core/src/main/java/com/github/javaparser/symbolsolver/utils/SymbolSourceRoot.java
+++ b/javaparser-symbol-solver-core/src/main/java/com/github/javaparser/symbolsolver/utils/SymbolSolverQuickSetup.java
@@ -46,14 +46,18 @@ import static com.github.javaparser.utils.Utils.assertNotNull;
import static java.nio.file.FileVisitResult.CONTINUE;
import static java.nio.file.FileVisitResult.SKIP_SIBLINGS;
-public class SymbolSourceRoot {
+/**
+ * Utility class to add all jars and roots of java files of the provided path to a TypeSolver instance.
+ * It traverses the file directory tree and adds all files ending in either .java or .jar.
+ */
+public class SymbolSolverQuickSetup {
private static Logger logger = Logger.getLogger(JavaParserFacade.class.getCanonicalName());
private final Path root;
private CombinedTypeSolver typeSolver = new CombinedTypeSolver(new ReflectionTypeSolver(false));
- public SymbolSourceRoot(Path root) {
+ public SymbolSolverQuickSetup(Path root) {
assertNotNull(root);
if (!Files.isDirectory(root)) {
throw new IllegalArgumentException("Only directories are allowed as root path!");
@@ -105,9 +109,10 @@ public class SymbolSourceRoot {
.map(CompilationUnit.Storage::getSourceRoot);
if (root.isPresent()) {
typeSolver.add(new JavaParserTypeSolver(root.get().toFile()));
- roots.add(root.get());
- logger.log(Level.FINE, "Added dir " + root.get() + " to the TypeSolver");
- return SKIP_SIBLINGS;
+ if (roots.add(root.get())) {
+ logger.log(Level.FINE, "Added dir " + root.get() + " to the TypeSolver");
+ return SKIP_SIBLINGS;
+ }
}
} catch (ParseProblemException e) {
logger.log(Level.WARNING, "Unable to parse file " + file, e);