File indexing completed on 2024-12-01 03:37:36
0001 /* 0002 This file is part of KDE. 0003 0004 SPDX-FileCopyrightText: 2008 Cornelius Schumacher <schumacher@kde.org> 0005 0006 SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL 0007 */ 0008 0009 #ifndef ATTICA_POSTJOB_H 0010 #define ATTICA_POSTJOB_H 0011 0012 #include <QNetworkRequest> 0013 0014 #include "attica_export.h" 0015 #include "atticabasejob.h" 0016 0017 // workaround to get initialization working with gcc < 4.4 0018 typedef QMap<QString, QString> StringMap; 0019 0020 namespace Attica 0021 { 0022 class Provider; 0023 0024 /** 0025 * @class PostJob postjob.h <Attica/PostJob> 0026 * 0027 * Represents a post job. 0028 */ 0029 class ATTICA_EXPORT PostJob : public BaseJob 0030 { 0031 Q_OBJECT 0032 0033 protected: 0034 PostJob(PlatformDependent *internals, const QNetworkRequest &request, QIODevice *data); 0035 PostJob(PlatformDependent *internals, const QNetworkRequest &request, const StringMap ¶meters = StringMap()); 0036 PostJob(PlatformDependent *internals, const QNetworkRequest &request, const QByteArray &byteArray); 0037 0038 private: 0039 QNetworkReply *executeRequest() override; 0040 void parse(const QString &) override; 0041 0042 QIODevice *m_ioDevice; 0043 QByteArray m_byteArray; 0044 0045 QString m_responseData; 0046 const QNetworkRequest m_request; 0047 0048 QString m_status; 0049 QString m_statusMessage; 0050 0051 friend class Attica::Provider; 0052 }; 0053 0054 } 0055 0056 #endif