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

0001 /*
0002     This file is part of the syndication library
0003     SPDX-FileCopyrightText: 2006 Frank Osterfeld <osterfeld@kde.org>
0004 
0005     SPDX-License-Identifier: LGPL-2.0-or-later
0006 */
0007 
0008 #ifndef SYNDICATION_PERSONIMPL_H
0009 #define SYNDICATION_PERSONIMPL_H
0010 
0011 #include "syndication_export.h"
0012 #include <syndication/person.h>
0013 
0014 #include <QString>
0015 
0016 namespace Syndication
0017 {
0018 class PersonImpl;
0019 
0020 //@cond PRIVATE
0021 typedef QSharedPointer<PersonImpl> PersonImplPtr;
0022 
0023 /**
0024  * @internal
0025  */
0026 class SYNDICATION_EXPORT PersonImpl : public Person
0027 {
0028 public:
0029     PersonImpl();
0030     PersonImpl(const QString &name, const QString &uri, const QString &email);
0031 
0032     Q_REQUIRED_RESULT bool isNull() const override
0033     {
0034         return m_null;
0035     }
0036     Q_REQUIRED_RESULT QString name() const override
0037     {
0038         return m_name;
0039     }
0040     Q_REQUIRED_RESULT QString uri() const override
0041     {
0042         return m_uri;
0043     }
0044     Q_REQUIRED_RESULT QString email() const override
0045     {
0046         return m_email;
0047     }
0048 
0049 private:
0050     bool m_null;
0051     QString m_name;
0052     QString m_uri;
0053     QString m_email;
0054 };
0055 //@endcond
0056 
0057 } // namespace Syndication
0058 
0059 #endif // SYNDICATION_PERSONIMPL_H