mirror of
https://github.com/antebudimir/tempus.git
synced 2026-01-01 18:03:33 +00:00
Change PlaylistChooserDialog\PlaylistEditorDialog to require ArrayList of Songs
This allows for being able to provide an entire Album's worth of songs in one API call.
This commit is contained in:
parent
9cf62c8c0c
commit
bfdeb0658b
5 changed files with 25 additions and 20 deletions
|
|
@ -11,6 +11,7 @@ import androidx.lifecycle.MutableLiveData;
|
|||
import com.cappielloantonio.tempo.repository.PlaylistRepository;
|
||||
import com.cappielloantonio.tempo.subsonic.models.Child;
|
||||
import com.cappielloantonio.tempo.subsonic.models.Playlist;
|
||||
import com.google.common.collect.Lists;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
|
|
@ -20,7 +21,7 @@ public class PlaylistChooserViewModel extends AndroidViewModel {
|
|||
private final PlaylistRepository playlistRepository;
|
||||
|
||||
private final MutableLiveData<List<Playlist>> playlists = new MutableLiveData<>(null);
|
||||
private Child toAdd;
|
||||
private ArrayList<Child> toAdd;
|
||||
|
||||
public PlaylistChooserViewModel(@NonNull Application application) {
|
||||
super(application);
|
||||
|
|
@ -33,15 +34,15 @@ public class PlaylistChooserViewModel extends AndroidViewModel {
|
|||
return playlists;
|
||||
}
|
||||
|
||||
public void addSongToPlaylist(String playlistId) {
|
||||
playlistRepository.addSongToPlaylist(playlistId, new ArrayList(Collections.singletonList(toAdd.getId())));
|
||||
public void addSongsToPlaylist(String playlistId) {
|
||||
playlistRepository.addSongToPlaylist(playlistId, new ArrayList<>(Lists.transform(toAdd, Child::getId)));
|
||||
}
|
||||
|
||||
public void setSongToAdd(Child song) {
|
||||
toAdd = song;
|
||||
public void setSongsToAdd(ArrayList<Child> songs) {
|
||||
toAdd = songs;
|
||||
}
|
||||
|
||||
public Child getSongToAdd() {
|
||||
public ArrayList<Child> getSongsToAdd() {
|
||||
return toAdd;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -12,6 +12,7 @@ import com.cappielloantonio.tempo.repository.SharingRepository;
|
|||
import com.cappielloantonio.tempo.subsonic.models.Child;
|
||||
import com.cappielloantonio.tempo.subsonic.models.Playlist;
|
||||
import com.cappielloantonio.tempo.subsonic.models.Share;
|
||||
import com.google.common.collect.Lists;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
|
|
@ -24,7 +25,7 @@ public class PlaylistEditorViewModel extends AndroidViewModel {
|
|||
private final PlaylistRepository playlistRepository;
|
||||
private final SharingRepository sharingRepository;
|
||||
|
||||
private Child toAdd;
|
||||
private ArrayList<Child> toAdd;
|
||||
private Playlist toEdit;
|
||||
|
||||
private MutableLiveData<List<Child>> songLiveList = new MutableLiveData<>();
|
||||
|
|
@ -37,7 +38,7 @@ public class PlaylistEditorViewModel extends AndroidViewModel {
|
|||
}
|
||||
|
||||
public void createPlaylist(String name) {
|
||||
playlistRepository.createPlaylist(null, name, new ArrayList(Collections.singletonList(toAdd.getId())));
|
||||
playlistRepository.createPlaylist(null, name, new ArrayList(Lists.transform(toAdd, Child::getId)));
|
||||
}
|
||||
|
||||
public void updatePlaylist(String name) {
|
||||
|
|
@ -48,12 +49,12 @@ public class PlaylistEditorViewModel extends AndroidViewModel {
|
|||
if (toEdit != null) playlistRepository.deletePlaylist(toEdit.getId());
|
||||
}
|
||||
|
||||
public Child getSongToAdd() {
|
||||
return toAdd;
|
||||
public void setSongsToAdd(ArrayList<Child> songs) {
|
||||
toAdd = songs;
|
||||
}
|
||||
|
||||
public void setSongToAdd(Child song) {
|
||||
this.toAdd = song;
|
||||
public ArrayList<Child> getSongsToAdd() {
|
||||
return toAdd;
|
||||
}
|
||||
|
||||
public Playlist getPlaylistToEdit() {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue