File indexing completed on 2024-11-24 04:44:35

0001 /*
0002     SPDX-FileCopyrightText: 2008 Omat Holding B.V. <info@omat.nl>
0003 
0004     SPDX-License-Identifier: LGPL-2.0-or-later
0005 */
0006 
0007 #include "collectionflagsattribute.h"
0008 
0009 #include <QByteArray>
0010 
0011 using namespace Akonadi;
0012 
0013 CollectionFlagsAttribute::CollectionFlagsAttribute(const QList<QByteArray> &flags)
0014     : mFlags(flags)
0015 {
0016 }
0017 
0018 void CollectionFlagsAttribute::setFlags(const QList<QByteArray> &flags)
0019 {
0020     mFlags = flags;
0021 }
0022 
0023 QList<QByteArray> CollectionFlagsAttribute::flags() const
0024 {
0025     return mFlags;
0026 }
0027 
0028 QByteArray CollectionFlagsAttribute::type() const
0029 {
0030     static const QByteArray sType("collectionflags");
0031     return sType;
0032 }
0033 
0034 Akonadi::Attribute *CollectionFlagsAttribute::clone() const
0035 {
0036     return new CollectionFlagsAttribute(mFlags);
0037 }
0038 
0039 QByteArray CollectionFlagsAttribute::serialized() const
0040 {
0041     QByteArray result;
0042 
0043     for (const QByteArray &flag : std::as_const(mFlags)) {
0044         result += flag + ' ';
0045     }
0046     result.chop(1);
0047 
0048     return result;
0049 }
0050 
0051 void CollectionFlagsAttribute::deserialize(const QByteArray &data)
0052 {
0053     mFlags = data.split(' ');
0054 }