30 lines
965 B
Kotlin
30 lines
965 B
Kotlin
package org.moire.ultrasonic.imageloader
|
|
|
|
import android.net.Uri
|
|
|
|
internal const val SCHEME = "subsonic_api"
|
|
internal const val COVER_ART_PATH = "cover_art"
|
|
internal const val AVATAR_PATH = "avatar"
|
|
internal const val QUERY_ID = "id"
|
|
internal const val SIZE = "size"
|
|
internal const val QUERY_USERNAME = "username"
|
|
|
|
/**
|
|
* Picasso.load() only accepts an URI as parameter. Therefore we create a bogus URI, in which
|
|
* we encode the data that we need in the RequestHandler.
|
|
*/
|
|
internal fun createLoadCoverArtRequest(entityId: String, size: Long? = 0): Uri =
|
|
Uri.Builder()
|
|
.scheme(SCHEME)
|
|
.appendPath(COVER_ART_PATH)
|
|
.appendQueryParameter(QUERY_ID, entityId)
|
|
.appendQueryParameter(SIZE, size.toString())
|
|
.build()
|
|
|
|
internal fun createLoadAvatarRequest(username: String): Uri =
|
|
Uri.Builder()
|
|
.scheme(SCHEME)
|
|
.appendPath(AVATAR_PATH)
|
|
.appendQueryParameter(QUERY_USERNAME, username)
|
|
.build()
|