diff --git a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/data/MetaDatabase.kt b/ultrasonic/src/main/kotlin/org/moire/ultrasonic/data/MetaDatabase.kt index c423b468..afbf8e76 100644 --- a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/data/MetaDatabase.kt +++ b/ultrasonic/src/main/kotlin/org/moire/ultrasonic/data/MetaDatabase.kt @@ -31,6 +31,8 @@ abstract class MetaDatabase : RoomDatabase() { abstract fun albumDao(): AlbumDao + abstract fun trackDao(): AlbumDao + abstract fun musicFoldersDao(): MusicFoldersDao abstract fun indexDao(): IndexDao diff --git a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/data/TrackDao.kt b/ultrasonic/src/main/kotlin/org/moire/ultrasonic/data/TrackDao.kt new file mode 100644 index 00000000..662ba1b9 --- /dev/null +++ b/ultrasonic/src/main/kotlin/org/moire/ultrasonic/data/TrackDao.kt @@ -0,0 +1,25 @@ +package org.moire.ultrasonic.data + +import androidx.room.Query +import org.moire.ultrasonic.domain.MusicDirectory + +interface TrackDao { + /** + * Clear the whole database + */ + @Query("DELETE FROM tracks") + fun clear() + + /** + * Get all albums + */ + @Query("SELECT * FROM tracks") + fun get(): List + + /** + * Get albums by artist + */ + @Query("SELECT * FROM tracks WHERE albumId LIKE :id") + fun byAlbum(id: String): List + +} \ No newline at end of file