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();
}