1/* Copyright 2012 Pankaj Bhambhani <pankajb64@gmail.com>
2
3 This library is free software; you can redistribute it and/or modify
4 it under the terms of the GNU Library General Public License as published
5 by the Free Software Foundation; either version 2 of the License or
6 (at your option) version 3 or, at the discretion of KDE e.V.
7 (which shall act as a proxy as in section 14 of the GPLv3), any later version.
8
9 This library is distributed in the hope that it will be useful,
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 Library General Public License for more details.
13
14 You should have received a copy of the GNU Library General Public License
15 along with this library; see the file COPYING.LIB. If not, write to
16 the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
17 Boston, MA 02110-1301, USA.
18*/
19
20#ifndef KFBAPI_APPINFO_H
21#define KFBAPI_APPINFO_H
22
23#include "libkfbapi_export.h"
24
25#include <QSharedPointer>
26#include <QUrl>
27
28namespace KFbAPI {
29
30/**
31 * Class to represent a facebook application. See https://developers.facebook.com/docs/reference/api/application/
32 */
33
34class LIBKFBAPI_EXPORT AppInfo
35{
36public:
37 AppInfo();
38 AppInfo(const AppInfo &other);
39 ~AppInfo();
40
41 AppInfo &operator=(const AppInfo &other);
42
43 /**
44 * Set the facebook id of this application
45 * @param id the facebook id
46 */
47 void setId(const QString &id);
48 /**
49 * Returns the facebook id
50 */
51 QString id() const;
52
53 /**
54 * Set the facebook name of this application
55 * @param the facebook name
56 */
57 void setName(const QString &name);
58 /**
59 * Returns the facebook name
60 */
61 QString name() const;
62
63 /**
64 * Set the description of this application
65 * @param the description
66 */
67 void setDescription(const QString &description);
68 /**
69 * Returns the description
70 */
71 QString description() const;
72
73 /**
74 * Set the category of this application
75 * @param the category
76 */
77 void setCategory(const QString &category);
78 /**
79 * Returns the category
80 */
81 QString category() const;
82
83 /**
84 * Set the company of this application
85 * @param the company
86 */
87 void setCompany(const QString &company);
88 /**
89 * Returns the company
90 */
91 QString company() const;
92
93 /**
94 * Set the Icon URL of this application
95 * @param the Icon URL
96 */
97 void setIconUrl(const QUrl &iconUrl);
98 /**
99 * Returns the Icon Url
100 */
101 QUrl iconUrl() const;
102
103 /**
104 * Set the subcategory of this application
105 * @param the subcategory
106 */
107 void setSubcategory(const QString &subcategory);
108 /**
109 * Returns the subcategory
110 */
111 QString subcategory() const;
112
113 /**
114 * Set the Logo URL of this application
115 * @param the Logo URL
116 */
117 void setLogoUrl(const QUrl &logoUrl);
118 /**
119 * Returns the Logo URL
120 */
121 QUrl logoUrl() const;
122
123 /**
124 * Set the link of this application
125 * @param the link
126 */
127 void setLink(const QUrl &link);
128 /**
129 * Returns the link
130 */
131 QUrl link() const;
132
133private:
134 class AppInfoPrivate;
135 QSharedDataPointer<AppInfoPrivate> d;
136};
137
138}
139
140#endif
141