diff --git a/src/main/java/spoon/reflect/visitor/ImportScanner.java b/src/main/java/spoon/reflect/visitor/ImportScanner.java index 7185092ed93..ed930e54e08 100644 --- a/src/main/java/spoon/reflect/visitor/ImportScanner.java +++ b/src/main/java/spoon/reflect/visitor/ImportScanner.java @@ -29,12 +29,11 @@ public interface ImportScanner { /** - * Computes import of a {@link spoon.reflect.declaration.CtType} - * (represent a class). + * Computes import of a {@link spoon.reflect.declaration.CtElement} * * @return class imports computed by Spoon, it does not contain static imports */ - Collection> computeImports(CtType simpleType); + Collection> computeImports(CtElement element); /** * Computes import of a {@link spoon.reflect.declaration.CtType} @@ -44,12 +43,6 @@ public interface ImportScanner { */ Collection computeAllImports(CtType simpleType); - /** - * Computes imports for an element. - */ - @Deprecated - void computeImports(CtElement element); - /** * Checks if the type is already imported. */ diff --git a/src/main/java/spoon/reflect/visitor/ImportScannerImpl.java b/src/main/java/spoon/reflect/visitor/ImportScannerImpl.java index f5591cfdc5f..564d67f1afb 100644 --- a/src/main/java/spoon/reflect/visitor/ImportScannerImpl.java +++ b/src/main/java/spoon/reflect/visitor/ImportScannerImpl.java @@ -216,26 +216,23 @@ public Collection computeAllImports(CtType simpleType) { } @Override - public Collection> computeImports(CtType simpleType) { + public Collection> computeImports(CtElement element) { classImports.clear(); fieldImports.clear(); methodImports.clear(); //look for top declaring type of that simpleType - targetType = simpleType.getReference().getTopLevelType(); - addClassImport(simpleType.getReference()); - scan(simpleType); - return this.classImports.values(); - } - @Override - public void computeImports(CtElement element) { - classImports.clear(); - fieldImports.clear(); - methodImports.clear(); - //look for top declaring type of that element - CtType type = element.getParent(CtType.class); - targetType = type == null ? null : type.getReference().getTopLevelType(); - scan(element); + if (element instanceof CtType) { + CtType simpleType = (CtType) element; + targetType = simpleType.getReference().getTopLevelType(); + addClassImport(simpleType.getReference()); + scan(simpleType); + } else { + CtType type = element.getParent(CtType.class); + targetType = type == null ? null : type.getReference().getTopLevelType(); + scan(element); + } + return this.classImports.values(); } @Override