diff --git a/src/main/idea/io/github/linwancen/plugin/show/java/JavaLangDoc.java b/src/main/idea/io/github/linwancen/plugin/show/java/JavaLangDoc.java index 4fb07f1..020a835 100644 --- a/src/main/idea/io/github/linwancen/plugin/show/java/JavaLangDoc.java +++ b/src/main/idea/io/github/linwancen/plugin/show/java/JavaLangDoc.java @@ -170,7 +170,7 @@ public class JavaLangDoc extends BaseTagLangDoc { @Nullable PsiDocTagValue value = tag.getValueElement(); if (value != null) { DocFilter.addHtml(tagStrBuilder, value.getText()); - } else { + } else { @NotNull PsiElement[] dataElements = tag.getDataElements(); if (dataElements.length > 0) { DocFilter.addHtml(tagStrBuilder, dataElements[0].getText()); diff --git a/src/main/idea/io/github/linwancen/plugin/show/java/JsonJumpJava.java b/src/main/idea/io/github/linwancen/plugin/show/java/JsonJumpJava.java index f18754b..35f144d 100644 --- a/src/main/idea/io/github/linwancen/plugin/show/java/JsonJumpJava.java +++ b/src/main/idea/io/github/linwancen/plugin/show/java/JsonJumpJava.java @@ -5,7 +5,13 @@ import com.intellij.json.psi.JsonStringLiteral; import com.intellij.openapi.project.Project; import com.intellij.openapi.vfs.VirtualFile; import com.intellij.patterns.PlatformPatterns; -import com.intellij.psi.*; +import com.intellij.psi.PsiClass; +import com.intellij.psi.PsiElement; +import com.intellij.psi.PsiField; +import com.intellij.psi.PsiReference; +import com.intellij.psi.PsiReferenceContributor; +import com.intellij.psi.PsiReferenceProvider; +import com.intellij.psi.PsiReferenceRegistrar; import com.intellij.psi.util.PsiTreeUtil; import com.intellij.util.ProcessingContext; import io.github.linwancen.plugin.show.java.doc.PsiClassUtils; @@ -38,28 +44,33 @@ public class JsonJumpJava extends PsiReferenceContributor { @Override public @NotNull PsiReference[] getReferencesByElement(@NotNull PsiElement element, @NotNull ProcessingContext context) { - @Nullable JsonProperty jsonProp = PsiTreeUtil.getParentOfType( - element, JsonProperty.class, true); - if (jsonProp == null) { - return PsiReference.EMPTY_ARRAY; - } - VirtualFile virtualFile = element.getContainingFile().getVirtualFile(); - if (virtualFile == null) { - return PsiReference.EMPTY_ARRAY; - } + try { + @Nullable JsonProperty jsonProp = PsiTreeUtil.getParentOfType( + element, JsonProperty.class, true); + if (jsonProp == null) { + return PsiReference.EMPTY_ARRAY; + } + VirtualFile virtualFile = element.getContainingFile().getVirtualFile(); + if (virtualFile == null) { + return PsiReference.EMPTY_ARRAY; + } - @NotNull Project project = element.getProject(); - @NotNull List psiFields = new ArrayList<>(); - @NotNull List tips = new ArrayList<>(); - @NotNull PsiClass[] psiClasses = PsiClassUtils.encClass(virtualFile, project); - @NotNull List jsonPath = jsonPath(jsonProp); - put(project, psiFields, tips, psiClasses, jsonPath, jsonPath.size() - 1); + @NotNull Project project = element.getProject(); + @NotNull List psiFields = new ArrayList<>(); + @NotNull List tips = new ArrayList<>(); + @NotNull PsiClass[] psiClasses = PsiClassUtils.encClass(virtualFile, project); + @NotNull List jsonPath = jsonPath(jsonProp); + put(project, psiFields, tips, psiClasses, jsonPath, jsonPath.size() - 1); - @NotNull List list = new ArrayList<>(); - for (@NotNull PsiField psiField : psiFields) { - list.add(new JsonRef<>(element, psiField, tips)); + @NotNull List list = new ArrayList<>(); + for (@NotNull PsiField psiField : psiFields) { + list.add(new JsonRef<>(element, psiField, tips)); + } + return list.toArray(PsiReference.EMPTY_ARRAY); + } catch (Throwable e) { + LOG.error("JsonJumpJava.register catch Throwable but log to record.", e); } - return list.toArray(PsiReference.EMPTY_ARRAY); + return PsiReference.EMPTY_ARRAY; } }); } diff --git a/src/main/java/io/github/linwancen/plugin/show/ext/conf/listener/ConfFileInitListener.java b/src/main/java/io/github/linwancen/plugin/show/ext/conf/listener/ConfFileInitListener.java index e262eb1..925a57e 100644 --- a/src/main/java/io/github/linwancen/plugin/show/ext/conf/listener/ConfFileInitListener.java +++ b/src/main/java/io/github/linwancen/plugin/show/ext/conf/listener/ConfFileInitListener.java @@ -24,7 +24,7 @@ public class ConfFileInitListener implements DumbService.DumbModeListener, Proje public void exitDumbMode() { try { @NotNull Project[] projects = ProjectManager.getInstance().getOpenProjects(); - for (Project project : projects) { + for (@NotNull Project project : projects) { PROJECT_LOAD_MAP.computeIfAbsent(project, k -> { ConfCache.loadAll(project); return true; diff --git a/src/main/java/io/github/linwancen/plugin/show/lang/RustLangDoc.java b/src/main/java/io/github/linwancen/plugin/show/lang/RustLangDoc.java index 410aa22..b5b010b 100644 --- a/src/main/java/io/github/linwancen/plugin/show/lang/RustLangDoc.java +++ b/src/main/java/io/github/linwancen/plugin/show/lang/RustLangDoc.java @@ -31,7 +31,7 @@ public class RustLangDoc extends BaseLangDoc { @Nullable @Override protected String resolveDocPrint(@NotNull T info, @NotNull PsiElement resolve) { - String s = super.resolveDocPrint(info, resolve); + @Nullable String s = super.resolveDocPrint(info, resolve); if (s != null && s.startsWith("!")) { return s.substring(1); } diff --git a/src/main/java/io/github/linwancen/plugin/show/lang/base/BaseLangDoc.java b/src/main/java/io/github/linwancen/plugin/show/lang/base/BaseLangDoc.java index 63cf4f4..105a2de 100644 --- a/src/main/java/io/github/linwancen/plugin/show/lang/base/BaseLangDoc.java +++ b/src/main/java/io/github/linwancen/plugin/show/lang/base/BaseLangDoc.java @@ -181,7 +181,7 @@ public abstract class BaseLangDoc extends EditorLinePainter { } @NotNull String cutDoc = DocFilter.cutDoc(s, info, true); @NotNull String filterDoc = DocFilter.filterDoc(cutDoc, info.globalSettings, info.projectSettings); - String trimDoc = filterDoc.trim(); + @NotNull String trimDoc = filterDoc.trim(); if (trimDoc.isEmpty()) { return null; }