Drop cache key manage utils

This commit is contained in:
tarsin committed 2023-02-04 10:43:28 +08:00
1 parent 3686241bf5
commit a56c923f0e
9 files changed
+14 -53

No files matched your search

@@ -13,28 +13,10 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.hippo.ehviewer.client
package com.hippo.ehviewer.client;
public class EhCacheKeyFactory {
public static String getThumbKey(long gid) {
return "preview:large:" + gid + ":" + 0; // "thumb:" + gid;
object EhCacheKeyFactory {
fun getImageKey(gid: Long, index: Int): String {
return "image:$gid:$index"
}
public static String getNormalPreviewKey(long gid, int index) {
return "preview:normal:" + gid + ":" + index;
}
public static String getLargePreviewKey(long gid, int index) {
return "preview:large:" + gid + ":" + index;
}
public static String getLargePreviewSetKey(long gid, int index) {
return "large_preview_set:" + gid + ":" + index;
}
public static String getImageKey(long gid, int index) {
return "image:" + gid + ":" + index;
}
}
}
@@ -21,8 +21,6 @@ import kotlinx.parcelize.Parcelize
@Parcelize
class GalleryPreview(
@JvmField
var imageKey: String? = null,
@JvmField
var imageUrl: String? = null,
@JvmField
@@ -40,6 +38,6 @@ class GalleryPreview(
) : Parcelable {
fun load(view: LoadImageView) {
view.setClip(offsetX, offsetY, clipWidth, clipHeight)
view.load(imageKey!!, imageUrl!!)
view.load(imageUrl!!)
}
}
@@ -15,7 +15,6 @@
*/
package com.hippo.ehviewer.client.data
import com.hippo.ehviewer.client.EhCacheKeyFactory
import com.hippo.widget.LoadImageView
import com.hippo.yorozuya.collect.IntList
@@ -46,7 +45,6 @@ class LargePreviewSet(
override fun getGalleryPreview(gid: Long, index: Int): GalleryPreview {
val galleryPreview = GalleryPreview()
galleryPreview.position = mPositionList[index]
galleryPreview.imageKey = EhCacheKeyFactory.getLargePreviewKey(gid, galleryPreview.position)
galleryPreview.imageUrl = mImageUrlList[index]
galleryPreview.pageUrl = mPageUrlList[index]
return galleryPreview
@@ -55,7 +53,6 @@ class LargePreviewSet(
override fun load(view: LoadImageView, gid: Long, index: Int) {
view.resetClip()
view.load(
EhCacheKeyFactory.getLargePreviewKey(gid, mPositionList[index]),
mImageUrlList[index]
)
}
@@ -20,7 +20,6 @@ import com.hippo.yorozuya.collect.IntList
class NormalPreviewSet(
private var mPositionList: IntList = IntList(),
private var mImageKeyList: ArrayList<String> = ArrayList(),
private var mImageUrlList: ArrayList<String> = ArrayList(),
private var mOffsetXList: IntList = IntList(),
private var mOffsetYList: IntList = IntList(),
@@ -29,21 +28,11 @@ class NormalPreviewSet(
private var mPageUrlList: ArrayList<String> = ArrayList()
) : PreviewSet() {
private fun getImageKey(imageUrl: String): String {
val index = imageUrl.indexOf('/')
return if (index >= 0) {
imageUrl.substring(index + 1)
} else {
imageUrl
}
}
fun addItem(
position: Int, imageUrl: String, xOffset: Int, yOffset: Int, width: Int,
height: Int, pageUrl: String
) {
mPositionList.add(position)
mImageKeyList.add(getImageKey(imageUrl))
mImageUrlList.add(imageUrl)
mOffsetXList.add(xOffset)
mOffsetYList.add(yOffset)
@@ -67,7 +56,6 @@ class NormalPreviewSet(
override fun getGalleryPreview(gid: Long, index: Int): GalleryPreview {
val galleryPreview = GalleryPreview()
galleryPreview.position = mPositionList[index]
galleryPreview.imageKey = mImageKeyList[index]
galleryPreview.imageUrl = mImageUrlList[index]
galleryPreview.pageUrl = mPageUrlList[index]
galleryPreview.offsetX = mOffsetXList[index]
@@ -82,6 +70,6 @@ class NormalPreviewSet(
mOffsetXList[index], mOffsetYList[index],
mClipWidthList[index], mClipHeightList[index]
)
view.load(mImageKeyList[index], mImageUrlList[index])
view.load(mImageUrlList[index])
}
}
@@ -55,7 +55,6 @@ import com.hippo.ehviewer.EhApplication.Companion.downloadManager
import com.hippo.ehviewer.EhDB
import com.hippo.ehviewer.R
import com.hippo.ehviewer.Settings
import com.hippo.ehviewer.client.EhCacheKeyFactory
import com.hippo.ehviewer.client.EhUtils
import com.hippo.ehviewer.dao.DownloadInfo
import com.hippo.ehviewer.download.DownloadManager
@@ -1023,7 +1022,7 @@ class DownloadsScene : BaseToolbarScene(), DownloadInfoListener, OnClickFabListe
}
val info = mList!![position]
info.thumb?.let {
holder.thumb.load(EhCacheKeyFactory.getThumbKey(info.gid), EhUtils.fixThumbUrl(it))
holder.thumb.load(EhUtils.fixThumbUrl(it))
}
holder.title.text = EhUtils.getSuitableTitle(info)
holder.uploader.text = info.uploader
@@ -29,7 +29,6 @@ import com.hippo.easyrecyclerview.MarginItemDecoration
import com.hippo.ehviewer.EhApplication.Companion.downloadManager
import com.hippo.ehviewer.R
import com.hippo.ehviewer.Settings
import com.hippo.ehviewer.client.EhCacheKeyFactory
import com.hippo.ehviewer.client.EhUtils
import com.hippo.ehviewer.client.data.GalleryInfo
import com.hippo.ehviewer.dao.LocalFavoriteInfo
@@ -175,7 +174,7 @@ internal abstract class GalleryAdapter(
}
when (mType) {
TYPE_LIST -> {
holder.thumb.load(EhCacheKeyFactory.getThumbKey(gi.gid), gi.thumb!!)
holder.thumb.load(gi.thumb!!)
holder.title!!.text = EhUtils.getSuitableTitle(gi)
holder.uploader!!.text = gi.uploader
holder.uploader.alpha = if (gi.disowned) .5f else 1f
@@ -209,7 +208,7 @@ internal abstract class GalleryAdapter(
TYPE_GRID -> {
(holder.thumb as TileThumb).setThumbSize(gi.thumbWidth, gi.thumbHeight)
holder.thumb.load(EhCacheKeyFactory.getThumbKey(gi.gid), gi.thumb!!)
holder.thumb.load(gi.thumb!!)
val category: View = holder.category
var drawable = category.background
val color = EhUtils.getCategoryColor(gi.category)
@@ -62,7 +62,6 @@ import com.hippo.ehviewer.EhDB
import com.hippo.ehviewer.R
import com.hippo.ehviewer.Settings
import com.hippo.ehviewer.UrlOpener
import com.hippo.ehviewer.client.EhCacheKeyFactory
import com.hippo.ehviewer.client.EhClient
import com.hippo.ehviewer.client.EhFilter
import com.hippo.ehviewer.client.EhRequest
@@ -512,7 +511,7 @@ class GalleryDetailScene : CollapsingToolbarScene(), View.OnClickListener, Downl
mGalleryInfo?.let { gi ->
if (mAction == ACTION_GALLERY_INFO) {
binding.content.header.run {
(thumb as LoadImageView).load(EhCacheKeyFactory.getThumbKey(gi.gid), gi.thumb!!)
(thumb as LoadImageView).load(gi.thumb!!)
setTitle(EhUtils.getSuitableTitle(gi))
uploader.text = gi.uploader
uploader.alpha = if (gi.disowned) .5f else 1f
@@ -568,7 +567,7 @@ class GalleryDetailScene : CollapsingToolbarScene(), View.OnClickListener, Downl
_binding ?: return
val resources = resources
binding.content.header.run {
(thumb as LoadImageView).load(EhCacheKeyFactory.getThumbKey(gd.gid), gd.thumb!!, true)
(thumb as LoadImageView).load(gd.thumb!!, true)
setTitle(EhUtils.getSuitableTitle(gd))
uploader.text = gd.uploader
uploader.isEnabled = !gd.disowned
@@ -38,7 +38,6 @@ import androidx.recyclerview.widget.StaggeredGridLayoutManager
import com.hippo.app.BaseDialogBuilder
import com.hippo.easyrecyclerview.HandlerDrawable
import com.hippo.ehviewer.*
import com.hippo.ehviewer.client.EhCacheKeyFactory
import com.hippo.ehviewer.client.EhUtils
import com.hippo.ehviewer.client.data.GalleryInfo
import com.hippo.ehviewer.dao.DownloadInfo
@@ -397,7 +396,7 @@ class HistoryScene : BaseToolbarScene() {
val gi: GalleryInfo? = getItem(position)
gi ?: return
gi.thumb?.let {
holder.thumb.load(EhCacheKeyFactory.getThumbKey(gi.gid), EhUtils.fixThumbUrl(it))
holder.thumb.load(EhUtils.fixThumbUrl(it))
}
holder.title.text = EhUtils.getSuitableTitle(gi)
holder.uploader.text = gi.uploader
@@ -128,7 +128,7 @@ open class LoadImageView @JvmOverloads constructor(
}
@JvmOverloads
fun load(key: String, url: String, isLoaded: Boolean = false) {
fun load(url: String, isLoaded: Boolean = false) {
if ((mRequest?.data as? String?) == url)
return
mFailed = false