Simplify MealieDataSourceImpl
This commit is contained in:
@@ -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)
|
||||
}
|
||||
@@ -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()
|
||||
}
|
||||
Reference in New Issue
Block a user