aboutsummaryrefslogtreecommitdiff
path: root/backends/cloud/onedrive/onedrivetokenrefresher.h
diff options
context:
space:
mode:
authorAlexander Tkachev2016-05-27 15:21:06 +0600
committerAlexander Tkachev2016-08-24 16:07:55 +0600
commit98150beb38f73b56c7bc76f95dcc1d72290e4ac7 (patch)
treec56f8d97d30fb15f41f07f402c80e83a13cc03fc /backends/cloud/onedrive/onedrivetokenrefresher.h
parent83b349a033d71e92e292d1f1da0578d557ec6411 (diff)
downloadscummvm-rg350-98150beb38f73b56c7bc76f95dcc1d72290e4ac7.tar.gz
scummvm-rg350-98150beb38f73b56c7bc76f95dcc1d72290e4ac7.tar.bz2
scummvm-rg350-98150beb38f73b56c7bc76f95dcc1d72290e4ac7.zip
CLOUD: Refactor ConnectionManager/Requests system
ConnectionManager now storages Request * (not generates ids for it), Requests have control on their RequestState, RequestIdPair is now called Response and storages Request * with some response together. All related classes are changed to use it in more clean and understandable way. Request, RequestState and Response are carefully commented/documented.
Diffstat (limited to 'backends/cloud/onedrive/onedrivetokenrefresher.h')
-rw-r--r--backends/cloud/onedrive/onedrivetokenrefresher.h13
1 files changed, 8 insertions, 5 deletions
diff --git a/backends/cloud/onedrive/onedrivetokenrefresher.h b/backends/cloud/onedrive/onedrivetokenrefresher.h
index 58b7dcedb4..c09879feed 100644
--- a/backends/cloud/onedrive/onedrivetokenrefresher.h
+++ b/backends/cloud/onedrive/onedrivetokenrefresher.h
@@ -35,24 +35,27 @@ class OneDriveStorage;
class OneDriveTokenRefresher: public Networking::CurlJsonRequest {
OneDriveStorage *_parentStorage;
Common::Array<Common::String> _headers;
- Networking::CurlJsonRequest *_innerRequest;
+ CurlJsonRequest *_innerRequest;
Networking::JsonCallback _jsonCallback;
- int32 _retryId;
+ Request *_retryRequest;
bool _started;
- void innerRequestCallback(Networking::RequestJsonPair pair);
- void tokenRefreshed(Storage::RequestBoolPair pair);
+ void innerRequestCallback(Networking::JsonResponse pair);
+ void tokenRefreshed(Storage::BoolResponse pair);
+
+ virtual void finishJson(Common::JSONValue *json);
public:
OneDriveTokenRefresher(OneDriveStorage *parent, Networking::JsonCallback callback, const char *url);
virtual ~OneDriveTokenRefresher();
virtual void handle();
virtual void restart();
+ virtual void finish();
virtual void setHeaders(Common::Array<Common::String> &headers) { _headers = headers; }
virtual void addHeader(Common::String header) { _headers.push_back(header); }
virtual void addPostField(Common::String field) { _innerRequest->addPostField(field); }
- virtual Cloud::Storage::RequestReadStreamPair execute();
+ virtual Networking::NetworkReadStreamResponse execute();
};
} //end of namespace OneDrive