PageRenderTime 82ms CodeModel.GetById 40ms app.highlight 4ms RepoModel.GetById 37ms app.codeStats 0ms

/src/libtomahawk/infosystem/infoplugins/generic/RoviPlugin.h

http://github.com/tomahawk-player/tomahawk
C++ Header | 64 lines | 32 code | 15 blank | 17 comment | 0 complexity | 6c883b83950c5d44c5c8f8016cbcea18 MD5 | raw file
 1/* === This file is part of Tomahawk Player - <http://tomahawk-player.org> ===
 2 *
 3 *   Copyright 2010-2011, Leo Franchi <lfranchi@kde.org>
 4 *
 5 *   Tomahawk is free software: you can redistribute it and/or modify
 6 *   it under the terms of the GNU General Public License as published by
 7 *   the Free Software Foundation, either version 3 of the License, or
 8 *   (at your option) any later version.
 9 *
10 *   Tomahawk is distributed in the hope that it will be useful,
11 *   but WITHOUT ANY WARRANTY; without even the implied warranty of
12 *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 *   GNU General Public License for more details.
14 *
15 *   You should have received a copy of the GNU General Public License
16 *   along with Tomahawk. If not, see <http://www.gnu.org/licenses/>.
17 */
18
19#ifndef ROVIPLUGIN_H
20#define ROVIPLUGIN_H
21
22#include "infosystem/infosystem.h"
23
24#include <QNetworkReply>
25
26class QNetworkAccessManager;
27
28namespace Tomahawk
29{
30
31namespace InfoSystem
32{
33
34class RoviPlugin : public InfoPlugin
35{
36    Q_OBJECT
37public:
38    RoviPlugin();
39    virtual ~RoviPlugin();
40
41protected:
42    virtual void notInCacheSlot( Tomahawk::InfoSystem::InfoStringHash criteria, Tomahawk::InfoSystem::InfoRequestData requestData );
43
44    virtual void pushInfo( QString, Tomahawk::InfoSystem::InfoType, QVariant )
45    {}
46
47    virtual void getInfo( Tomahawk::InfoSystem::InfoRequestData requestData );
48
49private slots:
50    void albumLookupFinished();
51    void albumLookupError( QNetworkReply::NetworkError );
52private:
53    QNetworkReply* makeRequest( QUrl url );
54    QByteArray generateSig() const;
55
56    QByteArray m_apiKey;
57    QByteArray m_secret;
58};
59
60}
61
62}
63
64#endif // ROVIPLUGIN_H