diff --git a/.idea/misc.xml b/.idea/misc.xml
index 52bfddb8..dc6cacb8 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -8,6 +8,7 @@
+
@@ -40,7 +41,7 @@
-
+
diff --git a/app/src/main/java/com/cappielloantonio/play/repository/ArtistRepository.java b/app/src/main/java/com/cappielloantonio/play/repository/ArtistRepository.java
index f44ae902..2eac6e7e 100644
--- a/app/src/main/java/com/cappielloantonio/play/repository/ArtistRepository.java
+++ b/app/src/main/java/com/cappielloantonio/play/repository/ArtistRepository.java
@@ -31,7 +31,7 @@ public class ArtistRepository {
}
public MutableLiveData> getStarredArtists() {
- MutableLiveData> starredArtists = new MutableLiveData<>(new ArrayList<>());
+ MutableLiveData> starredArtists = new MutableLiveData<>();
App.getSubsonicClientInstance(application, false)
.getAlbumSongListClient()
@@ -54,7 +54,7 @@ public class ArtistRepository {
}
public MutableLiveData> getArtists(boolean random, int size) {
- MutableLiveData> listLiveArtists = new MutableLiveData<>(new ArrayList<>());
+ MutableLiveData> listLiveArtists = new MutableLiveData<>();
App.getSubsonicClientInstance(application, false)
.getBrowsingClient()
@@ -249,7 +249,7 @@ public class ArtistRepository {
}
public MutableLiveData> getArtistRandomSong(FragmentActivity fragmentActivity, Artist artist, int count) {
- MutableLiveData> randomSongs = new MutableLiveData<>(new ArrayList());
+ MutableLiveData> randomSongs = new MutableLiveData<>();
App.getSubsonicClientInstance(application, false)
.getBrowsingClient()
@@ -266,6 +266,7 @@ public class ArtistRepository {
for (int index = 0; index < albums.size(); index++) {
albumRepository.getAlbumTracks(albums.get(index).getId()).observe(fragmentActivity, songs -> {
ArrayList liveSongs = randomSongs.getValue();
+ if(liveSongs == null) liveSongs = new ArrayList<>();
Collections.shuffle(liveSongs);
liveSongs.addAll(songs);
randomSongs.setValue(liveSongs);
@@ -309,6 +310,7 @@ public class ArtistRepository {
private void addToMutableLiveData(MutableLiveData> liveData, Artist artist) {
List liveArtists = liveData.getValue();
+ if(liveArtists == null) liveArtists = new ArrayList<>();
liveArtists.add(artist);
liveData.setValue(liveArtists);
}
diff --git a/app/src/main/java/com/cappielloantonio/play/repository/DownloadRepository.java b/app/src/main/java/com/cappielloantonio/play/repository/DownloadRepository.java
index d841cb10..e5989448 100644
--- a/app/src/main/java/com/cappielloantonio/play/repository/DownloadRepository.java
+++ b/app/src/main/java/com/cappielloantonio/play/repository/DownloadRepository.java
@@ -18,7 +18,6 @@ public class DownloadRepository {
private static final String TAG = "QueueRepository";
private DownloadDao downloadDao;
- private MutableLiveData> listLiveDownload = new MutableLiveData<>(new ArrayList<>());
public DownloadRepository(Application application) {
AppDatabase database = AppDatabase.getInstance(application);
diff --git a/app/src/main/java/com/cappielloantonio/play/repository/PlaylistRepository.java b/app/src/main/java/com/cappielloantonio/play/repository/PlaylistRepository.java
index 789bb4fb..2d756232 100644
--- a/app/src/main/java/com/cappielloantonio/play/repository/PlaylistRepository.java
+++ b/app/src/main/java/com/cappielloantonio/play/repository/PlaylistRepository.java
@@ -27,7 +27,7 @@ public class PlaylistRepository {
}
public MutableLiveData> getPlaylists(boolean random, int size) {
- MutableLiveData> listLivePlaylists = new MutableLiveData<>(new ArrayList<>());
+ MutableLiveData> listLivePlaylists = new MutableLiveData<>();
App.getSubsonicClientInstance(application, false)
.getPlaylistClient()
@@ -56,7 +56,7 @@ public class PlaylistRepository {
}
public MutableLiveData> getPlaylistSongs(String id) {
- MutableLiveData> listLivePlaylistSongs = new MutableLiveData<>(new ArrayList<>());
+ MutableLiveData> listLivePlaylistSongs = new MutableLiveData<>();
App.getSubsonicClientInstance(application, false)
.getPlaylistClient()
diff --git a/app/src/main/java/com/cappielloantonio/play/repository/SearchingRepository.java b/app/src/main/java/com/cappielloantonio/play/repository/SearchingRepository.java
index 85738bf5..83e56a54 100644
--- a/app/src/main/java/com/cappielloantonio/play/repository/SearchingRepository.java
+++ b/app/src/main/java/com/cappielloantonio/play/repository/SearchingRepository.java
@@ -111,7 +111,7 @@ public class SearchingRepository {
}
public MutableLiveData> getSuggestions(String query) {
- MutableLiveData> suggestions = new MutableLiveData<>(new ArrayList());
+ MutableLiveData> suggestions = new MutableLiveData<>();
App.getSubsonicClientInstance(application, false)
.getSearchingClient()
diff --git a/app/src/main/java/com/cappielloantonio/play/repository/SongRepository.java b/app/src/main/java/com/cappielloantonio/play/repository/SongRepository.java
index b698e6be..92fc9e9f 100644
--- a/app/src/main/java/com/cappielloantonio/play/repository/SongRepository.java
+++ b/app/src/main/java/com/cappielloantonio/play/repository/SongRepository.java
@@ -87,7 +87,7 @@ public class SongRepository {
}
public MutableLiveData> getRandomSample(int number, Integer fromYear, Integer toYear) {
- MutableLiveData> randomSongsSample = new MutableLiveData<>(new ArrayList<>());
+ MutableLiveData> randomSongsSample = new MutableLiveData<>();
App.getSubsonicClientInstance(application, false)
.getAlbumSongListClient()
@@ -180,7 +180,7 @@ public class SongRepository {
}
public MutableLiveData> getSongsByGenre(String id) {
- MutableLiveData> songsByGenre = new MutableLiveData<>(new ArrayList<>());
+ MutableLiveData> songsByGenre = new MutableLiveData<>();
App.getSubsonicClientInstance(application, false)
.getAlbumSongListClient()
@@ -192,6 +192,7 @@ public class SongRepository {
List newSongs = new ArrayList<>(MappingUtil.mapSong(response.body().getSongsByGenre().getSongs()));
List songs = songsByGenre.getValue();
+ if(songs == null) songs = new ArrayList<>();
songs.addAll(newSongs);
Collections.shuffle(songs);
@@ -212,10 +213,9 @@ public class SongRepository {
}
public MutableLiveData> getSongsByGenres(ArrayList genresId) {
- MutableLiveData> songsByGenre = new MutableLiveData<>(new ArrayList<>());
+ MutableLiveData> songsByGenre = new MutableLiveData<>();
for (String id : genresId)
-
App.getSubsonicClientInstance(application, false)
.getAlbumSongListClient()
.getSongsByGenre(id, 500, 0)
diff --git a/app/src/main/java/com/cappielloantonio/play/viewmodel/AlbumCatalogueViewModel.java b/app/src/main/java/com/cappielloantonio/play/viewmodel/AlbumCatalogueViewModel.java
index bf3a9d4b..a7c84e16 100644
--- a/app/src/main/java/com/cappielloantonio/play/viewmodel/AlbumCatalogueViewModel.java
+++ b/app/src/main/java/com/cappielloantonio/play/viewmodel/AlbumCatalogueViewModel.java
@@ -45,6 +45,7 @@ public class AlbumCatalogueViewModel extends AndroidViewModel {
@Override
public void onLoadMedia(List> media) {
List liveAlbum = albumList.getValue();
+ if(liveAlbum == null) liveAlbum = new ArrayList<>();
liveAlbum.addAll(MappingUtil.mapAlbum((List) media));
albumList.setValue(liveAlbum);