File indexing completed on 2024-04-14 03:58:26

0001 /*
0002     This file is part of the syndication library
0003 
0004     SPDX-FileCopyrightText: 2006 Frank Osterfeld <osterfeld@kde.org>
0005 
0006     SPDX-License-Identifier: LGPL-2.0-or-later
0007 */
0008 
0009 #ifndef SYNDICATION_MAPPER_ITEMATOMIMPL_H
0010 #define SYNDICATION_MAPPER_ITEMATOMIMPL_H
0011 
0012 #include <atom/entry.h>
0013 #include <item.h>
0014 
0015 namespace Syndication
0016 {
0017 class ItemAtomImpl;
0018 typedef QSharedPointer<ItemAtomImpl> ItemAtomImplPtr;
0019 
0020 /**
0021  * @internal
0022  */
0023 class ItemAtomImpl : public Syndication::Item
0024 {
0025 public:
0026     explicit ItemAtomImpl(const Syndication::Atom::Entry &entry);
0027 
0028     QString title() const override;
0029 
0030     QString link() const override;
0031 
0032     QString description() const override;
0033 
0034     QString content() const override;
0035 
0036     QList<PersonPtr> authors() const override;
0037 
0038     QString language() const override;
0039 
0040     QString id() const override;
0041 
0042     time_t datePublished() const override;
0043 
0044     time_t dateUpdated() const override;
0045 
0046     QList<EnclosurePtr> enclosures() const override;
0047 
0048     QList<CategoryPtr> categories() const override;
0049 
0050     SpecificItemPtr specificItem() const override;
0051 
0052     int commentsCount() const override;
0053 
0054     QString commentsLink() const override;
0055 
0056     QString commentsFeed() const override;
0057 
0058     QString commentPostUri() const override;
0059 
0060     QMultiMap<QString, QDomElement> additionalProperties() const override;
0061 
0062 private:
0063     Syndication::Atom::Entry m_entry;
0064 };
0065 
0066 } // namespace Syndication
0067 
0068 #endif // SYNDICATION_MAPPER_ITEMATOMIMPL_H