123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 |
- <?php
- namespace Stripe\Error;
- use Exception;
- abstract class Base extends Exception
- {
- public function __construct(
- $message,
- $httpStatus = null,
- $httpBody = null,
- $jsonBody = null,
- $httpHeaders = null
- ) {
- parent::__construct($message);
- $this->httpStatus = $httpStatus;
- $this->httpBody = $httpBody;
- $this->jsonBody = $jsonBody;
- $this->httpHeaders = $httpHeaders;
- $this->requestId = null;
- // TODO: make this a proper constructor argument in the next major
- // release.
- $this->stripeCode = isset($jsonBody["error"]["code"]) ? $jsonBody["error"]["code"] : null;
- if ($httpHeaders && isset($httpHeaders['Request-Id'])) {
- $this->requestId = $httpHeaders['Request-Id'];
- }
- }
- public function getStripeCode()
- {
- return $this->stripeCode;
- }
- public function getHttpStatus()
- {
- return $this->httpStatus;
- }
- public function getHttpBody()
- {
- return $this->httpBody;
- }
- public function getJsonBody()
- {
- return $this->jsonBody;
- }
- public function getHttpHeaders()
- {
- return $this->httpHeaders;
- }
- public function getRequestId()
- {
- return $this->requestId;
- }
- public function __toString()
- {
- $id = $this->requestId ? " from API request '{$this->requestId}'": "";
- $message = explode("\n", parent::__toString());
- $message[0] .= $id;
- return implode("\n", $message);
- }
- }
|