Skip to content

Commit b9d571c

Browse files
committed
- adds interfaces serialization
1 parent 1d6548a commit b9d571c

File tree

1 file changed

+17
-1
lines changed
  • typesummary/app/src/main/java/typesummary

1 file changed

+17
-1
lines changed

typesummary/app/src/main/java/typesummary/App.java

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ public static void main(String[] args) throws Exception {
3636
final List<String> classNames = getOrderedClassNames();
3737
serializeEnums(writer, classNames);
3838
serializeClasses(writer, classNames);
39+
serializeInterfaces(writer, classNames);
3940
}
4041
private static void serializeEnums(final ILogWriter writer, final List<String> classNames) throws Exception {
4142
for (String c : classNames) {
@@ -60,10 +61,25 @@ private static List<String> getOrderedClassNames() throws Exception {
6061
classNames.sort(Comparator.naturalOrder());
6162
return classNames;
6263
}
64+
private static void serializeInterfaces(final ILogWriter writer, final List<String> classNames) throws Exception {
65+
for (String c : classNames) {
66+
Class<?> clazz = Class.forName(c);
67+
if(clazz.isInterface()) {
68+
String classHeadLine = "interface " + clazz.getName();
69+
Class<?> superClass = clazz.getSuperclass();
70+
if(superClass != null && superClass != Object.class) {
71+
classHeadLine += " : " + superClass.getName();
72+
}
73+
writer.write(classHeadLine);
74+
serializeFields(clazz, writer);
75+
serializeMethods(clazz, writer);
76+
}
77+
}
78+
}
6379
private static void serializeClasses(final ILogWriter writer, final List<String> classNames) throws Exception {
6480
for (String c : classNames) {
6581
Class<?> clazz = Class.forName(c);
66-
if(!clazz.isEnum()) {
82+
if(!clazz.isEnum() && !clazz.isInterface()) {
6783
String classHeadLine = "class " + clazz.getName();
6884
Class<?> superClass = clazz.getSuperclass();
6985
if(superClass != null && superClass != Object.class) {

0 commit comments

Comments
 (0)