1 | /* |
2 | This file is part of the syndication library |
3 | SPDX-FileCopyrightText: 2006 Frank Osterfeld <osterfeld@kde.org> |
4 | |
5 | SPDX-License-Identifier: LGPL-2.0-or-later |
6 | */ |
7 | |
8 | #ifndef SYNDICATION_RDF_SYNDICATIONVOCAB_H |
9 | #define SYNDICATION_RDF_SYNDICATIONVOCAB_H |
10 | |
11 | #include <QSharedPointer> |
12 | |
13 | #include "../syndication_export.h" |
14 | |
15 | #include <memory> |
16 | |
17 | class QString; |
18 | |
19 | namespace Syndication |
20 | { |
21 | namespace RDF |
22 | { |
23 | //@cond PRIVATE |
24 | class Property; |
25 | typedef QSharedPointer<Property> PropertyPtr; |
26 | //@endcond |
27 | |
28 | /** |
29 | * Singleton providing Property constants for |
30 | * the Syndication module. |
31 | * For a specification, see |
32 | * http://web.resource.org/rss/1.0/modules/syndication/ |
33 | * |
34 | * @author Frank Osterfeld |
35 | */ |
36 | class SyndicationVocab |
37 | { |
38 | public: |
39 | /** |
40 | * destructor |
41 | */ |
42 | ~SyndicationVocab(); |
43 | |
44 | /** |
45 | * returns the singleton instance |
46 | */ |
47 | static SyndicationVocab *self(); |
48 | |
49 | /** |
50 | * namespace URI of the syndication vocabulary, |
51 | * @p "http://purl.org/rss/1.0/modules/syndication/" |
52 | */ |
53 | const QString &namespaceURI() const; |
54 | |
55 | /** |
56 | * updatePeriod property, see Syndication::updatePeriod() for more |
57 | * information. |
58 | */ |
59 | PropertyPtr updatePeriod() const; |
60 | |
61 | /** |
62 | * updateFrequency property, see Syndication::updateFrequency() for more |
63 | * information. |
64 | */ |
65 | PropertyPtr updateFrequency() const; |
66 | |
67 | /** |
68 | * updateBase property, see Syndication::updateBase() for more |
69 | * information. |
70 | */ |
71 | PropertyPtr updateBase() const; |
72 | |
73 | private: |
74 | SyndicationVocab(); |
75 | Q_DISABLE_COPY(SyndicationVocab) |
76 | class SyndicationVocabPrivate; |
77 | std::unique_ptr<SyndicationVocabPrivate> const d; |
78 | }; |
79 | |
80 | } // namespace RDF |
81 | } // namespace Syndication |
82 | |
83 | #endif // SYNDICATION_RDF_SYNDICATIONVOCAB_H |
84 | |