diff options
author | Allan Wang <me@allanwang.ca> | 2018-01-18 23:23:56 -0500 |
---|---|---|
committer | Allan Wang <me@allanwang.ca> | 2018-01-20 16:42:37 -0500 |
commit | d766100c297bc094491de150f24c04719ffa8f4e (patch) | |
tree | b69863dace2fcb45d5fd25c276ca450e07305c44 /app/src/main/kotlin/com/pitchedapps/frost/facebook/requests | |
parent | 78b3cc41e4c9f8d141ad46ee75e476fa2d177f19 (diff) | |
download | frost-d766100c297bc094491de150f24c04719ffa8f4e.tar.gz frost-d766100c297bc094491de150f24c04719ffa8f4e.tar.bz2 frost-d766100c297bc094491de150f24c04719ffa8f4e.zip |
Enhancement/speed up (#650)
* Revert back to m.facebook
* Add initial speedup
* Update theme
* Fix link press for event status
* Move web states to fb const
* Fix images and email
* Fix up flyweight for requests
* Ensure frost request is synchronous
* Prepare diff utils
* Improve speed and fix blank overlay
* Update comments
* Add debugger and fix searchview
* Theme discover pages. Resolves #654
* Fix duplicate reload
* Fix image loading
* Update changelog
* Update tests
* Rename test
Update dependencies
Update gitignore
Diffstat (limited to 'app/src/main/kotlin/com/pitchedapps/frost/facebook/requests')
3 files changed, 10 insertions, 10 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 3ca37bb4..45545336 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 @@ -21,6 +21,7 @@ private class RxAuth : RxFlyweight<String, Long, RequestAuth>() { System.currentTimeMillis() - cond < 3600000 // valid for an hour override fun cache(input: String) = System.currentTimeMillis() + } private val auth = RxAuth() @@ -32,13 +33,12 @@ private val auth = RxAuth() */ fun String?.fbRequest(fail: () -> Unit = {}, action: RequestAuth.() -> Unit) { if (this == null) return fail() - auth(this).subscribe { a: RequestAuth?, _ -> - if (a?.isValid == true) - a.action() - else { - L.e { "Failed auth for ${hashCode()}" } - fail() - } + try { + val auth = auth(this).blockingGet() + auth.action() + } catch (e: Exception) { + L.e { "Failed auth for ${hashCode()}: ${e.message}" } + fail() } } 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 fa78bbfa..094e7fc9 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 @@ -67,7 +67,7 @@ class HdImageLoading : ModelLoader<HdImageMaybe, InputStream> { override fun buildLoadData(model: HdImageMaybe, width: Int, height: Int, - options: Options?): ModelLoader.LoadData<InputStream>? = + options: Options): ModelLoader.LoadData<InputStream>? = if (!model.isValid) null else ModelLoader.LoadData(ObjectKey(model), HdImageFetcher(model)) diff --git a/app/src/main/kotlin/com/pitchedapps/frost/facebook/requests/Menu.kt b/app/src/main/kotlin/com/pitchedapps/frost/facebook/requests/Menu.kt index 72b6e0a4..6f327662 100644 --- a/app/src/main/kotlin/com/pitchedapps/frost/facebook/requests/Menu.kt +++ b/app/src/main/kotlin/com/pitchedapps/frost/facebook/requests/Menu.kt @@ -117,7 +117,7 @@ data class MenuHeader(val id: String? = null, ) : this(id, header, visible ?: emptyList(), all ?: emptyList()) override val isValid: Boolean - get() = header != null + get() = !header.isNullOrBlank() } @JsonIgnoreProperties(ignoreUnknown = true) @@ -139,7 +139,7 @@ data class MenuItem(val id: String? = null, ) : this(id, name, pic?.formattedFbUrl, url?.formattedFbUrl, count ?: 0, countDetails) override val isValid: Boolean - get() = name != null && url != null + get() = !name.isNullOrBlank() && !url.isNullOrBlank() } data class MenuFooter(val data: List<MenuFooterItem> = emptyList(), |