1 /* 2 SPDX-FileCopyrightText: 2012-2021 Laurent Montel <montel@kde.org> 3 4 SPDX-License-Identifier: GPL-2.0-or-later 5 */ 6 7 #pragma once 8 9 #include "abstractbase.h" 10 #include "libimportwizard_export.h" 11 #include <Akonadi/Collection> 12 13 namespace KContacts 14 { 15 class Addressee; 16 class ContactGroup; 17 } 18 19 class KJob; 20 namespace LibImportWizard 21 { 22 class LIBIMPORTWIZARD_EXPORT AbstractAddressBook : public LibImportWizard::AbstractBase 23 { 24 Q_OBJECT 25 public: 26 AbstractAddressBook(); 27 ~AbstractAddressBook() override; 28 29 protected: 30 void createGroup(const KContacts::ContactGroup &group); 31 void createContact(const KContacts::Addressee &address); 32 33 void addImportInfo(const QString &log) override; 34 void addImportError(const QString &log) override; 35 36 void addAddressBookImportInfo(const QString &log); 37 void addAddressBookImportError(const QString &log); 38 void cleanUp(); 39 void addImportContactNote(KContacts::Addressee &address, const QString &applicationName); 40 41 private: 42 void slotStoreDone(KJob *job); 43 bool selectAddressBook(); 44 Akonadi::Collection mCollection; 45 }; 46 } 47