Fix: use idea caches correctly
Instead of using value from cache the first created value was being saved to field and not invalidated later.
This commit is contained in:
+8
-6
@@ -40,13 +40,15 @@ interface KotlinStdlibCache {
|
|||||||
}
|
}
|
||||||
|
|
||||||
class KotlinStdlibCacheImpl(val project: Project) : KotlinStdlibCache {
|
class KotlinStdlibCacheImpl(val project: Project) : KotlinStdlibCache {
|
||||||
private val stdlibCache = project.cacheInvalidatingOnRootModifications {
|
private val stdlibCache
|
||||||
ConcurrentHashMap<LibraryInfo, Boolean>()
|
get() = project.cacheInvalidatingOnRootModifications {
|
||||||
}
|
ConcurrentHashMap<LibraryInfo, Boolean>()
|
||||||
|
}
|
||||||
|
|
||||||
private val stdlibDependencyCache = project.cacheInvalidatingOnRootModifications {
|
private val stdlibDependencyCache
|
||||||
ConcurrentHashMap<LibraryInfo, Boolean>()
|
get() = project.cacheInvalidatingOnRootModifications {
|
||||||
}
|
ConcurrentHashMap<LibraryInfo, Boolean>()
|
||||||
|
}
|
||||||
|
|
||||||
private class LibraryScope(
|
private class LibraryScope(
|
||||||
project: Project,
|
project: Project,
|
||||||
|
|||||||
+4
-5
@@ -65,14 +65,13 @@ class ResolutionAnchorCacheServiceImpl(val project: Project) :
|
|||||||
object ResolutionAnchorMappingCacheKey
|
object ResolutionAnchorMappingCacheKey
|
||||||
object ResolutionAnchorDependenciesCacheKey
|
object ResolutionAnchorDependenciesCacheKey
|
||||||
|
|
||||||
override val resolutionAnchorsForLibraries: Map<LibraryInfo, ModuleSourceInfo> by lazy {
|
override val resolutionAnchorsForLibraries: Map<LibraryInfo, ModuleSourceInfo>
|
||||||
project.cacheByClassInvalidatingOnRootModifications(ResolutionAnchorMappingCacheKey::class.java) {
|
get() = project.cacheByClassInvalidatingOnRootModifications(ResolutionAnchorMappingCacheKey::class.java) {
|
||||||
mapResolutionAnchorForLibraries()
|
mapResolutionAnchorForLibraries()
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
private val resolutionAnchorDependenciesCache: MutableMap<LibraryInfo, Set<ModuleSourceInfo>> =
|
private val resolutionAnchorDependenciesCache: MutableMap<LibraryInfo, Set<ModuleSourceInfo>>
|
||||||
project.cacheByClassInvalidatingOnRootModifications(ResolutionAnchorDependenciesCacheKey::class.java) {
|
get() = project.cacheByClassInvalidatingOnRootModifications(ResolutionAnchorDependenciesCacheKey::class.java) {
|
||||||
ContainerUtil.createConcurrentWeakMap()
|
ContainerUtil.createConcurrentWeakMap()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user