diff options
author | Allan Wang <me@allanwang.ca> | 2019-01-04 01:56:04 -0500 |
---|---|---|
committer | Allan Wang <me@allanwang.ca> | 2019-01-04 01:56:04 -0500 |
commit | 339ce9db98c1e6dfb1c8d69f81806680b1efa666 (patch) | |
tree | 75b3366004ddf08359490d4d4b83d63366c0a68d /app/src/main/kotlin/com/pitchedapps/frost/facebook/requests | |
parent | 8c77e02e89dfec7bff04a397dfc82613ccd1242a (diff) | |
download | frost-339ce9db98c1e6dfb1c8d69f81806680b1efa666.tar.gz frost-339ce9db98c1e6dfb1c8d69f81806680b1efa666.tar.bz2 frost-339ce9db98c1e6dfb1c8d69f81806680b1efa666.zip |
Convert global continuations to completable deferred
Diffstat (limited to 'app/src/main/kotlin/com/pitchedapps/frost/facebook/requests')
-rw-r--r-- | app/src/main/kotlin/com/pitchedapps/frost/facebook/requests/FbRequest.kt | 16 | ||||
-rw-r--r-- | app/src/main/kotlin/com/pitchedapps/frost/facebook/requests/Images.kt | 2 |
2 files changed, 1 insertions, 17 deletions
diff --git a/app/src/main/kotlin/com/pitchedapps/frost/facebook/requests/FbRequest.kt b/app/src/main/kotlin/com/pitchedapps/frost/facebook/requests/FbRequest.kt index 53ea6e67..3663f908 100644 --- a/app/src/main/kotlin/com/pitchedapps/frost/facebook/requests/FbRequest.kt +++ b/app/src/main/kotlin/com/pitchedapps/frost/facebook/requests/FbRequest.kt @@ -45,22 +45,6 @@ val fbAuth = Flyweight<String, RequestAuth>(GlobalScope, 100, 3600000 /* an hour } /** - * Synchronously fetch [RequestAuth] from cookie - * [action] will only be called if a valid auth is found. - * Otherwise, [fail] will be called - */ -fun String?.fbRequest(fail: () -> Unit = {}, action: RequestAuth.() -> Unit) { - if (this == null) return fail() - try { - val auth = runBlocking { fbAuth.fetch(this@fbRequest) } - auth.action() - } catch (e: Exception) { - L.e { "Failed auth for ${hashCode()}: ${e.message}" } - fail() - } -} - -/** * Underlying container for all fb requests */ data class RequestAuth( diff --git a/app/src/main/kotlin/com/pitchedapps/frost/facebook/requests/Images.kt b/app/src/main/kotlin/com/pitchedapps/frost/facebook/requests/Images.kt index ee18e15e..36dff6ff 100644 --- a/app/src/main/kotlin/com/pitchedapps/frost/facebook/requests/Images.kt +++ b/app/src/main/kotlin/com/pitchedapps/frost/facebook/requests/Images.kt @@ -133,7 +133,7 @@ class HdImageFetcher(private val model: HdImageMaybe) : DataFetcher<InputStream> val result: Result<InputStream?> = runCatching { runBlocking { withTimeout(20000L) { - val auth = fbAuth.fetch(model.cookie) + val auth = fbAuth.fetch(model.cookie).await() if (cancelled) throw RuntimeException("Cancelled") val url = auth.getFullSizedImage(model.id).invoke() ?: throw RuntimeException("Null url") if (cancelled) throw RuntimeException("Cancelled") |