From 864488510c66a4a533f888f87578ed94f9bcf4cd Mon Sep 17 00:00:00 2001 From: Yahor Berdnikau Date: Thu, 17 Aug 2017 22:38:23 +0200 Subject: [PATCH] Use new subsonic api star request. Signed-off-by: Yahor Berdnikau --- .../ultrasonic/service/RESTMusicService.java | 49 ++++++------------- .../org/moire/ultrasonic/view/AlbumView.java | 2 +- 2 files changed, 15 insertions(+), 36 deletions(-) diff --git a/ultrasonic/src/main/java/org/moire/ultrasonic/service/RESTMusicService.java b/ultrasonic/src/main/java/org/moire/ultrasonic/service/RESTMusicService.java index 4d31685d..5dc04473 100644 --- a/ultrasonic/src/main/java/org/moire/ultrasonic/service/RESTMusicService.java +++ b/ultrasonic/src/main/java/org/moire/ultrasonic/service/RESTMusicService.java @@ -317,42 +317,21 @@ public class RESTMusicService implements MusicService return String.format(Locale.US, "indexes-%d.ser", Math.abs(s.hashCode())); } - @Override - public void star(String id, String albumId, String artistId, Context context, ProgressListener progressListener) throws Exception - { - checkServerVersion(context, "1.8", "Starring not supported."); + @Override + public void star(String id, + String albumId, + String artistId, + Context context, + ProgressListener progressListener) throws Exception { + Long apiId = id == null ? null : Long.valueOf(id); + Long apiAlbumId = albumId == null ? null : Long.valueOf(albumId); + Long apiArtistId = artistId == null ? null : Long.valueOf(artistId); - List parameterNames = new LinkedList(); - List parameterValues = new LinkedList(); - - if (id != null) - { - parameterNames.add("id"); - parameterValues.add(id); - } - - if (albumId != null) - { - parameterNames.add("albumId"); - parameterValues.add(albumId); - } - - if (artistId != null) - { - parameterNames.add("artistId"); - parameterValues.add(artistId); - } - - Reader reader = getReader(context, progressListener, "star", null, parameterNames, parameterValues); - try - { - new ErrorParser(context).parse(reader); - } - finally - { - Util.close(reader); - } - } + updateProgressListener(progressListener, R.string.parser_reading); + Response response = subsonicAPIClient.getApi() + .star(apiId, apiAlbumId, apiArtistId).execute(); + checkResponseSuccessful(response); + } @Override public void unstar(String id, String albumId, String artistId, Context context, ProgressListener progressListener) throws Exception diff --git a/ultrasonic/src/main/java/org/moire/ultrasonic/view/AlbumView.java b/ultrasonic/src/main/java/org/moire/ultrasonic/view/AlbumView.java index 2b2a2434..23eb0074 100644 --- a/ultrasonic/src/main/java/org/moire/ultrasonic/view/AlbumView.java +++ b/ultrasonic/src/main/java/org/moire/ultrasonic/view/AlbumView.java @@ -153,12 +153,12 @@ public class AlbumView extends UpdateView album.setStarred(false); } + final MusicService musicService = MusicServiceFactory.getMusicService(view.getContext()); new Thread(new Runnable() { @Override public void run() { - MusicService musicService = MusicServiceFactory.getMusicService(null); boolean useId3 = Util.getShouldUseId3Tags(getContext()); try