From 848c8bf1ba4f0f3ecf2eeae0b9be2d6a664db2b4 Mon Sep 17 00:00:00 2001 From: Clyhtsuriva Date: Tue, 2 Mar 2021 10:46:48 +0100 Subject: Creating the APIs and the responses. --- .../aniki/manga/topmanga/DetailTopMangaActivity.kt | 34 +++++++++++----------- 1 file changed, 17 insertions(+), 17 deletions(-) (limited to 'app/src/main/java/xyz/adjutor/aniki/manga/topmanga/DetailTopMangaActivity.kt') diff --git a/app/src/main/java/xyz/adjutor/aniki/manga/topmanga/DetailTopMangaActivity.kt b/app/src/main/java/xyz/adjutor/aniki/manga/topmanga/DetailTopMangaActivity.kt index c7b6317..fc10e89 100644 --- a/app/src/main/java/xyz/adjutor/aniki/manga/topmanga/DetailTopMangaActivity.kt +++ b/app/src/main/java/xyz/adjutor/aniki/manga/topmanga/DetailTopMangaActivity.kt @@ -18,13 +18,13 @@ import retrofit2.Retrofit import retrofit2.converter.gson.GsonConverterFactory import xyz.adjutor.aniki.R import xyz.adjutor.aniki.manga.MangaApi -import xyz.adjutor.aniki.manga.RestMangaResponse +import xyz.adjutor.aniki.manga.MangaResponse import java.lang.reflect.Type class DetailTopMangaActivity : AppCompatActivity() { private var baseUrl = "https://api.jikan.moe/" - var sharedPreferences: SharedPreferences? = null + private lateinit var sharedPreferences: SharedPreferences private val gson = GsonBuilder() .setLenient() .create() @@ -95,7 +95,7 @@ class DetailTopMangaActivity : AppCompatActivity() { tvUrl.text = mangaUrl - val manga: RestMangaResponse? = getDataFromCache(mangaId.toString()) + val manga: MangaResponse? = getDataFromCache(mangaId.toString()) if (manga != null) { showDetail(manga) } else { @@ -105,13 +105,13 @@ class DetailTopMangaActivity : AppCompatActivity() { } - private fun getDataFromCache(mangaId: String): RestMangaResponse? { - val jsonManga: String? = sharedPreferences?.getString(mangaId, null) + private fun getDataFromCache(mangaId: String): MangaResponse? { + val jsonManga: String? = sharedPreferences.getString(mangaId, null) return if (jsonManga == null) { null } else { - val type: Type = object : TypeToken() {}.type + val type: Type = object : TypeToken() {}.type gson.fromJson(jsonManga, type) } } @@ -126,14 +126,14 @@ class DetailTopMangaActivity : AppCompatActivity() { val service = retrofit.create(MangaApi::class.java) val call = service.getMangaData(mangaId) //based on the id - call.enqueue(object : Callback { + call.enqueue(object : Callback { override fun onResponse( - call: Call, - response: Response + call: Call, + response: Response ) { if (response.isSuccessful && response.body() != null) { //if the code returned is >= 200 and < 300 AND the the body ain't empty - val manga = response.body() //getting the RestMangaResponse fields + val manga = response.body() //getting the MangaResponse fields saveList(manga) showDetail(manga!!) @@ -142,15 +142,15 @@ class DetailTopMangaActivity : AppCompatActivity() { } } - override fun onFailure(call: Call, t: Throwable) { + override fun onFailure(call: Call, t: Throwable) { showError("API ERROR : onFailure") } }) } - private fun showDetail(manga: RestMangaResponse) { - //elements from RestMangaResponse + private fun showDetail(manga: MangaResponse) { + //elements from MangaResponse val tvChapters: TextView = findViewById(R.id.tv_chapters) val tvSynopsis: TextView = findViewById(R.id.tv_synopsis) val tvBackground: TextView = findViewById(R.id.tv_background) @@ -179,12 +179,12 @@ class DetailTopMangaActivity : AppCompatActivity() { return "Unknown" } - fun saveList(manga: RestMangaResponse?) { + fun saveList(manga: MangaResponse?) { val jsonString: String = gson.toJson(manga) sharedPreferences - ?.edit() - ?.putString(manga?.mal_id.toString(), jsonString) - ?.apply() + .edit() + .putString(manga?.mal_id.toString(), jsonString) + .apply() } } \ No newline at end of file -- cgit v1.2.3