image: collapse cache into musikr
(Will be integrated into loader later)
This commit is contained in:
parent
49aa3c2891
commit
59652b2f9b
15 changed files with 17 additions and 17 deletions
|
@ -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
|
||||||
|
|
|
@ -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> {
|
||||||
|
|
|
@ -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
|
||||||
|
|
||||||
|
|
|
@ -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?
|
||||||
|
|
|
@ -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
|
||||||
|
|
|
@ -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
|
|
@ -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
|
|
@ -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)
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -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
|
|
@ -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
|
|
@ -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
|
|
@ -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
|
|
@ -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
|
||||||
|
|
|
@ -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
|
||||||
|
|
|
@ -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
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue