Implemented strict http request serialization for APIs that forbid a session to be used in concurrent requests (e.g. dedimania).

Updated all API requests in DedimaniaPlugin to be serialized by this mechanism. Closes #139.
This commit is contained in:
Sebastian Büttner
2017-05-22 22:32:15 +02:00
parent d03f155415
commit b0732bee96
5 changed files with 77 additions and 12 deletions

View File

@@ -83,6 +83,7 @@ class DedimaniaWebHandler implements TimerListener {
$asyncHttpRequest->setContent($content);
$asyncHttpRequest->setCompression(true);
$asyncHttpRequest->setTimeout(500);
$asyncHttpRequest->setSerialize();
$asyncHttpRequest->postData();
}
@@ -171,6 +172,7 @@ class DedimaniaWebHandler implements TimerListener {
$asyncHttpRequest->setContent($content);
$asyncHttpRequest->setCompression(true);
$asyncHttpRequest->setTimeout(500);
$asyncHttpRequest->setSerialize();
$asyncHttpRequest->postData();
return true;
@@ -218,6 +220,7 @@ class DedimaniaWebHandler implements TimerListener {
$asyncHttpRequest->setContent($content);
$asyncHttpRequest->setCompression(true);
$asyncHttpRequest->setTimeout(500);
$asyncHttpRequest->setSerialize();
$asyncHttpRequest->postData();
}
@@ -309,6 +312,7 @@ class DedimaniaWebHandler implements TimerListener {
$asyncHttpRequest->setContent($content);
$asyncHttpRequest->setCompression(false);
$asyncHttpRequest->setTimeout(500);
$asyncHttpRequest->setSerialize();
$asyncHttpRequest->postData();
}
@@ -361,6 +365,7 @@ class DedimaniaWebHandler implements TimerListener {
$asyncHttpRequest->setContent($content);
$asyncHttpRequest->setCompression(true);
$asyncHttpRequest->setTimeout(500);
$asyncHttpRequest->setSerialize();
$asyncHttpRequest->postData();
}
@@ -403,6 +408,7 @@ class DedimaniaWebHandler implements TimerListener {
$asyncHttpRequest->setContent($content);
$asyncHttpRequest->setCompression(true);
$asyncHttpRequest->setTimeout(500);
$asyncHttpRequest->setSerialize();
$asyncHttpRequest->postData();
}
@@ -447,6 +453,7 @@ class DedimaniaWebHandler implements TimerListener {
$asyncHttpRequest->setContent($content);
$asyncHttpRequest->setCompression(true);
$asyncHttpRequest->setTimeout(500);
$asyncHttpRequest->setSerialize();
$asyncHttpRequest->postData();
}