@@ -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