12#include <QXmlStreamReader>
14#include <QNetworkAccessManager>
16#include "platformdependent_v2.h"
22 , m_ioDevice(iodevice)
30 , m_byteArray(byteArray)
35PutJob::PutJob(PlatformDependent *internals,
const QNetworkRequest &request,
const StringMap ¶meters)
42 for (StringMap::const_iterator i = parameters.
begin(); i != parameters.
end(); ++i) {
44 m_byteArray.append(
'&');
47 m_byteArray.append(
'=');
54 Attica::PlatformDependentV2 *platformDependentV2 =
dynamic_cast<Attica::PlatformDependentV2 *
>(internals());
55 if (!platformDependentV2) {
60 return platformDependentV2->put(m_request, m_ioDevice);
62 return platformDependentV2->put(m_request, m_byteArray);
66void PutJob::parse(
const QString &xmlString)
69 QXmlStreamReader xml(xmlString);
71 while (!xml.atEnd()) {
74 if (xml.isStartElement()) {
75 if (xml.name() == QLatin1String(
"meta")) {
76 while (!xml.atEnd()) {
78 if (xml.isEndElement() && xml.name() == QLatin1String(
"meta")) {
80 }
else if (xml.isStartElement()) {
81 if (xml.name() == QLatin1String(
"status")) {
82 data.setStatusString(xml.readElementText());
83 }
else if (xml.name() == QLatin1String(
"statuscode")) {
84 data.setStatusCode(xml.readElementText().toInt());
85 }
else if (xml.name() == QLatin1String(
"message")) {
86 data.setMessage(xml.readElementText());
87 }
else if (xml.name() == QLatin1String(
"totalitems")) {
88 data.setTotalItems(xml.readElementText().toInt());
89 }
else if (xml.name() == QLatin1String(
"itemsperpage")) {
90 data.setItemsPerPage(xml.readElementText().toInt());
94 }
else if (xml.name() == QLatin1String(
"data")) {
95 while (!xml.atEnd()) {
97 if (xml.isEndElement() && xml.name() == QLatin1String(
"data")) {
99 }
else if (xml.isStartElement()) {
100 if (xml.name() == QLatin1String(
"projectid")) {
101 data.setResultingId(xml.readElementText());
103 if (xml.name() == QLatin1String(
"buildjobid")) {
104 data.setResultingId(xml.readElementText());
114#include "moc_putjob.cpp"
The baseclass for all job classes.
QByteArray toPercentEncoding(const QString &input, const QByteArray &exclude, const QByteArray &include)