diff --git a/java/java-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/JavaClassListReferenceProvider.java b/java/java-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/JavaClassListReferenceProvider.java index 34a665e2b127..6d6c7ee9057f 100644 --- a/java/java-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/JavaClassListReferenceProvider.java +++ b/java/java-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/JavaClassListReferenceProvider.java @@ -16,10 +16,12 @@ package com.intellij.psi.impl.source.resolve.reference.impl.providers; import com.intellij.openapi.progress.ProgressManager; +import com.intellij.openapi.project.Project; import com.intellij.openapi.util.NotNullLazyValue; import com.intellij.psi.PsiElement; import com.intellij.psi.PsiPackage; import com.intellij.psi.PsiReference; +import com.intellij.psi.search.GlobalSearchScope; import com.intellij.psi.templateLanguages.OuterLanguageElement; import com.intellij.psi.xml.XmlTag; import com.intellij.util.containers.ContainerUtil; @@ -103,4 +105,9 @@ public class JavaClassListReferenceProvider extends JavaClassReferenceProvider { } return ContainerUtil.toArray(results, new PsiReference[results.size()]); } + + @Override + public GlobalSearchScope getScope(Project project) { + return GlobalSearchScope.allScope(project); + } } diff --git a/java/java-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/JavaClassReference.java b/java/java-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/JavaClassReference.java index 171fd5d16bba..98986e2d2961 100644 --- a/java/java-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/JavaClassReference.java +++ b/java/java-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/JavaClassReference.java @@ -428,7 +428,7 @@ public class JavaClassReference extends GenericReference implements PsiJavaRefer } private GlobalSearchScope getScope() { - final GlobalSearchScope scope = myJavaClassReferenceSet.getProvider().getScope(); + final GlobalSearchScope scope = myJavaClassReferenceSet.getProvider().getScope(getElement().getProject()); if (scope == null) { final Module module = ModuleUtil.findModuleForPsiElement(getElement()); if (module != null) { @@ -503,7 +503,7 @@ public class JavaClassReference extends GenericReference implements PsiJavaRefer private Object[] getSubclassVariants(@NotNull PsiPackage context, @NotNull String[] extendClasses) { HashSet lookups = new HashSet(); GlobalSearchScope packageScope = PackageScope.packageScope(context, true); - GlobalSearchScope scope = myJavaClassReferenceSet.getProvider().getScope(); + GlobalSearchScope scope = myJavaClassReferenceSet.getProvider().getScope(getElement().getProject()); if (scope != null) { packageScope = packageScope.intersectWith(scope); } diff --git a/java/java-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/JavaClassReferenceProvider.java b/java/java-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/JavaClassReferenceProvider.java index 551303be8dbc..a3d9b626b0a7 100644 --- a/java/java-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/JavaClassReferenceProvider.java +++ b/java/java-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/JavaClassReferenceProvider.java @@ -79,7 +79,7 @@ public class JavaClassReferenceProvider extends GenericReferenceProvider impleme } }; - private static final Key, Project>> KEY = Key.create("default packages"); + private final Key, Project>> myKey = Key.create("default packages"); public void setOption(CustomizationKey option, T value) { if (myOptions == null) { @@ -94,7 +94,7 @@ public class JavaClassReferenceProvider extends GenericReferenceProvider impleme } @Nullable - public GlobalSearchScope getScope() { + public GlobalSearchScope getScope(Project project) { return null; } @@ -130,7 +130,7 @@ public class JavaClassReferenceProvider extends GenericReferenceProvider impleme } protected List getDefaultPackages(Project project) { - return CachedValuesManager.getManager(project).getParameterizedCachedValue(project, KEY, myProvider, false, project); + return CachedValuesManager.getManager(project).getParameterizedCachedValue(project, myKey, myProvider, false, project); } private static Collection getSubPackages(final PsiPackage defaultPackage) { diff --git a/java/java-impl/src/com/intellij/util/xml/PsiClassConverter.java b/java/java-impl/src/com/intellij/util/xml/PsiClassConverter.java index 3c81e5516e7a..8f20e0d09b43 100644 --- a/java/java-impl/src/com/intellij/util/xml/PsiClassConverter.java +++ b/java/java-impl/src/com/intellij/util/xml/PsiClassConverter.java @@ -17,6 +17,7 @@ package com.intellij.util.xml; import com.intellij.openapi.module.Module; +import com.intellij.openapi.project.Project; import com.intellij.openapi.roots.ProjectFileIndex; import com.intellij.openapi.roots.ProjectRootManager; import com.intellij.openapi.util.text.StringUtil; @@ -66,7 +67,7 @@ public class PsiClassConverter extends Converter implements CustomRefe new JavaClassReferenceProvider() { @Override - public GlobalSearchScope getScope() { + public GlobalSearchScope getScope(Project project) { return PsiClassConverter.this.getScope(genericDomValue); } };