Mailcommon

expiremovejob.h
1/**
2 * SPDX-FileCopyrightText: 2024 Laurent Montel <montel@kde.org>
3 *
4 * SPDX-License-Identifier: GPL-2.0-or-later
5 */
6
7#pragma once
8
9#include <Akonadi/Item>
10#include <QObject>
11
12class ExpireMoveJob : public QObject
13{
15public:
16 explicit ExpireMoveJob(QObject *parent = nullptr);
17 ~ExpireMoveJob() override;
18
19 [[nodiscard]] Akonadi::Item::List removedMsgs() const;
20 void setRemovedMsgs(const Akonadi::Item::List &newRemovedMsgs);
21
22 void start();
23
24 [[nodiscard]] Akonadi::Collection moveToFolder() const;
25 void setMoveToFolder(const Akonadi::Collection &newMoveToFolder);
26
27 [[nodiscard]] QString srcFolderName() const;
28 void setSrcFolderName(const QString &newSrcFolderName);
29
31 void expireMovedDone();
32
33private:
34 void slotMoveDone(KJob *job);
35 void slotExpireDone(KJob *job);
36 void finished();
37 QString mSrcFolderName;
38 Akonadi::Collection mMoveToFolder;
39 Akonadi::Item::List mRemovedMsgs;
40 QList<KJob *> mRunningJobs;
41};
SPDX-FileCopyrightText: 2024 Laurent Montel montel@kde.org
Q_OBJECTQ_OBJECT
Q_SIGNALSQ_SIGNALS
QObject * parent() const const
This file is part of the KDE documentation.
Documentation copyright © 1996-2024 The KDE developers.
Generated on Fri Dec 6 2024 12:02:04 by doxygen 1.12.0 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.