From d2473d8ae8cf4e6970a62ab43e063038cdb7d593 Mon Sep 17 00:00:00 2001 From: Torsten Grote Date: Wed, 1 Feb 2023 14:25:14 -0300 Subject: [PATCH] [download] remove deprecated HttpGlideUrlLoader as we always use DownloadRequest with mirrors now --- .../fdroid/fdroid/net/FDroidGlideModule.java | 7 --- .../org/fdroid/download/glide/HttpFetcher.kt | 20 +------ .../download/glide/HttpGlideUrlLoader.kt | 52 ------------------- 3 files changed, 1 insertion(+), 78 deletions(-) delete mode 100644 libs/download/src/androidMain/kotlin/org/fdroid/download/glide/HttpGlideUrlLoader.kt diff --git a/app/src/main/java/org/fdroid/fdroid/net/FDroidGlideModule.java b/app/src/main/java/org/fdroid/fdroid/net/FDroidGlideModule.java index 5a80857f2..9206a031a 100644 --- a/app/src/main/java/org/fdroid/fdroid/net/FDroidGlideModule.java +++ b/app/src/main/java/org/fdroid/fdroid/net/FDroidGlideModule.java @@ -9,7 +9,6 @@ import com.bumptech.glide.GlideBuilder; import com.bumptech.glide.Registry; import com.bumptech.glide.annotation.GlideModule; import com.bumptech.glide.load.DecodeFormat; -import com.bumptech.glide.load.model.GlideUrl; import com.bumptech.glide.load.resource.bitmap.BitmapTransitionOptions; import com.bumptech.glide.load.resource.drawable.DrawableTransitionOptions; import com.bumptech.glide.module.AppGlideModule; @@ -17,15 +16,12 @@ import com.bumptech.glide.request.RequestOptions; import org.fdroid.download.DownloadRequest; import org.fdroid.download.glide.DownloadRequestLoader; -import org.fdroid.download.glide.HttpGlideUrlLoader; import org.fdroid.fdroid.Preferences; import androidx.annotation.NonNull; import java.io.InputStream; -import info.guardianproject.netcipher.NetCipher; - /** * The one time initialization of Glide. */ @@ -43,9 +39,6 @@ public class FDroidGlideModule extends AppGlideModule { @Override public void registerComponents(@NonNull Context context, @NonNull Glide glide, Registry registry) { - HttpGlideUrlLoader.Factory urlLoaderFactory = - new HttpGlideUrlLoader.Factory(DownloaderFactory.HTTP_MANAGER, NetCipher::getProxy); - registry.replace(GlideUrl.class, InputStream.class, urlLoaderFactory); DownloadRequestLoader.Factory requestLoaderFactory = new DownloadRequestLoader.Factory(DownloaderFactory.HTTP_MANAGER); registry.append(DownloadRequest.class, InputStream.class, requestLoaderFactory); diff --git a/libs/download/src/androidMain/kotlin/org/fdroid/download/glide/HttpFetcher.kt b/libs/download/src/androidMain/kotlin/org/fdroid/download/glide/HttpFetcher.kt index c5af5fc64..fdd4b5868 100644 --- a/libs/download/src/androidMain/kotlin/org/fdroid/download/glide/HttpFetcher.kt +++ b/libs/download/src/androidMain/kotlin/org/fdroid/download/glide/HttpFetcher.kt @@ -1,11 +1,8 @@ package org.fdroid.download.glide -import android.net.Uri import com.bumptech.glide.Priority import com.bumptech.glide.load.DataSource import com.bumptech.glide.load.data.DataFetcher -import com.bumptech.glide.load.model.GlideUrl -import io.ktor.client.engine.ProxyConfig import io.ktor.utils.io.jvm.javaio.toInputStream import kotlinx.coroutines.DelicateCoroutinesApi import kotlinx.coroutines.Dispatchers @@ -14,7 +11,6 @@ import kotlinx.coroutines.Job import kotlinx.coroutines.launch import org.fdroid.download.DownloadRequest import org.fdroid.download.HttpManager -import org.fdroid.download.Mirror import java.io.InputStream internal class HttpFetcher( @@ -22,21 +18,7 @@ internal class HttpFetcher( private val downloadRequest: DownloadRequest, ) : DataFetcher { - @Deprecated("Use DownloadRequests with other constructor instead") - constructor( - httpManager: HttpManager, - glideUrl: GlideUrl, - proxy: ProxyConfig?, - ) : this(httpManager, getDownloadRequest(glideUrl, proxy)) - - companion object { - private fun getDownloadRequest(glideUrl: GlideUrl, proxy: ProxyConfig?): DownloadRequest { - val (mirror, path) = glideUrl.toStringUrl().split("/repo/") - return DownloadRequest(Uri.decode(path), listOf(Mirror("$mirror/repo")), proxy) - } - } - - var job: Job? = null + private var job: Job? = null @OptIn(DelicateCoroutinesApi::class) override fun loadData(priority: Priority, callback: DataFetcher.DataCallback) { diff --git a/libs/download/src/androidMain/kotlin/org/fdroid/download/glide/HttpGlideUrlLoader.kt b/libs/download/src/androidMain/kotlin/org/fdroid/download/glide/HttpGlideUrlLoader.kt deleted file mode 100644 index 52df5683e..000000000 --- a/libs/download/src/androidMain/kotlin/org/fdroid/download/glide/HttpGlideUrlLoader.kt +++ /dev/null @@ -1,52 +0,0 @@ -package org.fdroid.download.glide - -import com.bumptech.glide.load.Options -import com.bumptech.glide.load.model.GlideUrl -import com.bumptech.glide.load.model.ModelLoader -import com.bumptech.glide.load.model.ModelLoader.LoadData -import com.bumptech.glide.load.model.ModelLoaderFactory -import com.bumptech.glide.load.model.MultiModelLoaderFactory -import io.ktor.client.engine.ProxyConfig -import mu.KotlinLogging -import org.fdroid.download.HttpManager -import java.io.InputStream - -@Deprecated("Use DownloadRequestLoader instead") -public class HttpGlideUrlLoader( - private val httpManager: HttpManager, - private val proxyGetter: () -> ProxyConfig?, -) : ModelLoader { - - private companion object { - private val log = KotlinLogging.logger { } - } - - override fun handles(url: GlideUrl): Boolean { - return true - } - - override fun buildLoadData( - glideUrl: GlideUrl, - width: Int, - height: Int, - options: Options, - ): LoadData { - if (log.isDebugEnabled) log.warn { "Not using mirrors when loading $glideUrl" } - else log.warn { "Not using mirrors for load" } - return LoadData(glideUrl, HttpFetcher(httpManager, glideUrl, proxyGetter())) - } - - public class Factory( - private val httpManager: HttpManager, - private val proxyGetter: () -> ProxyConfig?, - ) : ModelLoaderFactory { - override fun build( - multiFactory: MultiModelLoaderFactory, - ): ModelLoader { - return HttpGlideUrlLoader(httpManager, proxyGetter) - } - - override fun teardown() {} - } - -}