2020-03-24 22:17:03 +01:00
|
|
|
import '../entities/album.dart';
|
2020-08-08 19:02:03 +02:00
|
|
|
import '../entities/artist.dart';
|
2020-03-28 14:35:41 +01:00
|
|
|
import '../entities/song.dart';
|
2020-03-24 22:17:03 +01:00
|
|
|
|
2021-02-26 22:07:18 +01:00
|
|
|
abstract class MusicDataInfoRepository {
|
2021-04-18 13:46:16 +02:00
|
|
|
Stream<Map<String, Song>> get songUpdateStream;
|
|
|
|
|
2021-02-26 22:07:18 +01:00
|
|
|
Future<Song> getSongByPath(String path);
|
2020-11-15 16:36:50 +01:00
|
|
|
Stream<List<Song>> get songStream;
|
|
|
|
Stream<List<Song>> getAlbumSongStream(Album album);
|
2021-04-16 18:58:27 +02:00
|
|
|
Stream<List<Song>> getArtistSongStream(Artist artist);
|
2020-12-30 18:28:16 +01:00
|
|
|
|
|
|
|
Stream<List<Album>> get albumStream;
|
2020-12-29 21:01:31 +01:00
|
|
|
Stream<List<Album>> getArtistAlbumStream(Artist artist);
|
2020-12-19 12:22:57 +01:00
|
|
|
|
2020-12-30 18:28:16 +01:00
|
|
|
Stream<List<Artist>> get artistStream;
|
2021-02-26 22:07:18 +01:00
|
|
|
}
|
2020-12-30 18:28:16 +01:00
|
|
|
|
2021-02-26 22:07:18 +01:00
|
|
|
abstract class MusicDataRepository extends MusicDataInfoRepository {
|
2020-03-24 22:17:03 +01:00
|
|
|
Future<void> updateDatabase();
|
2021-04-18 13:46:16 +02:00
|
|
|
|
|
|
|
Future<void> incrementLikeCount(Song song);
|
2021-02-26 22:07:18 +01:00
|
|
|
}
|