Browse Source

Use operator invoke.

feature/julioromano/geocoding_api
Benoit Marty 1 year ago committed by Benoit Marty
parent
commit
5b4069d9f4
  1. 4
      features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsPresenter.kt
  2. 4
      features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/tasks/ClearCacheUseCase.kt
  3. 4
      features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/tasks/ComputeCacheSizeUseCase.kt
  4. 2
      features/preferences/impl/src/test/kotlin/io/element/android/features/preferences/impl/tasks/FakeClearCacheUseCase.kt
  5. 2
      features/preferences/impl/src/test/kotlin/io/element/android/features/preferences/impl/tasks/FakeComputeCacheSizeUseCase.kt

4
features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsPresenter.kt

@ -127,13 +127,13 @@ class DeveloperSettingsPresenter @Inject constructor( @@ -127,13 +127,13 @@ class DeveloperSettingsPresenter @Inject constructor(
private fun CoroutineScope.computeCacheSize(cacheSize: MutableState<Async<String>>) = launch {
suspend {
computeCacheSizeUseCase.execute()
computeCacheSizeUseCase()
}.execute(cacheSize)
}
private fun CoroutineScope.clearCache(clearCacheAction: MutableState<Async<Unit>>) = launch {
suspend {
clearCacheUseCase.execute()
clearCacheUseCase()
}.execute(clearCacheAction)
}
}

4
features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/tasks/ClearCacheUseCase.kt

@ -33,7 +33,7 @@ import javax.inject.Inject @@ -33,7 +33,7 @@ import javax.inject.Inject
import javax.inject.Provider
interface ClearCacheUseCase {
suspend fun execute()
suspend operator fun invoke()
}
@ContributesBinding(SessionScope::class)
@ -44,7 +44,7 @@ class DefaultClearCacheUseCase @Inject constructor( @@ -44,7 +44,7 @@ class DefaultClearCacheUseCase @Inject constructor(
private val authenticationService: MatrixAuthenticationService,
private val okHttpClient: Provider<OkHttpClient>,
) : ClearCacheUseCase {
override suspend fun execute() = withContext(coroutineDispatchers.io) {
override suspend fun invoke() = withContext(coroutineDispatchers.io) {
// Clear Matrix cache
matrixClient.clearCache()
// Clear Coil cache

4
features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/tasks/ComputeCacheSizeUseCase.kt

@ -28,7 +28,7 @@ import kotlinx.coroutines.withContext @@ -28,7 +28,7 @@ import kotlinx.coroutines.withContext
import javax.inject.Inject
interface ComputeCacheSizeUseCase {
suspend fun execute(): String
suspend operator fun invoke(): String
}
@ContributesBinding(SessionScope::class)
@ -38,7 +38,7 @@ class DefaultComputeCacheSizeUseCase @Inject constructor( @@ -38,7 +38,7 @@ class DefaultComputeCacheSizeUseCase @Inject constructor(
private val coroutineDispatchers: CoroutineDispatchers,
private val fileSizeFormatter: FileSizeFormatter,
) : ComputeCacheSizeUseCase {
override suspend fun execute(): String = withContext(coroutineDispatchers.io) {
override suspend fun invoke(): String = withContext(coroutineDispatchers.io) {
var cumulativeSize = 0L
cumulativeSize += matrixClient.getCacheSize()
// - 4096 to not include the size fo the folder

2
features/preferences/impl/src/test/kotlin/io/element/android/features/preferences/impl/tasks/FakeClearCacheUseCase.kt

@ -22,7 +22,7 @@ class FakeClearCacheUseCase : ClearCacheUseCase { @@ -22,7 +22,7 @@ class FakeClearCacheUseCase : ClearCacheUseCase {
var executeHasBeenCalled = false
private set
override suspend fun execute() = simulateLongTask {
override suspend fun invoke() = simulateLongTask {
executeHasBeenCalled = true
}
}

2
features/preferences/impl/src/test/kotlin/io/element/android/features/preferences/impl/tasks/FakeComputeCacheSizeUseCase.kt

@ -19,7 +19,7 @@ package io.element.android.features.preferences.impl.tasks @@ -19,7 +19,7 @@ package io.element.android.features.preferences.impl.tasks
import io.element.android.tests.testutils.simulateLongTask
class FakeComputeCacheSizeUseCase : ComputeCacheSizeUseCase {
override suspend fun execute() = simulateLongTask {
override suspend fun invoke() = simulateLongTask {
"O kB"
}
}

Loading…
Cancel
Save