mirror of
https://github.com/CappielloAntonio/tempo.git
synced 2026-02-01 23:13:36 +00:00
Added discover/recentryAddedAlbum/recentlyPlayedAlbum/mostPlayedAlbum data retrieval
This commit is contained in:
@@ -23,7 +23,7 @@ public class AlbumCatalogueViewModel extends AndroidViewModel {
|
||||
}
|
||||
|
||||
public LiveData<List<Album>> getAlbumList() {
|
||||
albumList = albumRepository.getListLiveAlbums();
|
||||
// albumList = albumRepository.getListLiveAlbums();
|
||||
return albumList;
|
||||
}
|
||||
|
||||
|
||||
@@ -6,16 +6,21 @@ import androidx.annotation.NonNull;
|
||||
import androidx.lifecycle.AndroidViewModel;
|
||||
import androidx.lifecycle.LiveData;
|
||||
|
||||
import com.cappielloantonio.play.interfaces.MediaCallback;
|
||||
import com.cappielloantonio.play.model.Album;
|
||||
import com.cappielloantonio.play.model.Song;
|
||||
import com.cappielloantonio.play.repository.AlbumRepository;
|
||||
import com.cappielloantonio.play.repository.SongRepository;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
public class HomeViewModel extends AndroidViewModel {
|
||||
private static final String TAG = "HomeViewModel";
|
||||
private SongRepository songRepository;
|
||||
private AlbumRepository albumRepository;
|
||||
|
||||
private List<Song> dicoverSongSample;
|
||||
private List<Song> dicoverSongSample = new ArrayList<>();
|
||||
private LiveData<List<Song>> recentlyPlayedSongSample;
|
||||
private LiveData<List<Song>> recentlyAddedSongSample;
|
||||
private LiveData<List<Song>> mostPlayedSongSample;
|
||||
@@ -23,27 +28,30 @@ public class HomeViewModel extends AndroidViewModel {
|
||||
private LiveData<List<Song>> downloadedSongSample;
|
||||
private List<Integer> years;
|
||||
|
||||
private LiveData<List<Album>> mostPlayedAlbumSample;
|
||||
private LiveData<List<Album>> recentlyAddedAlbumSample;
|
||||
private LiveData<List<Album>> recentlyPlayedAlbumSample;
|
||||
|
||||
public HomeViewModel(@NonNull Application application) {
|
||||
super(application);
|
||||
|
||||
songRepository = new SongRepository(application);
|
||||
albumRepository = new AlbumRepository(application);
|
||||
|
||||
dicoverSongSample = songRepository.getRandomSample(10);
|
||||
recentlyPlayedSongSample = songRepository.getListLiveRecentlyPlayedSampleSong(20);
|
||||
recentlyAddedSongSample = songRepository.getListLiveRecentlyAddedSampleSong(20);
|
||||
mostPlayedSongSample = songRepository.getListLiveMostPlayedSampleSong(20);
|
||||
favoritesSongSample = songRepository.getListLiveFavoritesSampleSong(20);
|
||||
downloadedSongSample = songRepository.getListLiveDownloadedSampleSong(20);
|
||||
years = songRepository.getYearList();
|
||||
|
||||
mostPlayedAlbumSample = albumRepository.getListLiveAlbums("frequent", 20);
|
||||
recentlyAddedAlbumSample = albumRepository.getListLiveAlbums("newest", 20);
|
||||
recentlyPlayedAlbumSample = albumRepository.getListLiveAlbums("recent", 20);
|
||||
}
|
||||
|
||||
|
||||
public List<Song> getDiscoverSongList() {
|
||||
if (dicoverSongSample.isEmpty()) {
|
||||
dicoverSongSample = songRepository.getRandomSample(10);
|
||||
}
|
||||
|
||||
return dicoverSongSample;
|
||||
public SongRepository getSongRepository() {
|
||||
return songRepository;
|
||||
}
|
||||
|
||||
public LiveData<List<Song>> getRecentlyAddedSongList() {
|
||||
@@ -69,4 +77,16 @@ public class HomeViewModel extends AndroidViewModel {
|
||||
public LiveData<List<Song>> getDownloaded() {
|
||||
return downloadedSongSample;
|
||||
}
|
||||
|
||||
public LiveData<List<Album>> getMostPlayedAlbums() {
|
||||
return mostPlayedAlbumSample;
|
||||
}
|
||||
|
||||
public LiveData<List<Album>> getMostRecentlyAddedAlbums() {
|
||||
return recentlyAddedAlbumSample;
|
||||
}
|
||||
|
||||
public LiveData<List<Album>> getRecentlyPlayedAlbumList() {
|
||||
return recentlyPlayedAlbumSample;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -18,6 +18,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.MappingUtil;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
@@ -40,9 +41,8 @@ public class SyncViewModel extends AndroidViewModel {
|
||||
private ArrayList<Genre> genreList = new ArrayList<>();
|
||||
private ArrayList<Playlist> playlistList = new ArrayList<>();
|
||||
private ArrayList<Song> songList = new ArrayList<>();
|
||||
private ArrayList<Child> childList = new ArrayList<>();
|
||||
|
||||
private SongRepository songRepository;
|
||||
private final SongRepository songRepository;
|
||||
private AlbumRepository albumRepository;
|
||||
private ArtistRepository artistRepository;
|
||||
private PlaylistRepository playlistRepository;
|
||||
@@ -128,12 +128,8 @@ public class SyncViewModel extends AndroidViewModel {
|
||||
this.songList = songList;
|
||||
}
|
||||
|
||||
public ArrayList<Child> getChildList() {
|
||||
return childList;
|
||||
}
|
||||
|
||||
public void addToChildList(ArrayList<Child> childList) {
|
||||
this.childList.addAll(childList);
|
||||
public void addToSongList(ArrayList<Song> songList) {
|
||||
this.songList.addAll(songList);
|
||||
}
|
||||
|
||||
public Map<Integer, Song> getCatalogue() {
|
||||
|
||||
Reference in New Issue
Block a user