diff options
author | Alexander Tkachev | 2019-11-03 02:16:00 +0700 |
---|---|---|
committer | Eugene Sandulenko | 2019-11-05 01:47:00 +0100 |
commit | 99e21f4320d86d027c6fac1884310f4f86835d66 (patch) | |
tree | 80303453b0b802f5ad618a31e969204e170f3beb /backends/networking/curl/curlrequest.h | |
parent | f7d9156967af8005543434c64430fdf06cab7033 (diff) | |
download | scummvm-rg350-99e21f4320d86d027c6fac1884310f4f86835d66.tar.gz scummvm-rg350-99e21f4320d86d027c6fac1884310f4f86835d66.tar.bz2 scummvm-rg350-99e21f4320d86d027c6fac1884310f4f86835d66.zip |
NETWORKING: Enter Session
Session allows to reuse SessionRequests to the same host by making them
keeping alive connection. Turns out, though, that libcurl already does
that for us, and we didn't gain any speedup we thought we'd get.
Usage:
```
Networking::Session s;
Networking::SessionRequest *request = s.get(url);
request->startAndWait();
warning("HTTP GET: %s", request->text());
s.close();
```
You can still use SessionRequest without Session (but you can't put them
on stack!):
```
Networking::SessionRequest *request = new
Networking::SessionRequest(url);
request->startAndWait();
warning("HTTP GET: %s", request->text());
request->close();
```
Diffstat (limited to 'backends/networking/curl/curlrequest.h')
-rw-r--r-- | backends/networking/curl/curlrequest.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/backends/networking/curl/curlrequest.h b/backends/networking/curl/curlrequest.h index f8d71c4828..9bca05c771 100644 --- a/backends/networking/curl/curlrequest.h +++ b/backends/networking/curl/curlrequest.h @@ -50,6 +50,8 @@ protected: uint32 _bytesBufferSize; bool _uploading; //using PUT method bool _usingPatch; //using PATCH method + bool _keepAlive; + long _keepAliveIdle, _keepAliveInterval; virtual NetworkReadStream *makeStream(); @@ -85,6 +87,10 @@ public: /** Remembers to use PATCH method when it would create NetworkReadStream. */ virtual void usePatch(); + /** Remembers to use Connection: keep-alive or close. */ + virtual void connectionKeepAlive(long idle = 120, long interval = 60); + virtual void connectionClose(); + /** * Starts this Request with ConnMan. * @return its NetworkReadStream in NetworkReadStreamResponse. |