Open Monograph Press  3.3.0
HttpRejectedPromise.php
1 <?php
2 
3 namespace Http\Client\Promise;
4 
7 
8 final class HttpRejectedPromise implements Promise
9 {
13  private $exception;
14 
18  public function __construct(Exception $exception)
19  {
20  $this->exception = $exception;
21  }
22 
26  public function then(callable $onFulfilled = null, callable $onRejected = null)
27  {
28  if (null === $onRejected) {
29  return $this;
30  }
31 
32  try {
33  return new HttpFulfilledPromise($onRejected($this->exception));
34  } catch (Exception $e) {
35  return new self($e);
36  }
37  }
38 
42  public function getState()
43  {
44  return Promise::REJECTED;
45  }
46 
50  public function wait($unwrap = true)
51  {
52  if ($unwrap) {
53  throw $this->exception;
54  }
55  }
56 }
Http\Client\Promise\HttpRejectedPromise\then
then(callable $onFulfilled=null, callable $onRejected=null)
Definition: HttpRejectedPromise.php:29
Http\Client\Exception
Definition: php-http/httplug/src/Exception.php:12
Http\Client\Promise\HttpRejectedPromise\getState
getState()
Definition: HttpRejectedPromise.php:45
Http\Promise\Promise
Definition: php-http/promise/src/Promise.php:16
Http\Client\Promise\HttpRejectedPromise\__construct
__construct(Exception $exception)
Definition: HttpRejectedPromise.php:21
Http\Promise\Promise\REJECTED
const REJECTED
Definition: php-http/promise/src/Promise.php:31
Http\Client\Promise\HttpFulfilledPromise
Definition: HttpFulfilledPromise.php:9
Http\Client\Exception
Definition: vendor/php-http/httplug/src/Exception/HttpException.php:3
Http\Client\Promise\HttpRejectedPromise
Definition: HttpRejectedPromise.php:8
Http\Client\Promise\HttpRejectedPromise\wait
wait($unwrap=true)
Definition: HttpRejectedPromise.php:53
Http\Client\Promise
Definition: HttpFulfilledPromise.php:3