diff --git a/app/src/main/java/org/oxycblt/auxio/detail/DetailGenerator.kt b/app/src/main/java/org/oxycblt/auxio/detail/DetailGenerator.kt index 98dff1eb5..604f9f0e8 100644 --- a/app/src/main/java/org/oxycblt/auxio/detail/DetailGenerator.kt +++ b/app/src/main/java/org/oxycblt/auxio/detail/DetailGenerator.kt @@ -32,8 +32,8 @@ import org.oxycblt.auxio.music.MusicRepository import org.oxycblt.auxio.music.MusicType import org.oxycblt.auxio.music.Playlist import org.oxycblt.auxio.music.Song -import org.oxycblt.auxio.music.info.Disc -import org.oxycblt.auxio.music.info.ReleaseType +import org.oxycblt.auxio.musikr.model.Disc +import org.oxycblt.auxio.musikr.model.ReleaseType import timber.log.Timber as L interface DetailGenerator { diff --git a/app/src/main/java/org/oxycblt/auxio/detail/SongDetailDialog.kt b/app/src/main/java/org/oxycblt/auxio/detail/SongDetailDialog.kt index f789b042a..5b881c708 100644 --- a/app/src/main/java/org/oxycblt/auxio/detail/SongDetailDialog.kt +++ b/app/src/main/java/org/oxycblt/auxio/detail/SongDetailDialog.kt @@ -34,7 +34,7 @@ import org.oxycblt.auxio.detail.list.SongPropertyAdapter import org.oxycblt.auxio.list.adapter.UpdateInstructions import org.oxycblt.auxio.music.Music import org.oxycblt.auxio.music.Song -import org.oxycblt.auxio.music.info.Name +import org.oxycblt.auxio.musikr.model.Name import org.oxycblt.auxio.music.metadata.AudioProperties import org.oxycblt.auxio.music.resolveNames import org.oxycblt.auxio.playback.formatDurationMs diff --git a/app/src/main/java/org/oxycblt/auxio/detail/list/AlbumDetailListAdapter.kt b/app/src/main/java/org/oxycblt/auxio/detail/list/AlbumDetailListAdapter.kt index 1af1a595c..15fe99c4a 100644 --- a/app/src/main/java/org/oxycblt/auxio/detail/list/AlbumDetailListAdapter.kt +++ b/app/src/main/java/org/oxycblt/auxio/detail/list/AlbumDetailListAdapter.kt @@ -37,8 +37,8 @@ import org.oxycblt.auxio.list.adapter.SelectionIndicatorAdapter import org.oxycblt.auxio.list.adapter.SimpleDiffCallback import org.oxycblt.auxio.music.Album import org.oxycblt.auxio.music.Song -import org.oxycblt.auxio.music.info.Disc -import org.oxycblt.auxio.music.info.resolveNumber +import org.oxycblt.auxio.musikr.model.Disc +import org.oxycblt.auxio.musikr.model.resolveNumber import org.oxycblt.auxio.playback.formatDurationMs import org.oxycblt.auxio.util.context import org.oxycblt.auxio.util.getAttrColorCompat diff --git a/app/src/main/java/org/oxycblt/auxio/music/Music.kt b/app/src/main/java/org/oxycblt/auxio/music/Music.kt index 0a4b54acd..f28b4afd4 100644 --- a/app/src/main/java/org/oxycblt/auxio/music/Music.kt +++ b/app/src/main/java/org/oxycblt/auxio/music/Music.kt @@ -29,10 +29,10 @@ import kotlinx.parcelize.IgnoredOnParcel import kotlinx.parcelize.Parcelize import org.oxycblt.auxio.image.Cover import org.oxycblt.auxio.list.Item -import org.oxycblt.auxio.music.info.Date -import org.oxycblt.auxio.music.info.Disc -import org.oxycblt.auxio.music.info.Name -import org.oxycblt.auxio.music.info.ReleaseType +import org.oxycblt.auxio.musikr.model.Date +import org.oxycblt.auxio.musikr.model.Disc +import org.oxycblt.auxio.musikr.model.Name +import org.oxycblt.auxio.musikr.model.ReleaseType import org.oxycblt.auxio.musikr.fs.MimeType import org.oxycblt.auxio.musikr.fs.Path import org.oxycblt.auxio.playback.replaygain.ReplayGainAdjustment diff --git a/app/src/main/java/org/oxycblt/auxio/music/MusicRepository.kt b/app/src/main/java/org/oxycblt/auxio/music/MusicRepository.kt index aa63af107..48909a11f 100644 --- a/app/src/main/java/org/oxycblt/auxio/music/MusicRepository.kt +++ b/app/src/main/java/org/oxycblt/auxio/music/MusicRepository.kt @@ -25,12 +25,12 @@ import kotlinx.coroutines.Job import kotlinx.coroutines.withContext import kotlinx.coroutines.yield import org.oxycblt.auxio.music.MusicRepository.IndexingWorker -import org.oxycblt.auxio.music.info.Name +import org.oxycblt.auxio.musikr.model.Name import org.oxycblt.auxio.music.metadata.Separators import org.oxycblt.auxio.musikr.Indexer import org.oxycblt.auxio.musikr.IndexingProgress -import org.oxycblt.auxio.musikr.model.Interpretation -import org.oxycblt.auxio.musikr.model.impl.MutableLibrary +import org.oxycblt.auxio.musikr.interpret.Interpretation +import org.oxycblt.auxio.musikr.model.MutableLibrary import timber.log.Timber as L /** diff --git a/app/src/main/java/org/oxycblt/auxio/music/service/MusicBrowser.kt b/app/src/main/java/org/oxycblt/auxio/music/service/MusicBrowser.kt index 3013752c4..d5eb9ff43 100644 --- a/app/src/main/java/org/oxycblt/auxio/music/service/MusicBrowser.kt +++ b/app/src/main/java/org/oxycblt/auxio/music/service/MusicBrowser.kt @@ -35,7 +35,7 @@ import org.oxycblt.auxio.music.MusicRepository import org.oxycblt.auxio.music.MusicType import org.oxycblt.auxio.music.Playlist import org.oxycblt.auxio.music.Song -import org.oxycblt.auxio.music.info.resolveNumber +import org.oxycblt.auxio.musikr.model.resolveNumber import org.oxycblt.auxio.search.SearchEngine class MusicBrowser diff --git a/app/src/main/java/org/oxycblt/auxio/musikr/Indexer.kt b/app/src/main/java/org/oxycblt/auxio/musikr/Indexer.kt index 9944021d7..edd4884b4 100644 --- a/app/src/main/java/org/oxycblt/auxio/musikr/Indexer.kt +++ b/app/src/main/java/org/oxycblt/auxio/musikr/Indexer.kt @@ -28,9 +28,9 @@ import kotlinx.coroutines.flow.buffer import kotlinx.coroutines.flow.flow import kotlinx.coroutines.flow.flowOn import org.oxycblt.auxio.musikr.explore.Explorer -import org.oxycblt.auxio.musikr.model.Interpretation -import org.oxycblt.auxio.musikr.model.Modeler -import org.oxycblt.auxio.musikr.model.impl.MutableLibrary +import org.oxycblt.auxio.musikr.interpret.Interpretation +import org.oxycblt.auxio.musikr.interpret.Modeler +import org.oxycblt.auxio.musikr.model.MutableLibrary interface Indexer { suspend fun run( diff --git a/app/src/main/java/org/oxycblt/auxio/musikr/model/interpret/InterpretModule.kt b/app/src/main/java/org/oxycblt/auxio/musikr/interpret/InterpretModule.kt similarity index 82% rename from app/src/main/java/org/oxycblt/auxio/musikr/model/interpret/InterpretModule.kt rename to app/src/main/java/org/oxycblt/auxio/musikr/interpret/InterpretModule.kt index 4928d7529..1cefa900c 100644 --- a/app/src/main/java/org/oxycblt/auxio/musikr/model/interpret/InterpretModule.kt +++ b/app/src/main/java/org/oxycblt/auxio/musikr/interpret/InterpretModule.kt @@ -1,6 +1,6 @@ /* - * Copyright (c) 2024 Auxio Project - * PrepareModule.kt is part of Auxio. + * Copyright (c) 2023 Auxio Project + * InterpretModule.kt is part of Auxio. * * 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 @@ -16,7 +16,7 @@ * along with this program. If not, see . */ -package org.oxycblt.auxio.musikr.model.interpret +package org.oxycblt.auxio.musikr.interpret import dagger.Binds import dagger.Module @@ -26,5 +26,5 @@ import dagger.hilt.components.SingletonComponent @Module @InstallIn(SingletonComponent::class) interface InterpretModule { - @Binds fun prepare(factory: InterpreterImpl): Interpreter + @Binds fun interpreter(interpreter: ModelerImpl): Modeler } diff --git a/app/src/main/java/org/oxycblt/auxio/musikr/model/Interpretation.kt b/app/src/main/java/org/oxycblt/auxio/musikr/interpret/Interpretation.kt similarity index 91% rename from app/src/main/java/org/oxycblt/auxio/musikr/model/Interpretation.kt rename to app/src/main/java/org/oxycblt/auxio/musikr/interpret/Interpretation.kt index 1d7347bec..afe066ccc 100644 --- a/app/src/main/java/org/oxycblt/auxio/musikr/model/Interpretation.kt +++ b/app/src/main/java/org/oxycblt/auxio/musikr/interpret/Interpretation.kt @@ -16,9 +16,9 @@ * along with this program. If not, see . */ -package org.oxycblt.auxio.musikr.model +package org.oxycblt.auxio.musikr.interpret -import org.oxycblt.auxio.music.info.Name +import org.oxycblt.auxio.musikr.model.Name import org.oxycblt.auxio.music.metadata.Separators data class Interpretation(val nameFactory: Name.Known.Factory, val separators: Separators) diff --git a/app/src/main/java/org/oxycblt/auxio/musikr/model/Modeler.kt b/app/src/main/java/org/oxycblt/auxio/musikr/interpret/Interpreter.kt similarity index 81% rename from app/src/main/java/org/oxycblt/auxio/musikr/model/Modeler.kt rename to app/src/main/java/org/oxycblt/auxio/musikr/interpret/Interpreter.kt index 838b65914..e0ff6d91e 100644 --- a/app/src/main/java/org/oxycblt/auxio/musikr/model/Modeler.kt +++ b/app/src/main/java/org/oxycblt/auxio/musikr/interpret/Interpreter.kt @@ -1,6 +1,6 @@ /* * Copyright (c) 2024 Auxio Project - * Modeler.kt is part of Auxio. + * Interpreter.kt is part of Auxio. * * 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 @@ -16,7 +16,7 @@ * along with this program. If not, see . */ -package org.oxycblt.auxio.musikr.model +package org.oxycblt.auxio.musikr.interpret import javax.inject.Inject import kotlinx.coroutines.Dispatchers @@ -30,19 +30,19 @@ import kotlinx.coroutines.flow.toList import org.oxycblt.auxio.music.Music import org.oxycblt.auxio.musikr.tag.AudioFile import org.oxycblt.auxio.musikr.playlist.PlaylistFile -import org.oxycblt.auxio.musikr.model.link.AlbumLinker -import org.oxycblt.auxio.musikr.model.link.ArtistLinker -import org.oxycblt.auxio.musikr.model.link.GenreLinker -import org.oxycblt.auxio.musikr.model.link.Linked -import org.oxycblt.auxio.musikr.model.link.LinkedSong -import org.oxycblt.auxio.musikr.model.impl.AlbumImpl -import org.oxycblt.auxio.musikr.model.impl.ArtistImpl -import org.oxycblt.auxio.musikr.model.impl.GenreImpl -import org.oxycblt.auxio.musikr.model.impl.LibraryImpl -import org.oxycblt.auxio.musikr.model.impl.MutableLibrary -import org.oxycblt.auxio.musikr.model.impl.SongImpl -import org.oxycblt.auxio.musikr.model.interpret.PreSong -import org.oxycblt.auxio.musikr.model.interpret.Interpreter +import org.oxycblt.auxio.musikr.interpret.link.AlbumLinker +import org.oxycblt.auxio.musikr.interpret.link.ArtistLinker +import org.oxycblt.auxio.musikr.interpret.link.GenreLinker +import org.oxycblt.auxio.musikr.interpret.link.Linked +import org.oxycblt.auxio.musikr.interpret.link.LinkedSong +import org.oxycblt.auxio.musikr.model.AlbumImpl +import org.oxycblt.auxio.musikr.model.ArtistImpl +import org.oxycblt.auxio.musikr.model.GenreImpl +import org.oxycblt.auxio.musikr.model.LibraryImpl +import org.oxycblt.auxio.musikr.model.MutableLibrary +import org.oxycblt.auxio.musikr.model.SongImpl +import org.oxycblt.auxio.musikr.interpret.prepare.PreSong +import org.oxycblt.auxio.musikr.interpret.prepare.Preparer import timber.log.Timber as L interface Modeler { @@ -53,14 +53,14 @@ interface Modeler { ): MutableLibrary } -class ModelerImpl @Inject constructor(private val interpreter: Interpreter) : Modeler { +class ModelerImpl @Inject constructor(private val preparer: Preparer) : Modeler { override suspend fun model( audioFiles: Flow, playlistFiles: Flow, interpretation: Interpretation ): MutableLibrary { val preSongs = - interpreter + preparer .interpret(audioFiles, interpretation) .flowOn(Dispatchers.Main) .buffer(Channel.UNLIMITED) diff --git a/app/src/main/java/org/oxycblt/auxio/musikr/model/link/AlbumLinker.kt b/app/src/main/java/org/oxycblt/auxio/musikr/interpret/link/AlbumLinker.kt similarity index 95% rename from app/src/main/java/org/oxycblt/auxio/musikr/model/link/AlbumLinker.kt rename to app/src/main/java/org/oxycblt/auxio/musikr/interpret/link/AlbumLinker.kt index eed825e99..f8c7da6a7 100644 --- a/app/src/main/java/org/oxycblt/auxio/musikr/model/link/AlbumLinker.kt +++ b/app/src/main/java/org/oxycblt/auxio/musikr/interpret/link/AlbumLinker.kt @@ -16,13 +16,13 @@ * along with this program. If not, see . */ -package org.oxycblt.auxio.musikr.model.link +package org.oxycblt.auxio.musikr.interpret.link import java.util.UUID import kotlinx.coroutines.flow.Flow import kotlinx.coroutines.flow.map -import org.oxycblt.auxio.musikr.model.impl.AlbumImpl -import org.oxycblt.auxio.musikr.model.impl.SongImpl +import org.oxycblt.auxio.musikr.model.AlbumImpl +import org.oxycblt.auxio.musikr.model.SongImpl class AlbumLinker { private val tree = mutableMapOf>() diff --git a/app/src/main/java/org/oxycblt/auxio/musikr/model/link/ArtistLinker.kt b/app/src/main/java/org/oxycblt/auxio/musikr/interpret/link/ArtistLinker.kt similarity index 93% rename from app/src/main/java/org/oxycblt/auxio/musikr/model/link/ArtistLinker.kt rename to app/src/main/java/org/oxycblt/auxio/musikr/interpret/link/ArtistLinker.kt index ca37b1cff..a09737ca3 100644 --- a/app/src/main/java/org/oxycblt/auxio/musikr/model/link/ArtistLinker.kt +++ b/app/src/main/java/org/oxycblt/auxio/musikr/interpret/link/ArtistLinker.kt @@ -16,17 +16,17 @@ * along with this program. If not, see . */ -package org.oxycblt.auxio.musikr.model.link +package org.oxycblt.auxio.musikr.interpret.link import java.util.UUID import kotlinx.coroutines.flow.Flow import kotlinx.coroutines.flow.map import org.oxycblt.auxio.music.Music -import org.oxycblt.auxio.musikr.model.impl.AlbumImpl -import org.oxycblt.auxio.musikr.model.impl.ArtistImpl -import org.oxycblt.auxio.musikr.model.impl.SongImpl -import org.oxycblt.auxio.musikr.model.interpret.PreAlbum -import org.oxycblt.auxio.musikr.model.interpret.PreArtist +import org.oxycblt.auxio.musikr.model.AlbumImpl +import org.oxycblt.auxio.musikr.model.ArtistImpl +import org.oxycblt.auxio.musikr.model.SongImpl +import org.oxycblt.auxio.musikr.interpret.prepare.PreAlbum +import org.oxycblt.auxio.musikr.interpret.prepare.PreArtist class ArtistLinker { private val tree = mutableMapOf>() diff --git a/app/src/main/java/org/oxycblt/auxio/musikr/model/link/Contribution.kt b/app/src/main/java/org/oxycblt/auxio/musikr/interpret/link/Contribution.kt similarity index 95% rename from app/src/main/java/org/oxycblt/auxio/musikr/model/link/Contribution.kt rename to app/src/main/java/org/oxycblt/auxio/musikr/interpret/link/Contribution.kt index 0ffdf88b9..541785b87 100644 --- a/app/src/main/java/org/oxycblt/auxio/musikr/model/link/Contribution.kt +++ b/app/src/main/java/org/oxycblt/auxio/musikr/interpret/link/Contribution.kt @@ -16,7 +16,7 @@ * along with this program. If not, see . */ -package org.oxycblt.auxio.musikr.model.link +package org.oxycblt.auxio.musikr.interpret.link class Contribution { private val map = mutableMapOf() diff --git a/app/src/main/java/org/oxycblt/auxio/musikr/model/link/GenreLinker.kt b/app/src/main/java/org/oxycblt/auxio/musikr/interpret/link/GenreLinker.kt similarity index 90% rename from app/src/main/java/org/oxycblt/auxio/musikr/model/link/GenreLinker.kt rename to app/src/main/java/org/oxycblt/auxio/musikr/interpret/link/GenreLinker.kt index e84cfd95f..04939302f 100644 --- a/app/src/main/java/org/oxycblt/auxio/musikr/model/link/GenreLinker.kt +++ b/app/src/main/java/org/oxycblt/auxio/musikr/interpret/link/GenreLinker.kt @@ -16,14 +16,14 @@ * along with this program. If not, see . */ -package org.oxycblt.auxio.musikr.model.link +package org.oxycblt.auxio.musikr.interpret.link import kotlinx.coroutines.flow.Flow import kotlinx.coroutines.flow.map -import org.oxycblt.auxio.musikr.model.impl.GenreImpl -import org.oxycblt.auxio.musikr.model.impl.SongImpl -import org.oxycblt.auxio.musikr.model.interpret.PreGenre -import org.oxycblt.auxio.musikr.model.interpret.PreSong +import org.oxycblt.auxio.musikr.model.GenreImpl +import org.oxycblt.auxio.musikr.model.SongImpl +import org.oxycblt.auxio.musikr.interpret.prepare.PreGenre +import org.oxycblt.auxio.musikr.interpret.prepare.PreSong class GenreLinker { private val tree = mutableMapOf() diff --git a/app/src/main/java/org/oxycblt/auxio/musikr/model/link/LinkedMusic.kt b/app/src/main/java/org/oxycblt/auxio/musikr/interpret/link/LinkedMusic.kt similarity index 71% rename from app/src/main/java/org/oxycblt/auxio/musikr/model/link/LinkedMusic.kt rename to app/src/main/java/org/oxycblt/auxio/musikr/interpret/link/LinkedMusic.kt index 71a2bdd8b..4e16984e2 100644 --- a/app/src/main/java/org/oxycblt/auxio/musikr/model/link/LinkedMusic.kt +++ b/app/src/main/java/org/oxycblt/auxio/musikr/interpret/link/LinkedMusic.kt @@ -16,16 +16,16 @@ * along with this program. If not, see . */ -package org.oxycblt.auxio.musikr.model.link +package org.oxycblt.auxio.musikr.interpret.link -import org.oxycblt.auxio.musikr.model.impl.AlbumImpl -import org.oxycblt.auxio.musikr.model.impl.ArtistImpl -import org.oxycblt.auxio.musikr.model.impl.GenreImpl -import org.oxycblt.auxio.musikr.model.impl.PlaylistImpl -import org.oxycblt.auxio.musikr.model.impl.SongImpl -import org.oxycblt.auxio.musikr.model.interpret.PreAlbum -import org.oxycblt.auxio.musikr.model.interpret.PrePlaylist -import org.oxycblt.auxio.musikr.model.interpret.PreSong +import org.oxycblt.auxio.musikr.model.AlbumImpl +import org.oxycblt.auxio.musikr.model.ArtistImpl +import org.oxycblt.auxio.musikr.model.GenreImpl +import org.oxycblt.auxio.musikr.model.PlaylistImpl +import org.oxycblt.auxio.musikr.model.SongImpl +import org.oxycblt.auxio.musikr.interpret.prepare.PreAlbum +import org.oxycblt.auxio.musikr.interpret.prepare.PrePlaylist +import org.oxycblt.auxio.musikr.interpret.prepare.PreSong interface LinkedSong { val preSong: PreSong diff --git a/app/src/main/java/org/oxycblt/auxio/musikr/model/link/PlaylistLinker.kt b/app/src/main/java/org/oxycblt/auxio/musikr/interpret/link/PlaylistLinker.kt similarity index 91% rename from app/src/main/java/org/oxycblt/auxio/musikr/model/link/PlaylistLinker.kt rename to app/src/main/java/org/oxycblt/auxio/musikr/interpret/link/PlaylistLinker.kt index 85b3b13b9..23d94c46c 100644 --- a/app/src/main/java/org/oxycblt/auxio/musikr/model/link/PlaylistLinker.kt +++ b/app/src/main/java/org/oxycblt/auxio/musikr/interpret/link/PlaylistLinker.kt @@ -16,12 +16,12 @@ * along with this program. If not, see . */ -package org.oxycblt.auxio.musikr.model.link +package org.oxycblt.auxio.musikr.interpret.link import kotlinx.coroutines.flow.Flow import kotlinx.coroutines.flow.emptyFlow import org.oxycblt.auxio.musikr.playlist.PlaylistFile -import org.oxycblt.auxio.musikr.model.impl.PlaylistImpl +import org.oxycblt.auxio.musikr.model.PlaylistImpl class PlaylistLinker { fun register( diff --git a/app/src/main/java/org/oxycblt/auxio/musikr/model/interpret/ID3Genre.kt b/app/src/main/java/org/oxycblt/auxio/musikr/interpret/prepare/ID3Genre.kt similarity index 99% rename from app/src/main/java/org/oxycblt/auxio/musikr/model/interpret/ID3Genre.kt rename to app/src/main/java/org/oxycblt/auxio/musikr/interpret/prepare/ID3Genre.kt index 8a74a1349..d456f6838 100644 --- a/app/src/main/java/org/oxycblt/auxio/musikr/model/interpret/ID3Genre.kt +++ b/app/src/main/java/org/oxycblt/auxio/musikr/interpret/prepare/ID3Genre.kt @@ -16,7 +16,7 @@ * along with this program. If not, see . */ -package org.oxycblt.auxio.musikr.model.interpret +package org.oxycblt.auxio.musikr.interpret.prepare /// --- ID3v2 PARSING --- diff --git a/app/src/main/java/org/oxycblt/auxio/musikr/model/interpret/PreMusic.kt b/app/src/main/java/org/oxycblt/auxio/musikr/interpret/prepare/PreMusic.kt similarity index 92% rename from app/src/main/java/org/oxycblt/auxio/musikr/model/interpret/PreMusic.kt rename to app/src/main/java/org/oxycblt/auxio/musikr/interpret/prepare/PreMusic.kt index a9640ab75..86e602324 100644 --- a/app/src/main/java/org/oxycblt/auxio/musikr/model/interpret/PreMusic.kt +++ b/app/src/main/java/org/oxycblt/auxio/musikr/interpret/prepare/PreMusic.kt @@ -16,16 +16,16 @@ * along with this program. If not, see . */ -package org.oxycblt.auxio.musikr.model.interpret +package org.oxycblt.auxio.musikr.interpret.prepare import android.net.Uri import java.util.UUID import org.oxycblt.auxio.music.Music import org.oxycblt.auxio.music.MusicType -import org.oxycblt.auxio.music.info.Date -import org.oxycblt.auxio.music.info.Disc -import org.oxycblt.auxio.music.info.Name -import org.oxycblt.auxio.music.info.ReleaseType +import org.oxycblt.auxio.musikr.model.Date +import org.oxycblt.auxio.musikr.model.Disc +import org.oxycblt.auxio.musikr.model.Name +import org.oxycblt.auxio.musikr.model.ReleaseType import org.oxycblt.auxio.musikr.playlist.PlaylistHandle import org.oxycblt.auxio.musikr.fs.MimeType import org.oxycblt.auxio.musikr.fs.Path diff --git a/app/src/main/java/org/oxycblt/auxio/musikr/model/ModelModule.kt b/app/src/main/java/org/oxycblt/auxio/musikr/interpret/prepare/PrepareModule.kt similarity index 80% rename from app/src/main/java/org/oxycblt/auxio/musikr/model/ModelModule.kt rename to app/src/main/java/org/oxycblt/auxio/musikr/interpret/prepare/PrepareModule.kt index d27f5d552..85447d9a2 100644 --- a/app/src/main/java/org/oxycblt/auxio/musikr/model/ModelModule.kt +++ b/app/src/main/java/org/oxycblt/auxio/musikr/interpret/prepare/PrepareModule.kt @@ -1,6 +1,6 @@ /* - * Copyright (c) 2023 Auxio Project - * InterpretModule.kt is part of Auxio. + * Copyright (c) 2024 Auxio Project + * PrepareModule.kt is part of Auxio. * * 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 @@ -16,7 +16,7 @@ * along with this program. If not, see . */ -package org.oxycblt.auxio.musikr.model +package org.oxycblt.auxio.musikr.interpret.prepare import dagger.Binds import dagger.Module @@ -25,6 +25,6 @@ import dagger.hilt.components.SingletonComponent @Module @InstallIn(SingletonComponent::class) -interface ModelModule { - @Binds fun interpreter(interpreter: ModelerImpl): Modeler +interface PrepareModule { + @Binds fun prepare(factory: PreparerImpl): Preparer } diff --git a/app/src/main/java/org/oxycblt/auxio/musikr/model/interpret/Interpreter.kt b/app/src/main/java/org/oxycblt/auxio/musikr/interpret/prepare/Preparer.kt similarity index 95% rename from app/src/main/java/org/oxycblt/auxio/musikr/model/interpret/Interpreter.kt rename to app/src/main/java/org/oxycblt/auxio/musikr/interpret/prepare/Preparer.kt index cd99ff5e1..e4b52711b 100644 --- a/app/src/main/java/org/oxycblt/auxio/musikr/model/interpret/Interpreter.kt +++ b/app/src/main/java/org/oxycblt/auxio/musikr/interpret/prepare/Preparer.kt @@ -16,26 +16,26 @@ * along with this program. If not, see . */ -package org.oxycblt.auxio.musikr.model.interpret +package org.oxycblt.auxio.musikr.interpret.prepare import javax.inject.Inject import kotlinx.coroutines.flow.Flow import kotlinx.coroutines.flow.map import org.oxycblt.auxio.R -import org.oxycblt.auxio.music.info.Disc -import org.oxycblt.auxio.music.info.Name -import org.oxycblt.auxio.music.info.ReleaseType +import org.oxycblt.auxio.musikr.model.Disc +import org.oxycblt.auxio.musikr.model.Name +import org.oxycblt.auxio.musikr.model.ReleaseType import org.oxycblt.auxio.musikr.tag.AudioFile import org.oxycblt.auxio.musikr.fs.MimeType -import org.oxycblt.auxio.musikr.model.Interpretation +import org.oxycblt.auxio.musikr.interpret.Interpretation import org.oxycblt.auxio.playback.replaygain.ReplayGainAdjustment import org.oxycblt.auxio.util.toUuidOrNull -interface Interpreter { +interface Preparer { fun interpret(audioFiles: Flow, interpretation: Interpretation): Flow } -class InterpreterImpl @Inject constructor() : Interpreter { +class PreparerImpl @Inject constructor() : Preparer { override fun interpret(audioFiles: Flow, interpretation: Interpretation) = audioFiles.map { audioFile -> val individualPreArtists = diff --git a/app/src/main/java/org/oxycblt/auxio/music/info/Date.kt b/app/src/main/java/org/oxycblt/auxio/musikr/model/Date.kt similarity index 99% rename from app/src/main/java/org/oxycblt/auxio/music/info/Date.kt rename to app/src/main/java/org/oxycblt/auxio/musikr/model/Date.kt index a42ebc16b..bfb107b0d 100644 --- a/app/src/main/java/org/oxycblt/auxio/music/info/Date.kt +++ b/app/src/main/java/org/oxycblt/auxio/musikr/model/Date.kt @@ -16,7 +16,7 @@ * along with this program. If not, see . */ -package org.oxycblt.auxio.music.info +package org.oxycblt.auxio.musikr.model import android.content.Context import java.text.ParseException diff --git a/app/src/main/java/org/oxycblt/auxio/musikr/model/impl/DeviceMusicImpl.kt b/app/src/main/java/org/oxycblt/auxio/musikr/model/DeviceMusicImpl.kt similarity index 96% rename from app/src/main/java/org/oxycblt/auxio/musikr/model/impl/DeviceMusicImpl.kt rename to app/src/main/java/org/oxycblt/auxio/musikr/model/DeviceMusicImpl.kt index 8d41a80f9..3b0f18bf6 100644 --- a/app/src/main/java/org/oxycblt/auxio/musikr/model/impl/DeviceMusicImpl.kt +++ b/app/src/main/java/org/oxycblt/auxio/musikr/model/DeviceMusicImpl.kt @@ -16,7 +16,7 @@ * along with this program. If not, see . */ -package org.oxycblt.auxio.musikr.model.impl +package org.oxycblt.auxio.musikr.model import kotlin.math.min import org.oxycblt.auxio.image.Cover @@ -27,11 +27,10 @@ import org.oxycblt.auxio.music.Genre import org.oxycblt.auxio.music.Music import org.oxycblt.auxio.music.MusicType import org.oxycblt.auxio.music.Song -import org.oxycblt.auxio.music.info.Date -import org.oxycblt.auxio.musikr.model.link.LinkedAlbum -import org.oxycblt.auxio.musikr.model.link.LinkedSong -import org.oxycblt.auxio.musikr.model.interpret.PreArtist -import org.oxycblt.auxio.musikr.model.interpret.PreGenre +import org.oxycblt.auxio.musikr.interpret.link.LinkedAlbum +import org.oxycblt.auxio.musikr.interpret.link.LinkedSong +import org.oxycblt.auxio.musikr.interpret.prepare.PreArtist +import org.oxycblt.auxio.musikr.interpret.prepare.PreGenre import org.oxycblt.auxio.util.update /** diff --git a/app/src/main/java/org/oxycblt/auxio/music/info/Disc.kt b/app/src/main/java/org/oxycblt/auxio/musikr/model/Disc.kt similarity index 97% rename from app/src/main/java/org/oxycblt/auxio/music/info/Disc.kt rename to app/src/main/java/org/oxycblt/auxio/musikr/model/Disc.kt index 5f2b52bd6..be137e994 100644 --- a/app/src/main/java/org/oxycblt/auxio/music/info/Disc.kt +++ b/app/src/main/java/org/oxycblt/auxio/musikr/model/Disc.kt @@ -16,7 +16,7 @@ * along with this program. If not, see . */ -package org.oxycblt.auxio.music.info +package org.oxycblt.auxio.musikr.model import android.content.Context import org.oxycblt.auxio.R diff --git a/app/src/main/java/org/oxycblt/auxio/musikr/model/impl/Library.kt b/app/src/main/java/org/oxycblt/auxio/musikr/model/Library.kt similarity index 98% rename from app/src/main/java/org/oxycblt/auxio/musikr/model/impl/Library.kt rename to app/src/main/java/org/oxycblt/auxio/musikr/model/Library.kt index 37ca090f2..de6f7a7ef 100644 --- a/app/src/main/java/org/oxycblt/auxio/musikr/model/impl/Library.kt +++ b/app/src/main/java/org/oxycblt/auxio/musikr/model/Library.kt @@ -16,7 +16,7 @@ * along with this program. If not, see . */ -package org.oxycblt.auxio.musikr.model.impl +package org.oxycblt.auxio.musikr.model import org.oxycblt.auxio.music.Library import org.oxycblt.auxio.music.Music diff --git a/app/src/main/java/org/oxycblt/auxio/music/info/Name.kt b/app/src/main/java/org/oxycblt/auxio/musikr/model/Name.kt similarity index 99% rename from app/src/main/java/org/oxycblt/auxio/music/info/Name.kt rename to app/src/main/java/org/oxycblt/auxio/musikr/model/Name.kt index 289e4e59f..f8087af0e 100644 --- a/app/src/main/java/org/oxycblt/auxio/music/info/Name.kt +++ b/app/src/main/java/org/oxycblt/auxio/musikr/model/Name.kt @@ -16,7 +16,7 @@ * along with this program. If not, see . */ -package org.oxycblt.auxio.music.info +package org.oxycblt.auxio.musikr.model import android.content.Context import androidx.annotation.StringRes diff --git a/app/src/main/java/org/oxycblt/auxio/musikr/model/impl/PlaylistImpl.kt b/app/src/main/java/org/oxycblt/auxio/musikr/model/PlaylistImpl.kt similarity index 91% rename from app/src/main/java/org/oxycblt/auxio/musikr/model/impl/PlaylistImpl.kt rename to app/src/main/java/org/oxycblt/auxio/musikr/model/PlaylistImpl.kt index 9e230e51a..5be72aa05 100644 --- a/app/src/main/java/org/oxycblt/auxio/musikr/model/impl/PlaylistImpl.kt +++ b/app/src/main/java/org/oxycblt/auxio/musikr/model/PlaylistImpl.kt @@ -16,12 +16,11 @@ * along with this program. If not, see . */ -package org.oxycblt.auxio.musikr.model.impl +package org.oxycblt.auxio.musikr.model import org.oxycblt.auxio.image.Cover import org.oxycblt.auxio.music.Playlist -import org.oxycblt.auxio.music.info.Name -import org.oxycblt.auxio.musikr.model.link.LinkedPlaylist +import org.oxycblt.auxio.musikr.interpret.link.LinkedPlaylist class PlaylistImpl(linkedPlaylist: LinkedPlaylist) : Playlist { private val prePlaylist = linkedPlaylist.prePlaylist diff --git a/app/src/main/java/org/oxycblt/auxio/music/info/ReleaseType.kt b/app/src/main/java/org/oxycblt/auxio/musikr/model/ReleaseType.kt similarity index 98% rename from app/src/main/java/org/oxycblt/auxio/music/info/ReleaseType.kt rename to app/src/main/java/org/oxycblt/auxio/musikr/model/ReleaseType.kt index 3fe45b202..f40ae966b 100644 --- a/app/src/main/java/org/oxycblt/auxio/music/info/ReleaseType.kt +++ b/app/src/main/java/org/oxycblt/auxio/musikr/model/ReleaseType.kt @@ -16,10 +16,10 @@ * along with this program. If not, see . */ -package org.oxycblt.auxio.music.info +package org.oxycblt.auxio.musikr.model import org.oxycblt.auxio.R -import org.oxycblt.auxio.music.info.ReleaseType.Album +import org.oxycblt.auxio.musikr.model.ReleaseType.Album /** * The type of release an [Album] is considered. This includes EPs, Singles, Compilations, etc. diff --git a/app/src/main/java/org/oxycblt/auxio/musikr/tag/AudioFile.kt b/app/src/main/java/org/oxycblt/auxio/musikr/tag/AudioFile.kt index 6f43fb478..6fc38c0ac 100644 --- a/app/src/main/java/org/oxycblt/auxio/musikr/tag/AudioFile.kt +++ b/app/src/main/java/org/oxycblt/auxio/musikr/tag/AudioFile.kt @@ -1,6 +1,6 @@ package org.oxycblt.auxio.musikr.tag -import org.oxycblt.auxio.music.info.Date +import org.oxycblt.auxio.musikr.model.Date import org.oxycblt.auxio.musikr.fs.DeviceFile data class AudioFile( diff --git a/app/src/main/java/org/oxycblt/auxio/musikr/tag/cache/TagDatabase.kt b/app/src/main/java/org/oxycblt/auxio/musikr/tag/cache/TagDatabase.kt index 05db90e45..54d7d848e 100644 --- a/app/src/main/java/org/oxycblt/auxio/musikr/tag/cache/TagDatabase.kt +++ b/app/src/main/java/org/oxycblt/auxio/musikr/tag/cache/TagDatabase.kt @@ -28,7 +28,7 @@ import androidx.room.Query import androidx.room.RoomDatabase import androidx.room.TypeConverter import androidx.room.TypeConverters -import org.oxycblt.auxio.music.info.Date +import org.oxycblt.auxio.musikr.model.Date import org.oxycblt.auxio.musikr.tag.AudioFile import org.oxycblt.auxio.musikr.fs.DeviceFile import org.oxycblt.auxio.musikr.tag.extractor.correctWhitespace diff --git a/app/src/main/java/org/oxycblt/auxio/musikr/tag/extractor/TagFields.kt b/app/src/main/java/org/oxycblt/auxio/musikr/tag/extractor/TagFields.kt index c1012e119..55960bc26 100644 --- a/app/src/main/java/org/oxycblt/auxio/musikr/tag/extractor/TagFields.kt +++ b/app/src/main/java/org/oxycblt/auxio/musikr/tag/extractor/TagFields.kt @@ -19,7 +19,7 @@ package org.oxycblt.auxio.musikr.tag.extractor import androidx.core.text.isDigitsOnly -import org.oxycblt.auxio.music.info.Date +import org.oxycblt.auxio.musikr.model.Date import org.oxycblt.auxio.util.nonZeroOrNull // Song diff --git a/app/src/main/java/org/oxycblt/auxio/playback/service/MediaSessionInterface.kt b/app/src/main/java/org/oxycblt/auxio/playback/service/MediaSessionInterface.kt index 03afc4363..9f91a213e 100644 --- a/app/src/main/java/org/oxycblt/auxio/playback/service/MediaSessionInterface.kt +++ b/app/src/main/java/org/oxycblt/auxio/playback/service/MediaSessionInterface.kt @@ -38,7 +38,7 @@ import org.oxycblt.auxio.music.MusicParent import org.oxycblt.auxio.music.MusicRepository import org.oxycblt.auxio.music.Playlist import org.oxycblt.auxio.music.Song -import org.oxycblt.auxio.music.info.Name +import org.oxycblt.auxio.musikr.model.Name import org.oxycblt.auxio.music.service.MediaSessionUID import org.oxycblt.auxio.music.service.MusicBrowser import org.oxycblt.auxio.playback.state.PlaybackCommand diff --git a/app/src/main/java/org/oxycblt/auxio/search/SearchEngine.kt b/app/src/main/java/org/oxycblt/auxio/search/SearchEngine.kt index 8af33ebbc..9a5a67e03 100644 --- a/app/src/main/java/org/oxycblt/auxio/search/SearchEngine.kt +++ b/app/src/main/java/org/oxycblt/auxio/search/SearchEngine.kt @@ -28,7 +28,7 @@ import org.oxycblt.auxio.music.Genre import org.oxycblt.auxio.music.Music import org.oxycblt.auxio.music.Playlist import org.oxycblt.auxio.music.Song -import org.oxycblt.auxio.music.info.Name +import org.oxycblt.auxio.musikr.model.Name import timber.log.Timber as L /** diff --git a/app/src/main/java/org/oxycblt/auxio/util/LangUtil.kt b/app/src/main/java/org/oxycblt/auxio/util/LangUtil.kt index 8b8d8c6a1..9f87531fc 100644 --- a/app/src/main/java/org/oxycblt/auxio/util/LangUtil.kt +++ b/app/src/main/java/org/oxycblt/auxio/util/LangUtil.kt @@ -22,7 +22,7 @@ import java.security.MessageDigest import java.util.UUID import kotlin.reflect.KClass import org.oxycblt.auxio.BuildConfig -import org.oxycblt.auxio.music.info.Date +import org.oxycblt.auxio.musikr.model.Date /** * Sanitizes a value that is unlikely to be null. On debug builds, this aliases to [requireNotNull], diff --git a/app/src/test/java/org/oxycblt/auxio/music/info/DateTest.kt b/app/src/test/java/org/oxycblt/auxio/music/info/DateTest.kt index b63639e27..43848e598 100644 --- a/app/src/test/java/org/oxycblt/auxio/music/info/DateTest.kt +++ b/app/src/test/java/org/oxycblt/auxio/music/info/DateTest.kt @@ -21,6 +21,7 @@ package org.oxycblt.auxio.music.info import org.junit.Assert.assertEquals import org.junit.Assert.assertTrue import org.junit.Test +import org.oxycblt.auxio.musikr.model.Date class DateTest { @Test diff --git a/app/src/test/java/org/oxycblt/auxio/music/info/DiscTest.kt b/app/src/test/java/org/oxycblt/auxio/music/info/DiscTest.kt index 9b428acac..3c80b9022 100644 --- a/app/src/test/java/org/oxycblt/auxio/music/info/DiscTest.kt +++ b/app/src/test/java/org/oxycblt/auxio/music/info/DiscTest.kt @@ -20,6 +20,7 @@ package org.oxycblt.auxio.music.info import org.junit.Assert.assertEquals import org.junit.Test +import org.oxycblt.auxio.musikr.model.Disc class DiscTest { @Test diff --git a/app/src/test/java/org/oxycblt/auxio/music/info/NameTest.kt b/app/src/test/java/org/oxycblt/auxio/music/info/NameTest.kt index 078a1f154..59c07c36f 100644 --- a/app/src/test/java/org/oxycblt/auxio/music/info/NameTest.kt +++ b/app/src/test/java/org/oxycblt/auxio/music/info/NameTest.kt @@ -21,6 +21,8 @@ package org.oxycblt.auxio.music.info import org.junit.Assert.assertEquals import org.junit.Assert.assertNotEquals import org.junit.Test +import org.oxycblt.auxio.musikr.model.Name +import org.oxycblt.auxio.musikr.model.SortToken class NameTest { @Test diff --git a/app/src/test/java/org/oxycblt/auxio/music/info/ReleaseTypeTest.kt b/app/src/test/java/org/oxycblt/auxio/music/info/ReleaseTypeTest.kt index 1294e3daf..1cc3a3769 100644 --- a/app/src/test/java/org/oxycblt/auxio/music/info/ReleaseTypeTest.kt +++ b/app/src/test/java/org/oxycblt/auxio/music/info/ReleaseTypeTest.kt @@ -20,6 +20,7 @@ package org.oxycblt.auxio.music.info import org.junit.Assert.assertEquals import org.junit.Test +import org.oxycblt.auxio.musikr.model.ReleaseType class ReleaseTypeTest { @Test diff --git a/app/src/test/java/org/oxycblt/auxio/music/metadata/TagUtilTest.kt b/app/src/test/java/org/oxycblt/auxio/music/metadata/TagUtilTest.kt index b018f18ec..a8291ab8c 100644 --- a/app/src/test/java/org/oxycblt/auxio/music/metadata/TagUtilTest.kt +++ b/app/src/test/java/org/oxycblt/auxio/music/metadata/TagUtilTest.kt @@ -24,7 +24,7 @@ import org.oxycblt.auxio.musikr.tag.extractor.correctWhitespace import org.oxycblt.auxio.musikr.tag.extractor.parseId3v2PositionField import org.oxycblt.auxio.musikr.tag.extractor.parseVorbisPositionField import org.oxycblt.auxio.musikr.tag.extractor.splitEscaped -import org.oxycblt.auxio.musikr.model.interpret.parseId3GenreNames +import org.oxycblt.auxio.musikr.interpret.prepare.parseId3GenreNames class TagUtilTest { @Test