File indexing completed on 2024-04-28 05:45:40

0001 // SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL
0002 // SPDX-FileCopyrightText: 2022 Harald Sitter <sitter@kde.org>
0003 
0004 #include "dbustypes.h"
0005 
0006 #include <QBuffer>
0007 #include <QDataStream>
0008 #include <QDebug>
0009 
0010 QDBusArgument &operator<<(QDBusArgument &argument, const KIO::UDSEntry &entry)
0011 {
0012     QBuffer buffer;
0013     buffer.open(QBuffer::WriteOnly);
0014     QDataStream stream(&buffer);
0015     stream << entry;
0016 
0017     argument.beginStructure();
0018     argument << buffer.data();
0019     argument.endStructure();
0020 
0021     return argument;
0022 }
0023 
0024 const QDBusArgument &operator>>(const QDBusArgument &argument, KIO::UDSEntry &entry)
0025 {
0026     QByteArray data;
0027 
0028     argument.beginStructure();
0029     argument >> data;
0030     argument.endStructure();
0031 
0032     QDataStream stream(data);
0033     stream >> entry;
0034 
0035     return argument;
0036 }