Review Request: GSoC report: Integrate Spotify into Amarok #3 (squashed commits, recent on top)

Zhengliang Feng odayfans at gmail.com
Mon Jun 11 14:35:47 UTC 2012



> On June 11, 2012, 8:41 a.m., Bart Cerneels wrote:
> > I'm assuming this is mostly code copied and edited (but not completely) from the playdar work done by Andy for GSoC 2010.
> > As far as I understand it the protocol used by the Tomahawk resolver is still the same (playdar API), so that should work. There are a few things you should look at before going on with this design though.
> > First do some namespace cleanup. ScriptResolver for instance is a confusing name. Here you won't be dealing with a resolver script but the spotify-resolver application. ResolverProcessInterface looks a little long, but does cover it's function pretty well. Up to you to figure out a good name.
> > 
> > I've not gone through the architecture of the playdar QueryMaker. It probably works, but I wonder if it has to be so complicated. QM is not a simple API to begin with though. Spotify does not support search strings for specific types (artist, album, genre, etc) AFAIU, so a mapping might be more straight forward. If this code is working keep it for now, as long as no performance issues pop up.

Yes, some code like meta classe are just copy and paste. Some of them like Controller class might be deleted or replaced later, I was thinking about replacing it by ScriptResolver.
QM is more complicated than I thought, it may take some time to fully understand how it works. Spotify can do specific search by using "artist:" or "album:" and using of logical operands like 'AND' or 'OR' is also possible, details are on https://developer.spotify.com/technologies/libspotify/guidelines-hardware/ in the 'Search' section. So it is easy to construct a search string for specific types.


- Zhengliang


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/105201/#review14597
-----------------------------------------------------------


On June 11, 2012, 1:26 p.m., Zhengliang Feng wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://git.reviewboard.kde.org/r/105201/
> -----------------------------------------------------------
> 
> (Updated June 11, 2012, 1:26 p.m.)
> 
> 
> Review request for Amarok.
> 
> 
> Description
> -------
> 
> Add Spotify collection code
> 
> Currently implemented SpotifyCollection, SpotifyQueryMaker and
> SpotifyMeta. The ScriptResolver is the class handles communcation with
> standalone Spotify resolver, the code is mainly from original
> ScriptResolver, but added more functions to handle messages separately.
> 
> The controller class is used to start a ScriptResolver in a separate
> thread and handles queries.
> 
> 
> Diffs
> -----
> 
>   src/core-impl/collections/spotifycollection/support/ScriptResolver.h PRE-CREATION 
>   src/core-impl/collections/spotifycollection/support/ScriptResolver.cpp PRE-CREATION 
> 
> Diff: http://git.reviewboard.kde.org/r/105201/diff/
> 
> 
> Testing
> -------
> 
> Communication between ScriptResolver and Spotify resolver( from Tomahawk resolver repo https://github.com/ofan/tomahawk-resolvers ).
> Logging into Spotify using a username and password.
> 
> 
> Thanks,
> 
> Zhengliang Feng
> 
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/amarok-devel/attachments/20120611/f66ded2c/attachment-0001.html>


More information about the Amarok-devel mailing list