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 {
|
||||
private val stdlibCache = project.cacheInvalidatingOnRootModifications {
|
||||
ConcurrentHashMap<LibraryInfo, Boolean>()
|
||||
}
|
||||
private val stdlibCache
|
||||
get() = project.cacheInvalidatingOnRootModifications {
|
||||
ConcurrentHashMap<LibraryInfo, Boolean>()
|
||||
}
|
||||
|
||||
private val stdlibDependencyCache = project.cacheInvalidatingOnRootModifications {
|
||||
ConcurrentHashMap<LibraryInfo, Boolean>()
|
||||
}
|
||||
private val stdlibDependencyCache
|
||||
get() = project.cacheInvalidatingOnRootModifications {
|
||||
ConcurrentHashMap<LibraryInfo, Boolean>()
|
||||
}
|
||||
|
||||
private class LibraryScope(
|
||||
project: Project,
|
||||
|
||||
+4
-5
@@ -65,14 +65,13 @@ class ResolutionAnchorCacheServiceImpl(val project: Project) :
|
||||
object ResolutionAnchorMappingCacheKey
|
||||
object ResolutionAnchorDependenciesCacheKey
|
||||
|
||||
override val resolutionAnchorsForLibraries: Map<LibraryInfo, ModuleSourceInfo> by lazy {
|
||||
project.cacheByClassInvalidatingOnRootModifications(ResolutionAnchorMappingCacheKey::class.java) {
|
||||
override val resolutionAnchorsForLibraries: Map<LibraryInfo, ModuleSourceInfo>
|
||||
get() = project.cacheByClassInvalidatingOnRootModifications(ResolutionAnchorMappingCacheKey::class.java) {
|
||||
mapResolutionAnchorForLibraries()
|
||||
}
|
||||
}
|
||||
|
||||
private val resolutionAnchorDependenciesCache: MutableMap<LibraryInfo, Set<ModuleSourceInfo>> =
|
||||
project.cacheByClassInvalidatingOnRootModifications(ResolutionAnchorDependenciesCacheKey::class.java) {
|
||||
private val resolutionAnchorDependenciesCache: MutableMap<LibraryInfo, Set<ModuleSourceInfo>>
|
||||
get() = project.cacheByClassInvalidatingOnRootModifications(ResolutionAnchorDependenciesCacheKey::class.java) {
|
||||
ContainerUtil.createConcurrentWeakMap()
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user