From a3caef0360bd1069747c82268dac7d00682625ad Mon Sep 17 00:00:00 2001 From: Alexey Kudravtsev Date: Wed, 13 Apr 2016 14:04:11 +0300 Subject: [PATCH] cleanup --- .../impl/search/JavaDirectInheritorsSearcher.java | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/java/java-indexing-impl/src/com/intellij/psi/impl/search/JavaDirectInheritorsSearcher.java b/java/java-indexing-impl/src/com/intellij/psi/impl/search/JavaDirectInheritorsSearcher.java index e9f6b483ad86..ded26be91cc9 100644 --- a/java/java-indexing-impl/src/com/intellij/psi/impl/search/JavaDirectInheritorsSearcher.java +++ b/java/java-indexing-impl/src/com/intellij/psi/impl/search/JavaDirectInheritorsSearcher.java @@ -160,11 +160,11 @@ public class JavaDirectInheritorsSearcher implements QueryExecutor)baseClass::getName); - if (StringUtil.isEmpty(className)) { + final String baseClassName = ApplicationManager.getApplication().runReadAction((Computable)baseClass::getName); + if (StringUtil.isEmpty(baseClassName)) { return Pair.create(Collections.emptyList(), new AtomicIntegerArray(0)); } - Pair, AtomicIntegerArray> pair = calculateDirectSubClasses(project, baseClass, className); + Pair, AtomicIntegerArray> pair = calculateDirectSubClasses(project, baseClass, baseClassName); HighlightingCaches.getInstance(project).DIRECT_SUB_CLASSES.put(baseClass, pair); return pair; } @@ -172,11 +172,10 @@ public class JavaDirectInheritorsSearcher implements QueryExecutor, AtomicIntegerArray> calculateDirectSubClasses(@NotNull Project project, @NotNull PsiClass baseClass, - @NotNull String className) { + @NotNull String baseClassName) { GlobalSearchScope allScope = GlobalSearchScope.allScope(project); Collection candidates = - MethodUsagesSearcher - .resolveInReadAction(project, () -> JavaSuperClassNameOccurenceIndex.getInstance().get(className, project, allScope)); + MethodUsagesSearcher.resolveInReadAction(project, () -> JavaSuperClassNameOccurenceIndex.getInstance().get(baseClassName, project, allScope)); Map> classes = new HashMap<>(); int count = 0; @@ -196,7 +195,7 @@ public class JavaDirectInheritorsSearcher implements QueryExecutor anonymousCandidates = - MethodUsagesSearcher.resolveInReadAction(project, () -> JavaAnonymousClassBaseRefOccurenceIndex.getInstance().get(className, project, allScope)); + MethodUsagesSearcher.resolveInReadAction(project, () -> JavaAnonymousClassBaseRefOccurenceIndex.getInstance().get(baseClassName, project, allScope)); List result = new ArrayList<>(count + classes.size() + anonymousCandidates.size() + 1); for (Map.Entry> entry : classes.entrySet()) {