Skip to content

Commit f1dae81

Browse files
Flanker-MSFTFlanker-MSFT
authored andcommitted
Fix possible NPE in environment variables reference
1 parent 8d8f3f2 commit f1dae81

File tree

1 file changed

+8
-1
lines changed
  • PluginsAndFeatures/azure-toolkit-for-intellij/azure-intellij-plugin-keyvault/src/main/java/com/microsoft/azure/toolkit/intellij/keyvault/code/spring

1 file changed

+8
-1
lines changed

PluginsAndFeatures/azure-toolkit-for-intellij/azure-intellij-plugin-keyvault/src/main/java/com/microsoft/azure/toolkit/intellij/keyvault/code/spring/EnvVarReference.java

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,15 @@
55

66
package com.microsoft.azure.toolkit.intellij.keyvault.code.spring;
77

8+
import com.intellij.icons.AllIcons;
89
import com.intellij.openapi.module.ModuleUtil;
910
import com.intellij.openapi.util.TextRange;
1011
import com.intellij.psi.PsiElement;
1112
import com.intellij.psi.PsiReferenceBase;
1213
import com.intellij.psi.SyntheticElement;
1314
import com.intellij.psi.impl.FakePsiElement;
1415
import com.microsoft.azure.toolkit.ide.common.component.AzureResourceIconProvider;
16+
import com.microsoft.azure.toolkit.ide.common.icon.AzureIcons;
1517
import com.microsoft.azure.toolkit.intellij.common.IntelliJAzureIcons;
1618
import com.microsoft.azure.toolkit.intellij.connector.Connection;
1719
import com.microsoft.azure.toolkit.intellij.connector.Resource;
@@ -24,6 +26,7 @@
2426
import com.microsoft.azure.toolkit.lib.keyvault.KeyVault;
2527
import com.microsoft.azure.toolkit.lib.keyvault.secret.Secret;
2628
import lombok.Getter;
29+
import org.apache.commons.lang3.StringUtils;
2730

2831
import javax.annotation.Nonnull;
2932
import javax.annotation.Nullable;
@@ -104,7 +107,11 @@ public String getName() {
104107
@Override
105108
@Nonnull
106109
public Icon getIcon(final boolean open) {
107-
return IntelliJAzureIcons.getIcon(AzureResourceIconProvider.getResourceBaseIconPath(this.secret));
110+
final String iconPath = Optional.ofNullable(this.secret)
111+
.map(AzureResourceIconProvider::getResourceBaseIconPath)
112+
.orElse(AzureIcons.Common.AZURE.getIconPath());
113+
return Optional.ofNullable(iconPath).filter(StringUtils::isNoneBlank)
114+
.map(IntelliJAzureIcons::getIcon).orElse(AllIcons.Providers.Azure);
108115
}
109116

110117
@Override

0 commit comments

Comments
 (0)