Skip to content

Commit 9be1468

Browse files
committed
fix converters
1 parent 8aac29e commit 9be1468

File tree

2 files changed

+19
-21
lines changed

2 files changed

+19
-21
lines changed

src/main/kotlin/com/adamratzman/spotify/SpotifyAPI.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -181,7 +181,7 @@ class SpotifyClientAPI internal constructor(
181181
} else {
182182
this.token = tempToken.copy(
183183
refreshToken = tempToken.refreshToken ?: this.token.refreshToken,
184-
scopes = tempToken.scopes ?: this.token.scopes
184+
scopes = tempToken.scopes
185185
)
186186
logger.logInfo("Successfully refreshed the Spotify token")
187187
}

src/main/kotlin/com/adamratzman/spotify/models/serialization/KlaxonConverters.kt

Lines changed: 18 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@ package com.adamratzman.spotify.models.serialization
33

44
import com.adamratzman.spotify.SpotifyAPI
55
import com.adamratzman.spotify.models.Album
6-
import com.adamratzman.spotify.models.AlbumURI
76
import com.adamratzman.spotify.models.FeaturedPlaylists
87
import com.adamratzman.spotify.models.Followers
98
import com.adamratzman.spotify.models.Playlist
@@ -21,21 +20,21 @@ internal fun getPublicUserConverter(api: SpotifyAPI) = object : Converter {
2120
return jv.obj?.let { obj ->
2221
if (obj.string("id")?.isNotBlank() == true) {
2322
SpotifyPublicUser(
24-
obj.string("display_name"),
2523
obj.obj("external_urls")!!.map.mapValues { it.value as String },
26-
obj.obj("followers")?.let { api.klaxon.parseFromJsonObject<Followers>(it) }
27-
?: Followers(null, -1),
2824
obj.string("href")!!,
2925
obj.string("id")!!,
26+
obj.string("uri")!!,
27+
obj.string("display_name"),
28+
obj.obj("followers")?.let { api.klaxon.parseFromJsonObject<Followers>(it) }
29+
?: Followers(null, -1),
3030
obj.array("images") ?: listOf(),
31-
obj.string("type")!!,
32-
obj.string("uri")!!
33-
)
31+
obj.string("type")!!
32+
)
3433
} else {
3534
// this is the *Spotify* user, and is SOMEHOW broken
3635
SpotifyPublicUser(
37-
externalUrls = hashMapOf(), href = "https://api.spotify.com/v1/users/spotify",
38-
id = "spotify", type = "user", _uri = "spotify:user:spotify"
36+
_externalUrls = hashMapOf(), _href = "https://api.spotify.com/v1/users/spotify",
37+
_id = "spotify", type = "user", _uri = "spotify:user:spotify"
3938
)
4039
}
4140
}
@@ -70,14 +69,15 @@ internal fun getAlbumConverter(api: SpotifyAPI) = object : Converter {
7069
return jv.obj?.let { obj ->
7170
return Album(
7271
obj.string("album_type")!!,
73-
obj.array("artists")!!,
7472
obj.array("available_markets") ?: listOf(),
75-
obj.array("copyrights")!!,
76-
obj.obj("external_ids")!!.map.mapValues { it.value as String },
7773
obj.obj("external_urls")!!.map.mapValues { it.value as String },
78-
obj.array("genres")!!,
74+
obj.obj("external_ids")!!.map.mapValues { it.value as String },
7975
obj.string("href")!!,
8076
obj.string("id")!!,
77+
obj.string("uri")!!,
78+
obj.array("artists")!!,
79+
obj.array("copyrights")!!,
80+
obj.array("genres")!!,
8181
obj.array("images")!!,
8282
obj.string("label")!!,
8383
obj.string("name")!!,
@@ -86,8 +86,6 @@ internal fun getAlbumConverter(api: SpotifyAPI) = object : Converter {
8686
obj.string("release_date_precision")!!,
8787
obj.obj("tracks")!!.toJsonString().toPagingObject(endpoint = api.tracks),
8888
obj.string("type")!!,
89-
obj.string("uri")!!,
90-
AlbumURI(obj.string("uri")!!),
9189
obj.int("total_tracks")!!
9290
)
9391
}
@@ -121,21 +119,21 @@ internal fun getPlaylistConverter(api: SpotifyAPI) = object : Converter {
121119
override fun fromJson(jv: JsonValue): Any? {
122120
return jv.obj?.let { obj ->
123121
return Playlist(
124-
obj.boolean("collaborative")!!,
125-
obj.string("description")!!,
126122
obj.obj("external_urls")!!.map.mapValues { it.value as String },
127-
api.klaxon.parseFromJsonObject(obj.obj("followers")!!)!!,
128123
obj.string("href")!!,
129124
obj.string("id")!!,
125+
obj.string("uri")!!,
126+
obj.boolean("collaborative")!!,
127+
obj.string("description")!!,
128+
api.klaxon.parseFromJsonObject(obj.obj("followers")!!)!!,
130129
obj.string("primary_color"),
131130
obj.array("images")!!,
132131
obj.string("name")!!,
133132
api.klaxon.parseFromJsonObject(obj.obj("owner")!!)!!,
134133
obj.boolean("public"),
135134
obj.string("snapshot_id")!!,
136135
obj.obj("tracks")!!.toJsonString().toPagingObject(endpoint = api.tracks),
137-
obj.string("type")!!,
138-
obj.string("uri")!!
136+
obj.string("type")!!
139137
)
140138
}
141139
}

0 commit comments

Comments
 (0)