File indexing completed on 2024-05-12 05:22:10

0001 /*
0002  * SPDX-FileCopyrightText: 2014 Daniel Vrátil <dvratil@redhat.com>
0003  *
0004  * SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL
0005  */
0006 
0007 #pragma once
0008 
0009 #include "kgapiblogger_export.h"
0010 #include "object.h"
0011 
0012 #include <QDateTime>
0013 #include <QVariant>
0014 
0015 namespace KGAPI2
0016 {
0017 
0018 namespace Blogger
0019 {
0020 
0021 class KGAPIBLOGGER_EXPORT Blog : public KGAPI2::Object
0022 {
0023 public:
0024     explicit Blog();
0025     ~Blog() override;
0026 
0027     QString id() const;
0028     QString name() const;
0029     QString description() const;
0030     QDateTime published() const;
0031     QDateTime updated() const;
0032     QUrl url() const;
0033     uint postsCount() const;
0034     uint pagesCount() const;
0035     QString language() const;
0036     QString country() const;
0037     QString languageVariant() const;
0038     QVariant customMetaData() const;
0039 
0040     static BlogPtr fromJSON(const QByteArray &rawData);
0041     static BlogsList fromJSONFeed(const QByteArray &rawData);
0042 
0043 private:
0044     Q_DISABLE_COPY(Blog)
0045 
0046     class Private;
0047     Private *const d;
0048     friend class Private;
0049 };
0050 
0051 } // namespace Blogger
0052 } // namespace KGAPI2