don't search for functional expressions if selected method is not abstract

This commit is contained in:
Anna Kozlova
2015-10-15 18:21:24 +02:00
parent 437c3388a9
commit 1ccc83b667
@@ -284,11 +284,12 @@ public class MarkerType {
new PsiElementProcessor.CollectElementsWithLimit<PsiMethod>(2, new THashSet<PsiMethod>());
final PsiElementProcessor.CollectElementsWithLimit<PsiFunctionalExpression> collectExprProcessor =
new PsiElementProcessor.CollectElementsWithLimit<PsiFunctionalExpression>(2, new THashSet<PsiFunctionalExpression>());
final boolean isAbstract = method.hasModifierProperty(PsiModifier.ABSTRACT);
if (!ProgressManager.getInstance().runProcessWithProgressSynchronously(new Runnable() {
@Override
public void run() {
OverridingMethodsSearch.search(method, true).forEach(new PsiElementProcessorAdapter<PsiMethod>(collectProcessor));
if (collectProcessor.getCollection().size() < 2) {
if (isAbstract && collectProcessor.getCollection().size() < 2) {
final PsiClass aClass = ApplicationManager.getApplication().runReadAction(new Computable<PsiClass>() {
@Override
public PsiClass compute() {