File indexing completed on 2024-05-12 05:22:15

0001 /*
0002  * This file is part of LibKGAPI library
0003  *
0004  * SPDX-FileCopyrightText: 2013 Daniel Vrátil <dvratil@redhat.com>
0005  *
0006  * SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL
0007  */
0008 
0009 #include "createjob.h"
0010 #include "object.h"
0011 
0012 #include <QNetworkAccessManager>
0013 #include <QNetworkRequest>
0014 
0015 using namespace KGAPI2;
0016 
0017 class Q_DECL_HIDDEN CreateJob::Private
0018 {
0019 public:
0020     ObjectsList items;
0021 };
0022 
0023 CreateJob::CreateJob(QObject *parent)
0024     : Job(parent)
0025     , d(new Private)
0026 {
0027 }
0028 
0029 CreateJob::CreateJob(const AccountPtr &account, QObject *parent)
0030     : Job(account, parent)
0031     , d(new Private)
0032 {
0033 }
0034 
0035 CreateJob::~CreateJob()
0036 {
0037     delete d;
0038 }
0039 
0040 ObjectsList CreateJob::items() const
0041 {
0042     return d->items;
0043 }
0044 
0045 void CreateJob::dispatchRequest(QNetworkAccessManager *accessManager, const QNetworkRequest &request, const QByteArray &data, const QString &contentType)
0046 {
0047     QNetworkRequest r = request;
0048     if (!r.hasRawHeader("Content-Type")) {
0049         r.setHeader(QNetworkRequest::ContentTypeHeader, contentType);
0050     }
0051 
0052     accessManager->post(r, data);
0053 }
0054 
0055 void CreateJob::handleReply(const QNetworkReply *reply, const QByteArray &rawData)
0056 {
0057     d->items << handleReplyWithItems(reply, rawData);
0058 }
0059 
0060 void CreateJob::aboutToStart()
0061 {
0062     d->items.clear();
0063 
0064     Job::aboutToStart();
0065 }
0066 
0067 ObjectsList CreateJob::handleReplyWithItems(const QNetworkReply *reply, const QByteArray &rawData)
0068 {
0069     Q_UNUSED(reply)
0070     Q_UNUSED(rawData)
0071 
0072     return ObjectsList();
0073 }
0074 
0075 #include "moc_createjob.cpp"