Audioscrobbler.h | Audioscrobbler.h | |||
---|---|---|---|---|
skipping to change at line 60 | skipping to change at line 60 | |||
It could just be that they have an error code */ | It could just be that they have an error code */ | |||
void scrobblesSubmitted( const QList<lastfm::Track>& tracks ); | void scrobblesSubmitted( const QList<lastfm::Track>& tracks ); | |||
void nowPlayingError( int code, QString message ); | void nowPlayingError( int code, QString message ); | |||
public slots: | public slots: | |||
/** will ask Last.fm to update the now playing information for the | /** will ask Last.fm to update the now playing information for the | |||
* authenticated user */ | * authenticated user */ | |||
void nowPlaying( const Track& ); | void nowPlaying( const Track& ); | |||
/** will cache the track and call submit() */ | /** will cache the track and call submit() */ | |||
void cache( const Track& ); | void cache( const Track& ); | |||
void cacheBatch( const QList<lastfm::Track>&, const QString& id = " | void cacheBatch( const QList<lastfm::Track>&, const QString& id ); | |||
" ); | void cacheBatch( const QList<lastfm::Track>& ); | |||
/** will submit the submission cache for this user */ | /** will submit the submission cache for this user */ | |||
void submit(); | void submit(); | |||
private slots: | private slots: | |||
void onNowPlayingReturn(); | void onNowPlayingReturn(); | |||
void onTrackScrobbleReturn(); | void onTrackScrobbleReturn(); | |||
private: | private: | |||
class AudioscrobblerPrivate * const d; | class AudioscrobblerPrivate * const d; | |||
End of changes. 1 change blocks. | ||||
2 lines changed or deleted | 2 lines changed or added | |||
ScrobbleCache.h | ScrobbleCache.h | |||
---|---|---|---|---|
skipping to change at line 32 | skipping to change at line 32 | |||
#include "Track.h" | #include "Track.h" | |||
#include <QList> | #include <QList> | |||
namespace lastfm { | namespace lastfm { | |||
/** absolutely not thread-safe */ | /** absolutely not thread-safe */ | |||
class LASTFM_DLLEXPORT ScrobbleCache | class LASTFM_DLLEXPORT ScrobbleCache | |||
{ | { | |||
public: | public: | |||
enum Invalidity | ||||
{ | ||||
TooShort, | ||||
ArtistNameMissing, | ||||
TrackNameMissing, | ||||
ArtistInvalid, | ||||
NoTimestamp, | ||||
FromTheFuture, | ||||
FromTheDistantPast | ||||
}; | ||||
explicit ScrobbleCache( const QString& username ); | explicit ScrobbleCache( const QString& username ); | |||
ScrobbleCache( const ScrobbleCache& that ); | ScrobbleCache( const ScrobbleCache& that ); | |||
~ScrobbleCache(); | ~ScrobbleCache(); | |||
/** note this is unique for Track::sameAs() and equal timestamps | /** note this is unique for Track::sameAs() and equal timestamps | |||
* obviously playcounts will not be increased for the same timestamp * / | * obviously playcounts will not be increased for the same timestamp * / | |||
void add( const QList<Track>& ); | void add( const QList<Track>& ); | |||
/** returns the number of tracks left in the queue */ | /** returns the number of tracks left in the queue */ | |||
int remove( const QList<Track>& ); | int remove( const QList<Track>& ); | |||
static bool isValid( const lastfm::Track& track, Invalidity* v = 0 ); | ||||
ScrobbleCache& operator=( const ScrobbleCache& that ); | ScrobbleCache& operator=( const ScrobbleCache& that ); | |||
QList<Track> tracks() const; | QList<Track> tracks() const; | |||
QString path() const; | QString path() const; | |||
QString username() const; | QString username() const; | |||
private: | private: | |||
bool operator==( const ScrobbleCache& ); //undefined | bool operator==( const ScrobbleCache& ); //undefined | |||
class ScrobbleCachePrivate * const d; | class ScrobbleCachePrivate * const d; | |||
}; | }; | |||
End of changes. 2 change blocks. | ||||
0 lines changed or deleted | 13 lines changed or added | |||
XmlQuery.h | XmlQuery.h | |||
---|---|---|---|---|
skipping to change at line 46 | skipping to change at line 46 | |||
* | * | |||
* XmlQuery xq = lastfm::ws::parse(response); | * XmlQuery xq = lastfm::ws::parse(response); | |||
* qDebug() << xq["artist"].text() | * qDebug() << xq["artist"].text() | |||
* | * | |||
* Notice the lfm node is not referenced, that is because it is th e | * Notice the lfm node is not referenced, that is because it is th e | |||
* document-element of the XML document. | * document-element of the XML document. | |||
*/ | */ | |||
XmlQuery(); | XmlQuery(); | |||
XmlQuery( const XmlQuery& that ); | XmlQuery( const XmlQuery& that ); | |||
~XmlQuery(); | ~XmlQuery(); | |||
/** | ||||
* Fills in the XmlQuery response by parsing raw reply @param data | ||||
from the | ||||
* webservice. | ||||
* | ||||
* @return true if successfully parsed and the response does not si | ||||
gnify an error, | ||||
* false otherwise. When false is returned, parseError() contains t | ||||
he error. | ||||
*/ | ||||
bool parse( const QByteArray& data ); | bool parse( const QByteArray& data ); | |||
/** | ||||
* Convenience parse() overload that takes data from the @param rep | ||||
ly and calls | ||||
* deleteLater() on it. | ||||
* | ||||
* @return true if successfully parsed and the response does not si | ||||
gnify an error, | ||||
* false otherwise. When false is returned, parseError() contains t | ||||
he error. | ||||
*/ | ||||
bool parse( QNetworkReply* reply ); | ||||
ws::ParseError parseError() const; | ws::ParseError parseError() const; | |||
XmlQuery( const QDomElement& e, const char* name = "" ); | XmlQuery( const QDomElement& e, const char* name = "" ); | |||
/** Selects a DIRECT child element, you can specify attributes like so: | /** Selects a DIRECT child element, you can specify attributes like so: | |||
* | * | |||
* e["element"]["element attribute=value"].text(); | * e["element"]["element attribute=value"].text(); | |||
*/ | */ | |||
XmlQuery operator[]( const QString& name ) const; | XmlQuery operator[]( const QString& name ) const; | |||
QString text() const; | QString text() const; | |||
End of changes. 2 change blocks. | ||||
0 lines changed or deleted | 24 lines changed or added | |||