1 | /* |
2 | knewstuff3/provider.cpp |
3 | SPDX-FileCopyrightText: 2002 Cornelius Schumacher <schumacher@kde.org> |
4 | SPDX-FileCopyrightText: 2003-2007 Josef Spillner <spillner@kde.org> |
5 | SPDX-FileCopyrightText: 2009 Jeremy Whiting <jpwhiting@kde.org> |
6 | SPDX-FileCopyrightText: 2009 Frederik Gladhorn <gladhorn@kde.org> |
7 | |
8 | SPDX-License-Identifier: LGPL-2.1-or-later |
9 | */ |
10 | |
11 | #include "provider.h" |
12 | |
13 | #include "provider_p.h" |
14 | #include "xmlloader_p.h" |
15 | |
16 | #include <KLocalizedString> |
17 | |
18 | #include <QTimer> |
19 | |
20 | #if KNEWSTUFFCORE_BUILD_DEPRECATED_SINCE(6, 9) |
21 | |
22 | namespace KNSCore |
23 | { |
24 | |
25 | QString Provider::SearchRequest::hashForRequest() const |
26 | { |
27 | return QString::number((int)sortMode) + QLatin1Char(',') + searchTerm + QLatin1Char(',') + categories.join(sep: QLatin1Char('-')) + QLatin1Char(',') |
28 | + QString::number(page) + QLatin1Char(',') + QString::number(pageSize); |
29 | } |
30 | |
31 | Provider::Provider() |
32 | : d(new ProviderPrivate(this)) |
33 | { |
34 | } |
35 | |
36 | Provider::~Provider() = default; |
37 | |
38 | QString Provider::name() const |
39 | { |
40 | return d->name; |
41 | } |
42 | |
43 | QUrl Provider::icon() const |
44 | { |
45 | return d->icon; |
46 | } |
47 | |
48 | void Provider::setTagFilter(const QStringList &tagFilter) |
49 | { |
50 | d->tagFilter = tagFilter; |
51 | Q_EMIT tagFilterChanged(); |
52 | } |
53 | |
54 | QStringList Provider::tagFilter() const |
55 | { |
56 | return d->tagFilter; |
57 | } |
58 | |
59 | void Provider::setDownloadTagFilter(const QStringList &downloadTagFilter) |
60 | { |
61 | d->downloadTagFilter = downloadTagFilter; |
62 | Q_EMIT downloadTagFilterChanged(); |
63 | } |
64 | |
65 | QStringList Provider::downloadTagFilter() const |
66 | { |
67 | return d->downloadTagFilter; |
68 | } |
69 | |
70 | QDebug operator<<(QDebug dbg, const Provider::SearchRequest &search) |
71 | { |
72 | QDebugStateSaver saver(dbg); |
73 | dbg.nospace(); |
74 | dbg << "Provider::SearchRequest(" ; |
75 | dbg << "searchTerm: " << search.searchTerm << ','; |
76 | dbg << "categories: " << search.categories << ','; |
77 | dbg << "filter: " << search.filter << ','; |
78 | dbg << "page: " << search.page << ','; |
79 | dbg << "pageSize: " << search.pageSize; |
80 | dbg << ')'; |
81 | return dbg; |
82 | } |
83 | |
84 | QString Provider::version() const |
85 | { |
86 | d->updateOnFirstBasicsGet(); |
87 | return d->version; |
88 | } |
89 | |
90 | void Provider::setVersion(const QString &version) |
91 | { |
92 | if (d->version != version) { |
93 | d->version = version; |
94 | d->throttleBasics(); |
95 | } |
96 | } |
97 | |
98 | QUrl Provider::website() const |
99 | { |
100 | d->updateOnFirstBasicsGet(); |
101 | return d->website; |
102 | } |
103 | |
104 | void Provider::setWebsite(const QUrl &website) |
105 | { |
106 | if (d->website != website) { |
107 | d->website = website; |
108 | d->throttleBasics(); |
109 | } |
110 | } |
111 | |
112 | QUrl Provider::host() const |
113 | { |
114 | d->updateOnFirstBasicsGet(); |
115 | return d->host; |
116 | } |
117 | |
118 | void Provider::setHost(const QUrl &host) |
119 | { |
120 | if (d->host != host) { |
121 | d->host = host; |
122 | d->throttleBasics(); |
123 | } |
124 | } |
125 | |
126 | QString Provider::contactEmail() const |
127 | { |
128 | d->updateOnFirstBasicsGet(); |
129 | return d->contactEmail; |
130 | } |
131 | |
132 | void Provider::setContactEmail(const QString &contactEmail) |
133 | { |
134 | if (d->contactEmail != contactEmail) { |
135 | d->contactEmail = contactEmail; |
136 | d->throttleBasics(); |
137 | } |
138 | } |
139 | |
140 | bool Provider::supportsSsl() const |
141 | { |
142 | d->updateOnFirstBasicsGet(); |
143 | return d->supportsSsl; |
144 | } |
145 | |
146 | void Provider::setSupportsSsl(bool supportsSsl) |
147 | { |
148 | if (d->supportsSsl != supportsSsl) { |
149 | d->supportsSsl = supportsSsl; |
150 | d->throttleBasics(); |
151 | } |
152 | } |
153 | |
154 | void Provider::setName(const QString &name) |
155 | { |
156 | d->name = name; |
157 | } |
158 | |
159 | void Provider::setIcon(const QUrl &icon) |
160 | { |
161 | d->icon = icon; |
162 | } |
163 | } |
164 | |
165 | #include "moc_provider.cpp" |
166 | |
167 | #endif |
168 | |