Removed almost all hardcoded constants

This commit is contained in:
antonio 2023-03-10 16:56:53 +01:00
parent d16db8e36d
commit e98429503b
57 changed files with 345 additions and 374 deletions

View file

@ -8,11 +8,11 @@ import androidx.lifecycle.LifecycleOwner;
import androidx.lifecycle.LiveData;
import androidx.lifecycle.MutableLiveData;
import com.cappielloantonio.play.model.Album;
import com.cappielloantonio.play.repository.AlbumRepository;
import com.cappielloantonio.play.repository.DownloadRepository;
import com.cappielloantonio.play.subsonic.models.AlbumID3;
import com.cappielloantonio.play.subsonic.models.ArtistID3;
import com.cappielloantonio.play.util.Constants;
import java.util.ArrayList;
import java.util.Calendar;
@ -39,19 +39,19 @@ public class AlbumListPageViewModel extends AndroidViewModel {
albumList = new MutableLiveData<>(new ArrayList<>());
switch (title) {
case Album.RECENTLY_PLAYED:
case Constants.ALBUM_RECENTLY_PLAYED:
albumRepository.getAlbums("recent", 500, null, null).observe(owner, albums -> albumList.setValue(albums));
break;
case Album.MOST_PLAYED:
case Constants.ALBUM_MOST_PLAYED:
albumRepository.getAlbums("frequent", 500, null, null).observe(owner, albums -> albumList.setValue(albums));
break;
case Album.RECENTLY_ADDED:
case Constants.ALBUM_RECENTLY_ADDED:
albumRepository.getAlbums("newest", 500, null, null).observe(owner, albums -> albumList.setValue(albums));
break;
case Album.STARRED:
case Constants.ALBUM_STARRED:
albumList = albumRepository.getStarredAlbums(false, -1);
break;
case Album.NEW_RELEASES:
case Constants.ALBUM_NEW_RELEASES:
int currentYear = Calendar.getInstance().get(Calendar.YEAR);
albumRepository.getAlbums("byYear", 500, currentYear, currentYear).observe(owner, albums -> {
albums.sort(Comparator.comparing(AlbumID3::getCreated).reversed());

View file

@ -8,11 +8,11 @@ import androidx.lifecycle.LifecycleOwner;
import androidx.lifecycle.LiveData;
import androidx.lifecycle.MutableLiveData;
import com.cappielloantonio.play.model.Artist;
import com.cappielloantonio.play.model.Download;
import com.cappielloantonio.play.repository.ArtistRepository;
import com.cappielloantonio.play.repository.DownloadRepository;
import com.cappielloantonio.play.subsonic.models.ArtistID3;
import com.cappielloantonio.play.util.Constants;
import java.util.ArrayList;
import java.util.Comparator;
@ -39,10 +39,10 @@ public class ArtistListPageViewModel extends AndroidViewModel {
artistList = new MutableLiveData<>(new ArrayList<>());
switch (title) {
case Artist.STARRED:
case Constants.ARTIST_STARRED:
artistList = artistRepository.getStarredArtists(false, -1);
break;
case Artist.DOWNLOADED:
case Constants.ARTIST_DOWNLOADED:
downloadRepository.getLiveDownload().observe(owner, downloads -> {
List<Download> unique = downloads
.stream()

View file

@ -8,10 +8,7 @@ import androidx.lifecycle.LifecycleOwner;
import androidx.lifecycle.LiveData;
import androidx.lifecycle.MutableLiveData;
import com.cappielloantonio.play.model.Playlist;
import com.cappielloantonio.play.repository.DownloadRepository;
import com.cappielloantonio.play.subsonic.models.AlbumID3;
import com.cappielloantonio.play.subsonic.models.ArtistID3;
import com.cappielloantonio.play.subsonic.models.Child;
import java.util.List;
@ -22,10 +19,7 @@ public class DownloadViewModel extends AndroidViewModel {
private final DownloadRepository downloadRepository;
private final MutableLiveData<List<ArtistID3>> downloadedArtistSample = new MutableLiveData<>(null);
private final MutableLiveData<List<AlbumID3>> downloadedAlbumSample = new MutableLiveData<>(null);
private final MutableLiveData<List<Child>> downloadedTrackSample = new MutableLiveData<>(null);
private final MutableLiveData<List<Playlist>> downloadedPlaylistSample = new MutableLiveData<>(null);
public DownloadViewModel(@NonNull Application application) {
super(application);

View file

@ -11,13 +11,13 @@ import androidx.lifecycle.LiveData;
import androidx.lifecycle.MutableLiveData;
import androidx.media3.common.util.UnstableApi;
import com.cappielloantonio.play.model.Media;
import com.cappielloantonio.play.model.Queue;
import com.cappielloantonio.play.repository.ArtistRepository;
import com.cappielloantonio.play.repository.QueueRepository;
import com.cappielloantonio.play.repository.SongRepository;
import com.cappielloantonio.play.subsonic.models.ArtistID3;
import com.cappielloantonio.play.subsonic.models.Child;
import com.cappielloantonio.play.util.Constants;
import java.util.Collections;
import java.util.Date;
@ -85,10 +85,10 @@ public class PlayerBottomSheetViewModel extends AndroidViewModel {
public void setLiveMedia(LifecycleOwner owner, String mediaType, String mediaId) {
if (mediaType != null) {
switch (mediaType) {
case Media.MEDIA_TYPE_MUSIC:
case Constants.MEDIA_TYPE_MUSIC:
songRepository.getSong(mediaId).observe(owner, liveMedia::postValue);
break;
case Media.MEDIA_TYPE_PODCAST:
case Constants.MEDIA_TYPE_PODCAST:
liveMedia.postValue(null);
break;
}
@ -102,10 +102,10 @@ public class PlayerBottomSheetViewModel extends AndroidViewModel {
public void setLiveArtist(LifecycleOwner owner, String mediaType, String ArtistId) {
if (mediaType != null) {
switch (mediaType) {
case Media.MEDIA_TYPE_MUSIC:
case Constants.MEDIA_TYPE_MUSIC:
artistRepository.getArtist(ArtistId).observe(owner, liveArtist::postValue);
break;
case Media.MEDIA_TYPE_PODCAST:
case Constants.MEDIA_TYPE_PODCAST:
liveArtist.postValue(null);
break;
}

View file

@ -11,6 +11,7 @@ import androidx.lifecycle.MutableLiveData;
import com.cappielloantonio.play.repository.DownloadRepository;
import com.cappielloantonio.play.repository.PlaylistRepository;
import com.cappielloantonio.play.subsonic.models.Playlist;
import com.cappielloantonio.play.util.Constants;
import com.cappielloantonio.play.util.Preferences;
import java.util.ArrayList;
@ -36,10 +37,10 @@ public class PlaylistCatalogueViewModel extends AndroidViewModel {
playlistList = new MutableLiveData<>(new ArrayList<>());
switch (type) {
case com.cappielloantonio.play.model.Playlist.ALL:
case Constants.PLAYLIST_ALL:
playlistRepository.getPlaylists(false, -1).observe(owner, playlists -> playlistList.postValue(playlists));
break;
case com.cappielloantonio.play.model.Playlist.DOWNLOADED:
case Constants.PLAYLIST_DOWNLOADED:
// TODO
//downloadRepository.getLivePlaylist().observe(owner, downloads -> playlistList.setValue(MappingUtil.mapDownloadToPlaylist(downloads)));
break;
@ -57,7 +58,7 @@ public class PlaylistCatalogueViewModel extends AndroidViewModel {
}
public void unpinPlaylist(List<Playlist> playlists) {
if (type.equals(com.cappielloantonio.play.model.Playlist.ALL)) {
if (type.equals(Constants.PLAYLIST_ALL)) {
for (Playlist playlist : playlists) {
playlistRepository.delete(playlist);
}

View file

@ -9,7 +9,6 @@ import androidx.lifecycle.LifecycleOwner;
import androidx.lifecycle.LiveData;
import androidx.lifecycle.MutableLiveData;
import com.cappielloantonio.play.model.Media;
import com.cappielloantonio.play.repository.ArtistRepository;
import com.cappielloantonio.play.repository.DownloadRepository;
import com.cappielloantonio.play.repository.SongRepository;
@ -17,6 +16,7 @@ import com.cappielloantonio.play.subsonic.models.AlbumID3;
import com.cappielloantonio.play.subsonic.models.ArtistID3;
import com.cappielloantonio.play.subsonic.models.Child;
import com.cappielloantonio.play.subsonic.models.Genre;
import com.cappielloantonio.play.util.Constants;
import java.util.ArrayList;
import java.util.List;
@ -51,19 +51,19 @@ public class SongListPageViewModel extends AndroidViewModel {
songList = new MutableLiveData<>(new ArrayList<>());
switch (title) {
case Media.BY_GENRE:
case Constants.MEDIA_BY_GENRE:
songList = songRepository.getSongsByGenre(genre.getGenre());
break;
case Media.BY_ARTIST:
case Constants.MEDIA_BY_ARTIST:
songList = artistRepository.getTopSongs(artist.getName(), 50);
break;
case Media.BY_GENRES:
case Constants.MEDIA_BY_GENRES:
songList = songRepository.getSongsByGenres(filters);
break;
case Media.BY_YEAR:
case Constants.MEDIA_BY_YEAR:
songList = songRepository.getRandomSample(500, year, year + 10);
break;
case Media.STARRED:
case Constants.MEDIA_STARRED:
songList = songRepository.getStarredSongs(false, -1);
break;
}