File indexing completed on 2024-06-16 04:45:43
0001 /* 0002 0003 SPDX-FileCopyrightText: 2014 Christian Dávid <christian-david@web.de> 0004 SPDX-FileCopyrightText: 2019 Thomas Baumgart <tbaumgart@kde.org> 0005 SPDX-License-Identifier: GPL-2.0-or-later 0006 */ 0007 0008 #include "unavailabletask.h" 0009 0010 #include <QSet> 0011 #include <QXmlStreamReader> 0012 #include <QXmlStreamWriter> 0013 0014 #include <KLocalizedString> 0015 0016 unavailableTask::unavailableTask(const QString& xmlData) 0017 : m_data(xmlData) 0018 { 0019 } 0020 0021 QString unavailableTask::jobTypeName() const 0022 { 0023 return i18n("Could not load responsible plugin to view this task."); 0024 } 0025 0026 QString unavailableTask::responsibleAccount() const 0027 { 0028 return QString(); 0029 } 0030 0031 QString unavailableTask::purpose() const 0032 { 0033 return QString(); 0034 } 0035 0036 static void addElements(QXmlStreamReader* reader, QXmlStreamWriter* writer) 0037 { 0038 while (reader->readNextStartElement()) { 0039 writer->writeStartElement(reader->name().toString()); 0040 writer->writeAttributes(reader->attributes()); 0041 addElements(reader, writer); 0042 writer->writeEndElement(); 0043 } 0044 } 0045 0046 unavailableTask* unavailableTask::createFromXml(QXmlStreamReader* reader) const 0047 { 0048 QString taskXml; 0049 QXmlStreamWriter writer(&taskXml); 0050 0051 writer.setAutoFormatting(false); 0052 writer.writeStartDocument(); 0053 writer.writeStartElement(reader->name().toString()); 0054 writer.writeAttributes(reader->attributes()); 0055 addElements(reader, &writer); 0056 writer.writeEndElement(); 0057 writer.writeEndDocument(); 0058 0059 return new unavailableTask(taskXml); 0060 } 0061 0062 void unavailableTask::writeXML(QXmlStreamWriter* writer) const 0063 { 0064 Q_UNUSED(writer) 0065 } 0066 0067 bool unavailableTask::hasReferenceTo(const QString& id) const 0068 { 0069 Q_UNUSED(id); 0070 return false; 0071 } 0072 0073 QSet<QString> unavailableTask::referencedObjects() const 0074 { 0075 return {}; 0076 } 0077 0078 unavailableTask* unavailableTask::clone() const 0079 { 0080 return new unavailableTask(m_data); 0081 } 0082 0083 bool unavailableTask::isValid() const 0084 { 0085 return true; 0086 }