Loading app/src/main/java/foundation/e/apps/api/fdroid/FdroidRepository.kt +5 −0 Original line number Diff line number Diff line Loading @@ -2,6 +2,7 @@ package foundation.e.apps.api.fdroid import android.content.Context import foundation.e.apps.api.cleanapk.ApkSignatureManager import foundation.e.apps.api.fdroid.models.BuildInfo import foundation.e.apps.api.fdroid.models.FdroidEntity import foundation.e.apps.api.fused.data.FusedApp import foundation.e.apps.utils.enums.Origin Loading Loading @@ -35,6 +36,10 @@ class FdroidRepository @Inject constructor( } } suspend fun getBuildVersionInfo(packageName: String): List<BuildInfo>? { return fdroidApi.getFdroidInfoForPackage(packageName).body()?.builds } override suspend fun getAuthorName(fusedApp: FusedApp): String { if (fusedApp.author != UNKNOWN || fusedApp.origin != Origin.CLEANAPK) { return fusedApp.author.ifEmpty { UNKNOWN } Loading app/src/main/java/foundation/e/apps/api/fdroid/models/BuildInfo.kt 0 → 100644 +37 −0 Original line number Diff line number Diff line /* * Copyright (C) 2019-2023 E FOUNDATION * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see <https://www.gnu.org/licenses/>. */ package foundation.e.apps.api.fdroid.models import com.fasterxml.jackson.annotation.JsonCreator import com.fasterxml.jackson.annotation.JsonIgnoreProperties import com.fasterxml.jackson.annotation.JsonProperty @JsonIgnoreProperties(ignoreUnknown = true) class BuildInfo() { var versionCode: String = "" var versionName: String = "" @JsonCreator constructor( @JsonProperty("versionCode") versionCode: String?, @JsonProperty("versionName") versionName: String?, ) : this() { this.versionCode = versionCode ?: "" this.versionName = versionName ?: "" } } No newline at end of file app/src/main/java/foundation/e/apps/api/fdroid/models/FdroidApiModel.kt +6 −1 Original line number Diff line number Diff line Loading @@ -19,9 +19,14 @@ import com.fasterxml.jackson.annotation.JsonProperty @JsonIgnoreProperties(ignoreUnknown = true) class FdroidApiModel() { var authorName: String = "" var builds: List<BuildInfo> = mutableListOf() @JsonCreator constructor(@JsonProperty("AuthorName") AuthorName: String?) : this() { constructor( @JsonProperty("AuthorName") AuthorName: String?, @JsonProperty("Builds") Builds: List<BuildInfo>?, ) : this() { this.authorName = AuthorName ?: "" this.builds = Builds ?: emptyList() } } app/src/main/java/foundation/e/apps/api/fused/FusedAPIImpl.kt +3 −0 Original line number Diff line number Diff line Loading @@ -546,6 +546,9 @@ class FusedAPIImpl @Inject constructor( fusedDownload.downloadURLList = list } suspend fun getOSSDownloadInfo(id: String, version: String?) = cleanAPKRepository.getDownloadInfo(id, version) suspend fun getPWAApps(category: String): ResultSupreme<List<FusedApp>> { val list = mutableListOf<FusedApp>() val status = runCodeBlockWithTimeout({ Loading app/src/main/java/foundation/e/apps/api/fused/FusedAPIRepository.kt +3 −0 Original line number Diff line number Diff line Loading @@ -134,6 +134,9 @@ class FusedAPIRepository @Inject constructor(private val fusedAPIImpl: FusedAPII ) } suspend fun getOSSDownloadInfo(id: String, version: String? = null) = fusedAPIImpl.getOSSDownloadInfo(id, version) suspend fun getOnDemandModule( authData: AuthData, packageName: String, Loading Loading
app/src/main/java/foundation/e/apps/api/fdroid/FdroidRepository.kt +5 −0 Original line number Diff line number Diff line Loading @@ -2,6 +2,7 @@ package foundation.e.apps.api.fdroid import android.content.Context import foundation.e.apps.api.cleanapk.ApkSignatureManager import foundation.e.apps.api.fdroid.models.BuildInfo import foundation.e.apps.api.fdroid.models.FdroidEntity import foundation.e.apps.api.fused.data.FusedApp import foundation.e.apps.utils.enums.Origin Loading Loading @@ -35,6 +36,10 @@ class FdroidRepository @Inject constructor( } } suspend fun getBuildVersionInfo(packageName: String): List<BuildInfo>? { return fdroidApi.getFdroidInfoForPackage(packageName).body()?.builds } override suspend fun getAuthorName(fusedApp: FusedApp): String { if (fusedApp.author != UNKNOWN || fusedApp.origin != Origin.CLEANAPK) { return fusedApp.author.ifEmpty { UNKNOWN } Loading
app/src/main/java/foundation/e/apps/api/fdroid/models/BuildInfo.kt 0 → 100644 +37 −0 Original line number Diff line number Diff line /* * Copyright (C) 2019-2023 E FOUNDATION * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see <https://www.gnu.org/licenses/>. */ package foundation.e.apps.api.fdroid.models import com.fasterxml.jackson.annotation.JsonCreator import com.fasterxml.jackson.annotation.JsonIgnoreProperties import com.fasterxml.jackson.annotation.JsonProperty @JsonIgnoreProperties(ignoreUnknown = true) class BuildInfo() { var versionCode: String = "" var versionName: String = "" @JsonCreator constructor( @JsonProperty("versionCode") versionCode: String?, @JsonProperty("versionName") versionName: String?, ) : this() { this.versionCode = versionCode ?: "" this.versionName = versionName ?: "" } } No newline at end of file
app/src/main/java/foundation/e/apps/api/fdroid/models/FdroidApiModel.kt +6 −1 Original line number Diff line number Diff line Loading @@ -19,9 +19,14 @@ import com.fasterxml.jackson.annotation.JsonProperty @JsonIgnoreProperties(ignoreUnknown = true) class FdroidApiModel() { var authorName: String = "" var builds: List<BuildInfo> = mutableListOf() @JsonCreator constructor(@JsonProperty("AuthorName") AuthorName: String?) : this() { constructor( @JsonProperty("AuthorName") AuthorName: String?, @JsonProperty("Builds") Builds: List<BuildInfo>?, ) : this() { this.authorName = AuthorName ?: "" this.builds = Builds ?: emptyList() } }
app/src/main/java/foundation/e/apps/api/fused/FusedAPIImpl.kt +3 −0 Original line number Diff line number Diff line Loading @@ -546,6 +546,9 @@ class FusedAPIImpl @Inject constructor( fusedDownload.downloadURLList = list } suspend fun getOSSDownloadInfo(id: String, version: String?) = cleanAPKRepository.getDownloadInfo(id, version) suspend fun getPWAApps(category: String): ResultSupreme<List<FusedApp>> { val list = mutableListOf<FusedApp>() val status = runCodeBlockWithTimeout({ Loading
app/src/main/java/foundation/e/apps/api/fused/FusedAPIRepository.kt +3 −0 Original line number Diff line number Diff line Loading @@ -134,6 +134,9 @@ class FusedAPIRepository @Inject constructor(private val fusedAPIImpl: FusedAPII ) } suspend fun getOSSDownloadInfo(id: String, version: String? = null) = fusedAPIImpl.getOSSDownloadInfo(id, version) suspend fun getOnDemandModule( authData: AuthData, packageName: String, Loading