[IC] Add back flush() API to PersistentStorage

In commit 4e89dcf, we removed `flush()` from `PersistentStorage`
(previously called `LazyStorage`) because it is not used in Gradle
builds.

However, `flush()` is still used in JPS builds, so we need to add that
API back in this commit.

#KT-62486 Fixed

Co-authored-by: Hung Nguyen <hungnv@google.com>


Merge-request: KOTLIN-MR-796
Merged-by: Aleksei Cherepanov <aleksei.cherepanov@jetbrains.com>
This commit is contained in:
Hung Nguyen
2023-10-16 18:30:47 +00:00
committed by Space Cloud
parent 498f2e534a
commit ecbf69504a
9 changed files with 68 additions and 33 deletions
@@ -39,6 +39,8 @@ private class InMemoryStorageWrapperMock : InMemoryStorageInterface<Any, Any> {
override val keys: Set<Any> = emptySet()
override fun flush() {}
override fun close() {}
override fun remove(key: Any) {}
@@ -73,7 +73,7 @@ class RelocatableCachesTest : TestWithWorkingDir() {
val filesToAdd = if (reverseFiles) files.reversedSet() else files
val lookupsToAdd = if (reverseLookups) lookups.reversedMultiMap() else lookups
lookupStorage.addAll(lookupsToAdd, filesToAdd)
lookupStorage.flush(memoryCachesOnly = false)
lookupStorage.flush()
}
private val File.storageRoot: File