From 3bb6d9b3b33caa7fb28665fdce2992d7518daa74 Mon Sep 17 00:00:00 2001 From: Atlante45 Date: Thu, 3 Apr 2014 16:07:25 -0700 Subject: [PATCH] Added call back to model upload. --- libraries/shared/src/FstReader.cpp | 24 ++++++++++++++++++++++-- libraries/shared/src/FstReader.h | 7 +++++++ 2 files changed, 29 insertions(+), 2 deletions(-) diff --git a/libraries/shared/src/FstReader.cpp b/libraries/shared/src/FstReader.cpp index fa71679dd2..4a299fd757 100644 --- a/libraries/shared/src/FstReader.cpp +++ b/libraries/shared/src/FstReader.cpp @@ -172,14 +172,34 @@ bool FstReader::send() { return false; } - AccountManager::getInstance().authenticatedRequest(MODEL_URL, QNetworkAccessManager::PostOperation, JSONCallbackParameters(), QByteArray(), _dataMultiPart); + JSONCallbackParameters callbackParams; + callbackParams.jsonCallbackReceiver = this; + callbackParams.jsonCallbackMethod = "uploadSuccess"; + callbackParams.errorCallbackReceiver = this; + callbackParams.errorCallbackMethod = "uploadFailed"; + + AccountManager::getInstance().authenticatedRequest(MODEL_URL, QNetworkAccessManager::PostOperation, callbackParams, QByteArray(), _dataMultiPart); _zipDir = NULL; _dataMultiPart = NULL; - qDebug() << "Model sent."; return true; } +void FstReader::uploadSuccess(const QJsonObject& jsonResponse) { + qDebug() << "Model sent with success to the data server."; + qDebug() << "It might take a few minute for it to appear in your model browser."; + deleteLater(); +} + +void FstReader::uploadFailed(QNetworkReply::NetworkError errorCode, const QString& errorString) { + QMessageBox::warning(NULL, + QString("ModelUploader::uploadFailed()"), + QString("Model could not be sent to the data server."), + QMessageBox::Ok); + qDebug() << "Model upload failed (" << errorCode << "): " << errorString; + deleteLater(); +} + bool FstReader::addTextures(const QFileInfo& texdir) { QStringList filter; filter << "*.png" << "*.tif" << "*.jpg" << "*.jpeg"; diff --git a/libraries/shared/src/FstReader.h b/libraries/shared/src/FstReader.h index 6d1cac01c4..2ccf21a3b0 100644 --- a/libraries/shared/src/FstReader.h +++ b/libraries/shared/src/FstReader.h @@ -12,8 +12,11 @@ class TemporaryDir; class QHttpMultiPart; +class QFileInfo; class FstReader : public QObject { + Q_OBJECT + public: FstReader(bool isHead); ~FstReader(); @@ -21,6 +24,10 @@ public: bool zip(); bool send(); +private slots: + void uploadSuccess(const QJsonObject& jsonResponse); + void uploadFailed(QNetworkReply::NetworkError errorCode, const QString& errorString); + private: TemporaryDir* _zipDir; int _lodCount;