diff --git a/app/src/main/java/com/cappielloantonio/play/adapter/AlbumAdapter.java b/app/src/main/java/com/cappielloantonio/play/adapter/AlbumAdapter.java index 090a97f3..f151a95b 100644 --- a/app/src/main/java/com/cappielloantonio/play/adapter/AlbumAdapter.java +++ b/app/src/main/java/com/cappielloantonio/play/adapter/AlbumAdapter.java @@ -2,9 +2,7 @@ package com.cappielloantonio.play.adapter; import android.content.Context; import android.os.Bundle; -import android.text.Html; import android.view.LayoutInflater; -import android.view.RoundedCorner; import android.view.View; import android.view.ViewGroup; import android.widget.ImageView; diff --git a/app/src/main/java/com/cappielloantonio/play/adapter/AlbumArtistPageOrSimilarAdapter.java b/app/src/main/java/com/cappielloantonio/play/adapter/AlbumArtistPageOrSimilarAdapter.java index 19510030..525041be 100644 --- a/app/src/main/java/com/cappielloantonio/play/adapter/AlbumArtistPageOrSimilarAdapter.java +++ b/app/src/main/java/com/cappielloantonio/play/adapter/AlbumArtistPageOrSimilarAdapter.java @@ -2,7 +2,6 @@ package com.cappielloantonio.play.adapter; import android.content.Context; import android.os.Bundle; -import android.text.Html; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; diff --git a/app/src/main/java/com/cappielloantonio/play/adapter/AlbumCatalogueAdapter.java b/app/src/main/java/com/cappielloantonio/play/adapter/AlbumCatalogueAdapter.java index 0f4720b4..350a47cf 100644 --- a/app/src/main/java/com/cappielloantonio/play/adapter/AlbumCatalogueAdapter.java +++ b/app/src/main/java/com/cappielloantonio/play/adapter/AlbumCatalogueAdapter.java @@ -2,7 +2,6 @@ package com.cappielloantonio.play.adapter; import android.content.Context; import android.os.Bundle; -import android.text.Html; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; diff --git a/app/src/main/java/com/cappielloantonio/play/adapter/ArtistAdapter.java b/app/src/main/java/com/cappielloantonio/play/adapter/ArtistAdapter.java index 3e2a2ef0..dc40c6ff 100644 --- a/app/src/main/java/com/cappielloantonio/play/adapter/ArtistAdapter.java +++ b/app/src/main/java/com/cappielloantonio/play/adapter/ArtistAdapter.java @@ -2,7 +2,6 @@ package com.cappielloantonio.play.adapter; import android.content.Context; import android.os.Bundle; -import android.text.Html; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; diff --git a/app/src/main/java/com/cappielloantonio/play/adapter/ArtistCatalogueAdapter.java b/app/src/main/java/com/cappielloantonio/play/adapter/ArtistCatalogueAdapter.java index 1026cbd0..4fc166cf 100644 --- a/app/src/main/java/com/cappielloantonio/play/adapter/ArtistCatalogueAdapter.java +++ b/app/src/main/java/com/cappielloantonio/play/adapter/ArtistCatalogueAdapter.java @@ -2,7 +2,6 @@ package com.cappielloantonio.play.adapter; import android.content.Context; import android.os.Bundle; -import android.text.Html; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; diff --git a/app/src/main/java/com/cappielloantonio/play/adapter/ArtistHorizontalAdapter.java b/app/src/main/java/com/cappielloantonio/play/adapter/ArtistHorizontalAdapter.java index f1bd185d..f6bac81c 100644 --- a/app/src/main/java/com/cappielloantonio/play/adapter/ArtistHorizontalAdapter.java +++ b/app/src/main/java/com/cappielloantonio/play/adapter/ArtistHorizontalAdapter.java @@ -95,10 +95,7 @@ public class ArtistHorizontalAdapter extends RecyclerView.Adapter { - openMore(v); - }); - + more.setOnClickListener(this::openMore); artistName.setSelected(true); } diff --git a/app/src/main/java/com/cappielloantonio/play/adapter/ArtistSimilarAdapter.java b/app/src/main/java/com/cappielloantonio/play/adapter/ArtistSimilarAdapter.java index e1b02588..24a941d6 100644 --- a/app/src/main/java/com/cappielloantonio/play/adapter/ArtistSimilarAdapter.java +++ b/app/src/main/java/com/cappielloantonio/play/adapter/ArtistSimilarAdapter.java @@ -2,7 +2,6 @@ package com.cappielloantonio.play.adapter; import android.content.Context; import android.os.Bundle; -import android.text.Html; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; diff --git a/app/src/main/java/com/cappielloantonio/play/adapter/DiscoverSongAdapter.java b/app/src/main/java/com/cappielloantonio/play/adapter/DiscoverSongAdapter.java index 4a31c67a..0455c662 100644 --- a/app/src/main/java/com/cappielloantonio/play/adapter/DiscoverSongAdapter.java +++ b/app/src/main/java/com/cappielloantonio/play/adapter/DiscoverSongAdapter.java @@ -1,7 +1,6 @@ package com.cappielloantonio.play.adapter; import android.content.Context; -import android.text.Html; import android.util.Log; import android.view.LayoutInflater; import android.view.View; @@ -13,7 +12,6 @@ import android.widget.TextView; import androidx.annotation.NonNull; import androidx.recyclerview.widget.RecyclerView; -import com.bumptech.glide.load.resource.bitmap.RoundedCorners; import com.cappielloantonio.play.App; import com.cappielloantonio.play.R; import com.cappielloantonio.play.glide.CustomGlideRequest; diff --git a/app/src/main/java/com/cappielloantonio/play/adapter/GenreAdapter.java b/app/src/main/java/com/cappielloantonio/play/adapter/GenreAdapter.java index 912c2c54..ab49ed66 100644 --- a/app/src/main/java/com/cappielloantonio/play/adapter/GenreAdapter.java +++ b/app/src/main/java/com/cappielloantonio/play/adapter/GenreAdapter.java @@ -1,7 +1,6 @@ package com.cappielloantonio.play.adapter; import android.content.Context; -import android.text.Html; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; diff --git a/app/src/main/java/com/cappielloantonio/play/adapter/GenreCatalogueAdapter.java b/app/src/main/java/com/cappielloantonio/play/adapter/GenreCatalogueAdapter.java index a6500c5a..d4fab17b 100644 --- a/app/src/main/java/com/cappielloantonio/play/adapter/GenreCatalogueAdapter.java +++ b/app/src/main/java/com/cappielloantonio/play/adapter/GenreCatalogueAdapter.java @@ -1,7 +1,6 @@ package com.cappielloantonio.play.adapter; import android.content.Context; -import android.text.Html; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; diff --git a/app/src/main/java/com/cappielloantonio/play/adapter/PlayerSongQueueAdapter.java b/app/src/main/java/com/cappielloantonio/play/adapter/PlayerSongQueueAdapter.java index 0a4e8ed4..cc26ab4d 100644 --- a/app/src/main/java/com/cappielloantonio/play/adapter/PlayerSongQueueAdapter.java +++ b/app/src/main/java/com/cappielloantonio/play/adapter/PlayerSongQueueAdapter.java @@ -1,7 +1,6 @@ package com.cappielloantonio.play.adapter; import android.content.Context; -import android.text.Html; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; diff --git a/app/src/main/java/com/cappielloantonio/play/adapter/PlaylistCatalogueAdapter.java b/app/src/main/java/com/cappielloantonio/play/adapter/PlaylistCatalogueAdapter.java index 5ec003ec..b6f16f65 100644 --- a/app/src/main/java/com/cappielloantonio/play/adapter/PlaylistCatalogueAdapter.java +++ b/app/src/main/java/com/cappielloantonio/play/adapter/PlaylistCatalogueAdapter.java @@ -2,7 +2,6 @@ package com.cappielloantonio.play.adapter; import android.content.Context; import android.os.Bundle; -import android.text.Html; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; @@ -16,13 +15,10 @@ import androidx.annotation.NonNull; import androidx.navigation.Navigation; import androidx.recyclerview.widget.RecyclerView; -import com.bumptech.glide.load.resource.bitmap.RoundedCorners; import com.cappielloantonio.play.R; import com.cappielloantonio.play.glide.CustomGlideRequest; import com.cappielloantonio.play.model.Playlist; -import com.cappielloantonio.play.model.Song; import com.cappielloantonio.play.ui.activity.MainActivity; -import com.cappielloantonio.play.ui.fragment.dialog.PlaylistChooserDialog; import com.cappielloantonio.play.ui.fragment.dialog.PlaylistEditorDialog; import com.cappielloantonio.play.util.MusicUtil; diff --git a/app/src/main/java/com/cappielloantonio/play/adapter/PlaylistDialogSongHorizontalAdapter.java b/app/src/main/java/com/cappielloantonio/play/adapter/PlaylistDialogSongHorizontalAdapter.java index 7d367a43..90353bb5 100644 --- a/app/src/main/java/com/cappielloantonio/play/adapter/PlaylistDialogSongHorizontalAdapter.java +++ b/app/src/main/java/com/cappielloantonio/play/adapter/PlaylistDialogSongHorizontalAdapter.java @@ -1,7 +1,6 @@ package com.cappielloantonio.play.adapter; import android.content.Context; -import android.os.Bundle; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; @@ -9,20 +8,12 @@ import android.widget.ImageView; import android.widget.TextView; import androidx.annotation.NonNull; -import androidx.fragment.app.FragmentManager; -import androidx.navigation.Navigation; import androidx.recyclerview.widget.RecyclerView; import com.bumptech.glide.load.resource.bitmap.RoundedCorners; -import com.cappielloantonio.play.App; import com.cappielloantonio.play.R; import com.cappielloantonio.play.glide.CustomGlideRequest; -import com.cappielloantonio.play.model.Playlist; import com.cappielloantonio.play.model.Song; -import com.cappielloantonio.play.repository.QueueRepository; -import com.cappielloantonio.play.service.MusicPlayerRemote; -import com.cappielloantonio.play.ui.activity.MainActivity; -import com.cappielloantonio.play.util.DownloadUtil; import com.cappielloantonio.play.util.MusicUtil; import java.util.ArrayList; @@ -32,8 +23,8 @@ public class PlaylistDialogSongHorizontalAdapter extends RecyclerView.Adapter songs; - private LayoutInflater mInflater; - private Context context; + private final LayoutInflater mInflater; + private final Context context; public PlaylistDialogSongHorizontalAdapter(Context context) { this.context = context; @@ -81,7 +72,7 @@ public class PlaylistDialogSongHorizontalAdapter extends RecyclerView.Adapter { private static final String TAG = "ServerAdapter"; diff --git a/app/src/main/java/com/cappielloantonio/play/adapter/SongHorizontalAdapter.java b/app/src/main/java/com/cappielloantonio/play/adapter/SongHorizontalAdapter.java index b8b0f6fc..f26e38db 100644 --- a/app/src/main/java/com/cappielloantonio/play/adapter/SongHorizontalAdapter.java +++ b/app/src/main/java/com/cappielloantonio/play/adapter/SongHorizontalAdapter.java @@ -2,7 +2,6 @@ package com.cappielloantonio.play.adapter; import android.content.Context; import android.os.Bundle; -import android.text.Html; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; @@ -10,7 +9,6 @@ import android.widget.ImageView; import android.widget.TextView; import androidx.annotation.NonNull; -import androidx.fragment.app.FragmentManager; import androidx.navigation.Navigation; import androidx.recyclerview.widget.RecyclerView; @@ -68,15 +66,15 @@ public class SongHorizontalAdapter extends RecyclerView.Adapter genres; private List albums; - private List songs; private List similarArtists; private String id; @@ -222,9 +220,7 @@ public class Artist implements Parcelable { } protected Artist(Parcel in) { - this.genres = new ArrayList<>(); this.albums = new ArrayList<>(); - this.songs = new ArrayList<>(); this.id = in.readString(); this.name = in.readString(); this.primary = in.readString(); diff --git a/app/src/main/java/com/cappielloantonio/play/model/Genre.java b/app/src/main/java/com/cappielloantonio/play/model/Genre.java index 4de716ed..477754ab 100644 --- a/app/src/main/java/com/cappielloantonio/play/model/Genre.java +++ b/app/src/main/java/com/cappielloantonio/play/model/Genre.java @@ -22,14 +22,34 @@ public class Genre implements Parcelable { return id; } + public void setId(String id) { + this.id = id; + } + public String getName() { return name; } + public void setName(String name) { + this.name = name; + } + public int getSongCount() { return songCount; } + public void setSongCount(int songCount) { + this.songCount = songCount; + } + + public int getAlbumCount() { + return albumCount; + } + + public void setAlbumCount(int albumCount) { + this.albumCount = albumCount; + } + @Override public boolean equals(Object o) { if (this == o) return true; diff --git a/app/src/main/java/com/cappielloantonio/play/model/Queue.java b/app/src/main/java/com/cappielloantonio/play/model/Queue.java index 363f42d2..5245220a 100644 --- a/app/src/main/java/com/cappielloantonio/play/model/Queue.java +++ b/app/src/main/java/com/cappielloantonio/play/model/Queue.java @@ -1,13 +1,11 @@ package com.cappielloantonio.play.model; -import androidx.annotation.NonNull; import androidx.room.ColumnInfo; import androidx.room.Entity; import androidx.room.PrimaryKey; @Entity(tableName = "queue") public class Queue { - @NonNull @PrimaryKey @ColumnInfo(name = "track_order") private int trackOrder; diff --git a/app/src/main/java/com/cappielloantonio/play/model/Server.java b/app/src/main/java/com/cappielloantonio/play/model/Server.java index 26691b0d..8addd0fd 100644 --- a/app/src/main/java/com/cappielloantonio/play/model/Server.java +++ b/app/src/main/java/com/cappielloantonio/play/model/Server.java @@ -114,6 +114,7 @@ public class Server implements Parcelable { return serverId.hashCode(); } + @NonNull @Override public String toString() { return serverId; diff --git a/app/src/main/java/com/cappielloantonio/play/model/Song.java b/app/src/main/java/com/cappielloantonio/play/model/Song.java index 7bddf66d..1d150470 100644 --- a/app/src/main/java/com/cappielloantonio/play/model/Song.java +++ b/app/src/main/java/com/cappielloantonio/play/model/Song.java @@ -3,6 +3,8 @@ package com.cappielloantonio.play.model; import android.os.Parcel; import android.os.Parcelable; +import androidx.annotation.NonNull; + import com.cappielloantonio.play.subsonic.models.Child; import java.time.Instant; @@ -296,6 +298,7 @@ public class Song implements Parcelable { return id.hashCode(); } + @NonNull @Override public String toString() { return id; diff --git a/app/src/main/java/com/cappielloantonio/play/service/DownloadTracker.java b/app/src/main/java/com/cappielloantonio/play/service/DownloadTracker.java index 145c84c3..77e93c37 100644 --- a/app/src/main/java/com/cappielloantonio/play/service/DownloadTracker.java +++ b/app/src/main/java/com/cappielloantonio/play/service/DownloadTracker.java @@ -1,5 +1,7 @@ package com.cappielloantonio.play.service; +import static com.google.android.exoplayer2.util.Assertions.checkNotNull; + import android.content.Context; import android.net.Uri; @@ -7,7 +9,6 @@ import androidx.annotation.NonNull; import androidx.annotation.Nullable; import com.cappielloantonio.play.App; -import com.cappielloantonio.play.model.Album; import com.cappielloantonio.play.model.Song; import com.cappielloantonio.play.repository.DownloadRepository; import com.cappielloantonio.play.util.MappingUtil; @@ -29,8 +30,6 @@ import java.util.HashMap; import java.util.List; import java.util.concurrent.CopyOnWriteArraySet; -import static com.google.android.exoplayer2.util.Assertions.checkNotNull; - public class DownloadTracker { private static final String TAG = "DownloadTracker"; @@ -74,7 +73,7 @@ public class DownloadTracker { MediaItem mediaItem = MusicUtil.getMediaItemFromSong(song); @Nullable Download download = downloads.get(checkNotNull(mediaItem.playbackProperties).uri); - if(download != null && download.state != Download.STATE_FAILED) { + if (download != null && download.state != Download.STATE_FAILED) { return true; } } @@ -91,7 +90,7 @@ public class DownloadTracker { DownloadRepository downloadRepository = new DownloadRepository(App.getInstance()); for (Song song : songs) { - if(isDownloaded(song)) { + if (isDownloaded(song)) { downloadRepository.insert(MappingUtil.mapToDownload(song, playlistId, playlistName)); continue; } diff --git a/app/src/main/java/com/cappielloantonio/play/service/MusicService.java b/app/src/main/java/com/cappielloantonio/play/service/MusicService.java index d56d0430..2d548834 100644 --- a/app/src/main/java/com/cappielloantonio/play/service/MusicService.java +++ b/app/src/main/java/com/cappielloantonio/play/service/MusicService.java @@ -6,12 +6,8 @@ import static com.google.android.exoplayer2.Player.MEDIA_ITEM_TRANSITION_REASON_ import android.annotation.SuppressLint; import android.app.PendingIntent; import android.app.Service; -import android.content.BroadcastReceiver; import android.content.ComponentName; -import android.content.Context; import android.content.Intent; -import android.content.IntentFilter; -import android.media.AudioManager; import android.os.Binder; import android.os.Handler; import android.os.HandlerThread; @@ -32,7 +28,6 @@ import com.cappielloantonio.play.R; import com.cappielloantonio.play.broadcast.receiver.MediaButtonIntentReceiver; import com.cappielloantonio.play.interfaces.Playback; import com.cappielloantonio.play.model.Playlist; -import com.cappielloantonio.play.model.Queue; import com.cappielloantonio.play.model.Song; import com.cappielloantonio.play.repository.QueueRepository; import com.cappielloantonio.play.repository.SongRepository; diff --git a/app/src/main/java/com/cappielloantonio/play/subsonic/Subsonic.java b/app/src/main/java/com/cappielloantonio/play/subsonic/Subsonic.java index 1ab21b11..39b0c131 100644 --- a/app/src/main/java/com/cappielloantonio/play/subsonic/Subsonic.java +++ b/app/src/main/java/com/cappielloantonio/play/subsonic/Subsonic.java @@ -20,8 +20,8 @@ public class Subsonic { private final Context context; - private Version apiVersion = API_MAX_VERSION; - private SubsonicPreferences preferences; + private final Version apiVersion = API_MAX_VERSION; + private final SubsonicPreferences preferences; private SystemClient systemClient; private BrowsingClient browsingClient; diff --git a/app/src/main/java/com/cappielloantonio/play/subsonic/base/Version.java b/app/src/main/java/com/cappielloantonio/play/subsonic/base/Version.java index 45798a55..6bb1d19c 100644 --- a/app/src/main/java/com/cappielloantonio/play/subsonic/base/Version.java +++ b/app/src/main/java/com/cappielloantonio/play/subsonic/base/Version.java @@ -1,5 +1,7 @@ package com.cappielloantonio.play.subsonic.base; +import androidx.annotation.NonNull; + public class Version implements Comparable { private static final String VERSION_PATTERN = "[0-9]+(\\.[0-9]+)*"; @@ -49,6 +51,7 @@ public class Version implements Comparable { return 0; } + @NonNull @Override public String toString() { return versionString; diff --git a/app/src/main/java/com/cappielloantonio/play/subsonic/models/AlbumList.java b/app/src/main/java/com/cappielloantonio/play/subsonic/models/AlbumList.java index 2f5a2945..64066da0 100644 --- a/app/src/main/java/com/cappielloantonio/play/subsonic/models/AlbumList.java +++ b/app/src/main/java/com/cappielloantonio/play/subsonic/models/AlbumList.java @@ -28,7 +28,7 @@ public class AlbumList { */ public List getAlbums() { if (albums == null) { - albums = new ArrayList(); + albums = new ArrayList<>(); } return this.albums; } diff --git a/app/src/main/java/com/cappielloantonio/play/subsonic/models/ArtistInfo.java b/app/src/main/java/com/cappielloantonio/play/subsonic/models/ArtistInfo.java index b162f721..b16fc665 100644 --- a/app/src/main/java/com/cappielloantonio/play/subsonic/models/ArtistInfo.java +++ b/app/src/main/java/com/cappielloantonio/play/subsonic/models/ArtistInfo.java @@ -28,7 +28,7 @@ public class ArtistInfo extends ArtistInfoBase { */ public List getSimilarArtists() { if (similarArtists == null) { - similarArtists = new ArrayList(); + similarArtists = new ArrayList<>(); } return this.similarArtists; } diff --git a/app/src/main/java/com/cappielloantonio/play/subsonic/models/ArtistInfo2.java b/app/src/main/java/com/cappielloantonio/play/subsonic/models/ArtistInfo2.java index b7f88ef8..bf423ceb 100644 --- a/app/src/main/java/com/cappielloantonio/play/subsonic/models/ArtistInfo2.java +++ b/app/src/main/java/com/cappielloantonio/play/subsonic/models/ArtistInfo2.java @@ -1,7 +1,6 @@ package com.cappielloantonio.play.subsonic.models; import com.tickaroo.tikxml.annotation.Element; -import com.tickaroo.tikxml.annotation.ElementNameMatcher; import com.tickaroo.tikxml.annotation.Xml; import java.util.ArrayList; diff --git a/app/src/main/java/com/cappielloantonio/play/subsonic/models/Bookmarks.java b/app/src/main/java/com/cappielloantonio/play/subsonic/models/Bookmarks.java index d259e43e..a2015d90 100644 --- a/app/src/main/java/com/cappielloantonio/play/subsonic/models/Bookmarks.java +++ b/app/src/main/java/com/cappielloantonio/play/subsonic/models/Bookmarks.java @@ -28,7 +28,7 @@ public class Bookmarks { */ public List getBookmarks() { if (bookmarks == null) { - bookmarks = new ArrayList(); + bookmarks = new ArrayList<>(); } return this.bookmarks; } diff --git a/app/src/main/java/com/cappielloantonio/play/subsonic/models/ChatMessages.java b/app/src/main/java/com/cappielloantonio/play/subsonic/models/ChatMessages.java index 953c822a..e962695d 100644 --- a/app/src/main/java/com/cappielloantonio/play/subsonic/models/ChatMessages.java +++ b/app/src/main/java/com/cappielloantonio/play/subsonic/models/ChatMessages.java @@ -28,7 +28,7 @@ public class ChatMessages { */ public List getChatMessages() { if (chatMessages == null) { - chatMessages = new ArrayList(); + chatMessages = new ArrayList<>(); } return this.chatMessages; } diff --git a/app/src/main/java/com/cappielloantonio/play/subsonic/models/Directory.java b/app/src/main/java/com/cappielloantonio/play/subsonic/models/Directory.java index 087852af..8b751702 100644 --- a/app/src/main/java/com/cappielloantonio/play/subsonic/models/Directory.java +++ b/app/src/main/java/com/cappielloantonio/play/subsonic/models/Directory.java @@ -36,7 +36,7 @@ public class Directory { */ public List getchildren() { if (children == null) { - children = new ArrayList(); + children = new ArrayList<>(); } return this.children; } diff --git a/app/src/main/java/com/cappielloantonio/play/subsonic/models/ErrorCode.java b/app/src/main/java/com/cappielloantonio/play/subsonic/models/ErrorCode.java index 035a5818..b2f187f6 100644 --- a/app/src/main/java/com/cappielloantonio/play/subsonic/models/ErrorCode.java +++ b/app/src/main/java/com/cappielloantonio/play/subsonic/models/ErrorCode.java @@ -11,7 +11,7 @@ public class ErrorCode { public static int TRIAL_PERIOD_OVER = 60; public static int DATA_NOT_FOUND = 70; - private int value; + private final int value; public ErrorCode(int value) { this.value = value; diff --git a/app/src/main/java/com/cappielloantonio/play/subsonic/models/Index.java b/app/src/main/java/com/cappielloantonio/play/subsonic/models/Index.java index ba7dcbbc..b5a9ebf0 100644 --- a/app/src/main/java/com/cappielloantonio/play/subsonic/models/Index.java +++ b/app/src/main/java/com/cappielloantonio/play/subsonic/models/Index.java @@ -29,7 +29,7 @@ public class Index { */ public List getArtists() { if (artists == null) { - artists = new ArrayList(); + artists = new ArrayList<>(); } return this.artists; } diff --git a/app/src/main/java/com/cappielloantonio/play/subsonic/models/Indexes.java b/app/src/main/java/com/cappielloantonio/play/subsonic/models/Indexes.java index 7ebdecc2..568396b7 100644 --- a/app/src/main/java/com/cappielloantonio/play/subsonic/models/Indexes.java +++ b/app/src/main/java/com/cappielloantonio/play/subsonic/models/Indexes.java @@ -32,7 +32,7 @@ public class Indexes { */ public List getShortcuts() { if (shortcuts == null) { - shortcuts = new ArrayList(); + shortcuts = new ArrayList<>(); } return this.shortcuts; } @@ -59,7 +59,7 @@ public class Indexes { */ public List getIndices() { if (indices == null) { - indices = new ArrayList(); + indices = new ArrayList<>(); } return this.indices; } @@ -86,7 +86,7 @@ public class Indexes { */ public List getchildren() { if (children == null) { - children = new ArrayList(); + children = new ArrayList<>(); } return this.children; } diff --git a/app/src/main/java/com/cappielloantonio/play/subsonic/models/InternetRadioStations.java b/app/src/main/java/com/cappielloantonio/play/subsonic/models/InternetRadioStations.java index 926810f2..adf9159c 100644 --- a/app/src/main/java/com/cappielloantonio/play/subsonic/models/InternetRadioStations.java +++ b/app/src/main/java/com/cappielloantonio/play/subsonic/models/InternetRadioStations.java @@ -28,7 +28,7 @@ public class InternetRadioStations { */ public List getInternetRadioStations() { if (internetRadioStations == null) { - internetRadioStations = new ArrayList(); + internetRadioStations = new ArrayList<>(); } return this.internetRadioStations; } diff --git a/app/src/main/java/com/cappielloantonio/play/subsonic/models/JukeboxPlaylist.java b/app/src/main/java/com/cappielloantonio/play/subsonic/models/JukeboxPlaylist.java index 005d7265..18c44b2c 100644 --- a/app/src/main/java/com/cappielloantonio/play/subsonic/models/JukeboxPlaylist.java +++ b/app/src/main/java/com/cappielloantonio/play/subsonic/models/JukeboxPlaylist.java @@ -28,7 +28,7 @@ public class JukeboxPlaylist extends JukeboxStatus { */ public List getEntries() { if (entries == null) { - entries = new ArrayList(); + entries = new ArrayList<>(); } return this.entries; } diff --git a/app/src/main/java/com/cappielloantonio/play/subsonic/models/NewestPodcasts.java b/app/src/main/java/com/cappielloantonio/play/subsonic/models/NewestPodcasts.java index 771eab93..47f82216 100644 --- a/app/src/main/java/com/cappielloantonio/play/subsonic/models/NewestPodcasts.java +++ b/app/src/main/java/com/cappielloantonio/play/subsonic/models/NewestPodcasts.java @@ -28,7 +28,7 @@ public class NewestPodcasts { */ public List getEpisodes() { if (episodes == null) { - episodes = new ArrayList(); + episodes = new ArrayList<>(); } return this.episodes; } diff --git a/app/src/main/java/com/cappielloantonio/play/subsonic/models/NowPlaying.java b/app/src/main/java/com/cappielloantonio/play/subsonic/models/NowPlaying.java index 803ac6a9..69dc7504 100644 --- a/app/src/main/java/com/cappielloantonio/play/subsonic/models/NowPlaying.java +++ b/app/src/main/java/com/cappielloantonio/play/subsonic/models/NowPlaying.java @@ -28,7 +28,7 @@ public class NowPlaying { */ public List getEntries() { if (entries == null) { - entries = new ArrayList(); + entries = new ArrayList<>(); } return this.entries; } diff --git a/app/src/main/java/com/cappielloantonio/play/subsonic/models/PlayQueue.java b/app/src/main/java/com/cappielloantonio/play/subsonic/models/PlayQueue.java index b8cd892b..09cc643b 100644 --- a/app/src/main/java/com/cappielloantonio/play/subsonic/models/PlayQueue.java +++ b/app/src/main/java/com/cappielloantonio/play/subsonic/models/PlayQueue.java @@ -34,7 +34,7 @@ public class PlayQueue { */ public List getEntries() { if (entries == null) { - entries = new ArrayList(); + entries = new ArrayList<>(); } return this.entries; } diff --git a/app/src/main/java/com/cappielloantonio/play/subsonic/models/PodcastChannel.java b/app/src/main/java/com/cappielloantonio/play/subsonic/models/PodcastChannel.java index f3d68c87..6af71073 100644 --- a/app/src/main/java/com/cappielloantonio/play/subsonic/models/PodcastChannel.java +++ b/app/src/main/java/com/cappielloantonio/play/subsonic/models/PodcastChannel.java @@ -36,7 +36,7 @@ public class PodcastChannel { */ public List getEpisodes() { if (episodes == null) { - episodes = new ArrayList(); + episodes = new ArrayList<>(); } return this.episodes; } diff --git a/app/src/main/java/com/cappielloantonio/play/subsonic/models/Podcasts.java b/app/src/main/java/com/cappielloantonio/play/subsonic/models/Podcasts.java index 9fc2e47c..cf9a67a3 100644 --- a/app/src/main/java/com/cappielloantonio/play/subsonic/models/Podcasts.java +++ b/app/src/main/java/com/cappielloantonio/play/subsonic/models/Podcasts.java @@ -28,7 +28,7 @@ public class Podcasts { */ public List getChannels() { if (channels == null) { - channels = new ArrayList(); + channels = new ArrayList<>(); } return this.channels; } diff --git a/app/src/main/java/com/cappielloantonio/play/subsonic/models/ResponseStatus.java b/app/src/main/java/com/cappielloantonio/play/subsonic/models/ResponseStatus.java index b0f67faf..a347a4b5 100644 --- a/app/src/main/java/com/cappielloantonio/play/subsonic/models/ResponseStatus.java +++ b/app/src/main/java/com/cappielloantonio/play/subsonic/models/ResponseStatus.java @@ -8,7 +8,7 @@ public class ResponseStatus { public static String OK = "ok"; public static String FAILED = "failed"; - private String value; + private final String value; public ResponseStatus(@Attribute String value) { this.value = value; diff --git a/app/src/main/java/com/cappielloantonio/play/subsonic/models/SearchResult.java b/app/src/main/java/com/cappielloantonio/play/subsonic/models/SearchResult.java index 88a14bb8..5528ea8c 100644 --- a/app/src/main/java/com/cappielloantonio/play/subsonic/models/SearchResult.java +++ b/app/src/main/java/com/cappielloantonio/play/subsonic/models/SearchResult.java @@ -30,7 +30,7 @@ public class SearchResult { */ public List getMatches() { if (matches == null) { - matches = new ArrayList(); + matches = new ArrayList<>(); } return this.matches; } diff --git a/app/src/main/java/com/cappielloantonio/play/subsonic/models/Share.java b/app/src/main/java/com/cappielloantonio/play/subsonic/models/Share.java index 6f879578..c0861d71 100644 --- a/app/src/main/java/com/cappielloantonio/play/subsonic/models/Share.java +++ b/app/src/main/java/com/cappielloantonio/play/subsonic/models/Share.java @@ -37,7 +37,7 @@ public class Share { */ public List getEntries() { if (entries == null) { - entries = new ArrayList(); + entries = new ArrayList<>(); } return this.entries; } diff --git a/app/src/main/java/com/cappielloantonio/play/subsonic/models/Shares.java b/app/src/main/java/com/cappielloantonio/play/subsonic/models/Shares.java index c17293e5..65ffc95b 100644 --- a/app/src/main/java/com/cappielloantonio/play/subsonic/models/Shares.java +++ b/app/src/main/java/com/cappielloantonio/play/subsonic/models/Shares.java @@ -28,7 +28,7 @@ public class Shares { */ public List getShares() { if (shares == null) { - shares = new ArrayList(); + shares = new ArrayList<>(); } return this.shares; } diff --git a/app/src/main/java/com/cappielloantonio/play/subsonic/models/SimilarArtistID3.java b/app/src/main/java/com/cappielloantonio/play/subsonic/models/SimilarArtistID3.java index 2939ceb4..85f58df3 100644 --- a/app/src/main/java/com/cappielloantonio/play/subsonic/models/SimilarArtistID3.java +++ b/app/src/main/java/com/cappielloantonio/play/subsonic/models/SimilarArtistID3.java @@ -2,9 +2,6 @@ package com.cappielloantonio.play.subsonic.models; import com.tickaroo.tikxml.annotation.Attribute; import com.tickaroo.tikxml.annotation.Xml; -import com.tickaroo.tikxml.converters.date.rfc3339.DateRfc3339TypeConverter; - -import java.util.Date; @Xml(name = "similarArtist") public class SimilarArtistID3 { diff --git a/app/src/main/java/com/cappielloantonio/play/subsonic/models/SimilarSongs.java b/app/src/main/java/com/cappielloantonio/play/subsonic/models/SimilarSongs.java index c2750fcc..ee676a99 100644 --- a/app/src/main/java/com/cappielloantonio/play/subsonic/models/SimilarSongs.java +++ b/app/src/main/java/com/cappielloantonio/play/subsonic/models/SimilarSongs.java @@ -28,7 +28,7 @@ public class SimilarSongs { */ public List getSongs() { if (songs == null) { - songs = new ArrayList(); + songs = new ArrayList<>(); } return this.songs; } diff --git a/app/src/main/java/com/cappielloantonio/play/subsonic/models/Starred.java b/app/src/main/java/com/cappielloantonio/play/subsonic/models/Starred.java index 6f294bd9..dc456b65 100644 --- a/app/src/main/java/com/cappielloantonio/play/subsonic/models/Starred.java +++ b/app/src/main/java/com/cappielloantonio/play/subsonic/models/Starred.java @@ -30,7 +30,7 @@ public class Starred { */ public List getArtists() { if (artists == null) { - artists = new ArrayList(); + artists = new ArrayList<>(); } return this.artists; } @@ -57,7 +57,7 @@ public class Starred { */ public List getAlbums() { if (albums == null) { - albums = new ArrayList(); + albums = new ArrayList<>(); } return this.albums; } @@ -84,7 +84,7 @@ public class Starred { */ public List getSongs() { if (songs == null) { - songs = new ArrayList(); + songs = new ArrayList<>(); } return this.songs; } diff --git a/app/src/main/java/com/cappielloantonio/play/subsonic/models/User.java b/app/src/main/java/com/cappielloantonio/play/subsonic/models/User.java index 54502759..c0d89f2e 100644 --- a/app/src/main/java/com/cappielloantonio/play/subsonic/models/User.java +++ b/app/src/main/java/com/cappielloantonio/play/subsonic/models/User.java @@ -46,7 +46,7 @@ public class User { */ public List getFolders() { if (folders == null) { - folders = new ArrayList(); + folders = new ArrayList<>(); } return this.folders; } diff --git a/app/src/main/java/com/cappielloantonio/play/subsonic/models/Users.java b/app/src/main/java/com/cappielloantonio/play/subsonic/models/Users.java index 5adc4d83..6f923473 100644 --- a/app/src/main/java/com/cappielloantonio/play/subsonic/models/Users.java +++ b/app/src/main/java/com/cappielloantonio/play/subsonic/models/Users.java @@ -28,7 +28,7 @@ public class Users { */ public List getUsers() { if (users == null) { - users = new ArrayList(); + users = new ArrayList<>(); } return this.users; } diff --git a/app/src/main/java/com/cappielloantonio/play/subsonic/models/VideoInfo.java b/app/src/main/java/com/cappielloantonio/play/subsonic/models/VideoInfo.java index c08efe95..fdb13acd 100644 --- a/app/src/main/java/com/cappielloantonio/play/subsonic/models/VideoInfo.java +++ b/app/src/main/java/com/cappielloantonio/play/subsonic/models/VideoInfo.java @@ -31,7 +31,7 @@ public class VideoInfo { */ public List getCaptions() { if (captions == null) { - captions = new ArrayList(); + captions = new ArrayList<>(); } return this.captions; } @@ -58,7 +58,7 @@ public class VideoInfo { */ public List getAudioTracks() { if (audioTracks == null) { - audioTracks = new ArrayList(); + audioTracks = new ArrayList<>(); } return this.audioTracks; } @@ -85,7 +85,7 @@ public class VideoInfo { */ public List getConversions() { if (conversions == null) { - conversions = new ArrayList(); + conversions = new ArrayList<>(); } return this.conversions; } diff --git a/app/src/main/java/com/cappielloantonio/play/subsonic/models/Videos.java b/app/src/main/java/com/cappielloantonio/play/subsonic/models/Videos.java index 97ae528f..7524ca9d 100644 --- a/app/src/main/java/com/cappielloantonio/play/subsonic/models/Videos.java +++ b/app/src/main/java/com/cappielloantonio/play/subsonic/models/Videos.java @@ -28,7 +28,7 @@ public class Videos { */ public List getVideos() { if (videos == null) { - videos = new ArrayList(); + videos = new ArrayList<>(); } return this.videos; } diff --git a/app/src/main/java/com/cappielloantonio/play/subsonic/utils/StringUtil.java b/app/src/main/java/com/cappielloantonio/play/subsonic/utils/StringUtil.java index 0cd2f236..7ef977de 100644 --- a/app/src/main/java/com/cappielloantonio/play/subsonic/utils/StringUtil.java +++ b/app/src/main/java/com/cappielloantonio/play/subsonic/utils/StringUtil.java @@ -9,13 +9,13 @@ public class StringUtil { try { MessageDigest digest = java.security.MessageDigest.getInstance(MD5); digest.update(s.getBytes()); - byte messageDigest[] = digest.digest(); + byte[] messageDigest = digest.digest(); StringBuilder hexString = new StringBuilder(); for (byte aMessageDigest : messageDigest) { - String h = Integer.toHexString(0xFF & aMessageDigest); + StringBuilder h = new StringBuilder(Integer.toHexString(0xFF & aMessageDigest)); while (h.length() < 2) { - h = "0" + h; + h.insert(0, "0"); } hexString.append(h); } diff --git a/app/src/main/java/com/cappielloantonio/play/subsonic/utils/converter/ErrorCodeConverter.java b/app/src/main/java/com/cappielloantonio/play/subsonic/utils/converter/ErrorCodeConverter.java index 2511e0d4..b540e546 100644 --- a/app/src/main/java/com/cappielloantonio/play/subsonic/utils/converter/ErrorCodeConverter.java +++ b/app/src/main/java/com/cappielloantonio/play/subsonic/utils/converter/ErrorCodeConverter.java @@ -6,7 +6,7 @@ import com.tickaroo.tikxml.TypeConverter; public class ErrorCodeConverter implements TypeConverter { @Override public ErrorCode read(String value) throws Exception { - return new ErrorCode(Integer.valueOf(value)); + return new ErrorCode(Integer.parseInt(value)); } @Override diff --git a/app/src/main/java/com/cappielloantonio/play/ui/fragment/AlbumCatalogueFragment.java b/app/src/main/java/com/cappielloantonio/play/ui/fragment/AlbumCatalogueFragment.java index e71ee8b0..4c7f4571 100644 --- a/app/src/main/java/com/cappielloantonio/play/ui/fragment/AlbumCatalogueFragment.java +++ b/app/src/main/java/com/cappielloantonio/play/ui/fragment/AlbumCatalogueFragment.java @@ -107,9 +107,7 @@ public class AlbumCatalogueFragment extends Fragment { albumAdapter = new AlbumCatalogueAdapter(activity, requireContext()); albumAdapter.setStateRestorationPolicy(RecyclerView.Adapter.StateRestorationPolicy.PREVENT_WHEN_EMPTY); bind.albumCatalogueRecyclerView.setAdapter(albumAdapter); - albumCatalogueViewModel.getAlbumList().observe(requireActivity(), albums -> { - albumAdapter.setItems(albums); - }); + albumCatalogueViewModel.getAlbumList().observe(requireActivity(), albums -> albumAdapter.setItems(albums)); bind.albumCatalogueRecyclerView.setOnTouchListener((v, event) -> { hideKeyboard(v); diff --git a/app/src/main/java/com/cappielloantonio/play/ui/fragment/AlbumListPageFragment.java b/app/src/main/java/com/cappielloantonio/play/ui/fragment/AlbumListPageFragment.java index 3336c6b1..0298c1aa 100644 --- a/app/src/main/java/com/cappielloantonio/play/ui/fragment/AlbumListPageFragment.java +++ b/app/src/main/java/com/cappielloantonio/play/ui/fragment/AlbumListPageFragment.java @@ -84,9 +84,7 @@ public class AlbumListPageFragment extends Fragment { activity.getSupportActionBar().setDisplayShowHomeEnabled(true); } - bind.toolbar.setNavigationOnClickListener(v -> { - activity.navController.navigateUp(); - }); + bind.toolbar.setNavigationOnClickListener(v -> activity.navController.navigateUp()); bind.appBarLayout.addOnOffsetChangedListener((appBarLayout, verticalOffset) -> { if ((bind.albumInfoSector.getHeight() + verticalOffset) < (2 * ViewCompat.getMinimumHeight(bind.toolbar))) { diff --git a/app/src/main/java/com/cappielloantonio/play/ui/fragment/AlbumPageFragment.java b/app/src/main/java/com/cappielloantonio/play/ui/fragment/AlbumPageFragment.java index ba2b20aa..fda0c482 100644 --- a/app/src/main/java/com/cappielloantonio/play/ui/fragment/AlbumPageFragment.java +++ b/app/src/main/java/com/cappielloantonio/play/ui/fragment/AlbumPageFragment.java @@ -121,16 +121,14 @@ public class AlbumPageFragment extends Fragment { } private void initAlbumInfoTextButton() { - bind.albumArtistLabel.setOnClickListener(v -> { - albumPageViewModel.getArtist().observe(requireActivity(), artist -> { - if (artist != null) { - Bundle bundle = new Bundle(); - bundle.putParcelable("artist_object", artist); - activity.navController.navigate(R.id.action_albumPageFragment_to_artistPageFragment, bundle); - } else - Toast.makeText(requireContext(), "Error retrieving artist", Toast.LENGTH_SHORT).show(); - }); - }); + bind.albumArtistLabel.setOnClickListener(v -> albumPageViewModel.getArtist().observe(requireActivity(), artist -> { + if (artist != null) { + Bundle bundle = new Bundle(); + bundle.putParcelable("artist_object", artist); + activity.navController.navigate(R.id.action_albumPageFragment_to_artistPageFragment, bundle); + } else + Toast.makeText(requireContext(), "Error retrieving artist", Toast.LENGTH_SHORT).show(); + })); } private void initMusicButton() { @@ -181,8 +179,6 @@ public class AlbumPageFragment extends Fragment { songHorizontalAdapter = new SongHorizontalAdapter(activity, requireContext(), false); bind.songRecyclerView.setAdapter(songHorizontalAdapter); - albumPageViewModel.getAlbumSongLiveList(requireActivity()).observe(requireActivity(), songs -> { - songHorizontalAdapter.setItems(songs); - }); + albumPageViewModel.getAlbumSongLiveList(requireActivity()).observe(requireActivity(), songs -> songHorizontalAdapter.setItems(songs)); } } \ No newline at end of file diff --git a/app/src/main/java/com/cappielloantonio/play/ui/fragment/ArtistCatalogueFragment.java b/app/src/main/java/com/cappielloantonio/play/ui/fragment/ArtistCatalogueFragment.java index e9f60cb6..2b6b1336 100644 --- a/app/src/main/java/com/cappielloantonio/play/ui/fragment/ArtistCatalogueFragment.java +++ b/app/src/main/java/com/cappielloantonio/play/ui/fragment/ArtistCatalogueFragment.java @@ -107,9 +107,7 @@ public class ArtistCatalogueFragment extends Fragment { artistAdapter = new ArtistCatalogueAdapter(activity, requireContext()); artistAdapter.setStateRestorationPolicy(RecyclerView.Adapter.StateRestorationPolicy.PREVENT_WHEN_EMPTY); bind.artistCatalogueRecyclerView.setAdapter(artistAdapter); - artistCatalogueViewModel.getArtistList().observe(requireActivity(), artistList -> { - artistAdapter.setItems(artistList); - }); + artistCatalogueViewModel.getArtistList().observe(requireActivity(), artistList -> artistAdapter.setItems(artistList)); bind.artistCatalogueRecyclerView.setOnTouchListener((v, event) -> { hideKeyboard(v); diff --git a/app/src/main/java/com/cappielloantonio/play/ui/fragment/ArtistListPageFragment.java b/app/src/main/java/com/cappielloantonio/play/ui/fragment/ArtistListPageFragment.java index 267dde8a..44d5d556 100644 --- a/app/src/main/java/com/cappielloantonio/play/ui/fragment/ArtistListPageFragment.java +++ b/app/src/main/java/com/cappielloantonio/play/ui/fragment/ArtistListPageFragment.java @@ -70,9 +70,7 @@ public class ArtistListPageFragment extends Fragment { activity.getSupportActionBar().setDisplayShowHomeEnabled(true); } - bind.toolbar.setNavigationOnClickListener(v -> { - activity.navController.navigateUp(); - }); + bind.toolbar.setNavigationOnClickListener(v -> activity.navController.navigateUp()); bind.appBarLayout.addOnOffsetChangedListener((appBarLayout, verticalOffset) -> { if ((bind.artistInfoSector.getHeight() + verticalOffset) < (2 * ViewCompat.getMinimumHeight(bind.toolbar))) { diff --git a/app/src/main/java/com/cappielloantonio/play/ui/fragment/FilterFragment.java b/app/src/main/java/com/cappielloantonio/play/ui/fragment/FilterFragment.java index e5733dc6..11155714 100644 --- a/app/src/main/java/com/cappielloantonio/play/ui/fragment/FilterFragment.java +++ b/app/src/main/java/com/cappielloantonio/play/ui/fragment/FilterFragment.java @@ -1,7 +1,6 @@ package com.cappielloantonio.play.ui.fragment; import android.os.Bundle; -import android.text.Html; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; @@ -77,9 +76,7 @@ public class FilterFragment extends Fragment { activity.getSupportActionBar().setDisplayShowHomeEnabled(true); } - bind.toolbar.setNavigationOnClickListener(v -> { - activity.navController.navigateUp(); - }); + bind.toolbar.setNavigationOnClickListener(v -> activity.navController.navigateUp()); bind.appBarLayout.addOnOffsetChangedListener((appBarLayout, verticalOffset) -> { diff --git a/app/src/main/java/com/cappielloantonio/play/ui/fragment/GenreCatalogueFragment.java b/app/src/main/java/com/cappielloantonio/play/ui/fragment/GenreCatalogueFragment.java index 571bf0cf..e0c524c0 100644 --- a/app/src/main/java/com/cappielloantonio/play/ui/fragment/GenreCatalogueFragment.java +++ b/app/src/main/java/com/cappielloantonio/play/ui/fragment/GenreCatalogueFragment.java @@ -114,9 +114,7 @@ public class GenreCatalogueFragment extends Fragment { activity.navController.navigate(R.id.action_genreCatalogueFragment_to_songListPageFragment, bundle); }); - genreCatalogueViewModel.getGenreList().observe(requireActivity(), genres -> { - genreCatalogueAdapter.setItems(genres); - }); + genreCatalogueViewModel.getGenreList().observe(requireActivity(), genres -> genreCatalogueAdapter.setItems(genres)); bind.genreCatalogueRecyclerView.setOnTouchListener((v, event) -> { hideKeyboard(v); diff --git a/app/src/main/java/com/cappielloantonio/play/ui/fragment/HomeFragment.java b/app/src/main/java/com/cappielloantonio/play/ui/fragment/HomeFragment.java index 8f0064dc..27d35fc3 100644 --- a/app/src/main/java/com/cappielloantonio/play/ui/fragment/HomeFragment.java +++ b/app/src/main/java/com/cappielloantonio/play/ui/fragment/HomeFragment.java @@ -1,6 +1,5 @@ package com.cappielloantonio.play.ui.fragment; -import android.graphics.Color; import android.os.Bundle; import android.view.LayoutInflater; import android.view.Menu; @@ -11,7 +10,6 @@ import android.view.ViewGroup; import androidx.annotation.NonNull; import androidx.annotation.Nullable; -import androidx.core.content.ContextCompat; import androidx.core.view.ViewCompat; import androidx.fragment.app.Fragment; import androidx.lifecycle.ViewModelProvider; @@ -27,8 +25,8 @@ import com.cappielloantonio.play.adapter.AlbumHorizontalAdapter; import com.cappielloantonio.play.adapter.ArtistHorizontalAdapter; import com.cappielloantonio.play.adapter.DiscoverSongAdapter; import com.cappielloantonio.play.adapter.SimilarTrackAdapter; -import com.cappielloantonio.play.adapter.TrackAdapter; import com.cappielloantonio.play.adapter.SongHorizontalAdapter; +import com.cappielloantonio.play.adapter.TrackAdapter; import com.cappielloantonio.play.adapter.YearAdapter; import com.cappielloantonio.play.databinding.FragmentHomeBinding; import com.cappielloantonio.play.helper.recyclerview.CustomLinearSnapHelper; @@ -37,9 +35,6 @@ import com.cappielloantonio.play.model.Album; import com.cappielloantonio.play.model.Artist; import com.cappielloantonio.play.model.Song; import com.cappielloantonio.play.ui.activity.MainActivity; -import com.cappielloantonio.play.util.DownloadUtil; -import com.cappielloantonio.play.util.MappingUtil; -import com.cappielloantonio.play.util.MusicUtil; import com.cappielloantonio.play.util.UIUtil; import com.cappielloantonio.play.viewmodel.HomeViewModel; @@ -345,7 +340,8 @@ public class HomeFragment extends Fragment { } else { if (bind != null) bind.homeStarredTracksPlaceholder.placeholder.setVisibility(View.GONE); if (bind != null) bind.homeStarredTracksSector.setVisibility(!songs.isEmpty() ? View.VISIBLE : View.GONE); - if (bind != null) bind.starredTracksRecyclerView.setLayoutManager(new GridLayoutManager(requireContext(), UIUtil.getSpanCount(songs.size(), 5), GridLayoutManager.HORIZONTAL, false)); + if (bind != null) + bind.starredTracksRecyclerView.setLayoutManager(new GridLayoutManager(requireContext(), UIUtil.getSpanCount(songs.size(), 5), GridLayoutManager.HORIZONTAL, false)); starredSongAdapter.setItems(songs); } @@ -376,7 +372,8 @@ public class HomeFragment extends Fragment { } else { if (bind != null) bind.homeStarredAlbumsPlaceholder.placeholder.setVisibility(View.GONE); if (bind != null) bind.homeStarredAlbumsSector.setVisibility(!albums.isEmpty() ? View.VISIBLE : View.GONE); - if (bind != null) bind.starredAlbumsRecyclerView.setLayoutManager(new GridLayoutManager(requireContext(), UIUtil.getSpanCount(albums.size(), 5), GridLayoutManager.HORIZONTAL, false)); + if (bind != null) + bind.starredAlbumsRecyclerView.setLayoutManager(new GridLayoutManager(requireContext(), UIUtil.getSpanCount(albums.size(), 5), GridLayoutManager.HORIZONTAL, false)); starredAlbumAdapter.setItems(albums); } @@ -407,7 +404,8 @@ public class HomeFragment extends Fragment { } else { if (bind != null) bind.homeStarredArtistsPlaceholder.placeholder.setVisibility(View.GONE); if (bind != null) bind.homeStarredArtistsSector.setVisibility(!artists.isEmpty() ? View.VISIBLE : View.GONE); - if (bind != null) bind.starredArtistsRecyclerView.setLayoutManager(new GridLayoutManager(requireContext(), UIUtil.getSpanCount(artists.size(), 5), GridLayoutManager.HORIZONTAL, false)); + if (bind != null) + bind.starredArtistsRecyclerView.setLayoutManager(new GridLayoutManager(requireContext(), UIUtil.getSpanCount(artists.size(), 5), GridLayoutManager.HORIZONTAL, false)); starredArtistAdapter.setItems(artists); } diff --git a/app/src/main/java/com/cappielloantonio/play/ui/fragment/LoginFragment.java b/app/src/main/java/com/cappielloantonio/play/ui/fragment/LoginFragment.java index 9dcfb1f0..f32a70ff 100644 --- a/app/src/main/java/com/cappielloantonio/play/ui/fragment/LoginFragment.java +++ b/app/src/main/java/com/cappielloantonio/play/ui/fragment/LoginFragment.java @@ -1,6 +1,5 @@ package com.cappielloantonio.play.ui.fragment; -import android.graphics.Color; import android.os.Bundle; import android.view.LayoutInflater; import android.view.Menu; @@ -14,9 +13,7 @@ import androidx.annotation.Nullable; import androidx.core.view.ViewCompat; import androidx.fragment.app.Fragment; import androidx.lifecycle.ViewModelProvider; -import androidx.recyclerview.widget.ItemTouchHelper; import androidx.recyclerview.widget.LinearLayoutManager; -import androidx.recyclerview.widget.RecyclerView; import com.cappielloantonio.play.R; import com.cappielloantonio.play.adapter.ServerAdapter; @@ -25,8 +22,6 @@ import com.cappielloantonio.play.ui.activity.MainActivity; import com.cappielloantonio.play.ui.fragment.dialog.ServerSignupDialog; import com.cappielloantonio.play.viewmodel.LoginViewModel; -import java.util.Collections; - public class LoginFragment extends Fragment { private static final String TAG = "LoginFragment"; @@ -88,12 +83,11 @@ public class LoginFragment extends Fragment { serverAdapter = new ServerAdapter(activity, requireContext()); bind.serverListRecyclerView.setAdapter(serverAdapter); loginViewModel.getServerList().observe(requireActivity(), servers -> { - if(servers.size() > 0) { + if (servers.size() > 0) { if (bind != null) bind.noServerAddedTextView.setVisibility(View.GONE); if (bind != null) bind.serverListRecyclerView.setVisibility(View.VISIBLE); serverAdapter.setItems(servers); - } - else { + } else { if (bind != null) bind.noServerAddedTextView.setVisibility(View.VISIBLE); if (bind != null) bind.serverListRecyclerView.setVisibility(View.GONE); } @@ -102,13 +96,10 @@ public class LoginFragment extends Fragment { @Override public boolean onOptionsItemSelected(@NonNull MenuItem item) { - switch (item.getItemId()) { - case R.id.action_add: - ServerSignupDialog dialog = new ServerSignupDialog(); - dialog.show(activity.getSupportFragmentManager(), null); - return true; - default: - break; + if (item.getItemId() == R.id.action_add) { + ServerSignupDialog dialog = new ServerSignupDialog(); + dialog.show(activity.getSupportFragmentManager(), null); + return true; } return false; diff --git a/app/src/main/java/com/cappielloantonio/play/ui/fragment/PlayerBottomSheetFragment.java b/app/src/main/java/com/cappielloantonio/play/ui/fragment/PlayerBottomSheetFragment.java index 3f12d2a1..d32a5ad0 100644 --- a/app/src/main/java/com/cappielloantonio/play/ui/fragment/PlayerBottomSheetFragment.java +++ b/app/src/main/java/com/cappielloantonio/play/ui/fragment/PlayerBottomSheetFragment.java @@ -37,6 +37,7 @@ import com.cappielloantonio.play.util.PreferenceUtil; import com.cappielloantonio.play.viewmodel.PlayerBottomSheetViewModel; import java.util.Collections; +import java.util.Objects; public class PlayerBottomSheetFragment extends Fragment implements MusicServiceEventListener, MusicProgressViewUpdateHelper.Callback { private static final String TAG = "PlayerBottomSheetFragment"; @@ -166,7 +167,7 @@ public class PlayerBottomSheetFragment extends Fragment implements MusicServiceE int toPosition = -1; @Override - public boolean onMove(@NonNull RecyclerView recyclerView, @NonNull RecyclerView.ViewHolder viewHolder, RecyclerView.ViewHolder target) { + public boolean onMove(@NonNull RecyclerView recyclerView, @NonNull RecyclerView.ViewHolder viewHolder, @NonNull RecyclerView.ViewHolder target) { if (originalPosition == -1) originalPosition = viewHolder.getBindingAdapterPosition(); @@ -185,7 +186,7 @@ public class PlayerBottomSheetFragment extends Fragment implements MusicServiceE */ Collections.swap(playerSongQueueAdapter.getItems(), fromPosition, toPosition); - recyclerView.getAdapter().notifyItemMoved(fromPosition, toPosition); + Objects.requireNonNull(recyclerView.getAdapter()).notifyItemMoved(fromPosition, toPosition); return false; } @@ -212,7 +213,7 @@ public class PlayerBottomSheetFragment extends Fragment implements MusicServiceE if (!(viewHolder.getBindingAdapterPosition() == MusicPlayerRemote.getPosition()) && !(MusicPlayerRemote.getPlayingQueue().size() <= 1)) { MusicPlayerRemote.removeFromQueue(viewHolder.getBindingAdapterPosition()); playerBottomSheetViewModel.removeSong(viewHolder.getBindingAdapterPosition()); - bodyBind.playerQueueRecyclerView.getAdapter().notifyItemRemoved(viewHolder.getBindingAdapterPosition()); + Objects.requireNonNull(bodyBind.playerQueueRecyclerView.getAdapter()).notifyItemRemoved(viewHolder.getBindingAdapterPosition()); bodyBind.playerSongCoverViewPager.setCurrentItem(MusicPlayerRemote.getPosition(), false); } else { bodyBind.playerQueueRecyclerView.getAdapter().notifyDataSetChanged(); @@ -271,11 +272,6 @@ public class PlayerBottomSheetFragment extends Fragment implements MusicServiceE } private void setViewPageDelayed(int position) { - /*bodyBind.playerSongCoverViewPager.post(() -> { - int restoredPosition = PreferenceManager.getDefaultSharedPreferences(requireContext()).getInt(PreferenceUtil.POSITION, -1); - bodyBind.playerSongCoverViewPager.setCurrentItem(restoredPosition, true); - });*/ - final Handler handler = new Handler(); final Runnable r = () -> { if (bind != null) bodyBind.playerSongCoverViewPager.setCurrentItem(position, false); @@ -308,7 +304,7 @@ public class PlayerBottomSheetFragment extends Fragment implements MusicServiceE } public View getPlayerHeader() { - return getView().findViewById(R.id.player_header_layout); + return requireView().findViewById(R.id.player_header_layout); } public void scrollOnTop() { @@ -322,7 +318,7 @@ public class PlayerBottomSheetFragment extends Fragment implements MusicServiceE @Override public void onServiceConnected() { - setSongInfo(MusicPlayerRemote.getCurrentSong()); + setSongInfo(Objects.requireNonNull(MusicPlayerRemote.getCurrentSong())); updatePlayPauseState(); } @@ -339,7 +335,7 @@ public class PlayerBottomSheetFragment extends Fragment implements MusicServiceE @Override public void onPlayMetadataChanged() { setViewPageDelayed(MusicPlayerRemote.getPosition()); - setSongInfo(MusicPlayerRemote.getCurrentSong()); + setSongInfo(Objects.requireNonNull(MusicPlayerRemote.getCurrentSong())); } @Override diff --git a/app/src/main/java/com/cappielloantonio/play/ui/fragment/PlaylistCatalogueFragment.java b/app/src/main/java/com/cappielloantonio/play/ui/fragment/PlaylistCatalogueFragment.java index cdde347d..333ea8b7 100644 --- a/app/src/main/java/com/cappielloantonio/play/ui/fragment/PlaylistCatalogueFragment.java +++ b/app/src/main/java/com/cappielloantonio/play/ui/fragment/PlaylistCatalogueFragment.java @@ -107,9 +107,7 @@ public class PlaylistCatalogueFragment extends Fragment { playlistCatalogueAdapter = new PlaylistCatalogueAdapter(activity, requireContext(), playlistCatalogueViewModel.getType().equals(Playlist.DOWNLOADED)); bind.playlistCatalogueRecyclerView.setAdapter(playlistCatalogueAdapter); - playlistCatalogueViewModel.getPlaylistList(requireActivity()).observe(requireActivity(), playlist -> { - playlistCatalogueAdapter.setItems(playlist); - }); + playlistCatalogueViewModel.getPlaylistList(requireActivity()).observe(requireActivity(), playlist -> playlistCatalogueAdapter.setItems(playlist)); bind.playlistCatalogueRecyclerView.setOnTouchListener((v, event) -> { hideKeyboard(v); diff --git a/app/src/main/java/com/cappielloantonio/play/ui/fragment/bottomsheetdialog/SongBottomSheetDialog.java b/app/src/main/java/com/cappielloantonio/play/ui/fragment/bottomsheetdialog/SongBottomSheetDialog.java index 6a23fb65..de160b42 100644 --- a/app/src/main/java/com/cappielloantonio/play/ui/fragment/bottomsheetdialog/SongBottomSheetDialog.java +++ b/app/src/main/java/com/cappielloantonio/play/ui/fragment/bottomsheetdialog/SongBottomSheetDialog.java @@ -33,6 +33,7 @@ import com.google.android.material.bottomsheet.BottomSheetDialogFragment; import java.util.ArrayList; import java.util.Arrays; +import java.util.Collections; import java.util.List; public class SongBottomSheetDialog extends BottomSheetDialogFragment implements View.OnClickListener { @@ -146,13 +147,13 @@ public class SongBottomSheetDialog extends BottomSheetDialogFragment implements TextView download = view.findViewById(R.id.download_text_view); download.setOnClickListener(v -> { - DownloadUtil.getDownloadTracker(requireContext()).download(Arrays.asList(song), null, null); + DownloadUtil.getDownloadTracker(requireContext()).download(Collections.singletonList(song), null, null); dismissBottomSheet(); }); TextView remove = view.findViewById(R.id.remove_text_view); remove.setOnClickListener(v -> { - DownloadUtil.getDownloadTracker(requireContext()).remove(Arrays.asList(song)); + DownloadUtil.getDownloadTracker(requireContext()).remove(Collections.singletonList(song)); dismissBottomSheet(); }); @@ -171,32 +172,28 @@ public class SongBottomSheetDialog extends BottomSheetDialogFragment implements }); TextView goToAlbum = view.findViewById(R.id.go_to_album_text_view); - goToAlbum.setOnClickListener(v -> { - songBottomSheetViewModel.getAlbum().observe(requireActivity(), album -> { - if (album != null) { - Bundle bundle = new Bundle(); - bundle.putParcelable("album_object", album); - NavHostFragment.findNavController(this).navigate(R.id.albumPageFragment, bundle); - } else - Toast.makeText(requireContext(), "Error retrieving album", Toast.LENGTH_SHORT).show(); + goToAlbum.setOnClickListener(v -> songBottomSheetViewModel.getAlbum().observe(requireActivity(), album -> { + if (album != null) { + Bundle bundle = new Bundle(); + bundle.putParcelable("album_object", album); + NavHostFragment.findNavController(this).navigate(R.id.albumPageFragment, bundle); + } else + Toast.makeText(requireContext(), "Error retrieving album", Toast.LENGTH_SHORT).show(); - dismissBottomSheet(); - }); - }); + dismissBottomSheet(); + })); TextView goToArtist = view.findViewById(R.id.go_to_artist_text_view); - goToArtist.setOnClickListener(v -> { - songBottomSheetViewModel.getArtist().observe(requireActivity(), artist -> { - if (artist != null) { - Bundle bundle = new Bundle(); - bundle.putParcelable("artist_object", artist); - NavHostFragment.findNavController(this).navigate(R.id.artistPageFragment, bundle); - } else - Toast.makeText(requireContext(), "Error retrieving artist", Toast.LENGTH_SHORT).show(); + goToArtist.setOnClickListener(v -> songBottomSheetViewModel.getArtist().observe(requireActivity(), artist -> { + if (artist != null) { + Bundle bundle = new Bundle(); + bundle.putParcelable("artist_object", artist); + NavHostFragment.findNavController(this).navigate(R.id.artistPageFragment, bundle); + } else + Toast.makeText(requireContext(), "Error retrieving artist", Toast.LENGTH_SHORT).show(); - dismissBottomSheet(); - }); - }); + dismissBottomSheet(); + })); } @Override diff --git a/app/src/main/java/com/cappielloantonio/play/ui/fragment/dialog/PlaylistEditorDialog.java b/app/src/main/java/com/cappielloantonio/play/ui/fragment/dialog/PlaylistEditorDialog.java index 3bd4f5b5..2562bf92 100644 --- a/app/src/main/java/com/cappielloantonio/play/ui/fragment/dialog/PlaylistEditorDialog.java +++ b/app/src/main/java/com/cappielloantonio/play/ui/fragment/dialog/PlaylistEditorDialog.java @@ -108,9 +108,7 @@ public class PlaylistEditorDialog extends DialogFragment { playlistDialogSongHorizontalAdapter = new PlaylistDialogSongHorizontalAdapter(requireContext()); bind.playlistSongRecyclerView.setAdapter(playlistDialogSongHorizontalAdapter); - playlistEditorViewModel.getPlaylistSongLiveList().observe(requireActivity(), songs -> { - playlistDialogSongHorizontalAdapter.setItems(songs); - }); + playlistEditorViewModel.getPlaylistSongLiveList().observe(requireActivity(), songs -> playlistDialogSongHorizontalAdapter.setItems(songs)); new ItemTouchHelper(new ItemTouchHelper.SimpleCallback(ItemTouchHelper.UP | ItemTouchHelper.DOWN, ItemTouchHelper.LEFT) { int originalPosition = -1; @@ -118,7 +116,7 @@ public class PlaylistEditorDialog extends DialogFragment { int toPosition = -1; @Override - public boolean onMove(RecyclerView recyclerView, RecyclerView.ViewHolder viewHolder, RecyclerView.ViewHolder target) { + public boolean onMove(@NonNull RecyclerView recyclerView, @NonNull RecyclerView.ViewHolder viewHolder, @NonNull RecyclerView.ViewHolder target) { if (originalPosition == -1) originalPosition = viewHolder.getBindingAdapterPosition(); @@ -147,16 +145,16 @@ public class PlaylistEditorDialog extends DialogFragment { } @Override - public void onSwiped(RecyclerView.ViewHolder viewHolder, int direction) { + public void onSwiped(@NonNull RecyclerView.ViewHolder viewHolder, int direction) { playlistEditorViewModel.removeFromPlaylistSongLiveList(viewHolder.getBindingAdapterPosition()); - bind.playlistSongRecyclerView.getAdapter().notifyItemRemoved(viewHolder.getBindingAdapterPosition()); + Objects.requireNonNull(bind.playlistSongRecyclerView.getAdapter()).notifyItemRemoved(viewHolder.getBindingAdapterPosition()); } } ).attachToRecyclerView(bind.playlistSongRecyclerView); } private boolean validateInput() { - playlistName = bind.playlistNameTextView.getText().toString().trim(); + playlistName = Objects.requireNonNull(bind.playlistNameTextView.getText()).toString().trim(); if (TextUtils.isEmpty(playlistName)) { bind.playlistNameTextView.setError("Required"); diff --git a/app/src/main/java/com/cappielloantonio/play/ui/fragment/dialog/RatingDialog.java b/app/src/main/java/com/cappielloantonio/play/ui/fragment/dialog/RatingDialog.java index 1dd65b02..35f6fbb6 100644 --- a/app/src/main/java/com/cappielloantonio/play/ui/fragment/dialog/RatingDialog.java +++ b/app/src/main/java/com/cappielloantonio/play/ui/fragment/dialog/RatingDialog.java @@ -32,9 +32,7 @@ public class RatingDialog extends DialogFragment { builder.setView(bind.getRoot()) .setTitle("Rate") .setNegativeButton("Cancel", (dialog, id) -> dialog.cancel()) - .setPositiveButton("Save", (dialog, id) -> { - ratingViewModel.rate((int) bind.ratingBar.getRating()); - }); + .setPositiveButton("Save", (dialog, id) -> ratingViewModel.rate((int) bind.ratingBar.getRating())); return builder.create(); } diff --git a/app/src/main/java/com/cappielloantonio/play/util/MappingUtil.java b/app/src/main/java/com/cappielloantonio/play/util/MappingUtil.java index cd270d54..bae19b33 100644 --- a/app/src/main/java/com/cappielloantonio/play/util/MappingUtil.java +++ b/app/src/main/java/com/cappielloantonio/play/util/MappingUtil.java @@ -17,9 +17,7 @@ import com.cappielloantonio.play.subsonic.models.Genre; import com.cappielloantonio.play.subsonic.models.SimilarArtistID3; import java.util.ArrayList; -import java.util.Collections; import java.util.List; -import java.util.stream.Collectors; public class MappingUtil { public static ArrayList mapSong(List children) { @@ -111,7 +109,7 @@ public class MappingUtil { for (Download download : downloads) { Song song = new Song(download); - if(!songs.contains(song)) { + if (!songs.contains(song)) { songs.add(song); } } @@ -124,7 +122,7 @@ public class MappingUtil { for (Download download : downloads) { Album album = new Album(download); - if(!albums.contains(album)) { + if (!albums.contains(album)) { albums.add(album); } } @@ -137,7 +135,7 @@ public class MappingUtil { for (Download download : downloads) { Artist artist = new Artist(download); - if(!artists.contains(artist)) { + if (!artists.contains(artist)) { artists.add(artist); } } diff --git a/app/src/main/java/com/cappielloantonio/play/util/MusicUtil.java b/app/src/main/java/com/cappielloantonio/play/util/MusicUtil.java index c7ccabbd..434309d5 100644 --- a/app/src/main/java/com/cappielloantonio/play/util/MusicUtil.java +++ b/app/src/main/java/com/cappielloantonio/play/util/MusicUtil.java @@ -9,11 +9,9 @@ import com.cappielloantonio.play.model.Song; import com.google.android.exoplayer2.MediaItem; import java.util.ArrayList; -import java.util.Arrays; import java.util.List; import java.util.Locale; import java.util.Map; -import java.util.regex.Matcher; import java.util.regex.Pattern; public class MusicUtil { @@ -76,8 +74,8 @@ public class MusicUtil { public static String normalizedArtistName(String string) { if (string != null) { - if(string.toLowerCase().contains(" feat.")) return Pattern.compile(" feat.", Pattern.CASE_INSENSITIVE).split(string)[0].trim(); - else if(string.toLowerCase().contains(" featuring")) return Pattern.compile(" featuring", Pattern.CASE_INSENSITIVE).split(string)[0].trim(); + if (string.toLowerCase().contains(" feat.")) return Pattern.compile(" feat.", Pattern.CASE_INSENSITIVE).split(string)[0].trim(); + else if (string.toLowerCase().contains(" featuring")) return Pattern.compile(" featuring", Pattern.CASE_INSENSITIVE).split(string)[0].trim(); else return string; } diff --git a/app/src/main/java/com/cappielloantonio/play/viewmodel/PlaylistCatalogueViewModel.java b/app/src/main/java/com/cappielloantonio/play/viewmodel/PlaylistCatalogueViewModel.java index 835bda2b..0a360251 100644 --- a/app/src/main/java/com/cappielloantonio/play/viewmodel/PlaylistCatalogueViewModel.java +++ b/app/src/main/java/com/cappielloantonio/play/viewmodel/PlaylistCatalogueViewModel.java @@ -8,7 +8,6 @@ import androidx.lifecycle.AndroidViewModel; import androidx.lifecycle.LiveData; import androidx.lifecycle.MutableLiveData; -import com.cappielloantonio.play.model.Album; import com.cappielloantonio.play.model.Playlist; import com.cappielloantonio.play.repository.DownloadRepository; import com.cappielloantonio.play.repository.PlaylistRepository; diff --git a/app/src/main/java/com/cappielloantonio/play/viewmodel/PlaylistPageViewModel.java b/app/src/main/java/com/cappielloantonio/play/viewmodel/PlaylistPageViewModel.java index 5b8f58e4..d6511f37 100644 --- a/app/src/main/java/com/cappielloantonio/play/viewmodel/PlaylistPageViewModel.java +++ b/app/src/main/java/com/cappielloantonio/play/viewmodel/PlaylistPageViewModel.java @@ -8,7 +8,6 @@ import androidx.lifecycle.AndroidViewModel; import androidx.lifecycle.LiveData; import androidx.lifecycle.MutableLiveData; -import com.cappielloantonio.play.model.Album; import com.cappielloantonio.play.model.Playlist; import com.cappielloantonio.play.model.Song; import com.cappielloantonio.play.repository.DownloadRepository; @@ -36,8 +35,7 @@ public class PlaylistPageViewModel extends AndroidViewModel { public LiveData> getPlaylistSongLiveList(FragmentActivity activity) { if (isOffline) { downloadRepository.getLiveDownloadFromPlaylist(playlist.getId()).observe(activity, downloads -> playlistSongLiveList.postValue(MappingUtil.mapDownloadToSong(downloads))); - } - else { + } else { playlistSongLiveList = playlistRepository.getPlaylistSongs(playlist.getId()); } diff --git a/app/src/main/java/com/cappielloantonio/play/viewmodel/SongListPageViewModel.java b/app/src/main/java/com/cappielloantonio/play/viewmodel/SongListPageViewModel.java index 74d75bd4..6b8cbeea 100644 --- a/app/src/main/java/com/cappielloantonio/play/viewmodel/SongListPageViewModel.java +++ b/app/src/main/java/com/cappielloantonio/play/viewmodel/SongListPageViewModel.java @@ -75,14 +75,10 @@ public class SongListPageViewModel extends AndroidViewModel { songList = songRepository.getStarredSongs(false, -1); break; case Song.DOWNLOADED: - downloadRepository.getLiveDownload().observe(activity, downloads -> { - songList.setValue(MappingUtil.mapDownloadToSong(downloads)); - }); + downloadRepository.getLiveDownload().observe(activity, downloads -> songList.setValue(MappingUtil.mapDownloadToSong(downloads))); break; case Song.FROM_ALBUM: - downloadRepository.getLiveDownloadFromAlbum(album.getId()).observe(activity, downloads -> { - songList.setValue(MappingUtil.mapDownloadToSong(downloads)); - }); + downloadRepository.getLiveDownloadFromAlbum(album.getId()).observe(activity, downloads -> songList.setValue(MappingUtil.mapDownloadToSong(downloads))); break; }