moving PsiReferenceContributor to application level: FindUsagesTest fixed

This commit is contained in:
Dmitry Avdeev
2011-05-05 16:40:33 +04:00
parent a92bef287b
commit ec80acba4b
4 changed files with 14 additions and 6 deletions
@@ -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);
}
}
@@ -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<Object> lookups = new HashSet<Object>();
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);
}
@@ -79,7 +79,7 @@ public class JavaClassReferenceProvider extends GenericReferenceProvider impleme
}
};
private static final Key<ParameterizedCachedValue<List<PsiElement>, Project>> KEY = Key.create("default packages");
private final Key<ParameterizedCachedValue<List<PsiElement>, Project>> myKey = Key.create("default packages");
public <T> void setOption(CustomizationKey<T> 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<PsiElement> 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<PsiPackage> getSubPackages(final PsiPackage defaultPackage) {
@@ -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<PsiClass> implements CustomRefe
new JavaClassReferenceProvider() {
@Override
public GlobalSearchScope getScope() {
public GlobalSearchScope getScope(Project project) {
return PsiClassConverter.this.getScope(genericDomValue);
}
};