aboutsummaryrefslogtreecommitdiff
path: root/app/src/main/java/xyz/adjutor/aniki/anime/topanime/DetailTopAnimeActivity.kt
diff options
context:
space:
mode:
Diffstat (limited to 'app/src/main/java/xyz/adjutor/aniki/anime/topanime/DetailTopAnimeActivity.kt')
-rw-r--r--app/src/main/java/xyz/adjutor/aniki/anime/topanime/DetailTopAnimeActivity.kt36
1 files changed, 20 insertions, 16 deletions
diff --git a/app/src/main/java/xyz/adjutor/aniki/anime/topanime/DetailTopAnimeActivity.kt b/app/src/main/java/xyz/adjutor/aniki/anime/topanime/DetailTopAnimeActivity.kt
index 0db1ca1..acbbd4d 100644
--- a/app/src/main/java/xyz/adjutor/aniki/anime/topanime/DetailTopAnimeActivity.kt
+++ b/app/src/main/java/xyz/adjutor/aniki/anime/topanime/DetailTopAnimeActivity.kt
@@ -26,8 +26,8 @@ class DetailTopAnimeActivity : AppCompatActivity() {
private var baseUrl = "https://api.jikan.moe/"
var sharedPreferences: SharedPreferences? = null
private val gson = GsonBuilder()
- .setLenient()
- .create()
+ .setLenient()
+ .create()
private val intentAnimeId = "theanimeid"
private val intentAnimeTitle = "theanimetitle"
@@ -79,7 +79,7 @@ class DetailTopAnimeActivity : AppCompatActivity() {
.into(ivImage)
//using null as a string because it has been converted to a string before
- tvEpisodes.text = if (animeEpisodes != "null"){
+ tvEpisodes.text = if (animeEpisodes != "null") {
animeEpisodes
} else {
fieldIsNull()
@@ -87,7 +87,7 @@ class DetailTopAnimeActivity : AppCompatActivity() {
tvStartDate.text = animeStartDate
- tvEndDate.text = if (animeEndDate != "null"){
+ tvEndDate.text = if (animeEndDate != "null") {
animeEndDate
} else {
fieldIsNull()
@@ -96,7 +96,7 @@ class DetailTopAnimeActivity : AppCompatActivity() {
tvUrl.text = animeUrl
val anime: RestAnimeResponse? = getDataFromCache(animeId.toString())
- if(anime != null ){
+ if (anime != null) {
showDetail(anime)
} else {
//taking the API's fields I want and displaying them
@@ -106,9 +106,9 @@ class DetailTopAnimeActivity : AppCompatActivity() {
}
private fun getDataFromCache(animeId: String): RestAnimeResponse? {
- val jsonAnime: String?= sharedPreferences?.getString(animeId, null)
+ val jsonAnime: String? = sharedPreferences?.getString(animeId, null)
- return if(jsonAnime == null) {
+ return if (jsonAnime == null) {
null
} else {
val type: Type = object : TypeToken<RestAnimeResponse>() {}.type
@@ -119,16 +119,19 @@ class DetailTopAnimeActivity : AppCompatActivity() {
private fun makeApiCall(BASE_URL: String, animeId: String) {
val retrofit = Retrofit.Builder()
- .baseUrl(BASE_URL)
- .addConverterFactory(GsonConverterFactory.create(gson))
- .build()
+ .baseUrl(BASE_URL)
+ .addConverterFactory(GsonConverterFactory.create(gson))
+ .build()
val service = retrofit.create(AnimeApi::class.java)
val call = service.getAnimeData(animeId) //based on the id
call.enqueue(object : Callback<RestAnimeResponse> {
- override fun onResponse(call: Call<RestAnimeResponse>, response: Response<RestAnimeResponse>) {
- if(response.isSuccessful && response.body() != null){ //if the code returned is >= 200 and < 300 AND the the body ain't empty
+ override fun onResponse(
+ call: Call<RestAnimeResponse>,
+ response: Response<RestAnimeResponse>
+ ) {
+ if (response.isSuccessful && response.body() != null) { //if the code returned is >= 200 and < 300 AND the the body ain't empty
val anime = response.body() //getting the RestAnimeResponse fields
saveList(anime)
@@ -157,7 +160,8 @@ class DetailTopAnimeActivity : AppCompatActivity() {
fun showError(text: String) {
Toast.makeText(this, text, Toast.LENGTH_LONG).show()
}
- private fun fieldIsNull(): String{
+
+ private fun fieldIsNull(): String {
return "Unknown"
}
@@ -165,8 +169,8 @@ class DetailTopAnimeActivity : AppCompatActivity() {
val jsonString: String = gson.toJson(anime)
sharedPreferences
- ?.edit()
- ?.putString(anime?.mal_id.toString(), jsonString)
- ?.apply()
+ ?.edit()
+ ?.putString(anime?.mal_id.toString(), jsonString)
+ ?.apply()
}
} \ No newline at end of file