Update: Migrating Release to a database.entity

This commit is contained in:
machiav3lli
2022-02-04 01:17:48 +01:00
parent 67ec9649a8
commit e95b3aeea3
12 changed files with 24 additions and 21 deletions

View File

@ -1,7 +1,7 @@
package com.looker.droidify.index
import com.looker.droidify.database.entity.Release
import com.looker.droidify.entity.Product
import com.looker.droidify.entity.Release
import com.looker.droidify.utility.extension.android.Android
import org.xml.sax.Attributes
import org.xml.sax.helpers.DefaultHandler
@ -116,6 +116,7 @@ class IndexHandler(private val repositoryId: Long, private val callback: Callbac
}
private class ReleaseBuilder {
var packageName = ""
var version = ""
var versionCode = 0L
var added = 0L
@ -141,6 +142,7 @@ class IndexHandler(private val repositoryId: Long, private val callback: Callbac
val obbMainHashType = if (obbMainHash.isNotEmpty()) "sha256" else ""
val obbPatchHashType = if (obbPatchHash.isNotEmpty()) "sha256" else ""
return Release(
packageName,
false,
version,
versionCode,

View File

@ -3,8 +3,8 @@ package com.looker.droidify.index
import android.content.ContentValues
import android.database.sqlite.SQLiteDatabase
import com.fasterxml.jackson.core.JsonToken
import com.looker.droidify.database.entity.Release
import com.looker.droidify.entity.Product
import com.looker.droidify.entity.Release
import com.looker.droidify.utility.extension.android.asSequence
import com.looker.droidify.utility.extension.android.execWithResult
import com.looker.droidify.utility.extension.json.Json

View File

@ -2,8 +2,8 @@ package com.looker.droidify.index
import com.fasterxml.jackson.core.JsonParser
import com.fasterxml.jackson.core.JsonToken
import com.looker.droidify.database.entity.Release
import com.looker.droidify.entity.Product
import com.looker.droidify.entity.Release
import com.looker.droidify.utility.extension.android.Android
import com.looker.droidify.utility.extension.json.*
import com.looker.droidify.utility.extension.text.nullIfEmpty
@ -91,7 +91,8 @@ object IndexV1Parser {
it.dictionary("packages") -> forEachKey {
if (it.token == JsonToken.START_ARRAY) {
val packageName = it.key
val releases = collectNotNull(JsonToken.START_OBJECT) { parseRelease() }
val releases =
collectNotNull(JsonToken.START_OBJECT) { parseRelease(packageName) }
callback.onReleases(packageName, releases)
} else {
skipChildren()
@ -250,7 +251,7 @@ object IndexV1Parser {
)
}
private fun JsonParser.parseRelease(): Release {
private fun JsonParser.parseRelease(packageName: String): Release {
var version = ""
var versionCode = 0L
var added = 0L
@ -300,6 +301,7 @@ object IndexV1Parser {
val obbMainHashType = if (obbMainHash.isNotEmpty()) "sha256" else ""
val obbPatchHashType = if (obbPatchHash.isNotEmpty()) "sha256" else ""
return Release(
packageName,
false,
version,
versionCode,

View File

@ -4,9 +4,9 @@ import android.content.Context
import android.net.Uri
import com.looker.droidify.content.Cache
import com.looker.droidify.database.DatabaseX
import com.looker.droidify.database.entity.Release
import com.looker.droidify.database.entity.Repository
import com.looker.droidify.entity.Product
import com.looker.droidify.entity.Release
import com.looker.droidify.network.Downloader
import com.looker.droidify.utility.ProgressInputStream
import com.looker.droidify.utility.RxUtils