aboutsummaryrefslogtreecommitdiff
path: root/backends/cloud/onedrive
diff options
context:
space:
mode:
authorAlexander Tkachev2016-06-10 15:01:56 +0600
committerAlexander Tkachev2016-08-24 16:07:55 +0600
commit3e6503743c2f5d90c64bf37e943338c33fc58d2b (patch)
tree3255606a88811badf45f14b4fa8cbbdc56d30964 /backends/cloud/onedrive
parent6a93e8dd09ae2eeab616d14189a58633fd928c07 (diff)
downloadscummvm-rg350-3e6503743c2f5d90c64bf37e943338c33fc58d2b.tar.gz
scummvm-rg350-3e6503743c2f5d90c64bf37e943338c33fc58d2b.tar.bz2
scummvm-rg350-3e6503743c2f5d90c64bf37e943338c33fc58d2b.zip
CLOUD: Add Request::date()
Used in SavesSyncRequest to update Storage's last sync date.
Diffstat (limited to 'backends/cloud/onedrive')
-rw-r--r--backends/cloud/onedrive/onedrivecreatedirectoryrequest.cpp4
-rw-r--r--backends/cloud/onedrive/onedrivecreatedirectoryrequest.h2
-rw-r--r--backends/cloud/onedrive/onedrivelistdirectoryrequest.cpp5
-rw-r--r--backends/cloud/onedrive/onedrivelistdirectoryrequest.h2
4 files changed, 13 insertions, 0 deletions
diff --git a/backends/cloud/onedrive/onedrivecreatedirectoryrequest.cpp b/backends/cloud/onedrive/onedrivecreatedirectoryrequest.cpp
index fe1128bd5b..2c644c42c5 100644
--- a/backends/cloud/onedrive/onedrivecreatedirectoryrequest.cpp
+++ b/backends/cloud/onedrive/onedrivecreatedirectoryrequest.cpp
@@ -87,6 +87,7 @@ void OneDriveCreateDirectoryRequest::responseCallback(Networking::JsonResponse r
delete json;
return;
}
+ if (response.request) _date = response.request->date();
Networking::ErrorResponse error(this);
Networking::CurlJsonRequest *rq = (Networking::CurlJsonRequest *)response.request;
@@ -112,6 +113,7 @@ void OneDriveCreateDirectoryRequest::responseCallback(Networking::JsonResponse r
void OneDriveCreateDirectoryRequest::errorCallback(Networking::ErrorResponse error) {
_workingRequest = nullptr;
if (_ignoreCallback) return;
+ if (error.request) _date = error.request->date();
finishError(error);
}
@@ -119,6 +121,8 @@ void OneDriveCreateDirectoryRequest::handle() {}
void OneDriveCreateDirectoryRequest::restart() { start(); }
+Common::String OneDriveCreateDirectoryRequest::date() const { return _date; }
+
void OneDriveCreateDirectoryRequest::finishSuccess(bool success) {
Request::finishSuccess();
if (_boolCallback) (*_boolCallback)(Storage::BoolResponse(this, success));
diff --git a/backends/cloud/onedrive/onedrivecreatedirectoryrequest.h b/backends/cloud/onedrive/onedrivecreatedirectoryrequest.h
index 4bf0d9ef36..880e94e8db 100644
--- a/backends/cloud/onedrive/onedrivecreatedirectoryrequest.h
+++ b/backends/cloud/onedrive/onedrivecreatedirectoryrequest.h
@@ -38,6 +38,7 @@ class OneDriveCreateDirectoryRequest: public Networking::Request {
Storage::BoolCallback _boolCallback;
Request *_workingRequest;
bool _ignoreCallback;
+ Common::String _date;
void start();
void responseCallback(Networking::JsonResponse response);
@@ -49,6 +50,7 @@ public:
virtual void handle();
virtual void restart();
+ virtual Common::String date() const;
};
} // End of namespace OneDrive
diff --git a/backends/cloud/onedrive/onedrivelistdirectoryrequest.cpp b/backends/cloud/onedrive/onedrivelistdirectoryrequest.cpp
index 040ef153db..be6fcb70e7 100644
--- a/backends/cloud/onedrive/onedrivelistdirectoryrequest.cpp
+++ b/backends/cloud/onedrive/onedrivelistdirectoryrequest.cpp
@@ -94,6 +94,8 @@ void OneDriveListDirectoryRequest::listedDirectoryCallback(Networking::JsonRespo
return;
}
+ if (response.request) _date = response.request->date();
+
Networking::ErrorResponse error(this);
Networking::CurlJsonRequest *rq = (Networking::CurlJsonRequest *)response.request;
if (rq && rq->getNetworkReadStream())
@@ -138,6 +140,7 @@ void OneDriveListDirectoryRequest::listedDirectoryCallback(Networking::JsonRespo
void OneDriveListDirectoryRequest::listedDirectoryErrorCallback(Networking::ErrorResponse error) {
_workingRequest = nullptr;
if (_ignoreCallback) return;
+ if (error.request) _date = error.request->date();
finishError(error);
}
@@ -145,6 +148,8 @@ void OneDriveListDirectoryRequest::handle() {}
void OneDriveListDirectoryRequest::restart() { start(); }
+Common::String OneDriveListDirectoryRequest::date() const { return _date; }
+
void OneDriveListDirectoryRequest::finishSuccess(Common::Array<StorageFile> &files) {
Request::finishSuccess();
if (_listDirectoryCallback) (*_listDirectoryCallback)(Storage::ListDirectoryResponse(this, files));
diff --git a/backends/cloud/onedrive/onedrivelistdirectoryrequest.h b/backends/cloud/onedrive/onedrivelistdirectoryrequest.h
index b8adfe7ef0..5e80f4f561 100644
--- a/backends/cloud/onedrive/onedrivelistdirectoryrequest.h
+++ b/backends/cloud/onedrive/onedrivelistdirectoryrequest.h
@@ -43,6 +43,7 @@ class OneDriveListDirectoryRequest: public Networking::Request {
Common::String _currentDirectory;
Request *_workingRequest;
bool _ignoreCallback;
+ Common::String _date;
void start();
void listNextDirectory();
@@ -56,6 +57,7 @@ public:
virtual void handle();
virtual void restart();
+ virtual Common::String date() const;
};
} // End of namespace OneDrive