In ViewModels passed the LifecycleOwner instead of the Activity

This commit is contained in:
CappielloAntonio 2022-01-02 16:19:16 +01:00
parent d2ad0188b7
commit 134d4e33e5
7 changed files with 53 additions and 45 deletions

View file

@ -5,6 +5,7 @@ import android.app.Application;
import androidx.annotation.NonNull;
import androidx.fragment.app.FragmentActivity;
import androidx.lifecycle.AndroidViewModel;
import androidx.lifecycle.LifecycleOwner;
import androidx.lifecycle.LiveData;
import androidx.lifecycle.MutableLiveData;
@ -36,9 +37,9 @@ public class AlbumPageViewModel extends AndroidViewModel {
downloadRepository = new DownloadRepository(application);
}
public LiveData<List<Song>> getAlbumSongLiveList(FragmentActivity activity) {
public LiveData<List<Song>> getAlbumSongLiveList(LifecycleOwner owner) {
if (isOffline) {
downloadRepository.getLiveDownloadFromAlbum(album.getId()).observe(activity, downloads -> songLiveList.postValue(MappingUtil.mapDownloadToSong(downloads)));
downloadRepository.getLiveDownloadFromAlbum(album.getId()).observe(owner, downloads -> songLiveList.postValue(MappingUtil.mapDownloadToSong(downloads)));
} else {
songLiveList = albumRepository.getAlbumTracks(album.getId());
}