File indexing completed on 2024-05-12 05:04:11
0001 // SPDX-FileCopyrightText: 2023 Rishi Kumar <rsi.dev17@gmail.com> 0002 // SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL 0003 0004 #pragma once 0005 0006 #include <QDateTime> 0007 0008 class FederationInfo 0009 { 0010 public: 0011 QString id() const; 0012 QString domain() const; 0013 QDateTime createdAt() const; 0014 QString severity() const; 0015 void setSeverity(const QString &severity); 0016 bool rejectMedia() const; 0017 void setRejectMedia(const bool &rejectMedia); 0018 bool rejectReports() const; 0019 void setRejectReports(const bool &rejectReports); 0020 QString privateComment() const; 0021 void setPrivateComment(const QString &privateComment); 0022 QString publicComment() const; 0023 void setPublicComment(const QString &publicComment); 0024 bool obfuscate() const; 0025 void setObfuscate(const bool &obfuscate); 0026 0027 static FederationInfo fromSourceData(const QJsonObject &doc); 0028 0029 private: 0030 QString m_id; 0031 QString m_domain; 0032 QString m_severity = QStringLiteral("silence"); 0033 QString m_privateComment; 0034 QString m_publicComment; 0035 QDateTime m_createdAt; 0036 bool m_rejectMedia = false; 0037 bool m_rejectReports = false; 0038 bool m_obfuscate = false; 0039 };