diff --git a/app/src/main/java/com/github/apognu/otter/adapters/AlbumsAdapter.kt b/app/src/main/java/com/github/apognu/otter/adapters/AlbumsAdapter.kt index d143d36..09f6e27 100644 --- a/app/src/main/java/com/github/apognu/otter/adapters/AlbumsAdapter.kt +++ b/app/src/main/java/com/github/apognu/otter/adapters/AlbumsAdapter.kt @@ -6,7 +6,7 @@ import android.view.View import android.view.ViewGroup import androidx.recyclerview.widget.RecyclerView import com.github.apognu.otter.R -import com.github.apognu.otter.fragments.FunkwhaleAdapter +import com.github.apognu.otter.fragments.OtterAdapter import com.github.apognu.otter.utils.Album import com.github.apognu.otter.utils.maybeLoad import com.github.apognu.otter.utils.maybeNormalizeUrl @@ -15,7 +15,7 @@ import jp.wasabeef.picasso.transformations.RoundedCornersTransformation import kotlinx.android.synthetic.main.row_album.view.* import kotlinx.android.synthetic.main.row_artist.view.art -class AlbumsAdapter(val context: Context?, private val listener: OnAlbumClickListener) : FunkwhaleAdapter() { +class AlbumsAdapter(val context: Context?, private val listener: OnAlbumClickListener) : OtterAdapter() { interface OnAlbumClickListener { fun onClick(view: View?, album: Album) } diff --git a/app/src/main/java/com/github/apognu/otter/adapters/AlbumsGridAdapter.kt b/app/src/main/java/com/github/apognu/otter/adapters/AlbumsGridAdapter.kt index b9042e4..d38c0db 100644 --- a/app/src/main/java/com/github/apognu/otter/adapters/AlbumsGridAdapter.kt +++ b/app/src/main/java/com/github/apognu/otter/adapters/AlbumsGridAdapter.kt @@ -6,7 +6,7 @@ import android.view.View import android.view.ViewGroup import androidx.recyclerview.widget.RecyclerView import com.github.apognu.otter.R -import com.github.apognu.otter.fragments.FunkwhaleAdapter +import com.github.apognu.otter.fragments.OtterAdapter import com.github.apognu.otter.utils.Album import com.github.apognu.otter.utils.maybeLoad import com.github.apognu.otter.utils.maybeNormalizeUrl @@ -14,7 +14,7 @@ import com.squareup.picasso.Picasso import jp.wasabeef.picasso.transformations.RoundedCornersTransformation import kotlinx.android.synthetic.main.row_album_grid.view.* -class AlbumsGridAdapter(val context: Context?, private val listener: OnAlbumClickListener) : FunkwhaleAdapter() { +class AlbumsGridAdapter(val context: Context?, private val listener: OnAlbumClickListener) : OtterAdapter() { interface OnAlbumClickListener { fun onClick(view: View?, album: Album) } diff --git a/app/src/main/java/com/github/apognu/otter/adapters/ArtistsAdapter.kt b/app/src/main/java/com/github/apognu/otter/adapters/ArtistsAdapter.kt index 2a60590..68754a4 100644 --- a/app/src/main/java/com/github/apognu/otter/adapters/ArtistsAdapter.kt +++ b/app/src/main/java/com/github/apognu/otter/adapters/ArtistsAdapter.kt @@ -6,7 +6,7 @@ import android.view.View import android.view.ViewGroup import androidx.recyclerview.widget.RecyclerView import com.github.apognu.otter.R -import com.github.apognu.otter.fragments.FunkwhaleAdapter +import com.github.apognu.otter.fragments.OtterAdapter import com.github.apognu.otter.utils.Artist import com.github.apognu.otter.utils.maybeLoad import com.github.apognu.otter.utils.maybeNormalizeUrl @@ -14,7 +14,7 @@ import com.squareup.picasso.Picasso import jp.wasabeef.picasso.transformations.RoundedCornersTransformation import kotlinx.android.synthetic.main.row_artist.view.* -class ArtistsAdapter(val context: Context?, private val listener: OnArtistClickListener) : FunkwhaleAdapter() { +class ArtistsAdapter(val context: Context?, private val listener: OnArtistClickListener) : OtterAdapter() { private var active: List = mutableListOf() interface OnArtistClickListener { diff --git a/app/src/main/java/com/github/apognu/otter/adapters/FavoritesAdapter.kt b/app/src/main/java/com/github/apognu/otter/adapters/FavoritesAdapter.kt index 33f7f73..1dc3826 100644 --- a/app/src/main/java/com/github/apognu/otter/adapters/FavoritesAdapter.kt +++ b/app/src/main/java/com/github/apognu/otter/adapters/FavoritesAdapter.kt @@ -4,8 +4,6 @@ import android.annotation.SuppressLint import android.content.Context import android.graphics.PorterDuff import android.graphics.PorterDuffColorFilter -import android.graphics.Typeface -import android.os.Build import android.view.Gravity import android.view.LayoutInflater import android.view.View @@ -13,14 +11,14 @@ import android.view.ViewGroup import androidx.appcompat.widget.PopupMenu import androidx.recyclerview.widget.RecyclerView import com.github.apognu.otter.R -import com.github.apognu.otter.fragments.FunkwhaleAdapter +import com.github.apognu.otter.fragments.OtterAdapter import com.github.apognu.otter.utils.* import com.squareup.picasso.Picasso import jp.wasabeef.picasso.transformations.RoundedCornersTransformation import kotlinx.android.synthetic.main.row_track.view.* import java.util.* -class FavoritesAdapter(private val context: Context?, private val favoriteListener: OnFavoriteListener, val fromQueue: Boolean = false) : FunkwhaleAdapter() { +class FavoritesAdapter(private val context: Context?, private val favoriteListener: OnFavoriteListener, val fromQueue: Boolean = false) : OtterAdapter() { interface OnFavoriteListener { fun onToggleFavorite(id: Int, state: Boolean) } diff --git a/app/src/main/java/com/github/apognu/otter/adapters/PlaylistTracksAdapter.kt b/app/src/main/java/com/github/apognu/otter/adapters/PlaylistTracksAdapter.kt index 3f0efec..3d006bf 100644 --- a/app/src/main/java/com/github/apognu/otter/adapters/PlaylistTracksAdapter.kt +++ b/app/src/main/java/com/github/apognu/otter/adapters/PlaylistTracksAdapter.kt @@ -11,14 +11,14 @@ import androidx.appcompat.widget.PopupMenu import androidx.recyclerview.widget.ItemTouchHelper import androidx.recyclerview.widget.RecyclerView import com.github.apognu.otter.R -import com.github.apognu.otter.fragments.FunkwhaleAdapter +import com.github.apognu.otter.fragments.OtterAdapter import com.github.apognu.otter.utils.* import com.squareup.picasso.Picasso import jp.wasabeef.picasso.transformations.RoundedCornersTransformation import kotlinx.android.synthetic.main.row_track.view.* import java.util.* -class PlaylistTracksAdapter(private val context: Context?, private val favoriteListener: OnFavoriteListener? = null, val fromQueue: Boolean = false) : FunkwhaleAdapter() { +class PlaylistTracksAdapter(private val context: Context?, private val favoriteListener: OnFavoriteListener? = null, val fromQueue: Boolean = false) : OtterAdapter() { interface OnFavoriteListener { fun onToggleFavorite(id: Int, state: Boolean) } diff --git a/app/src/main/java/com/github/apognu/otter/adapters/PlaylistsAdapter.kt b/app/src/main/java/com/github/apognu/otter/adapters/PlaylistsAdapter.kt index df83be4..1fb5d8d 100644 --- a/app/src/main/java/com/github/apognu/otter/adapters/PlaylistsAdapter.kt +++ b/app/src/main/java/com/github/apognu/otter/adapters/PlaylistsAdapter.kt @@ -6,14 +6,14 @@ import android.view.View import android.view.ViewGroup import androidx.recyclerview.widget.RecyclerView import com.github.apognu.otter.R -import com.github.apognu.otter.fragments.FunkwhaleAdapter +import com.github.apognu.otter.fragments.OtterAdapter import com.github.apognu.otter.utils.Playlist import com.github.apognu.otter.utils.toDurationString import com.squareup.picasso.Picasso import jp.wasabeef.picasso.transformations.RoundedCornersTransformation import kotlinx.android.synthetic.main.row_playlist.view.* -class PlaylistsAdapter(val context: Context?, private val listener: OnPlaylistClickListener) : FunkwhaleAdapter() { +class PlaylistsAdapter(val context: Context?, private val listener: OnPlaylistClickListener) : OtterAdapter() { interface OnPlaylistClickListener { fun onClick(holder: View?, playlist: Playlist) } diff --git a/app/src/main/java/com/github/apognu/otter/adapters/RadiosAdapter.kt b/app/src/main/java/com/github/apognu/otter/adapters/RadiosAdapter.kt index f1ec223..5e771ae 100644 --- a/app/src/main/java/com/github/apognu/otter/adapters/RadiosAdapter.kt +++ b/app/src/main/java/com/github/apognu/otter/adapters/RadiosAdapter.kt @@ -6,7 +6,7 @@ import android.view.View import android.view.ViewGroup import androidx.recyclerview.widget.RecyclerView import com.github.apognu.otter.R -import com.github.apognu.otter.fragments.FunkwhaleAdapter +import com.github.apognu.otter.fragments.OtterAdapter import com.github.apognu.otter.utils.AppContext import com.github.apognu.otter.utils.Event import com.github.apognu.otter.utils.EventBus @@ -20,7 +20,7 @@ import kotlinx.coroutines.Dispatchers.Main import kotlinx.coroutines.flow.collect import kotlinx.coroutines.launch -class RadiosAdapter(val context: Context?, val scope: CoroutineScope, private val listener: OnRadioClickListener) : FunkwhaleAdapter() { +class RadiosAdapter(val context: Context?, val scope: CoroutineScope, private val listener: OnRadioClickListener) : OtterAdapter() { interface OnRadioClickListener { fun onClick(holder: ViewHolder, radio: Radio) } diff --git a/app/src/main/java/com/github/apognu/otter/adapters/TracksAdapter.kt b/app/src/main/java/com/github/apognu/otter/adapters/TracksAdapter.kt index 1a6a56d..fd9854a 100644 --- a/app/src/main/java/com/github/apognu/otter/adapters/TracksAdapter.kt +++ b/app/src/main/java/com/github/apognu/otter/adapters/TracksAdapter.kt @@ -4,20 +4,19 @@ import android.annotation.SuppressLint import android.content.Context import android.graphics.* import android.graphics.drawable.ColorDrawable -import android.os.Build import android.view.* import androidx.appcompat.widget.PopupMenu import androidx.recyclerview.widget.ItemTouchHelper import androidx.recyclerview.widget.RecyclerView import com.github.apognu.otter.R -import com.github.apognu.otter.fragments.FunkwhaleAdapter +import com.github.apognu.otter.fragments.OtterAdapter import com.github.apognu.otter.utils.* import com.squareup.picasso.Picasso import jp.wasabeef.picasso.transformations.RoundedCornersTransformation import kotlinx.android.synthetic.main.row_track.view.* import java.util.* -class TracksAdapter(private val context: Context?, private val favoriteListener: OnFavoriteListener? = null, val fromQueue: Boolean = false) : FunkwhaleAdapter() { +class TracksAdapter(private val context: Context?, private val favoriteListener: OnFavoriteListener? = null, val fromQueue: Boolean = false) : OtterAdapter() { interface OnFavoriteListener { fun onToggleFavorite(id: Int, state: Boolean) } diff --git a/app/src/main/java/com/github/apognu/otter/fragments/AlbumsFragment.kt b/app/src/main/java/com/github/apognu/otter/fragments/AlbumsFragment.kt index 636f31a..e1ace47 100644 --- a/app/src/main/java/com/github/apognu/otter/fragments/AlbumsFragment.kt +++ b/app/src/main/java/com/github/apognu/otter/fragments/AlbumsFragment.kt @@ -30,7 +30,7 @@ import kotlinx.coroutines.flow.toList import kotlinx.coroutines.launch import kotlinx.coroutines.withContext -class AlbumsFragment : FunkwhaleFragment() { +class AlbumsFragment : OtterFragment() { override val viewRes = R.layout.fragment_albums override val recycler: RecyclerView get() = albums override val alwaysRefresh = false diff --git a/app/src/main/java/com/github/apognu/otter/fragments/AlbumsGridFragment.kt b/app/src/main/java/com/github/apognu/otter/fragments/AlbumsGridFragment.kt index d260806..f0c0d8e 100644 --- a/app/src/main/java/com/github/apognu/otter/fragments/AlbumsGridFragment.kt +++ b/app/src/main/java/com/github/apognu/otter/fragments/AlbumsGridFragment.kt @@ -15,7 +15,7 @@ import com.github.apognu.otter.utils.Album import com.github.apognu.otter.utils.AppContext import kotlinx.android.synthetic.main.fragment_albums_grid.* -class AlbumsGridFragment : FunkwhaleFragment() { +class AlbumsGridFragment : OtterFragment() { override val viewRes = R.layout.fragment_albums_grid override val recycler: RecyclerView get() = albums override val layoutManager get() = GridLayoutManager(context, 3) diff --git a/app/src/main/java/com/github/apognu/otter/fragments/ArtistsFragment.kt b/app/src/main/java/com/github/apognu/otter/fragments/ArtistsFragment.kt index 0bd9a27..2372fc4 100644 --- a/app/src/main/java/com/github/apognu/otter/fragments/ArtistsFragment.kt +++ b/app/src/main/java/com/github/apognu/otter/fragments/ArtistsFragment.kt @@ -18,7 +18,7 @@ import com.github.apognu.otter.utils.Artist import com.github.apognu.otter.utils.onViewPager import kotlinx.android.synthetic.main.fragment_artists.* -class ArtistsFragment : FunkwhaleFragment() { +class ArtistsFragment : OtterFragment() { override val viewRes = R.layout.fragment_artists override val recycler: RecyclerView get() = artists override val alwaysRefresh = false diff --git a/app/src/main/java/com/github/apognu/otter/fragments/FavoritesFragment.kt b/app/src/main/java/com/github/apognu/otter/fragments/FavoritesFragment.kt index 581a4a9..c385757 100644 --- a/app/src/main/java/com/github/apognu/otter/fragments/FavoritesFragment.kt +++ b/app/src/main/java/com/github/apognu/otter/fragments/FavoritesFragment.kt @@ -16,7 +16,7 @@ import kotlinx.coroutines.flow.collect import kotlinx.coroutines.launch import kotlinx.coroutines.withContext -class FavoritesFragment : FunkwhaleFragment() { +class FavoritesFragment : OtterFragment() { override val viewRes = R.layout.fragment_favorites override val recycler: RecyclerView get() = favorites override val alwaysRefresh = false diff --git a/app/src/main/java/com/github/apognu/otter/fragments/FunkwhaleFragment.kt b/app/src/main/java/com/github/apognu/otter/fragments/OtterFragment.kt similarity index 96% rename from app/src/main/java/com/github/apognu/otter/fragments/FunkwhaleFragment.kt rename to app/src/main/java/com/github/apognu/otter/fragments/OtterFragment.kt index 2582c8f..f5c510e 100644 --- a/app/src/main/java/com/github/apognu/otter/fragments/FunkwhaleFragment.kt +++ b/app/src/main/java/com/github/apognu/otter/fragments/OtterFragment.kt @@ -20,11 +20,11 @@ import kotlinx.coroutines.flow.collect import kotlinx.coroutines.launch import kotlinx.coroutines.withContext -abstract class FunkwhaleAdapter : RecyclerView.Adapter() { +abstract class OtterAdapter : RecyclerView.Adapter() { var data: MutableList = mutableListOf() } -abstract class FunkwhaleFragment> : Fragment() { +abstract class OtterFragment> : Fragment() { val OFFSCREEN_PAGES = 20 abstract val viewRes: Int diff --git a/app/src/main/java/com/github/apognu/otter/fragments/PlaylistTracksFragment.kt b/app/src/main/java/com/github/apognu/otter/fragments/PlaylistTracksFragment.kt index e27839d..11fa03e 100644 --- a/app/src/main/java/com/github/apognu/otter/fragments/PlaylistTracksFragment.kt +++ b/app/src/main/java/com/github/apognu/otter/fragments/PlaylistTracksFragment.kt @@ -19,7 +19,7 @@ import kotlinx.coroutines.Dispatchers.Main import kotlinx.coroutines.flow.collect import kotlinx.coroutines.launch -class PlaylistTracksFragment : FunkwhaleFragment() { +class PlaylistTracksFragment : OtterFragment() { override val viewRes = R.layout.fragment_tracks override val recycler: RecyclerView get() = tracks diff --git a/app/src/main/java/com/github/apognu/otter/fragments/PlaylistsFragment.kt b/app/src/main/java/com/github/apognu/otter/fragments/PlaylistsFragment.kt index 82d4a11..b077350 100644 --- a/app/src/main/java/com/github/apognu/otter/fragments/PlaylistsFragment.kt +++ b/app/src/main/java/com/github/apognu/otter/fragments/PlaylistsFragment.kt @@ -14,7 +14,7 @@ import com.github.apognu.otter.utils.AppContext import com.github.apognu.otter.utils.Playlist import kotlinx.android.synthetic.main.fragment_playlists.* -class PlaylistsFragment : FunkwhaleFragment() { +class PlaylistsFragment : OtterFragment() { override val viewRes = R.layout.fragment_playlists override val recycler: RecyclerView get() = playlists override val alwaysRefresh = false diff --git a/app/src/main/java/com/github/apognu/otter/fragments/RadiosFragment.kt b/app/src/main/java/com/github/apognu/otter/fragments/RadiosFragment.kt index 36fdcbb..9388835 100644 --- a/app/src/main/java/com/github/apognu/otter/fragments/RadiosFragment.kt +++ b/app/src/main/java/com/github/apognu/otter/fragments/RadiosFragment.kt @@ -13,7 +13,7 @@ import kotlinx.coroutines.Dispatchers.Main import kotlinx.coroutines.flow.collect import kotlinx.coroutines.launch -class RadiosFragment : FunkwhaleFragment() { +class RadiosFragment : OtterFragment() { override val viewRes = R.layout.fragment_radios override val recycler: RecyclerView get() = radios override val alwaysRefresh = false diff --git a/app/src/main/java/com/github/apognu/otter/fragments/TracksFragment.kt b/app/src/main/java/com/github/apognu/otter/fragments/TracksFragment.kt index 4c8cc63..178362f 100644 --- a/app/src/main/java/com/github/apognu/otter/fragments/TracksFragment.kt +++ b/app/src/main/java/com/github/apognu/otter/fragments/TracksFragment.kt @@ -22,7 +22,7 @@ import kotlinx.coroutines.flow.collect import kotlinx.coroutines.launch import kotlinx.coroutines.withContext -class TracksFragment : FunkwhaleFragment() { +class TracksFragment : OtterFragment() { override val viewRes = R.layout.fragment_tracks override val recycler: RecyclerView get() = tracks diff --git a/app/src/main/java/com/github/apognu/otter/repositories/AlbumsRepository.kt b/app/src/main/java/com/github/apognu/otter/repositories/AlbumsRepository.kt index 38af962..4dfbb13 100644 --- a/app/src/main/java/com/github/apognu/otter/repositories/AlbumsRepository.kt +++ b/app/src/main/java/com/github/apognu/otter/repositories/AlbumsRepository.kt @@ -4,7 +4,7 @@ import android.content.Context import com.github.apognu.otter.utils.Album import com.github.apognu.otter.utils.AlbumsCache import com.github.apognu.otter.utils.AlbumsResponse -import com.github.apognu.otter.utils.FunkwhaleResponse +import com.github.apognu.otter.utils.OtterResponse import com.github.kittinunf.fuel.gson.gsonDeserializerOf import com.google.gson.reflect.TypeToken import java.io.BufferedReader @@ -20,7 +20,7 @@ class AlbumsRepository(override val context: Context?, artistId: Int? = null) : if (artistId == null) "/api/v1/albums/?playable=true&ordering=title" else "/api/v1/albums/?playable=true&artist=$artistId&ordering=release_date" - HttpUpstream>( + HttpUpstream>( HttpUpstream.Behavior.Progressive, url, object : TypeToken() {}.type diff --git a/app/src/main/java/com/github/apognu/otter/repositories/ArtistTracksRepository.kt b/app/src/main/java/com/github/apognu/otter/repositories/ArtistTracksRepository.kt index 24e7d74..401f87d 100644 --- a/app/src/main/java/com/github/apognu/otter/repositories/ArtistTracksRepository.kt +++ b/app/src/main/java/com/github/apognu/otter/repositories/ArtistTracksRepository.kt @@ -1,7 +1,7 @@ package com.github.apognu.otter.repositories import android.content.Context -import com.github.apognu.otter.utils.FunkwhaleResponse +import com.github.apognu.otter.utils.OtterResponse import com.github.apognu.otter.utils.Track import com.github.apognu.otter.utils.TracksCache import com.github.apognu.otter.utils.TracksResponse @@ -11,7 +11,7 @@ import java.io.BufferedReader class ArtistTracksRepository(override val context: Context?, private val artistId: Int) : Repository() { override val cacheId = "tracks-artist-$artistId" - override val upstream = HttpUpstream>(HttpUpstream.Behavior.AtOnce, "/api/v1/tracks/?playable=true&artist=$artistId", object : TypeToken() {}.type) + override val upstream = HttpUpstream>(HttpUpstream.Behavior.AtOnce, "/api/v1/tracks/?playable=true&artist=$artistId", object : TypeToken() {}.type) override fun cache(data: List) = TracksCache(data) override fun uncache(reader: BufferedReader) = gsonDeserializerOf(TracksCache::class.java).deserialize(reader) diff --git a/app/src/main/java/com/github/apognu/otter/repositories/ArtistsRepository.kt b/app/src/main/java/com/github/apognu/otter/repositories/ArtistsRepository.kt index fc797c7..b130de8 100644 --- a/app/src/main/java/com/github/apognu/otter/repositories/ArtistsRepository.kt +++ b/app/src/main/java/com/github/apognu/otter/repositories/ArtistsRepository.kt @@ -4,14 +4,14 @@ import android.content.Context import com.github.apognu.otter.utils.Artist import com.github.apognu.otter.utils.ArtistsCache import com.github.apognu.otter.utils.ArtistsResponse -import com.github.apognu.otter.utils.FunkwhaleResponse +import com.github.apognu.otter.utils.OtterResponse import com.github.kittinunf.fuel.gson.gsonDeserializerOf import com.google.gson.reflect.TypeToken import java.io.BufferedReader class ArtistsRepository(override val context: Context?) : Repository() { override val cacheId = "artists" - override val upstream = HttpUpstream>(HttpUpstream.Behavior.Progressive, "/api/v1/artists/?playable=true&ordering=name", object : TypeToken() {}.type) + override val upstream = HttpUpstream>(HttpUpstream.Behavior.Progressive, "/api/v1/artists/?playable=true&ordering=name", object : TypeToken() {}.type) override fun cache(data: List) = ArtistsCache(data) override fun uncache(reader: BufferedReader) = gsonDeserializerOf(ArtistsCache::class.java).deserialize(reader) diff --git a/app/src/main/java/com/github/apognu/otter/repositories/FavoritesRepository.kt b/app/src/main/java/com/github/apognu/otter/repositories/FavoritesRepository.kt index 6dc8e82..960d39a 100644 --- a/app/src/main/java/com/github/apognu/otter/repositories/FavoritesRepository.kt +++ b/app/src/main/java/com/github/apognu/otter/repositories/FavoritesRepository.kt @@ -16,7 +16,7 @@ import java.io.BufferedReader class FavoritesRepository(override val context: Context?) : Repository() { override val cacheId = "favorites.v2" - override val upstream = HttpUpstream>(HttpUpstream.Behavior.AtOnce, "/api/v1/tracks/?favorites=true&playable=true&ordering=title", object : TypeToken() {}.type) + override val upstream = HttpUpstream>(HttpUpstream.Behavior.AtOnce, "/api/v1/tracks/?favorites=true&playable=true&ordering=title", object : TypeToken() {}.type) override fun cache(data: List) = TracksCache(data) override fun uncache(reader: BufferedReader) = gsonDeserializerOf(TracksCache::class.java).deserialize(reader) @@ -81,7 +81,7 @@ class FavoritesRepository(override val context: Context?) : Repository() { override val cacheId = "favorited" - override val upstream = HttpUpstream>(HttpUpstream.Behavior.Single, "/api/v1/favorites/tracks/all/?playable=true", object : TypeToken() {}.type) + override val upstream = HttpUpstream>(HttpUpstream.Behavior.Single, "/api/v1/favorites/tracks/all/?playable=true", object : TypeToken() {}.type) override fun cache(data: List) = FavoritedCache(data) override fun uncache(reader: BufferedReader) = gsonDeserializerOf(FavoritedCache::class.java).deserialize(reader) diff --git a/app/src/main/java/com/github/apognu/otter/repositories/HttpUpstream.kt b/app/src/main/java/com/github/apognu/otter/repositories/HttpUpstream.kt index da3a799..e36fdcf 100644 --- a/app/src/main/java/com/github/apognu/otter/repositories/HttpUpstream.kt +++ b/app/src/main/java/com/github/apognu/otter/repositories/HttpUpstream.kt @@ -18,7 +18,7 @@ import java.io.Reader import java.lang.reflect.Type import kotlin.math.ceil -class HttpUpstream>(val behavior: Behavior, private val url: String, private val type: Type) : Upstream { +class HttpUpstream>(val behavior: Behavior, private val url: String, private val type: Type) : Upstream { enum class Behavior { Single, AtOnce, Progressive } @@ -61,7 +61,7 @@ class HttpUpstream>(val behavior: Behavior, pr ) }.flowOn(IO) - class GenericDeserializer>(val type: Type) : ResponseDeserializable { + class GenericDeserializer>(val type: Type) : ResponseDeserializable { override fun deserialize(reader: Reader): T? { return Gson().fromJson(reader, type) } diff --git a/app/src/main/java/com/github/apognu/otter/repositories/PlaylistTracksRepository.kt b/app/src/main/java/com/github/apognu/otter/repositories/PlaylistTracksRepository.kt index 668d59c..8ca10e0 100644 --- a/app/src/main/java/com/github/apognu/otter/repositories/PlaylistTracksRepository.kt +++ b/app/src/main/java/com/github/apognu/otter/repositories/PlaylistTracksRepository.kt @@ -1,7 +1,7 @@ package com.github.apognu.otter.repositories import android.content.Context -import com.github.apognu.otter.utils.FunkwhaleResponse +import com.github.apognu.otter.utils.OtterResponse import com.github.apognu.otter.utils.PlaylistTrack import com.github.apognu.otter.utils.PlaylistTracksCache import com.github.apognu.otter.utils.PlaylistTracksResponse @@ -14,7 +14,7 @@ import java.io.BufferedReader class PlaylistTracksRepository(override val context: Context?, playlistId: Int) : Repository() { override val cacheId = "tracks-playlist-$playlistId" - override val upstream = HttpUpstream>(HttpUpstream.Behavior.Single, "/api/v1/playlists/$playlistId/tracks/?playable=true", object : TypeToken() {}.type) + override val upstream = HttpUpstream>(HttpUpstream.Behavior.Single, "/api/v1/playlists/$playlistId/tracks/?playable=true", object : TypeToken() {}.type) override fun cache(data: List) = PlaylistTracksCache(data) override fun uncache(reader: BufferedReader) = gsonDeserializerOf(PlaylistTracksCache::class.java).deserialize(reader) diff --git a/app/src/main/java/com/github/apognu/otter/repositories/PlaylistsRepository.kt b/app/src/main/java/com/github/apognu/otter/repositories/PlaylistsRepository.kt index 0388c21..9ecc506 100644 --- a/app/src/main/java/com/github/apognu/otter/repositories/PlaylistsRepository.kt +++ b/app/src/main/java/com/github/apognu/otter/repositories/PlaylistsRepository.kt @@ -1,7 +1,7 @@ package com.github.apognu.otter.repositories import android.content.Context -import com.github.apognu.otter.utils.FunkwhaleResponse +import com.github.apognu.otter.utils.OtterResponse import com.github.apognu.otter.utils.Playlist import com.github.apognu.otter.utils.PlaylistsCache import com.github.apognu.otter.utils.PlaylistsResponse @@ -11,7 +11,7 @@ import java.io.BufferedReader class PlaylistsRepository(override val context: Context?) : Repository() { override val cacheId = "tracks-playlists" - override val upstream = HttpUpstream>(HttpUpstream.Behavior.Progressive, "/api/v1/playlists/?playable=true&ordering=name", object : TypeToken() {}.type) + override val upstream = HttpUpstream>(HttpUpstream.Behavior.Progressive, "/api/v1/playlists/?playable=true&ordering=name", object : TypeToken() {}.type) override fun cache(data: List) = PlaylistsCache(data) override fun uncache(reader: BufferedReader) = gsonDeserializerOf(PlaylistsCache::class.java).deserialize(reader) diff --git a/app/src/main/java/com/github/apognu/otter/repositories/RadiosRepository.kt b/app/src/main/java/com/github/apognu/otter/repositories/RadiosRepository.kt index 904105a..1f16598 100644 --- a/app/src/main/java/com/github/apognu/otter/repositories/RadiosRepository.kt +++ b/app/src/main/java/com/github/apognu/otter/repositories/RadiosRepository.kt @@ -1,7 +1,7 @@ package com.github.apognu.otter.repositories import android.content.Context -import com.github.apognu.otter.utils.FunkwhaleResponse +import com.github.apognu.otter.utils.OtterResponse import com.github.apognu.otter.utils.Radio import com.github.apognu.otter.utils.RadiosCache import com.github.apognu.otter.utils.RadiosResponse @@ -11,7 +11,7 @@ import java.io.BufferedReader class RadiosRepository(override val context: Context?) : Repository() { override val cacheId = "radios" - override val upstream = HttpUpstream>(HttpUpstream.Behavior.Progressive, "/api/v1/radios/radios/?ordering=name", object : TypeToken() {}.type) + override val upstream = HttpUpstream>(HttpUpstream.Behavior.Progressive, "/api/v1/radios/radios/?ordering=name", object : TypeToken() {}.type) override fun cache(data: List) = RadiosCache(data) override fun uncache(reader: BufferedReader) = gsonDeserializerOf(RadiosCache::class.java).deserialize(reader) diff --git a/app/src/main/java/com/github/apognu/otter/repositories/SearchRepository.kt b/app/src/main/java/com/github/apognu/otter/repositories/SearchRepository.kt index 8b57be2..58a87b5 100644 --- a/app/src/main/java/com/github/apognu/otter/repositories/SearchRepository.kt +++ b/app/src/main/java/com/github/apognu/otter/repositories/SearchRepository.kt @@ -12,7 +12,7 @@ import java.io.BufferedReader class TracksSearchRepository(override val context: Context?, query: String) : Repository() { override val cacheId: String? = null - override val upstream = HttpUpstream>(HttpUpstream.Behavior.AtOnce, "/api/v1/tracks/?playable=true&q=$query", object : TypeToken() {}.type) + override val upstream = HttpUpstream>(HttpUpstream.Behavior.AtOnce, "/api/v1/tracks/?playable=true&q=$query", object : TypeToken() {}.type) override fun cache(data: List) = TracksCache(data) override fun uncache(reader: BufferedReader) = gsonDeserializerOf(TracksCache::class.java).deserialize(reader) @@ -42,7 +42,7 @@ class TracksSearchRepository(override val context: Context?, query: String) : Re class ArtistsSearchRepository(override val context: Context?, query: String) : Repository() { override val cacheId: String? = null - override val upstream = HttpUpstream>(HttpUpstream.Behavior.AtOnce, "/api/v1/artists/?playable=true&q=$query", object : TypeToken() {}.type) + override val upstream = HttpUpstream>(HttpUpstream.Behavior.AtOnce, "/api/v1/artists/?playable=true&q=$query", object : TypeToken() {}.type) override fun cache(data: List) = ArtistsCache(data) override fun uncache(reader: BufferedReader) = gsonDeserializerOf(ArtistsCache::class.java).deserialize(reader) @@ -50,7 +50,7 @@ class ArtistsSearchRepository(override val context: Context?, query: String) : R class AlbumsSearchRepository(override val context: Context?, query: String) : Repository() { override val cacheId: String? = null - override val upstream = HttpUpstream>(HttpUpstream.Behavior.AtOnce, "/api/v1/albums/?playable=true&q=$query", object : TypeToken() {}.type) + override val upstream = HttpUpstream>(HttpUpstream.Behavior.AtOnce, "/api/v1/albums/?playable=true&q=$query", object : TypeToken() {}.type) override fun cache(data: List) = AlbumsCache(data) override fun uncache(reader: BufferedReader) = gsonDeserializerOf(AlbumsCache::class.java).deserialize(reader) diff --git a/app/src/main/java/com/github/apognu/otter/repositories/TracksRepository.kt b/app/src/main/java/com/github/apognu/otter/repositories/TracksRepository.kt index a29191c..27c3531 100644 --- a/app/src/main/java/com/github/apognu/otter/repositories/TracksRepository.kt +++ b/app/src/main/java/com/github/apognu/otter/repositories/TracksRepository.kt @@ -13,7 +13,7 @@ import java.io.BufferedReader class TracksRepository(override val context: Context?, albumId: Int) : Repository() { override val cacheId = "tracks-album-$albumId" - override val upstream = HttpUpstream>(HttpUpstream.Behavior.AtOnce, "/api/v1/tracks/?playable=true&album=$albumId", object : TypeToken() {}.type) + override val upstream = HttpUpstream>(HttpUpstream.Behavior.AtOnce, "/api/v1/tracks/?playable=true&album=$albumId", object : TypeToken() {}.type) override fun cache(data: List) = TracksCache(data) override fun uncache(reader: BufferedReader) = gsonDeserializerOf(TracksCache::class.java).deserialize(reader) diff --git a/app/src/main/java/com/github/apognu/otter/utils/Models.kt b/app/src/main/java/com/github/apognu/otter/utils/Models.kt index dc7b360..a83d4cf 100644 --- a/app/src/main/java/com/github/apognu/otter/utils/Models.kt +++ b/app/src/main/java/com/github/apognu/otter/utils/Models.kt @@ -17,42 +17,42 @@ class RadiosCache(data: List) : CacheItem(data) class FavoritedCache(data: List) : CacheItem(data) class QueueCache(data: List) : CacheItem(data) -abstract class FunkwhaleResponse { +abstract class OtterResponse { abstract val count: Int abstract val next: String? abstract fun getData(): List } -data class UserResponse(override val count: Int, override val next: String?, val results: List) : FunkwhaleResponse() { +data class UserResponse(override val count: Int, override val next: String?, val results: List) : OtterResponse() { override fun getData() = results } -data class ArtistsResponse(override val count: Int, override val next: String?, val results: List) : FunkwhaleResponse() { +data class ArtistsResponse(override val count: Int, override val next: String?, val results: List) : OtterResponse() { override fun getData() = results } -data class AlbumsResponse(override val count: Int, override val next: String?, val results: AlbumList) : FunkwhaleResponse() { +data class AlbumsResponse(override val count: Int, override val next: String?, val results: AlbumList) : OtterResponse() { override fun getData() = results } -data class TracksResponse(override val count: Int, override val next: String?, val results: List) : FunkwhaleResponse() { +data class TracksResponse(override val count: Int, override val next: String?, val results: List) : OtterResponse() { override fun getData() = results } -data class FavoritedResponse(override val count: Int, override val next: String?, val results: List) : FunkwhaleResponse() { +data class FavoritedResponse(override val count: Int, override val next: String?, val results: List) : OtterResponse() { override fun getData() = results.map { it.track } } -data class PlaylistsResponse(override val count: Int, override val next: String?, val results: List) : FunkwhaleResponse() { +data class PlaylistsResponse(override val count: Int, override val next: String?, val results: List) : OtterResponse() { override fun getData() = results } -data class PlaylistTracksResponse(override val count: Int, override val next: String?, val results: List) : FunkwhaleResponse() { +data class PlaylistTracksResponse(override val count: Int, override val next: String?, val results: List) : OtterResponse() { override fun getData() = results } -data class RadiosResponse(override val count: Int, override val next: String?, val results: List) : FunkwhaleResponse() { +data class RadiosResponse(override val count: Int, override val next: String?, val results: List) : OtterResponse() { override fun getData() = results }