[network/ruqola] src/core/messages: Add encrypted class

Laurent Montel <[email protected]>
Newsgroups gmane.comp.kde.cvs
Message-ID <[email protected]>
Git commit 9262a1ba6a5b80dd953b732f99dff8816492aebe by Laurent Montel.
Committed on 03/08/2026 at 11:26.
Pushed by mlaurent into branch 'master'.

Add encrypted class

A  +65   -0    src/core/messages/messageencrypted.cpp     [License: LGPL(v2.0+)]
A  +39   -0    src/core/messages/messageencrypted.h     [License: LGPL(v2.0+)]

https://invent.kde.org/network/ruqola/-/commit/9262a1ba6a5b80dd953b732f99dff8816492aebe

diff --git a/src/core/messages/messageencrypted.cpp b/src/core/messages/messageencrypted.cpp
new file mode 100644
index 0000000000..48c2f18831
--- /dev/null
+++ b/src/core/messages/messageencrypted.cpp
@@ -0,0 +1,65 @@
+/*
+   SPDX-FileCopyrightText: 2026 Laurent Montel <[email protected]>
+
+   SPDX-License-Identifier: LGPL-2.0-or-later
+*/
+
+#include "messageencrypted.h"
+#include "ruqola_message_memory_debug.h"
+
+#include <QJsonObject>
+
+using namespace Qt::Literals::StringLiterals;
+MessageEncrypted::MessageEncrypted()
+
+{
+    qCDebug(RUQOLA_MESSAGE_MEMORY_LOG) << " MessageEncrypted created " << this;
+}
+
+MessageEncrypted::MessageEncrypted(const MessageEncrypted &other)
+    : QSharedData(other)
+{
+    qCDebug(RUQOLA_MESSAGE_MEMORY_LOG) << " MessageEncrypted created " << this;
+}
+
+MessageEncrypted::~MessageEncrypted()
+{
+    qCDebug(RUQOLA_MESSAGE_MEMORY_LOG) << " MessageEncrypted deleted " << this;
+}
+
+bool MessageEncrypted::isValid() const
+{
+    return false;
+    // return !mPinnedBy.isEmpty();
+}
+
+bool MessageEncrypted::operator==(const MessageEncrypted &other) const
+{
+    // TODO
+    return false;
+}
+
+void MessageEncrypted::parse(const QJsonObject &o)
+{
+    // TODO
+}
+
+QJsonObject MessageEncrypted::serialize(const MessageEncrypted &messagePinned)
+{
+    QJsonObject o;
+    // TODO
+    return o;
+}
+
+QDebug operator<<(QDebug d, const MessageEncrypted &t)
+{
+    // TODO
+    return d;
+}
+
+MessageEncrypted *MessageEncrypted::deserialize(const QJsonObject &o)
+{
+    MessageEncrypted *pinned = new MessageEncrypted;
+    // TODO
+    return pinned;
+}
diff --git a/src/core/messages/messageencrypted.h b/src/core/messages/messageencrypted.h
new file mode 100644
index 0000000000..f5502823e1
--- /dev/null
+++ b/src/core/messages/messageencrypted.h
@@ -0,0 +1,39 @@
+/*
+   SPDX-FileCopyrightText: 2026 Laurent Montel <[email protected]>
+
+   SPDX-License-Identifier: LGPL-2.0-or-later
+*/
+
+#pragma once
+
+#include "libruqolacore_export.h"
+#include <QSharedData>
+class QJsonObject;
+
+class QDebug;
+class LIBRUQOLACORE_EXPORT MessageEncrypted : public QSharedData
+{
+public:
+    MessageEncrypted();
+    ~MessageEncrypted();
+    explicit MessageEncrypted(const MessageEncrypted &other);
+
+    [[nodiscard]] bool pinned() const;
+    void setPinned(bool pinned);
+
+    [[nodiscard]] QString pinnedBy() const;
+    void setPinnedBy(const QString &pinnedBy);
+
+    [[nodiscard]] bool operator==(const MessageEncrypted &other) const;
+    void parse(const QJsonObject &o);
+
+    [[nodiscard]] static QJsonObject serialize(const MessageEncrypted &message);
+    [[nodiscard]] static MessageEncrypted *deserialize(const QJsonObject &o);
+
+    [[nodiscard]] bool isValid() const;
+
+private:
+    QString mPinnedBy;
+    bool mPinned = false;
+};
+LIBRUQOLACORE_EXPORT QDebug operator<<(QDebug d, const MessageEncrypted &t);
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.