1 /* 2 This file is part of Akonadi Contact. 3 4 SPDX-FileCopyrightText: 2009 Tobias Koenig <tokoe@kde.org> 5 6 SPDX-License-Identifier: LGPL-2.0-or-later 7 */ 8 9 #include "contactmetadataattribute_p.h" 10 11 #include <QDataStream> 12 13 using namespace Akonadi; 14 15 class Akonadi::ContactMetaDataAttributePrivate 16 { 17 public: 18 QVariantMap mData; 19 }; 20 ContactMetaDataAttribute()21ContactMetaDataAttribute::ContactMetaDataAttribute() 22 : d(new ContactMetaDataAttributePrivate) 23 { 24 } 25 26 ContactMetaDataAttribute::~ContactMetaDataAttribute() = default; 27 setMetaData(const QVariantMap & data)28void ContactMetaDataAttribute::setMetaData(const QVariantMap &data) 29 { 30 d->mData = data; 31 } 32 metaData() const33QVariantMap ContactMetaDataAttribute::metaData() const 34 { 35 return d->mData; 36 } 37 type() const38QByteArray ContactMetaDataAttribute::type() const 39 { 40 static const QByteArray sType("contactmetadata"); 41 return sType; 42 } 43 clone() const44Attribute *ContactMetaDataAttribute::clone() const 45 { 46 auto copy = new ContactMetaDataAttribute; 47 copy->setMetaData(d->mData); 48 49 return copy; 50 } 51 serialized() const52QByteArray ContactMetaDataAttribute::serialized() const 53 { 54 QByteArray data; 55 QDataStream s(&data, QIODevice::WriteOnly); 56 s.setVersion(QDataStream::Qt_4_5); 57 s << d->mData; 58 59 return data; 60 } 61 deserialize(const QByteArray & data)62void ContactMetaDataAttribute::deserialize(const QByteArray &data) 63 { 64 QDataStream s(data); 65 s.setVersion(QDataStream::Qt_4_5); 66 s >> d->mData; 67 } 68