Added extra call to ask for applications details
[meego-garage:garage-client-services.git] / src / ocsapplication.h
1 #ifndef OCSAPPLICATION_H
2 #define OCSAPPLICATION_H
3
4 #include "application.h"
5 #include "attica/content.h"
6
7 namespace Attica {
8 class Content;
9 }
10
11 namespace MeeGoGarage {
12
13 /// Provides metadata information about the an application in Meego Garage
14 class OcsApplication : public Application
15 {
16 Q_OBJECT
17 public:
18
19     OcsApplication(Catalog* cat, Category *category, Attica::Content & app, QObject *parent = 0);
20
21     virtual bool setUserRating(int rating);
22     virtual ReviewListJob *requestReviews(int pageNumber = 0, int itemsPerPage = 10);
23     virtual bool addReview(const Review & review);
24
25 protected slots:
26
27     virtual void requestDetails();
28
29 private slots:
30
31     void onRequestDetailsOver();
32     void postJobAddReviewFinished();
33
34 protected:
35
36     friend class OcsCatalog;
37
38     void updateFromContent(Attica::Content & content);
39     void processDownloadDescriptions(const QList<Attica::DownloadDescription>& downloadDescriptions);
40
41     Attica::Content m_content;
42
43 };
44
45 } //MeeGoGarage namespace
46
47 #endif // OCSAPPLICATION_H