File indexing completed on 2024-11-24 04:44:34
0001 /* This file is part of the KDE project 0002 SPDX-FileCopyrightText: 2010 Klarälvdalens Datakonsult AB, a KDAB Group company <info@kdab.net> 0003 SPDX-FileContributor: Kevin Krammer <krake@kdab.com> 0004 0005 SPDX-License-Identifier: LGPL-2.0-or-later 0006 */ 0007 0008 #pragma once 0009 0010 #include "akonadi-filestore_export.h" 0011 0012 #include <Akonadi/Attribute> 0013 0014 #include <memory> 0015 0016 namespace Akonadi 0017 { 0018 namespace FileStore 0019 { 0020 class EntityCompactChangeAttributePrivate; 0021 0022 class AKONADI_FILESTORE_EXPORT EntityCompactChangeAttribute : public Attribute 0023 { 0024 public: 0025 EntityCompactChangeAttribute(); 0026 0027 ~EntityCompactChangeAttribute() override; 0028 0029 void setRemoteId(const QString &remoteId); 0030 0031 [[nodiscard]] QString remoteId() const; 0032 0033 void setRemoteRevision(const QString &remoteRev); 0034 0035 [[nodiscard]] QString remoteRevision() const; 0036 0037 [[nodiscard]] QByteArray type() const override; 0038 0039 EntityCompactChangeAttribute *clone() const override; 0040 0041 [[nodiscard]] QByteArray serialized() const override; 0042 0043 void deserialize(const QByteArray &data) override; 0044 0045 private: 0046 //@cond PRIVATE 0047 std::unique_ptr<EntityCompactChangeAttributePrivate> const d; 0048 //@endcond 0049 }; 0050 } 0051 }