X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=app%2FGithub%2FAPI%2FRepos%2FReadRepo.php;h=15c0314e9243ae935e23fc718b7f16b368317283;hb=5664731d8825ce074a5232190f2f8ec61d921782;hp=2a82b0879ea7d11e3ed037a8e7dd02459e62dc0c;hpb=36cfa28cf2dcee3422f0231f91c6692eb28e7824;p=pharext%2Fpharext.org diff --git a/app/Github/API/Repos/ReadRepo.php b/app/Github/API/Repos/ReadRepo.php index 2a82b08..15c0314 100644 --- a/app/Github/API/Repos/ReadRepo.php +++ b/app/Github/API/Repos/ReadRepo.php @@ -5,23 +5,25 @@ namespace app\Github\API\Repos; use app\Github\API\Call; use app\Github\Exception\RequestException; use http\Client\Request; +use http\Client\Response; class ReadRepo extends Call { - function enqueue(callable $callback) { + function request() { $url = $this->url->mod(uri_template("./repos/{+repo}", $this->args)); $request = new Request("GET", $url, [ "Authorization" => "token " . $this->api->getToken(), "Accept" => $this->config->api->accept, ]); - $this->api->getClient()->enqueue($request, function($response) use($callback) { - if ($response->getResponseCode() >= 400 || null === ($json = json_decode($response->getBody()))) { - throw new RequestException($response); - } - $this->result = [$json]; - $this->saveToCache($this->result); - $callback($json); - return true; - }); + return $request; + } + + function response(Response $response) { + if ($response->getResponseCode() >= 400 || null === ($json = json_decode($response->getBody()))) { + throw new RequestException($response); + } + $result = [$json]; + $this->saveToCache($result); + return $result; } }