X-Git-Url: http://www2.svjatoslav.eu/gitweb/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Feu%2Fsvjatoslav%2Finspector%2Fjava%2Fstructure%2FClassGraph.java;h=a2ce8a2110149b959e7bf2533fff8e2613e7d7c1;hb=a65f21f0464caf3a2ea567ec959bc2be78d1864c;hp=bf34841ea459d9d89c7bf9e4af4e25a5492563c2;hpb=033fa99bac62adc18414cb4cb97c4be02abcb7e2;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..a2ce8a2 100755 --- a/src/main/java/eu/svjatoslav/inspector/java/structure/ClassGraph.java +++ b/src/main/java/eu/svjatoslav/inspector/java/structure/ClassGraph.java @@ -1,6 +1,6 @@ /* * JavaInspect - Utility to visualize java software - * Copyright (C) 2013-2014, Svjatoslav Agejenko, svjatoslav@svjatoslav.eu + * Copyright (C) 2013-2015, Svjatoslav Agejenko, svjatoslav@svjatoslav.eu * * This program is free software; you can redistribute it and/or * modify it under the terms of version 3 of the GNU Lesser General Public License @@ -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; }