diff --git a/src/main/java/yooze/GraphBuilder.java b/src/main/java/yooze/GraphBuilder.java index b5b2e4f..2c2fcae 100644 --- a/src/main/java/yooze/GraphBuilder.java +++ b/src/main/java/yooze/GraphBuilder.java @@ -40,6 +40,14 @@ public class GraphBuilder { }); } + public Graph build(File archive, String className) throws IOException { + return buildClassDepencyGraph(archive, className, new IncludeDecision() { + public boolean shouldIncludeClass(String name, String startingpointname) { + return name.equals(startingpointname); + } + }); + } + /** * Builds a graph for all classes (all included via package patterns and not excluded) * @@ -56,7 +64,7 @@ public class GraphBuilder { }); } - Graph buildClassDepencyGraph(File archiveFile, String className, IncludeDecision e) throws IOException { + private Graph buildClassDepencyGraph(File archiveFile, String className, IncludeDecision e) throws IOException { List cpList = scanner.scanArchive(archiveFile); ClassPool pool = ClassPool.getDefault(); diff --git a/src/test/java/yooze/LargePackageTest.java b/src/test/java/yooze/LargePackageTest.java index 4407ec3..68eb7da 100644 --- a/src/test/java/yooze/LargePackageTest.java +++ b/src/test/java/yooze/LargePackageTest.java @@ -25,10 +25,8 @@ public class LargePackageTest { GraphBuilder earBuilder = GraphBuilderFactory.getEarBuilder(); earBuilder.setPackageIncludePatterns(""); earBuilder.setPackageExcludePatterns("java.*"); - Graph graph = earBuilder.buildClassDepencyGraph(config.getEarFile(), - "java.lang.String"); - DotPrinter dotPrinter = new DotPrinter(new FileOutputStream( - "/tmp/example.dot")); + Graph graph = earBuilder.build(config.getEarFile(), "java.lang.String"); + DotPrinter dotPrinter = new DotPrinter(new FileOutputStream("/tmp/example.dot")); dotPrinter.print(graph); dotPrinter.close(); } diff --git a/src/test/java/yooze/TgzBuilderTest.java b/src/test/java/yooze/TgzBuilderTest.java index baf4136..7515d2c 100644 --- a/src/test/java/yooze/TgzBuilderTest.java +++ b/src/test/java/yooze/TgzBuilderTest.java @@ -27,8 +27,7 @@ public class TgzBuilderTest { GraphBuilder tgzBuilder = GraphBuilderFactory.getDefaultTgzBuilder(); tgzBuilder.setPackageIncludePatterns("nl.*"); tgzBuilder.setPackageExcludePatterns(""); - Graph graph = tgzBuilder.buildClassDepencyGraph(config.getTgzFile(), - "nl.jssl.jas.Main"); + Graph graph = tgzBuilder.build(config.getTgzFile(), "nl.jssl.jas.Main"); ArrayList names = new ArrayList();