File indexing completed on 2024-05-12 05:01:45
0001 /* 0002 SPDX-FileCopyrightText: 2018-2024 Laurent Montel <montel@kde.org> 0003 0004 SPDX-License-Identifier: LGPL-2.0-or-later 0005 */ 0006 0007 #pragma once 0008 0009 #include "libruqolacore_export.h" 0010 #include <QDebug> 0011 #include <QString> 0012 0013 class LIBRUQOLACORE_EXPORT File 0014 { 0015 Q_GADGET 0016 public: 0017 File(); 0018 File(const File &other) = default; 0019 0020 void parseFile(const QJsonObject &json, bool restApi); 0021 [[nodiscard]] QString fileName() const; 0022 void setFileName(const QString &fileName); 0023 0024 [[nodiscard]] QString description() const; 0025 void setDescription(const QString &description); 0026 0027 [[nodiscard]] bool operator==(const File &other) const; 0028 0029 File &operator=(const File &other) = default; 0030 0031 [[nodiscard]] QString userId() const; 0032 void setUserId(const QString &userId); 0033 0034 [[nodiscard]] QString url() const; 0035 void setUrl(const QString &url); 0036 0037 [[nodiscard]] QString mimeType() const; 0038 void setMimeType(const QString &mimeType); 0039 0040 [[nodiscard]] qint64 uploadedAt() const; 0041 void setUploadedAt(qint64 uploadedAt); 0042 0043 [[nodiscard]] QString fileId() const; 0044 void setFileId(const QString &fileId); 0045 0046 [[nodiscard]] QString rid() const; 0047 void setRid(const QString &rid); 0048 0049 [[nodiscard]] QString userName() const; 0050 void setUserName(const QString &userName); 0051 0052 [[nodiscard]] QString uploadedDateTimeStr() const; 0053 0054 [[nodiscard]] bool complete() const; 0055 void setComplete(bool complete); 0056 0057 [[nodiscard]] QString typeGroup() const; 0058 void setTypeGroup(const QString &typeGroup); 0059 0060 private: 0061 QString mFileName; 0062 QString mDescription; 0063 QString mUserId; 0064 QString mUrl; 0065 QString mMimeType; 0066 QString mFileId; 0067 QString mRid; 0068 QString mUserName; 0069 QString mUploadedDateTimeStr; 0070 QString mTypeGroup; 0071 0072 bool mComplete = false; 0073 qint64 mUploadedAt = -1; 0074 }; 0075 Q_DECLARE_TYPEINFO(File, Q_RELOCATABLE_TYPE); 0076 LIBRUQOLACORE_EXPORT QDebug operator<<(QDebug d, const File &t);