mirror of
https://github.com/librespot-org/librespot.git
synced 2024-12-18 17:11:53 +00:00
Make standard metadata get handle also playlists
This commit is contained in:
parent
c7c24951d9
commit
65d07579ec
1 changed files with 2 additions and 15 deletions
|
@ -298,21 +298,8 @@ impl Metadata for Album {
|
||||||
impl Metadata for Playlist {
|
impl Metadata for Playlist {
|
||||||
type Message = protocol::playlist4changes::SelectedListContent;
|
type Message = protocol::playlist4changes::SelectedListContent;
|
||||||
|
|
||||||
fn base_url() -> &'static str {
|
fn request_url(id: SpotifyId) -> String {
|
||||||
"hm://playlist/v2/playlist"
|
format!("hm://playlist/v2/playlist/{}", id.to_base62())
|
||||||
}
|
|
||||||
|
|
||||||
fn get(session: &Session, id: SpotifyId) -> Box<Future<Item = Self, Error = MercuryError>> {
|
|
||||||
let uri = format!("{}/{}", Self::base_url(), id.to_base62());
|
|
||||||
let request = session.mercury().get(uri);
|
|
||||||
|
|
||||||
let session = session.clone();
|
|
||||||
Box::new(request.and_then(move |response| {
|
|
||||||
let data = response.payload.first().expect("Empty payload");
|
|
||||||
let msg: Self::Message = protobuf::parse_from_bytes(data).unwrap();
|
|
||||||
|
|
||||||
Ok(Self::parse(&msg, &session))
|
|
||||||
}))
|
|
||||||
}
|
}
|
||||||
|
|
||||||
fn parse(msg: &Self::Message, _: &Session) -> Self {
|
fn parse(msg: &Self::Message, _: &Session) -> Self {
|
||||||
|
|
Loading…
Reference in a new issue