source: SMSSender/gateways/Post/src/business/contactimporter/contactimporter.h @ 315:e6c8bb244ecd

separation-frontend-backend
Last change on this file since 315:e6c8bb244ecd was 315:e6c8bb244ecd, checked in by Sämy Zehnder <saemy.zehnder@…>, 5 years ago
  • Separates the frontend from the backend code.
  • At this point the schoolnet gateway is converted only.
  • Removes bc & da prefixes from the filenames.
File size: 1.7 KB
Line 
1/*
2  Swiss Post gateway plugin - The smssender plugin for the Swiss Post platform.
3  Copyright (C) 2011-2012, gorrión. See http://smssender.gorrion.ch
4
5  This program is free software: you can redistribute it and/or modify
6  it under the terms of the GNU General Public License as published by
7  the Free Software Foundation, either version 3 of the License, or
8  (at your option) any later version.
9
10  This program is distributed in the hope that it will be useful,
11  but WITHOUT ANY WARRANTY; without even the implied warranty of
12  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13  GNU General Public License for more details.
14
15  You should have received a copy of the GNU General Public License
16  along with this program.  If not, see <http://www.gnu.org/licenses/>.
17 */
18
19#ifndef POST_BCCONTACTIMPORTER_H_
20#define POST_BCCONTACTIMPORTER_H_
21
22#include <QScopedPointer>
23#include <QString>
24
25#include <business/icontactimporter.h>
26#include <business/iintegration.h>
27#include <domain/scontact.h>
28
29class IAccountManager2;
30class IGateway;
31
32namespace Post {
33
34class ContactImporterDataManager;
35
36class ContactImporter : public IContactImporter {
37public:
38    explicit ContactImporter(const IAccountIntegrationHelper *accountHelper);
39
40public: /* IContactImporter */
41    QString describingName() const;
42    bool    isApplicable() const;
43
44    void                init();
45    QList<QWizardPage*> preImportPages(QWidget* parent);
46    QSet<SContact>      importContacts();
47
48private:
49    QStringList splitIntoCells(QString csvRow);
50
51private:
52    static const QString URL_EXPORT_CONTACTS;
53
54    const QScopedPointer<ContactImporterDataManager> m_dataManager;
55    const IAccountIntegrationHelper * const m_accountHelper;
56};
57
58}
59
60#endif /* POST_BCCONTACTIMPORTER_H_ */
Note: See TracBrowser for help on using the repository browser.