fixed NPE (Spring+Maven)

This commit is contained in:
unknown
2011-07-06 12:25:29 +02:00
parent 125302a9a4
commit 4b7969ed43
2 changed files with 12 additions and 6 deletions
@@ -25,6 +25,7 @@ import com.intellij.psi.util.ReferenceSetBase;
import com.intellij.util.NullableFunction;
import com.intellij.util.containers.ContainerUtil;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import java.util.Collection;
import java.util.Collections;
@@ -43,10 +44,12 @@ public class PackageReferenceSet extends ReferenceSetBase<PsiPackageReference> {
return new PsiPackageReference(this, range, index);
}
public Collection<PsiPackage> resolvePackageName(PsiPackage context, String packageName) {
for (PsiPackage aPackage : context.getSubPackages()) {
if (Comparing.equal(aPackage.getName(), packageName)) {
return Collections.singleton(aPackage);
public Collection<PsiPackage> resolvePackageName(@Nullable PsiPackage context, String packageName) {
if (context != null) {
for (PsiPackage aPackage : context.getSubPackages()) {
if (Comparing.equal(aPackage.getName(), packageName)) {
return Collections.singleton(aPackage);
}
}
}
return Collections.emptyList();
@@ -63,5 +66,4 @@ public class PackageReferenceSet extends ReferenceSetBase<PsiPackageReference> {
}
});
}
}
@@ -5,8 +5,10 @@ import com.intellij.psi.PsiPackage;
import com.intellij.psi.impl.source.resolve.reference.impl.providers.PackageReferenceSet;
import com.intellij.util.PatternUtil;
import com.intellij.util.Processor;
import org.jetbrains.annotations.Nullable;
import java.util.Collection;
import java.util.Collections;
import java.util.HashSet;
import java.util.Set;
import java.util.regex.Pattern;
@@ -17,7 +19,9 @@ public class PatternPackageReferenceSet extends PackageReferenceSet {
}
@Override
public Collection<PsiPackage> resolvePackageName(final PsiPackage context, final String packageName) {
public Collection<PsiPackage> resolvePackageName(@Nullable final PsiPackage context, final String packageName) {
if (context == null) return Collections.emptySet();
if (packageName.contains("*")) {
final Pattern pattern = PatternUtil.fromMask(packageName);
final Set<PsiPackage> packages = new HashSet<PsiPackage>();