projects
/
javainspect.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Updated copyright info
[javainspect.git]
/
src
/
main
/
java
/
eu
/
svjatoslav
/
inspector
/
java
/
structure
/
ClassDescriptor.java
diff --git
a/src/main/java/eu/svjatoslav/inspector/java/structure/ClassDescriptor.java
b/src/main/java/eu/svjatoslav/inspector/java/structure/ClassDescriptor.java
index
3bd1049
..
118994e
100755
(executable)
--- a/
src/main/java/eu/svjatoslav/inspector/java/structure/ClassDescriptor.java
+++ b/
src/main/java/eu/svjatoslav/inspector/java/structure/ClassDescriptor.java
@@
-1,6
+1,6
@@
/*
* JavaInspect - Utility to visualize java software
/*
* JavaInspect - Utility to visualize java software
- * Copyright (C) 2013-20
15
, Svjatoslav Agejenko, svjatoslav@svjatoslav.eu
+ * Copyright (C) 2013-20
20
, 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
*
* 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
@@
-19,13
+19,13
@@
import java.util.*;
public class ClassDescriptor implements GraphElement, Comparable<ClassDescriptor> {
private static final int MAX_REFERECNES_COUNT = 10;
public class ClassDescriptor implements GraphElement, Comparable<ClassDescriptor> {
private static final int MAX_REFERECNES_COUNT = 10;
- private final Map<String, FieldDescriptor> nameToFieldMap = new TreeMap<String, FieldDescriptor>();
- private final SortedSet<MethodDescriptor> methods = new TreeSet<MethodDescriptor>();
+ final List<ClassDescriptor> interfaces = new ArrayList<>();
+ private final Map<String, FieldDescriptor> nameToFieldMap = new TreeMap<>();
+ private final SortedSet<MethodDescriptor> methods = new TreeSet<>();
private final ClassGraph classGraph;
boolean isEnum;
boolean isInterface;
boolean isArray;
private final ClassGraph classGraph;
boolean isEnum;
boolean isInterface;
boolean isArray;
- List<ClassDescriptor> interfaces = new ArrayList<ClassDescriptor>();
ClassDescriptor superClass;
private String fullyQualifiedName;
/**
ClassDescriptor superClass;
private String fullyQualifiedName;
/**
@@
-52,7
+52,7
@@
public class ClassDescriptor implements GraphElement, Comparable<ClassDescriptor
this.classGraph = classGraph;
}
this.classGraph = classGraph;
}
- protected void analyzeClass(final Class<?
extends Object
> clazz) {
+ protected void analyzeClass(final Class<?> clazz) {
fullyQualifiedName = clazz.getName();
fullyQualifiedName = clazz.getName();
@@
-73,8
+73,13
@@
public class ClassDescriptor implements GraphElement, Comparable<ClassDescriptor
if (!isVisible())
return;
if (!isVisible())
return;
- indexFields(clazz.getDeclaredFields());
- indexFields(clazz.getFields());
+ try {
+ indexFields(clazz.getDeclaredFields());
+ indexFields(clazz.getFields());
+ } catch (NoClassDefFoundError error) {
+ // TODO: better logging of this error
+ System.out.println(error.toString());
+ }
indexMethods(clazz);
indexMethods(clazz);
@@
-102,9
+107,7
@@
public class ClassDescriptor implements GraphElement, Comparable<ClassDescriptor
result.append("\n");
result.append(" // field references to other classes\n");
result.append("\n");
result.append(" // field references to other classes\n");
- for (final Map.Entry<String, FieldDescriptor> entry : nameToFieldMap
- .entrySet())
- result.append(entry.getValue().getDot());
+ nameToFieldMap.forEach((fieldName, field) -> result.append(field.getDot()));
}
private void enlistFields(final StringBuffer result) {
}
private void enlistFields(final StringBuffer result) {
@@
-317,14
+320,16
@@
public class ClassDescriptor implements GraphElement, Comparable<ClassDescriptor
@Override
public String getGraphId() {
@Override
public String getGraphId() {
- final String result = "class_"
+
+ return "class_"
+ fullyQualifiedName
.replace('.', '_')
.replace(";", "")
+ fullyQualifiedName
.replace('.', '_')
.replace(";", "")
- .replace("[L", "")
.replace("[[", "")
.replace("[[", "")
+ .replace("[L", "")
+ .replace("[[L", "") // array of arrays
+ .replace("[[[L", "") // array of arrays of arrays
.replace('$', '_');
.replace('$', '_');
- return result;
}
private String getInterfaceColor() {
}
private String getInterfaceColor() {
@@
-433,7
+438,6
@@
public class ClassDescriptor implements GraphElement, Comparable<ClassDescriptor
return;
}
return;
}
- return;
}
private void indexFields(final Field[] fields) {
}
private void indexFields(final Field[] fields) {
@@
-441,7
+445,7
@@
public class ClassDescriptor implements GraphElement, Comparable<ClassDescriptor
getOrCreateFieldDescriptor(field);
}
getOrCreateFieldDescriptor(field);
}
- private void indexMethods(final Class<?
extends Object
> clazz) {
+ private void indexMethods(final Class<?> clazz) {
for (final Method method : clazz.getMethods()) {
final MethodDescriptor methodDescriptor = new MethodDescriptor(
this, method.getName());
for (final Method method : clazz.getMethods()) {
final MethodDescriptor methodDescriptor = new MethodDescriptor(
this, method.getName());