#ifndef REQUESTMANAGER_H #define REQUESTMANAGER_H #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include "response.h" class RequestManager : public QObject { Q_OBJECT public: RequestManager(); Response* getSubjects(); Response* getTokens(); Response* getTokenSubject(); void login(QString endpoint, QString username, QString password); //I want it private, but unittest??? const QJsonDocument &getConfig() const {return config;} const QString &getResponse() const {return jsonResponse;} private: QNetworkReply* getRequest(QString endpoint); QString getFromJson(QString json, const QString &member); QString encryptedPassword(QString password); QString getLoginHeader(QString username, QString hash); void prepareAuthHeader(); private slots: void onSSLError(QNetworkReply *reply, const QList &errors); signals: void successLogin(); void responseReady(); private: QNetworkAccessManager* manager = nullptr; QJsonDocument config; QString authHeader; QString host = "https://192.168.1.3:8443"; //QString host = "http://localhost:8080"; QString password = "spaceti1"; QString user = "spaceti"; QString token; QString jsonResponse; bool loginStatus; }; #endif // REQUESTMANAGER_H