Sync libraries, artist, album, genre, song, playlist, playlist song

This commit is contained in:
CappielloAntonio 2021-07-26 19:03:51 +02:00
parent 3a91ee68db
commit 304a5f078a
30 changed files with 716 additions and 1699 deletions

View file

@ -1,7 +1,13 @@
package com.cappielloantonio.play.subsonic;
import com.cappielloantonio.play.subsonic.api.albumsonglist.AlbumSongListClient;
import com.cappielloantonio.play.subsonic.api.browsing.BrowsingClient;
import com.cappielloantonio.play.subsonic.api.mediaretrieval.MediaRetrievalClient;
import com.cappielloantonio.play.subsonic.api.playlist.PlaylistClient;
import com.cappielloantonio.play.subsonic.api.searching.SearchingClient;
import com.cappielloantonio.play.subsonic.api.system.SystemClient;
import com.cappielloantonio.play.subsonic.base.Version;
import com.cappielloantonio.play.subsonic.models.Playlist;
import java.util.HashMap;
import java.util.Map;
@ -14,6 +20,11 @@ public class Subsonic {
private Version apiVersion = API_MAX_VERSION;
private SystemClient systemClient;
private BrowsingClient browsingClient;
private MediaRetrievalClient mediaRetrievalClient;
private PlaylistClient playlistClient;
private SearchingClient searchingClient;
private AlbumSongListClient albumSongListClient;
public Subsonic(SubsonicPreferences preferences) {
this.preferences = preferences;
@ -34,6 +45,41 @@ public class Subsonic {
return systemClient;
}
public BrowsingClient getBrowsingClient() {
if (browsingClient == null) {
browsingClient = new BrowsingClient(this);
}
return browsingClient;
}
public MediaRetrievalClient getMediaRetrievalClient() {
if (mediaRetrievalClient == null) {
mediaRetrievalClient = new MediaRetrievalClient(this);
}
return mediaRetrievalClient;
}
public PlaylistClient getPlaylistClient() {
if (playlistClient == null) {
playlistClient = new PlaylistClient(this);
}
return playlistClient;
}
public SearchingClient getSearchingClient() {
if (searchingClient == null) {
searchingClient = new SearchingClient(this);
}
return searchingClient;
}
public AlbumSongListClient getAlbumSongListClient() {
if (albumSongListClient == null) {
albumSongListClient = new AlbumSongListClient(this);
}
return albumSongListClient;
}
public String getUrl() {
return preferences.getServerUrl() + "/rest/";
}