Libksieve

searchserverwithvacationsupportjob.h
1 /*
2  SPDX-FileCopyrightText: 2020-2021 Laurent Montel <[email protected]>
3 
4  SPDX-License-Identifier: GPL-2.0-only
5 */
6 
7 #pragma once
8 
9 #include "ksieveui_export.h"
10 #include "util_p.h"
11 #include <QMap>
12 #include <QObject>
13 namespace KSieveUi
14 {
15 class SieveImapPasswordProvider;
16 class KSIEVEUI_EXPORT SearchServerWithVacationSupportJob : public QObject
17 {
18  Q_OBJECT
19 public:
20  explicit SearchServerWithVacationSupportJob(QObject *parent = nullptr);
21  ~SearchServerWithVacationSupportJob() override;
22  void start();
23 
24  Q_REQUIRED_RESULT bool canStart() const;
25 
26  SieveImapPasswordProvider *passwordProvider() const;
27  void setPasswordProvider(SieveImapPasswordProvider *newProvider);
28 
29 Q_SIGNALS:
30  void searchServerWithVacationSupportFinished(const QMap<QString, KSieveUi::Util::AccountInfo> &info);
31 
32 private:
33  void slotFindAccountInfoFinished(const KSieveUi::Util::AccountInfo &info);
34  void sendAccountList();
35  void searchNextInfo();
36  void slotSearchSieveScript(const QString &name, const QString &identifier);
37  void searchNextServerSieve();
38 
39  QMap<QString, QString>::const_iterator mSieveServerMapIterator;
40  // name, identifier
41  QMap<QString, QString> mServerSieveInfos;
42 
43  // Result
45  SieveImapPasswordProvider *mPasswordProvider = nullptr;
46 };
47 }
48 
This file is part of the KDE documentation.
Documentation copyright © 1996-2021 The KDE developers.
Generated on Fri Apr 16 2021 23:09:33 by doxygen 1.8.11 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.