Same storage manager used by lazy resolve session in AnalyzerFacadeForJVM and the rest of the components
This commit is contained in:
+9
-5
@@ -50,7 +50,7 @@ public class InjectorForJavaDescriptorResolver {
|
||||
|
||||
private final Project project;
|
||||
private final BindingTrace bindingTrace;
|
||||
private final LockBasedStorageManager storageManager;
|
||||
private final LockBasedStorageManager lockBasedStorageManager;
|
||||
private final JavaClassFinderImpl javaClassFinder;
|
||||
private final TraceBasedExternalSignatureResolver traceBasedExternalSignatureResolver;
|
||||
private final TraceBasedJavaResolverCache traceBasedJavaResolverCache;
|
||||
@@ -81,7 +81,7 @@ public class InjectorForJavaDescriptorResolver {
|
||||
) {
|
||||
this.project = project;
|
||||
this.bindingTrace = bindingTrace;
|
||||
this.storageManager = new LockBasedStorageManager();
|
||||
this.lockBasedStorageManager = new LockBasedStorageManager();
|
||||
this.javaClassFinder = new JavaClassFinderImpl();
|
||||
this.traceBasedExternalSignatureResolver = new TraceBasedExternalSignatureResolver();
|
||||
this.traceBasedJavaResolverCache = new TraceBasedJavaResolverCache();
|
||||
@@ -96,7 +96,7 @@ public class InjectorForJavaDescriptorResolver {
|
||||
this.javaAnnotationArgumentResolver = new JavaAnnotationArgumentResolver();
|
||||
this.javaClassResolver = new JavaClassResolver();
|
||||
this.deserializedDescriptorResolver = new DeserializedDescriptorResolver();
|
||||
this.annotationDescriptorDeserializer = new AnnotationDescriptorDeserializer(storageManager);
|
||||
this.annotationDescriptorDeserializer = new AnnotationDescriptorDeserializer(getLockBasedStorageManager());
|
||||
this.javaFunctionResolver = new JavaFunctionResolver();
|
||||
this.javaTypeParameterResolver = new JavaTypeParameterResolver();
|
||||
this.javaTypeTransformer = new JavaTypeTransformer();
|
||||
@@ -129,7 +129,7 @@ public class InjectorForJavaDescriptorResolver {
|
||||
this.javaDescriptorResolver.setModule(module);
|
||||
this.javaDescriptorResolver.setPackageFragmentProvider(javaPackageFragmentProvider);
|
||||
this.javaDescriptorResolver.setSignatureChecker(psiBasedMethodSignatureChecker);
|
||||
this.javaDescriptorResolver.setStorageManager(storageManager);
|
||||
this.javaDescriptorResolver.setStorageManager(lockBasedStorageManager);
|
||||
|
||||
javaPackageFragmentProvider.setCache(traceBasedJavaResolverCache);
|
||||
javaPackageFragmentProvider.setDeserializedDescriptorResolver(deserializedDescriptorResolver);
|
||||
@@ -162,7 +162,7 @@ public class InjectorForJavaDescriptorResolver {
|
||||
deserializedDescriptorResolver.setErrorReporter(traceBasedErrorReporter);
|
||||
deserializedDescriptorResolver.setJavaDescriptorResolver(javaDescriptorResolver);
|
||||
deserializedDescriptorResolver.setJavaPackageFragmentProvider(javaPackageFragmentProvider);
|
||||
deserializedDescriptorResolver.setStorageManager(storageManager);
|
||||
deserializedDescriptorResolver.setStorageManager(lockBasedStorageManager);
|
||||
|
||||
annotationDescriptorDeserializer.setErrorReporter(traceBasedErrorReporter);
|
||||
annotationDescriptorDeserializer.setJavaDescriptorResolver(javaDescriptorResolver);
|
||||
@@ -211,6 +211,10 @@ public class InjectorForJavaDescriptorResolver {
|
||||
public void destroy() {
|
||||
}
|
||||
|
||||
public LockBasedStorageManager getLockBasedStorageManager() {
|
||||
return this.lockBasedStorageManager;
|
||||
}
|
||||
|
||||
public JavaClassFinderImpl getJavaClassFinder() {
|
||||
return this.javaClassFinder;
|
||||
}
|
||||
|
||||
+1
-1
@@ -100,7 +100,7 @@ public enum AnalyzerFacadeForJVM implements AnalyzerFacade {
|
||||
final JavaClassFinderImpl classFinder = injector.getJavaClassFinder();
|
||||
|
||||
// TODO: Replace with stub declaration provider
|
||||
LockBasedLazyResolveStorageManager storageManager = new LockBasedLazyResolveStorageManager();
|
||||
LockBasedLazyResolveStorageManager storageManager = new LockBasedLazyResolveStorageManager(injector.getLockBasedStorageManager());
|
||||
FileBasedDeclarationProviderFactory declarationProviderFactory = new FileBasedDeclarationProviderFactory(storageManager, files, new Predicate<FqName>() {
|
||||
@Override
|
||||
public boolean apply(FqName fqName) {
|
||||
|
||||
Reference in New Issue
Block a user