Fix: Parsing index when there's ; in the serialized values

This commit is contained in:
machiav3lli 2022-04-06 04:24:28 +02:00
parent c2e7c3823e
commit 9a5741ed3b

View File

@ -41,52 +41,52 @@ object Converters {
@JvmStatic @JvmStatic
fun toReleases(byteArray: ByteArray): List<Release> = fun toReleases(byteArray: ByteArray): List<Release> =
if (String(byteArray) == "") emptyList() if (String(byteArray) == "") emptyList()
else String(byteArray).split(";").map { Release.fromJson(it) } else String(byteArray).split("|").map { Release.fromJson(it) }
@JvmName("releasesToByteArray") @JvmName("releasesToByteArray")
@TypeConverter @TypeConverter
@JvmStatic @JvmStatic
fun toByteArray(releases: List<Release>) = fun toByteArray(releases: List<Release>) =
if (releases.isNotEmpty()) releases.joinToString(";") { it.toJSON() }.toByteArray() if (releases.isNotEmpty()) releases.joinToString("|") { it.toJSON() }.toByteArray()
else "".toByteArray() else "".toByteArray()
@TypeConverter @TypeConverter
@JvmStatic @JvmStatic
fun toIncompatibilities(byteArray: ByteArray): List<Release.Incompatibility> = fun toIncompatibilities(byteArray: ByteArray): List<Release.Incompatibility> =
if (String(byteArray) == "") emptyList() if (String(byteArray) == "") emptyList()
else String(byteArray).split(";").map { Release.Incompatibility.fromJson(it) } else String(byteArray).split("|").map { Release.Incompatibility.fromJson(it) }
@JvmName("incompatibilitiesToByteArray") @JvmName("incompatibilitiesToByteArray")
@TypeConverter @TypeConverter
@JvmStatic @JvmStatic
fun toByteArray(incompatibilities: List<Release.Incompatibility>) = fun toByteArray(incompatibilities: List<Release.Incompatibility>) =
if (incompatibilities.isNotEmpty()) if (incompatibilities.isNotEmpty())
incompatibilities.joinToString(";") { it.toJSON() }.toByteArray() incompatibilities.joinToString("|") { it.toJSON() }.toByteArray()
else "".toByteArray() else "".toByteArray()
@TypeConverter @TypeConverter
@JvmStatic @JvmStatic
fun toScreenshots(byteArray: ByteArray): List<Screenshot> = fun toScreenshots(byteArray: ByteArray): List<Screenshot> =
if (String(byteArray) == "") emptyList() if (String(byteArray) == "") emptyList()
else String(byteArray).split(";").map { Screenshot.fromJson(it) } else String(byteArray).split("|").map { Screenshot.fromJson(it) }
@JvmName("screenshotsToByteArray") @JvmName("screenshotsToByteArray")
@TypeConverter @TypeConverter
@JvmStatic @JvmStatic
fun toByteArray(screenshots: List<Screenshot>) = fun toByteArray(screenshots: List<Screenshot>) =
if (screenshots.isNotEmpty()) screenshots.joinToString(";") { it.toJSON() }.toByteArray() if (screenshots.isNotEmpty()) screenshots.joinToString("|") { it.toJSON() }.toByteArray()
else "".toByteArray() else "".toByteArray()
@TypeConverter @TypeConverter
@JvmStatic @JvmStatic
fun toDonates(byteArray: ByteArray): List<Donate> = fun toDonates(byteArray: ByteArray): List<Donate> =
if (String(byteArray) == "") emptyList() if (String(byteArray) == "") emptyList()
else String(byteArray).split(";").map { Donate.fromJson(it) } else String(byteArray).split("|").map { Donate.fromJson(it) }
@JvmName("donatesToByteArray") @JvmName("donatesToByteArray")
@TypeConverter @TypeConverter
@JvmStatic @JvmStatic
fun toByteArray(donates: List<Donate>) = fun toByteArray(donates: List<Donate>) =
if (donates.isNotEmpty()) donates.joinToString(";") { it.toJSON() }.toByteArray() if (donates.isNotEmpty()) donates.joinToString("|") { it.toJSON() }.toByteArray()
else "".toByteArray() else "".toByteArray()
} }