| Server IP : 62.72.47.131 / Your IP : 216.73.217.34 Web Server : Apache/2.4.66 (Debian) System : Linux 975cdb959a49 5.14.0-611.55.1.el9_7.x86_64 #1 SMP PREEMPT_DYNAMIC Tue May 19 15:19:29 EDT 2026 x86_64 User : ( 501) PHP Version : 8.3.30 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : OFF | Perl : ON | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /var/www/html/wp-content/plugins/woocommerce/src/Api/ |
Upload File : |
<?php
declare(strict_types=1);
namespace Automattic\WooCommerce\Api;
/**
* Exception for API errors with error codes and extensions.
*/
class ApiException extends \RuntimeException {
/**
* Constructor.
*
* @param string $message The error message.
* @param string $error_code The machine-readable error code.
* @param array $extensions Additional error metadata.
* @param int $status_code The HTTP status code.
* @param ?\Throwable $previous The previous throwable for chaining.
*/
public function __construct(
string $message,
private readonly string $error_code = 'INTERNAL_ERROR',
private readonly array $extensions = array(),
int $status_code = 500,
?\Throwable $previous = null,
) {
parent::__construct( $message, $status_code, $previous );
}
/**
* Get the machine-readable error code.
*
* @return string
*/
public function getErrorCode(): string {
return $this->error_code;
}
/**
* Get the additional error metadata.
*
* @return array
*/
public function getExtensions(): array {
return $this->extensions;
}
/**
* Get the HTTP status code.
*
* @return int
*/
public function getStatusCode(): int {
return $this->getCode();
}
}