Move method from JavaDescriptorResolver to NamespaceResolver

This commit is contained in:
Pavel V. Talanov
2012-10-06 19:51:51 +04:00
parent f3c707a71f
commit bf76fa665e
2 changed files with 9 additions and 8 deletions
@@ -108,7 +108,7 @@ public class JavaDescriptorResolver implements DependencyClassByQualifiedNameRes
private final CompileTimeConstResolver compileTimeConstResolver = new CompileTimeConstResolver(this); private final CompileTimeConstResolver compileTimeConstResolver = new CompileTimeConstResolver(this);
private final AnnotationResolver annotationResolver = new AnnotationResolver(this); private final AnnotationResolver annotationResolver = new AnnotationResolver(this);
private final FunctionResolver functionResolver = new FunctionResolver(this); private final FunctionResolver functionResolver = new FunctionResolver(this);
private final NamespaceResolver namespaceResolver = new NamespaceResolver(this); public final NamespaceResolver namespaceResolver = new NamespaceResolver(this);
@Inject @Inject
public void setProject(Project project) { public void setProject(Project project) {
@@ -250,12 +250,6 @@ public class JavaDescriptorResolver implements DependencyClassByQualifiedNameRes
return namespaceResolver.getJavaPackageScope(fqName, ns); return namespaceResolver.getJavaPackageScope(fqName, ns);
} }
@Nullable
public PsiClass getPsiClassForJavaPackageScope(@NotNull FqName packageFQN) {
return psiClassFinder
.findPsiClass(packageFQN.child(Name.identifier(JvmAbi.PACKAGE_CLASS)), PsiClassFinder.RuntimeClassesHandleMode.IGNORE);
}
public static class ValueParameterDescriptors { public static class ValueParameterDescriptors {
private final JetType receiverType; private final JetType receiverType;
private final List<ValueParameterDescriptor> descriptors; private final List<ValueParameterDescriptor> descriptors;
@@ -28,6 +28,7 @@ import org.jetbrains.jet.lang.resolve.java.*;
import org.jetbrains.jet.lang.resolve.java.descriptor.JavaNamespaceDescriptor; import org.jetbrains.jet.lang.resolve.java.descriptor.JavaNamespaceDescriptor;
import org.jetbrains.jet.lang.resolve.java.scope.JavaPackageScope; import org.jetbrains.jet.lang.resolve.java.scope.JavaPackageScope;
import org.jetbrains.jet.lang.resolve.name.FqName; import org.jetbrains.jet.lang.resolve.name.FqName;
import org.jetbrains.jet.lang.resolve.name.Name;
import java.util.Collections; import java.util.Collections;
@@ -111,7 +112,7 @@ public class NamespaceResolver {
lookingForPsi: lookingForPsi:
{ {
psiClass = javaDescriptorResolver.getPsiClassForJavaPackageScope(fqName); psiClass = getPsiClassForJavaPackageScope(fqName);
psiPackage = javaDescriptorResolver.getSemanticServices().getPsiClassFinder().findPsiPackage(fqName); psiPackage = javaDescriptorResolver.getSemanticServices().getPsiClassFinder().findPsiPackage(fqName);
if (psiClass != null || psiPackage != null) { if (psiClass != null || psiPackage != null) {
javaDescriptorResolver.getTrace().record(JavaBindingContext.JAVA_NAMESPACE_KIND, ns, JavaNamespaceKind.PROPER); javaDescriptorResolver.getTrace().record(JavaBindingContext.JAVA_NAMESPACE_KIND, ns, JavaNamespaceKind.PROPER);
@@ -167,4 +168,10 @@ public class NamespaceResolver {
} }
return scope; return scope;
} }
@Nullable
public PsiClass getPsiClassForJavaPackageScope(@NotNull FqName packageFQN) {
return javaDescriptorResolver.getPsiClassFinder()
.findPsiClass(packageFQN.child(Name.identifier(JvmAbi.PACKAGE_CLASS)), PsiClassFinder.RuntimeClassesHandleMode.IGNORE);
}
} }