Implemented star for tracks, albums and artists

This commit is contained in:
CappielloAntonio
2021-07-29 16:00:00 +02:00
parent 6f1046b137
commit f09d3b774d
14 changed files with 273 additions and 17 deletions

View File

@@ -32,4 +32,14 @@ public class AlbumBottomSheetViewModel extends AndroidViewModel {
// return artistRepository.getArtistByID(album.getArtistId());
return null;
}
public void setFavorite() {
if (album.isFavorite()) {
artistRepository.unstar(album.getId());
album.setFavorite(false);
} else {
artistRepository.star(album.getId());
album.setFavorite(true);
}
}
}

View File

@@ -6,12 +6,18 @@ import androidx.annotation.NonNull;
import androidx.lifecycle.AndroidViewModel;
import com.cappielloantonio.play.model.Artist;
import com.cappielloantonio.play.repository.AlbumRepository;
import com.cappielloantonio.play.repository.ArtistRepository;
public class ArtistBottomSheetViewModel extends AndroidViewModel {
private AlbumRepository albumRepository;
private Artist artist;
public ArtistBottomSheetViewModel(@NonNull Application application) {
super(application);
albumRepository = new AlbumRepository(application);
}
public Artist getArtist() {
@@ -21,4 +27,14 @@ public class ArtistBottomSheetViewModel extends AndroidViewModel {
public void setArtist(Artist artist) {
this.artist = artist;
}
public void setFavorite() {
if (artist.isFavorite()) {
albumRepository.unstar(artist.getId());
artist.setFavorite(false);
} else {
albumRepository.star(artist.getId());
artist.setFavorite(true);
}
}
}

View File

@@ -36,8 +36,13 @@ public class SongBottomSheetViewModel extends AndroidViewModel {
}
public void setFavorite() {
song.setFavorite(!song.isFavorite());
// songRepository.setFavoriteStatus(song);
if (song.isFavorite()) {
songRepository.unstar(song.getId());
song.setFavorite(false);
} else {
songRepository.star(song.getId());
song.setFavorite(true);
}
}
public Album getAlbum() {