X-Git-Url: https://git.m6w6.name/?p=m6w6%2Fseekat;a=blobdiff_plain;f=lib%2FAPI%2FCall.php;h=26a52ee0995fbff2807d3e4ab850ca97f157eea9;hp=787f98db3b24238654bf1a42e0d628247cdc1ed5;hb=3958595e9ff27162ae918db1453ddecd4840d481;hpb=21ffa2d775c959694776ee3f46f4e2d010a91e72 diff --git a/lib/API/Call.php b/lib/API/Call.php index 787f98d..26a52ee 100644 --- a/lib/API/Call.php +++ b/lib/API/Call.php @@ -56,7 +56,14 @@ class Call extends Deferred implements SplObserver }); $client->attach($this); - $client->enqueue($request); + $client->enqueue($request, function(Response $response) { + $this->response = $response; + $this->complete( + [$this, "resolve"], + [$this, "reject"] + ); + return true; + }); /* start off */ $client->once(); } @@ -76,14 +83,6 @@ class Call extends Deferred implements SplObserver } $this->notify((object) compact("client", "request", "progress")); - - if ($progress->info === "finished") { - $this->response = $this->client->getResponse(); - $this->complete( - [$this, "resolve"], - [$this, "reject"] - ); - } } /** @@ -101,10 +100,8 @@ class Call extends Deferred implements SplObserver $reject($e); } } else { - $reject($this->client->getTransferInfo($this->request)["error"]); + $reject($this->client->getTransferInfo($this->request)->error); } - - $this->client->dequeue($this->request); } /**