Simplify MealieDataSourceImpl

This commit is contained in:
Kirill Kamakin
2022-08-07 11:42:36 +02:00
parent 35566d8fa9
commit 725b75211d
4 changed files with 49 additions and 86 deletions

View File

@@ -2,7 +2,6 @@ package gq.kirmanak.mealient.data.auth.impl
import gq.kirmanak.mealient.data.auth.AuthDataSource
import gq.kirmanak.mealient.datasource.MealieDataSource
import gq.kirmanak.mealient.extensions.logAndMapErrors
import gq.kirmanak.mealient.logging.Logger
import javax.inject.Inject
import javax.inject.Singleton
@@ -13,13 +12,6 @@ class AuthDataSourceImpl @Inject constructor(
private val mealieDataSource: MealieDataSource,
) : AuthDataSource {
override suspend fun authenticate(username: String, password: String, baseUrl: String): String {
logger.v { "authenticate() called with: username = $username, password = $password" }
val accessToken = logger.logAndMapErrors(
block = { mealieDataSource.authenticate(baseUrl, username, password) },
logProvider = { "sendRequest: can't get token" },
)
logger.v { "authenticate() returned: $accessToken" }
return accessToken
}
override suspend fun authenticate(username: String, password: String, baseUrl: String): String =
mealieDataSource.authenticate(baseUrl, username, password)
}

View File

@@ -1,12 +0,0 @@
package gq.kirmanak.mealient.extensions
import gq.kirmanak.mealient.datasource.mapToNetworkError
import gq.kirmanak.mealient.logging.Logger
inline fun <T> Logger.logAndMapErrors(
block: () -> T,
noinline logProvider: () -> String
): T = runCatchingExceptCancel(block).getOrElse {
e(it, messageSupplier = logProvider)
throw it.mapToNetworkError()
}