X-Git-Url: http://www2.svjatoslav.eu/gitweb/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Feu%2Fsvjatoslav%2Finspector%2Fjava%2Fstructure%2FClassGraph.java;h=46cbc695c1293711250660b8777307aad0e750ec;hb=cd718904f053ee6901e9b21d76a024ef646bb01c;hp=bf34841ea459d9d89c7bf9e4af4e25a5492563c2;hpb=8886bb51f2caf11b8e778bacb4c8ea18ac7f1027;p=javainspect.git diff --git a/src/main/java/eu/svjatoslav/inspector/java/structure/ClassGraph.java b/src/main/java/eu/svjatoslav/inspector/java/structure/ClassGraph.java index bf34841..46cbc69 100755 --- a/src/main/java/eu/svjatoslav/inspector/java/structure/ClassGraph.java +++ b/src/main/java/eu/svjatoslav/inspector/java/structure/ClassGraph.java @@ -30,7 +30,7 @@ public class ClassGraph { /** * Maps class fully qualified names to class descriptors. */ - Map nameToClassMap = new HashMap(); + private final Map fullyQualifiedNameToClassMap = new HashMap(); private Filter filter = new Filter(); @@ -66,8 +66,8 @@ public class ClassGraph { final String className = clazz.getName(); - if (nameToClassMap.containsKey(className)) - return nameToClassMap.get(className); + if (fullyQualifiedNameToClassMap.containsKey(className)) + return fullyQualifiedNameToClassMap.get(className); return new ClassDescriptor(clazz, this); } @@ -161,8 +161,8 @@ public class ClassGraph { // execute GraphViz to visualize graph try { Runtime.getRuntime() - .exec(new String[] { "dot", "-Tpng", dotFilePath, "-o", - imageFilePath }).waitFor(); + .exec(new String[] { "dot", "-Tpng", dotFilePath, "-o", + imageFilePath }).waitFor(); } catch (final InterruptedException e) { } finally { } @@ -184,7 +184,7 @@ public class ClassGraph { result.append("digraph Java {\n"); result.append("graph [rankdir=LR, overlap = false, concentrate=true];\n"); - for (final Map.Entry entry : nameToClassMap + for (final Map.Entry entry : fullyQualifiedNameToClassMap .entrySet()) result.append(entry.getValue().getDot()); @@ -203,11 +203,18 @@ public class ClassGraph { */ public void hideOrphanedClasses() { - for (final ClassDescriptor classDescriptor : nameToClassMap.values()) + for (final ClassDescriptor classDescriptor : fullyQualifiedNameToClassMap + .values()) classDescriptor.hideClassIfNoReferences(); } + public void registerClass(final String classFullyQualifiedName, + final ClassDescriptor classDescriptor) { + fullyQualifiedNameToClassMap.put(classFullyQualifiedName, + classDescriptor); + } + public void setFilter(final Filter filter) { this.filter = filter; }