File indexing completed on 2024-06-02 05:21:27

0001 /*
0002     SPDX-FileCopyrightText: 2014 Klarälvdalens Datakonsult AB, a KDAB Group company <info@kdab.com>
0003     SPDX-FileContributor: Kevin Krammer <kevin.krammer@kdab.com>
0004 
0005     SPDX-License-Identifier: LGPL-2.0-or-later
0006 */
0007 
0008 #pragma once
0009 
0010 #include "kolabrelationresourcetask.h"
0011 
0012 class KolabAddTagTask : public KolabRelationResourceTask
0013 {
0014     Q_OBJECT
0015 public:
0016     explicit KolabAddTagTask(const ResourceStateInterface::Ptr &resource, QObject *parent = nullptr);
0017 
0018 protected:
0019     void startRelationTask(KIMAP::Session *session) override;
0020 
0021 private:
0022     QByteArray mMessageId;
0023 
0024 private:
0025     void applyFoundUid(qint64 uid);
0026     void triggerSearchJob(KIMAP::Session *session);
0027 
0028 private Q_SLOTS:
0029     void onAppendMessageDone(KJob *job);
0030     void onPreSearchSelectDone(KJob *job);
0031     void onSearchDone(KJob *job);
0032 };