Skip to content

Commit 414e8e0

Browse files
committed
fix: ignore unknown JSON fields when parsing evaluations
1 parent 184e253 commit 414e8e0

3 files changed

Lines changed: 10 additions & 1 deletion

File tree

data/src/main/java/com/klee/sapio/data/api/RetrofitClient.kt

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,8 @@ import android.graphics.Bitmap
55
import android.graphics.drawable.AdaptiveIconDrawable
66
import android.util.Log
77
import androidx.core.graphics.drawable.toBitmap
8+
import com.fasterxml.jackson.databind.DeserializationFeature
9+
import com.fasterxml.jackson.databind.ObjectMapper
810
import com.klee.sapio.data.dto.Evaluation
911
import com.klee.sapio.data.dto.IconAnswer
1012
import com.klee.sapio.data.dto.StrapiAnswer
@@ -107,10 +109,13 @@ open class EvaluationService @Inject constructor(
107109
.cache(Cache(context.cacheDir, CACHE_MAX_SIZE))
108110
.build()
109111

112+
val objectMapper = ObjectMapper()
113+
.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false)
114+
110115
retrofit = Retrofit.Builder()
111116
.client(okHttpClient)
112117
.baseUrl("$BASE_URL/api/")
113-
.addConverterFactory(JacksonConverterFactory.create())
118+
.addConverterFactory(JacksonConverterFactory.create(objectMapper))
114119
.build()
115120

116121
evaluationsApi = retrofit.create(EvaluationApi::class.java)

data/src/main/java/com/klee/sapio/data/dto/Evaluation.kt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,10 @@
11
package com.klee.sapio.data.dto
22

3+
import com.fasterxml.jackson.annotation.JsonIgnoreProperties
34
import com.fasterxml.jackson.annotation.JsonProperty
45
import java.util.Date
56

7+
@JsonIgnoreProperties(ignoreUnknown = true)
68
data class Evaluation(
79
@JsonProperty("name") val name: String,
810
@JsonProperty("packageName") val packageName: String,

data/src/main/java/com/klee/sapio/data/dto/StrapiDtos.kt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
11
package com.klee.sapio.data.dto
22

3+
import com.fasterxml.jackson.annotation.JsonIgnoreProperties
34
import com.fasterxml.jackson.annotation.JsonProperty
45

6+
@JsonIgnoreProperties(ignoreUnknown = true)
57
data class StrapiAnswer(
68
@JsonProperty("data") val data: ArrayList<StrapiElement>,
79
@JsonProperty("meta") val meta: StrapiMeta

0 commit comments

Comments
 (0)