X-Git-Url: http://www2.svjatoslav.eu/gitweb/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Feu%2Fsvjatoslav%2Finspector%2Fjava%2Fmethods%2FClazz.java;h=29c28991b5df804e6969bc6191afe2da2c7fc4fd;hb=5f9dd91cd9ee7069981879df7bb31c2e9617a5f3;hp=fda73d13e842628b3925d6cbcc8c007b4ff66a45;hpb=9811fe796d6f549151ab904714e1a65ff2839ee2;p=javainspect.git diff --git a/src/main/java/eu/svjatoslav/inspector/java/methods/Clazz.java b/src/main/java/eu/svjatoslav/inspector/java/methods/Clazz.java index fda73d1..29c2899 100644 --- a/src/main/java/eu/svjatoslav/inspector/java/methods/Clazz.java +++ b/src/main/java/eu/svjatoslav/inspector/java/methods/Clazz.java @@ -11,17 +11,21 @@ public class Clazz { private final String packageName; private final String className; + private final boolean isInterface; public ClassReference superClass; public List implementedInterfaces = new ArrayList(); public Clazz(final String packageName, final String className, - final Tokenizer tokenizer) throws InvalidSyntaxException { + final Tokenizer tokenizer, final boolean isInterface) + throws InvalidSyntaxException { + this.packageName = packageName; this.className = className; + this.isInterface = isInterface; while (true) { - final TokenizerMatch match = tokenizer.getToken(); + final TokenizerMatch match = tokenizer.getNextToken(); if ("extends".equals(match.token)) { superClass = new ClassReference(tokenizer); @@ -32,7 +36,7 @@ public class Clazz { while (true) { implementedInterfaces.add(new ClassReference(tokenizer)); - if (tokenizer.isNextToken(",")) + if (tokenizer.probeNextToken(",")) continue; break; @@ -48,15 +52,26 @@ public class Clazz { } } + public String getFullName() { + return packageName + "." + className; + } + public void parseClassBody(final Tokenizer tokenizer) { - tokenizer.skipUtilEnd(); + tokenizer.skipUntilDataEnd(); } @Override public String toString() { final EnumerationBuffer result = new EnumerationBuffer(); - result.append(packageName + " -> " + className + "\n"); + result.append(packageName + " -> " + className + " "); + + if (isInterface) + result.append("(interface)"); + else + result.append("(class)"); + result.append("\n"); + if (superClass != null) result.append(" super: " + superClass.toString() + "\n");