// SPDX-FileCopyrightText: 2018 Kitsune Ral // SPDX-License-Identifier: LGPL-2.1-or-later #pragma once #include #include namespace Quotient { class Room; class Connection; class NetworkAccessManager : public QNetworkAccessManager { Q_OBJECT public: NetworkAccessManager(QObject* parent = nullptr); ~NetworkAccessManager() override; QList ignoredSslErrors() const; void addIgnoredSslError(const QSslError& error); void clearIgnoredSslErrors(); /** Get a pointer to the singleton */ static NetworkAccessManager* instance(); public Q_SLOTS: QStringList supportedSchemesImplementation() const; QUrl urlForRoomEvent(Room *room, const QString &eventId, const QString &mediaId); QUrl urlForFile(Connection *connection, const QString &mediaId); private: QNetworkReply* createRequest(Operation op, const QNetworkRequest& request, QIODevice* outgoingData = Q_NULLPTR) override; class Private; std::unique_ptr d; }; } // namespace Quotient