Implementation of playlist catalog recovery

This commit is contained in:
CappielloAntonio 2021-07-30 14:15:46 +02:00
parent 98ffec9b72
commit 95bcbb0f61
4 changed files with 45 additions and 24 deletions

View file

@ -81,13 +81,4 @@ public class AlbumCatalogueViewModel extends AndroidViewModel {
}
});
}
public String getQuery() {
return query;
}
public void setQuery(String query) {
this.query = query;
}
}

View file

@ -31,7 +31,6 @@ public class ArtistCatalogueViewModel extends AndroidViewModel {
private ArtistRepository artistRepository;
private String query = "";
private int page = 0;
public ArtistCatalogueViewModel(@NonNull Application application) {
super(application);
@ -67,12 +66,4 @@ public class ArtistCatalogueViewModel extends AndroidViewModel {
}
});
}
public String getQuery() {
return query;
}
public void setQuery(String query) {
this.query = query;
}
}

View file

@ -1,20 +1,34 @@
package com.cappielloantonio.play.viewmodel;
import android.app.Application;
import android.content.Context;
import androidx.annotation.NonNull;
import androidx.lifecycle.AndroidViewModel;
import androidx.lifecycle.LiveData;
import androidx.lifecycle.MutableLiveData;
import com.cappielloantonio.play.App;
import com.cappielloantonio.play.model.Artist;
import com.cappielloantonio.play.model.Playlist;
import com.cappielloantonio.play.repository.PlaylistRepository;
import com.cappielloantonio.play.subsonic.models.ArtistID3;
import com.cappielloantonio.play.subsonic.models.IndexID3;
import com.cappielloantonio.play.subsonic.models.ResponseStatus;
import com.cappielloantonio.play.subsonic.models.SubsonicResponse;
import com.cappielloantonio.play.util.MappingUtil;
import java.util.ArrayList;
import java.util.List;
public class PlaylistCatalogueViewModel extends AndroidViewModel {
private PlaylistRepository playlistRepository;
import retrofit2.Call;
import retrofit2.Callback;
private LiveData<List<Playlist>> playlistList;
public class PlaylistCatalogueViewModel extends AndroidViewModel {
private MutableLiveData<List<Playlist>> playlists = new MutableLiveData<>(new ArrayList<>());
private PlaylistRepository playlistRepository;
private String query = "";
public PlaylistCatalogueViewModel(@NonNull Application application) {
super(application);
@ -23,7 +37,25 @@ public class PlaylistCatalogueViewModel extends AndroidViewModel {
}
public LiveData<List<Playlist>> getPlaylistList() {
// playlistList = playlistRepository.getListLivePlaylists();
return playlistList;
return playlists;
}
public void loadPlaylists(Context context) {
App.getSubsonicClientInstance(context, false)
.getPlaylistClient()
.getPlaylists()
.enqueue(new Callback<SubsonicResponse>() {
@Override
public void onResponse(Call<SubsonicResponse> call, retrofit2.Response<SubsonicResponse> response) {
if (response.body().getStatus().getValue().equals(ResponseStatus.OK)) {
playlists.setValue(MappingUtil.mapPlaylist(response.body().getPlaylists().getPlaylists()));
}
}
@Override
public void onFailure(Call<SubsonicResponse> call, Throwable t) {
}
});
}
}