diff -r 612c4815aebe -r 4cc1412daed0 mpviewplugins/mpdetailsviewplugin/inc/mpquerymanager.h --- a/mpviewplugins/mpdetailsviewplugin/inc/mpquerymanager.h Fri Jul 23 17:31:12 2010 -0500 +++ b/mpviewplugins/mpdetailsviewplugin/inc/mpquerymanager.h Fri Aug 06 16:51:36 2010 -0500 @@ -17,11 +17,11 @@ #ifndef MPQUERYMANAGER_H_ #define MPQUERYMANAGER_H_ -#include #include #include #include #include +#include #include "mpviewbase.h" @@ -45,66 +45,76 @@ ~MpQueryManager(); public: - void clearNetworkReplies(); + void reset(); void queryLocalMusicStore( QString mArtist,QString mAlbum,QString mTitle ); void queryInspireMeItems( QString mArtist,QString mAlbum,QString mTitle ); - void clearRecommendations(); + void queryLocalMusicStore(); + bool isLocalMusicStore() const; - QStringList recommendationSongs(); - QStringList recommendationArtists(); - QStringList recommendationAlbumArtsLink(); - QMap recommendationAlbumArtsMap(); - void insertMapItem( const QString &uri, const QPixmap &pixmap ); + int recommendationsCount() const; + QString recommendedSong(int index) const; + QString recommendedArtist(int index) const; + HbIcon recommendedAlbumArt(int index) const; private slots: void retrieveInformationFinished( QNetworkReply* reply ); void retrieveInformationNetworkError( QNetworkReply::NetworkError error ); void retrieveInformationSslErrors( const QList &error ); - void DownloadFinished( QNetworkReply* reply ); + void albumArtDownloaded( QNetworkReply* reply ); void setAlbumArtUri( const QString &albumArtUri, const QString &albumArtName ); - void thumbnailReady( const QPixmap& pixmap, void *data, int id, int error ); + void thumbnailReady( const QPixmap pixmap, void *data, int id, int error ); private: + void clearThumbnails(); + void clearRecommendations(); + void clearNetworkReplies(); + void signalError(); void constructRequest( QString &uri ); // retrieve URI from Ovi music server void retrieveInformation( const QString &urlEncoded ); - void composeAlbumCover( QPixmap albumart ); QString keyValues( QStringList keys, QStringList values ) const; void handleParsedXML(); bool writeImageToFile( const QByteArray &aImageData, const QString &aImageFileName ); signals: - void networkError(); - void searchUrlRetrieved( const QString& url ); - void recommendationAlbumArtsReady(); - + void inspireMeItemAlbumArtReady(); + void localMusicStoreRetrieved(bool storeUpdated); + void localMusicStoreRetrievalError(); + void inspireMeItemsRetrievalError(); + void inspireMeItemsMetadataRetrieved(); + private: - QNetworkAccessManager *mManager; - QNetworkAccessManager *mDownloadManager; + QNetworkAccessManager *mManager; + QNetworkAccessManager *mAlbumArtDownloader; - int mDownloadedAlbumArts; + int mDownloadedAlbumArts; - QList mReplys; + QList mReplys; + QList mThumbnailRequests; - QDomDocument mDomDocument; - ThumbnailManager *mThumbnailManager; //owned + QDomDocument mDomDocument; + ThumbnailManager *mThumbnailManager; //owned - QString mArtist; - QString mAlbum; - QString mTitle; - - QStringList mRecommendationAlbumArtsName; + QString mArtist; + QString mAlbum; + QString mTitle; + QString mMusicStore; + QStringList mRecommendationAlbumArtsName; - QStringList mRecommendationSongs; - QStringList mRecommendationArtists; - QStringList mRecommendationAlbumArtsLink; - QMap mRecommendationAlbumArtsMap; - int mAlbumArtsReadyCount; - QPixmap mDefaultRecommendationAlbumArt; + QStringList mRecommendationSongs; + QStringList mRecommendationArtists; + QStringList mRecommendationAlbumArtsLink; + QMap mRecommendationAlbumArtsMap; + int mAlbumArtsReadyCount; + HbIcon mDefaultRecommendationAlbumArt; + enum RequestType { NoRequest, InspireMeItemsMetadataRequest, InspireMeItemsAlbumArtRequest, LocalStoreRequest }; + RequestType mRequestType; + int mRecommendationCount; }; #endif /* MPQUERYMANAGER_H_ */ +