aboutsummaryrefslogtreecommitdiff
path: root/app/src/main/kotlin/com/pitchedapps/frost/facebook/FbCookie.kt
diff options
context:
space:
mode:
Diffstat (limited to 'app/src/main/kotlin/com/pitchedapps/frost/facebook/FbCookie.kt')
-rw-r--r--app/src/main/kotlin/com/pitchedapps/frost/facebook/FbCookie.kt22
1 files changed, 12 insertions, 10 deletions
diff --git a/app/src/main/kotlin/com/pitchedapps/frost/facebook/FbCookie.kt b/app/src/main/kotlin/com/pitchedapps/frost/facebook/FbCookie.kt
index 3ff24ccb..aa12fbc5 100644
--- a/app/src/main/kotlin/com/pitchedapps/frost/facebook/FbCookie.kt
+++ b/app/src/main/kotlin/com/pitchedapps/frost/facebook/FbCookie.kt
@@ -28,34 +28,36 @@ import com.pitchedapps.frost.utils.L
import com.pitchedapps.frost.utils.Prefs
import com.pitchedapps.frost.utils.cookies
import com.pitchedapps.frost.utils.launchLogin
-import kotlin.coroutines.resume
-import kotlin.coroutines.suspendCoroutine
import kotlinx.coroutines.NonCancellable
import kotlinx.coroutines.async
import kotlinx.coroutines.awaitAll
import kotlinx.coroutines.withContext
-import org.koin.core.KoinComponent
-import org.koin.core.inject
+import org.koin.dsl.module
+import kotlin.coroutines.resume
+import kotlin.coroutines.suspendCoroutine
/**
* Created by Allan Wang on 2017-05-30.
*
* The following component manages all cookie transfers.
*/
-object FbCookie : KoinComponent {
+class FbCookie(private val prefs: Prefs, private val cookieDao: CookieDao) {
- const val COOKIE_DOMAIN = FB_URL_BASE
+ companion object {
+ private const val COOKIE_DOMAIN = FB_URL_BASE
+
+ fun module() = module {
+ single { FbCookie(get(), get()) }
+ }
+ }
/**
* Retrieves the facebook cookie if it exists
* Note that this is a synchronized call
*/
- inline val webCookie: String?
+ val webCookie: String?
get() = CookieManager.getInstance().getCookie(COOKIE_DOMAIN)
- private val prefs: Prefs by inject()
- private val cookieDao: CookieDao by inject()
-
private suspend fun CookieManager.suspendSetWebCookie(cookie: String?): Boolean {
cookie ?: return true
return withContext(NonCancellable) {