File indexing completed on 2024-11-17 04:44:57

0001 /*
0002     SPDX-FileCopyrightText: 2015-2020 Krzysztof Nowicki <krissn@op.pl>
0003 
0004     SPDX-License-Identifier: LGPL-2.0-or-later
0005 */
0006 
0007 #pragma once
0008 
0009 #include "ewsjob.h"
0010 #include <Akonadi/Item>
0011 
0012 class EwsClient;
0013 
0014 class EwsModifyItemJob : public EwsJob
0015 {
0016     Q_OBJECT
0017 public:
0018     EwsModifyItemJob(EwsClient &client, const Akonadi::Item::List &items, const QSet<QByteArray> &parts, QObject *parent);
0019     ~EwsModifyItemJob() override;
0020 
0021     void setModifiedFlags(const QSet<QByteArray> &addedFlags, const QSet<QByteArray> &removedFlags);
0022 
0023     const Akonadi::Item::List &items() const;
0024 Q_SIGNALS:
0025     void reportStatus(int status, const QString &message = QString());
0026     void reportPercent(int progress);
0027 
0028 protected:
0029     Akonadi::Item::List mItems;
0030     const QSet<QByteArray> mParts;
0031     EwsClient &mClient;
0032     QSet<QByteArray> mAddedFlags;
0033     QSet<QByteArray> mRemovedFlags;
0034 };