From 22cd1a8e22195496bd6012ae9426ddcf64c99623 Mon Sep 17 00:00:00 2001 From: gdlbo <41114720+gdlbo@users.noreply.github.com> Date: Sat, 6 May 2023 12:24:37 +0300 Subject: [PATCH] some audio code cleanup --- .../music/cache/helpers/TracklistHelper.java | 24 ++++++++++--------- .../cache/injectors/PlaylistInjector.java | 3 +-- .../cache/injectors/ShuffleInjector.java | 2 +- 3 files changed, 15 insertions(+), 14 deletions(-) diff --git a/app/src/main/java/ru/vtosters/lite/music/cache/helpers/TracklistHelper.java b/app/src/main/java/ru/vtosters/lite/music/cache/helpers/TracklistHelper.java index ff6869a48..e675248aa 100644 --- a/app/src/main/java/ru/vtosters/lite/music/cache/helpers/TracklistHelper.java +++ b/app/src/main/java/ru/vtosters/lite/music/cache/helpers/TracklistHelper.java @@ -15,6 +15,9 @@ import java.util.ArrayList; import java.util.List; public class TracklistHelper { + public static List getMyCachedMusicTracks() { + return getTracksWithThumbnails(TracklistHelper.getTracks()); + } public static List getTracks() { return CacheDatabaseDelegate.getTracks(); @@ -51,19 +54,18 @@ public class TracklistHelper { return arr; } - public static List getTracksWithThumbnails() { - ArrayList tracks = new ArrayList<>(); - JSONArray cache = TracklistHelper.tracksToJsons(TracklistHelper.getTracks()); - - try { - for (int i = 0; i < cache.length(); i++) { - tracks.add(new MusicTrack(cache.getJSONObject(i))); + public static List getTracksWithThumbnails(List list) { + List tracks = new ArrayList<>(); + for (MusicTrack track : list) { + var json = track.J(); + var folder = FileCacheImplementation.getThumbnailsFolder(LibVKXClient.asId(track)); + try { + addCachedThumbnails(json, folder); + } catch (JSONException | MalformedURLException e) { + Log.d("TracklistHelper", e.getMessage()); } - } catch (JSONException e) { - tracks = (ArrayList) TracklistHelper.getTracks(); - e.printStackTrace(); + tracks.add(new MusicTrack(json)); } - return tracks; } diff --git a/app/src/main/java/ru/vtosters/lite/music/cache/injectors/PlaylistInjector.java b/app/src/main/java/ru/vtosters/lite/music/cache/injectors/PlaylistInjector.java index 937f43cdb..a41c83e0c 100644 --- a/app/src/main/java/ru/vtosters/lite/music/cache/injectors/PlaylistInjector.java +++ b/app/src/main/java/ru/vtosters/lite/music/cache/injectors/PlaylistInjector.java @@ -9,7 +9,6 @@ import com.vk.dto.music.MusicTrack; import com.vk.dto.music.Playlist; import io.reactivex.Observable; import io.reactivex.ObservableOnSubscribe; -import org.json.JSONArray; import org.json.JSONException; import org.json.JSONObject; import ru.vtosters.lite.downloaders.AudioDownloader; @@ -84,7 +83,7 @@ public class PlaylistInjector { } if (isVirtualPlaylist) { - response.c = (ArrayList) TracklistHelper.getTracksWithThumbnails(); + response.c = (ArrayList) TracklistHelper.getMyCachedMusicTracks(); response.b = PlaylistHelper.createCachedPlaylistMetadata(); } else { response.c = (ArrayList) TracklistHelper.getTracks(requestArgs.get("owner_id")); diff --git a/app/src/main/java/ru/vtosters/lite/music/cache/injectors/ShuffleInjector.java b/app/src/main/java/ru/vtosters/lite/music/cache/injectors/ShuffleInjector.java index c85e4efe5..1460876c5 100644 --- a/app/src/main/java/ru/vtosters/lite/music/cache/injectors/ShuffleInjector.java +++ b/app/src/main/java/ru/vtosters/lite/music/cache/injectors/ShuffleInjector.java @@ -18,7 +18,7 @@ public class ShuffleInjector { } private static List getShuffledList() { - List shuffled = TracklistHelper.getTracksWithThumbnails(); + List shuffled = TracklistHelper.getMyCachedMusicTracks(); Collections.shuffle(shuffled); return shuffled; }