[inspections] avoid requesting external name for fields

GitOrigin-RevId: 5de036f97690302075baf7d9cb3d4f088ea4d0be
This commit is contained in:
Anna Kozlova
2022-06-20 13:16:07 +00:00
committed by intellij-monorepo-bot
parent 3b2a3b0630
commit 2ce894e6eb
@@ -3,9 +3,11 @@ package com.intellij.codeInspection.reference;
import com.intellij.openapi.application.ApplicationManager;
import com.intellij.openapi.application.ReadAction;
import com.intellij.psi.*;
import com.intellij.psi.PsiClass;
import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiField;
import com.intellij.psi.PsiManager;
import com.intellij.psi.util.ClassUtil;
import com.intellij.psi.util.PsiFormatUtil;
import com.intellij.util.ObjectUtils;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
@@ -188,14 +190,12 @@ public class RefFieldImpl extends RefJavaElementImpl implements RefField {
@Override
public String getExternalName() {
return ReadAction.compute(() -> {
UField uField = getUastElement();
if (uField == null) {
WritableRefEntity owner = getOwner();
String parentName = owner != null ? owner.getName() : "no parent class";
LOG.error("No uField found for psi: " + getPsiElement() + ", name: " + getName() + ", " + parentName);
WritableRefEntity owner = getOwner();
if (owner == null) {
LOG.error("No parent class for: " + getName());
return null;
}
return PsiFormatUtil.getExternalName((PsiModifierListOwner)uField.getJavaPsi());
return owner.getExternalName() + " " + getName();
});
}