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