mirror of
				https://github.com/mihonapp/mihon.git
				synced 2025-10-30 22:07:57 +01:00 
			
		
		
		
	Fully remove usages of RxJava from tracker classes
TODO: refactor usages to coroutines as well
This commit is contained in:
		| @@ -8,7 +8,6 @@ import eu.kanade.tachiyomi.data.preference.PreferencesHelper | ||||
| import eu.kanade.tachiyomi.data.track.model.TrackSearch | ||||
| import eu.kanade.tachiyomi.network.NetworkHelper | ||||
| import okhttp3.OkHttpClient | ||||
| import rx.Observable | ||||
| import uy.kohesive.injekt.injectLazy | ||||
|  | ||||
| abstract class TrackService(val id: Int) { | ||||
| @@ -48,7 +47,7 @@ abstract class TrackService(val id: Int) { | ||||
|  | ||||
|     abstract suspend fun bind(track: Track): Track | ||||
|  | ||||
|     abstract fun search(query: String): Observable<List<TrackSearch>> | ||||
|     abstract suspend fun search(query: String): List<TrackSearch> | ||||
|  | ||||
|     abstract suspend fun refresh(track: Track): Track | ||||
|  | ||||
|   | ||||
| @@ -6,11 +6,9 @@ import eu.kanade.tachiyomi.R | ||||
| import eu.kanade.tachiyomi.data.database.models.Track | ||||
| import eu.kanade.tachiyomi.data.track.TrackService | ||||
| import eu.kanade.tachiyomi.data.track.model.TrackSearch | ||||
| import eu.kanade.tachiyomi.util.lang.runAsObservable | ||||
| import kotlinx.serialization.decodeFromString | ||||
| import kotlinx.serialization.encodeToString | ||||
| import kotlinx.serialization.json.Json | ||||
| import rx.Observable | ||||
| import uy.kohesive.injekt.injectLazy | ||||
|  | ||||
| class Anilist(private val context: Context, id: Int) : TrackService(id) { | ||||
| @@ -160,8 +158,8 @@ class Anilist(private val context: Context, id: Int) : TrackService(id) { | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     override fun search(query: String): Observable<List<TrackSearch>> { | ||||
|         return runAsObservable({ api.search(query) }) | ||||
|     override suspend fun search(query: String): List<TrackSearch> { | ||||
|         return api.search(query) | ||||
|     } | ||||
|  | ||||
|     override suspend fun refresh(track: Track): Track { | ||||
|   | ||||
| @@ -6,11 +6,9 @@ import eu.kanade.tachiyomi.R | ||||
| import eu.kanade.tachiyomi.data.database.models.Track | ||||
| import eu.kanade.tachiyomi.data.track.TrackService | ||||
| import eu.kanade.tachiyomi.data.track.model.TrackSearch | ||||
| import eu.kanade.tachiyomi.util.lang.runAsObservable | ||||
| import kotlinx.serialization.decodeFromString | ||||
| import kotlinx.serialization.encodeToString | ||||
| import kotlinx.serialization.json.Json | ||||
| import rx.Observable | ||||
| import uy.kohesive.injekt.injectLazy | ||||
|  | ||||
| class Bangumi(private val context: Context, id: Int) : TrackService(id) { | ||||
| @@ -57,8 +55,8 @@ class Bangumi(private val context: Context, id: Int) : TrackService(id) { | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     override fun search(query: String): Observable<List<TrackSearch>> { | ||||
|         return runAsObservable({ api.search(query) }) | ||||
|     override suspend fun search(query: String): List<TrackSearch> { | ||||
|         return api.search(query) | ||||
|     } | ||||
|  | ||||
|     override suspend fun refresh(track: Track): Track { | ||||
|   | ||||
| @@ -6,11 +6,9 @@ import eu.kanade.tachiyomi.R | ||||
| import eu.kanade.tachiyomi.data.database.models.Track | ||||
| import eu.kanade.tachiyomi.data.track.TrackService | ||||
| import eu.kanade.tachiyomi.data.track.model.TrackSearch | ||||
| import eu.kanade.tachiyomi.util.lang.runAsObservable | ||||
| import kotlinx.serialization.decodeFromString | ||||
| import kotlinx.serialization.encodeToString | ||||
| import kotlinx.serialization.json.Json | ||||
| import rx.Observable | ||||
| import uy.kohesive.injekt.injectLazy | ||||
| import java.text.DecimalFormat | ||||
|  | ||||
| @@ -91,8 +89,8 @@ class Kitsu(private val context: Context, id: Int) : TrackService(id) { | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     override fun search(query: String): Observable<List<TrackSearch>> { | ||||
|         return runAsObservable({ api.search(query) }) | ||||
|     override suspend fun search(query: String): List<TrackSearch> { | ||||
|         return api.search(query) | ||||
|     } | ||||
|  | ||||
|     override suspend fun refresh(track: Track): Track { | ||||
|   | ||||
| @@ -6,11 +6,9 @@ import eu.kanade.tachiyomi.R | ||||
| import eu.kanade.tachiyomi.data.database.models.Track | ||||
| import eu.kanade.tachiyomi.data.track.TrackService | ||||
| import eu.kanade.tachiyomi.data.track.model.TrackSearch | ||||
| import eu.kanade.tachiyomi.util.lang.runAsObservable | ||||
| import kotlinx.serialization.decodeFromString | ||||
| import kotlinx.serialization.encodeToString | ||||
| import kotlinx.serialization.json.Json | ||||
| import rx.Observable | ||||
| import uy.kohesive.injekt.injectLazy | ||||
|  | ||||
| class MyAnimeList(private val context: Context, id: Int) : TrackService(id) { | ||||
| @@ -83,14 +81,14 @@ class MyAnimeList(private val context: Context, id: Int) : TrackService(id) { | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     override fun search(query: String): Observable<List<TrackSearch>> { | ||||
|     override suspend fun search(query: String): List<TrackSearch> { | ||||
|         if (query.startsWith(SEARCH_ID_PREFIX)) { | ||||
|             query.substringAfter(SEARCH_ID_PREFIX).toIntOrNull()?.let { id -> | ||||
|                 return runAsObservable({ listOf(api.getMangaDetails(id)) }) | ||||
|                 return listOf(api.getMangaDetails(id)) | ||||
|             } | ||||
|         } | ||||
|  | ||||
|         return runAsObservable({ api.search(query) }) | ||||
|         return api.search(query) | ||||
|     } | ||||
|  | ||||
|     override suspend fun refresh(track: Track): Track { | ||||
|   | ||||
| @@ -6,11 +6,9 @@ import eu.kanade.tachiyomi.R | ||||
| import eu.kanade.tachiyomi.data.database.models.Track | ||||
| import eu.kanade.tachiyomi.data.track.TrackService | ||||
| import eu.kanade.tachiyomi.data.track.model.TrackSearch | ||||
| import eu.kanade.tachiyomi.util.lang.runAsObservable | ||||
| import kotlinx.serialization.decodeFromString | ||||
| import kotlinx.serialization.encodeToString | ||||
| import kotlinx.serialization.json.Json | ||||
| import rx.Observable | ||||
| import uy.kohesive.injekt.injectLazy | ||||
|  | ||||
| class Shikimori(private val context: Context, id: Int) : TrackService(id) { | ||||
| @@ -65,8 +63,8 @@ class Shikimori(private val context: Context, id: Int) : TrackService(id) { | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     override fun search(query: String): Observable<List<TrackSearch>> { | ||||
|         return runAsObservable({ api.search(query) }) | ||||
|     override suspend fun search(query: String): List<TrackSearch> { | ||||
|         return api.search(query) | ||||
|     } | ||||
|  | ||||
|     override suspend fun refresh(track: Track): Track { | ||||
|   | ||||
| @@ -79,7 +79,7 @@ class TrackPresenter( | ||||
|  | ||||
|     fun search(query: String, service: TrackService) { | ||||
|         searchSubscription?.let { remove(it) } | ||||
|         searchSubscription = service.search(query) | ||||
|         searchSubscription = runAsObservable({ service.search(query) }) | ||||
|             .subscribeOn(Schedulers.io()) | ||||
|             .observeOn(AndroidSchedulers.mainThread()) | ||||
|             .subscribeLatestCache( | ||||
|   | ||||
		Reference in New Issue
	
	Block a user