[API/Mobidziennik] Use toIntOrNull instead of try catch in the lucky number extractor.

This commit is contained in:
Kacper Ziubryniewicz 2020-01-04 00:15:56 +01:00
parent a96fcabba5
commit d735dcea05

View File

@ -8,6 +8,7 @@ import pl.szczodrzynski.edziennik.data.api.Regexes
import pl.szczodrzynski.edziennik.data.api.edziennik.mobidziennik.DataMobidziennik import pl.szczodrzynski.edziennik.data.api.edziennik.mobidziennik.DataMobidziennik
import pl.szczodrzynski.edziennik.data.db.modules.luckynumber.LuckyNumber import pl.szczodrzynski.edziennik.data.db.modules.luckynumber.LuckyNumber
import pl.szczodrzynski.edziennik.data.db.modules.metadata.Metadata import pl.szczodrzynski.edziennik.data.db.modules.metadata.Metadata
import pl.szczodrzynski.edziennik.get
import pl.szczodrzynski.edziennik.utils.models.Date import pl.szczodrzynski.edziennik.utils.models.Date
class MobidziennikLuckyNumberExtractor(val data: DataMobidziennik, text: String) { class MobidziennikLuckyNumberExtractor(val data: DataMobidziennik, text: String) {
@ -15,27 +16,23 @@ class MobidziennikLuckyNumberExtractor(val data: DataMobidziennik, text: String)
data.profile?.luckyNumber = -1 data.profile?.luckyNumber = -1
data.profile?.luckyNumberDate = null data.profile?.luckyNumberDate = null
Regexes.MOBIDZIENNIK_LUCKY_NUMBER.find(text)?.let { Regexes.MOBIDZIENNIK_LUCKY_NUMBER.find(text)?.get(1)?.toIntOrNull()?.let {
try { val luckyNumberObject = LuckyNumber(
val luckyNumber = it.groupValues[1].toInt() data.profileId,
Date.getToday(),
it
)
val luckyNumberObject = LuckyNumber( data.luckyNumberList.add(luckyNumberObject)
data.profileId, data.metadataList.add(
Date.getToday(), Metadata(
luckyNumber data.profileId,
) Metadata.TYPE_LUCKY_NUMBER,
luckyNumberObject.date.value.toLong(),
data.luckyNumberList.add(luckyNumberObject) data.profile?.empty ?: false,
data.metadataList.add( data.profile?.empty ?: false,
Metadata( System.currentTimeMillis()
data.profileId, ))
Metadata.TYPE_LUCKY_NUMBER,
luckyNumberObject.date.value.toLong(),
data.profile?.empty ?: false,
data.profile?.empty ?: false,
System.currentTimeMillis()
))
} catch (_: Exception){}
} }
} }
} }