#ifndef SERVERCOMMUNICATOR_H #define SERVERCOMMUNICATOR_H #include #include #include #include class ServerCommunicator : public QObject { Q_OBJECT public: explicit ServerCommunicator(QObject* parent = nullptr); bool sslSupported(); QUrl url() const; void setUrl(const QUrl& url); public slots: void fetchItems(); void postItems(const QByteArray& jsonData); // NEXT void deleteItems(QList idList) signals: void urlChanged(); void itemsFetched(const QByteArray jsonDoc); void itemsFetchFailure(const QString errorString); void postRequestSuccessful(const QString message); void postRequestFailure(const QString errorString); private: QNetworkAccessManager m_netManager; std::shared_ptr m_restManager; std::shared_ptr m_serviceApi; }; #endif // SERVERCOMMUNICATOR_H