image: collapse cache into musikr

(Will be integrated into loader later)
This commit is contained in:
Alexander Capehart 2024-11-30 19:21:29 -07:00
parent 49aa3c2891
commit 59652b2f9b
No known key found for this signature in database
GPG key ID: 37DBE3621FE9AD47
15 changed files with 17 additions and 17 deletions

View file

@ -58,6 +58,7 @@ import org.oxycblt.auxio.music.Artist
import org.oxycblt.auxio.music.Genre import org.oxycblt.auxio.music.Genre
import org.oxycblt.auxio.music.Playlist import org.oxycblt.auxio.music.Playlist
import org.oxycblt.auxio.music.Song import org.oxycblt.auxio.music.Song
import org.oxycblt.auxio.musikr.cover.Cover
import org.oxycblt.auxio.ui.MaterialFader import org.oxycblt.auxio.ui.MaterialFader
import org.oxycblt.auxio.ui.UISettings import org.oxycblt.auxio.ui.UISettings
import org.oxycblt.auxio.util.getAttrColorCompat import org.oxycblt.auxio.util.getAttrColorCompat

View file

@ -43,7 +43,7 @@ import kotlinx.coroutines.withContext
import okio.FileSystem import okio.FileSystem
import okio.buffer import okio.buffer
import okio.source import okio.source
import org.oxycblt.auxio.image.Cover import org.oxycblt.auxio.musikr.cover.Cover
import org.oxycblt.auxio.image.stack.CoverRetriever import org.oxycblt.auxio.image.stack.CoverRetriever
class CoverKeyer @Inject constructor() : Keyer<Cover> { class CoverKeyer @Inject constructor() : Keyer<Cover> {

View file

@ -20,8 +20,8 @@ package org.oxycblt.auxio.image.stack
import java.io.InputStream import java.io.InputStream
import javax.inject.Inject import javax.inject.Inject
import org.oxycblt.auxio.image.Cover import org.oxycblt.auxio.musikr.cover.Cover
import org.oxycblt.auxio.image.stack.cache.CoverCache import org.oxycblt.auxio.musikr.cover.CoverCache
import org.oxycblt.auxio.image.stack.extractor.CoverExtractor import org.oxycblt.auxio.image.stack.extractor.CoverExtractor
import timber.log.Timber import timber.log.Timber

View file

@ -20,7 +20,7 @@ package org.oxycblt.auxio.image.stack.extractor
import android.net.Uri import android.net.Uri
import javax.inject.Inject import javax.inject.Inject
import org.oxycblt.auxio.image.Cover import org.oxycblt.auxio.musikr.cover.Cover
interface CoverExtractor { interface CoverExtractor {
suspend fun extract(cover: Cover.Single): ByteArray? suspend fun extract(cover: Cover.Single): ByteArray?

View file

@ -27,7 +27,7 @@ import java.util.UUID
import kotlin.math.max import kotlin.math.max
import kotlinx.parcelize.IgnoredOnParcel import kotlinx.parcelize.IgnoredOnParcel
import kotlinx.parcelize.Parcelize import kotlinx.parcelize.Parcelize
import org.oxycblt.auxio.image.Cover import org.oxycblt.auxio.musikr.cover.Cover
import org.oxycblt.auxio.list.Item import org.oxycblt.auxio.list.Item
import org.oxycblt.auxio.musikr.model.Date import org.oxycblt.auxio.musikr.model.Date
import org.oxycblt.auxio.musikr.model.Disc import org.oxycblt.auxio.musikr.model.Disc

View file

@ -16,7 +16,7 @@
* along with this program. If not, see <https://www.gnu.org/licenses/>. * along with this program. If not, see <https://www.gnu.org/licenses/>.
*/ */
package org.oxycblt.auxio.image.stack.cache package org.oxycblt.auxio.musikr.cover
import android.content.Context import android.content.Context
import androidx.room.Room import androidx.room.Room

View file

@ -16,7 +16,7 @@
* along with this program. If not, see <https://www.gnu.org/licenses/>. * along with this program. If not, see <https://www.gnu.org/licenses/>.
*/ */
package org.oxycblt.auxio.image package org.oxycblt.auxio.musikr.cover
import org.oxycblt.auxio.list.sort.Sort import org.oxycblt.auxio.list.sort.Sort
import org.oxycblt.auxio.music.Song import org.oxycblt.auxio.music.Song

View file

@ -16,11 +16,10 @@
* along with this program. If not, see <https://www.gnu.org/licenses/>. * along with this program. If not, see <https://www.gnu.org/licenses/>.
*/ */
package org.oxycblt.auxio.image.stack.cache package org.oxycblt.auxio.musikr.cover
import java.io.InputStream import java.io.InputStream
import javax.inject.Inject import javax.inject.Inject
import org.oxycblt.auxio.image.Cover
interface CoverCache { interface CoverCache {
suspend fun read(cover: Cover.Single): InputStream? suspend fun read(cover: Cover.Single): InputStream?
@ -45,7 +44,8 @@ constructor(
val id = coverIdentifier.identify(data) val id = coverIdentifier.identify(data)
coverFiles.write(id, data) coverFiles.write(id, data)
storedCoversDao.setStoredCover( storedCoversDao.setStoredCover(
StoredCover(uid = cover.uid, lastModified = cover.lastModified, coverId = id)) StoredCover(uid = cover.uid, lastModified = cover.lastModified, coverId = id)
)
return coverFiles.read(id) return coverFiles.read(id)
} }
} }

View file

@ -16,7 +16,7 @@
* along with this program. If not, see <https://www.gnu.org/licenses/>. * along with this program. If not, see <https://www.gnu.org/licenses/>.
*/ */
package org.oxycblt.auxio.image.stack.cache package org.oxycblt.auxio.musikr.cover
import android.content.Context import android.content.Context
import dagger.hilt.android.qualifiers.ApplicationContext import dagger.hilt.android.qualifiers.ApplicationContext

View file

@ -16,7 +16,7 @@
* along with this program. If not, see <https://www.gnu.org/licenses/>. * along with this program. If not, see <https://www.gnu.org/licenses/>.
*/ */
package org.oxycblt.auxio.image.stack.cache package org.oxycblt.auxio.musikr.cover
import android.graphics.Bitmap import android.graphics.Bitmap
import android.graphics.BitmapFactory import android.graphics.BitmapFactory

View file

@ -16,7 +16,7 @@
* along with this program. If not, see <https://www.gnu.org/licenses/>. * along with this program. If not, see <https://www.gnu.org/licenses/>.
*/ */
package org.oxycblt.auxio.image.stack.cache package org.oxycblt.auxio.musikr.cover
import java.security.MessageDigest import java.security.MessageDigest
import javax.inject.Inject import javax.inject.Inject

View file

@ -16,7 +16,7 @@
* along with this program. If not, see <https://www.gnu.org/licenses/>. * along with this program. If not, see <https://www.gnu.org/licenses/>.
*/ */
package org.oxycblt.auxio.image.stack.cache package org.oxycblt.auxio.musikr.cover
import androidx.room.Dao import androidx.room.Dao
import androidx.room.Database import androidx.room.Database

View file

@ -58,7 +58,6 @@ constructor(
private val tagExtractor: TagExtractor, private val tagExtractor: TagExtractor,
private val storedPlaylists: StoredPlaylists private val storedPlaylists: StoredPlaylists
) : Explorer { ) : Explorer {
@OptIn(ExperimentalCoroutinesApi::class)
override fun explore( override fun explore(
uris: List<Uri>, uris: List<Uri>,
onProgress: suspend (IndexingProgress.Songs) -> Unit onProgress: suspend (IndexingProgress.Songs) -> Unit

View file

@ -19,7 +19,7 @@
package org.oxycblt.auxio.musikr.model package org.oxycblt.auxio.musikr.model
import kotlin.math.min import kotlin.math.min
import org.oxycblt.auxio.image.Cover import org.oxycblt.auxio.musikr.cover.Cover
import org.oxycblt.auxio.list.sort.Sort import org.oxycblt.auxio.list.sort.Sort
import org.oxycblt.auxio.music.Album import org.oxycblt.auxio.music.Album
import org.oxycblt.auxio.music.Artist import org.oxycblt.auxio.music.Artist

View file

@ -18,7 +18,7 @@
package org.oxycblt.auxio.musikr.model package org.oxycblt.auxio.musikr.model
import org.oxycblt.auxio.image.Cover import org.oxycblt.auxio.musikr.cover.Cover
import org.oxycblt.auxio.music.Playlist import org.oxycblt.auxio.music.Playlist
import org.oxycblt.auxio.musikr.interpret.link.LinkedPlaylist import org.oxycblt.auxio.musikr.interpret.link.LinkedPlaylist