HEX
Server: LiteSpeed
System: Linux cde2.duelhost.dk 4.18.0-553.34.1.lve.el8.x86_64 #1 SMP Thu Jan 9 16:30:32 UTC 2025 x86_64
User: dtptviut (1121)
PHP: 8.0.30
Disabled: exec,system,passthru,shell_exec,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname
Upload Files
File: /home/dtptviut/public_html/wp-content/plugins/wordpress-seo/src/ai/http-request/domain/response.php
<?php

// phpcs:disable Yoast.NamingConventions.NamespaceName.TooLong -- Needed in the folder structure.

namespace Yoast\WP\SEO\AI\HTTP_Request\Domain;

/**
 * Class Response
 * Represents a response from the AI Generator API.
 */
class Response {

	/**
	 * The response body.
	 *
	 * @var string
	 */
	private $body;

	/**
	 * The response code.
	 *
	 * @var int
	 */
	private $response_code;

	/**
	 * The response message.
	 *
	 * @var string
	 */
	private $message;

	/**
	 * The error code.
	 *
	 * @var string
	 */
	private $error_code;

	/**
	 * The missing licenses.
	 *
	 * @var array<string>
	 */
	private $missing_licenses;

	/**
	 * The response headers, keyed by lower-cased header name.
	 *
	 * @var array<string, string|array<string>>
	 */
	private $headers;

	/**
	 * Response constructor.
	 *
	 * @param string                              $body             The response body.
	 * @param int                                 $response_code    The response code.
	 * @param string                              $message          The response message.
	 * @param string                              $error_code       The error code.
	 * @param array<string>                       $missing_licenses The missing licenses.
	 * @param array<string, string|array<string>> $headers          The response headers, keyed by lower-cased header name.
	 */
	public function __construct( string $body, int $response_code, string $message, string $error_code = '', $missing_licenses = [], array $headers = [] ) {
		$this->body             = $body;
		$this->response_code    = $response_code;
		$this->message          = $message;
		$this->error_code       = $error_code;
		$this->missing_licenses = $missing_licenses;
		$this->headers          = $headers;
	}

	/**
	 * Gets the response body.
	 *
	 * @return string The response body.
	 */
	public function get_body() {
		return $this->body;
	}

	/**
	 * Gets the response code.
	 *
	 * @return int The response code.
	 */
	public function get_response_code(): int {
		return $this->response_code;
	}

	/**
	 * Gets the response message.
	 *
	 * @return string The response message.
	 */
	public function get_message(): string {
		return $this->message;
	}

	/**
	 * Gets the error code.
	 *
	 * @return string The error code.
	 */
	public function get_error_code(): string {
		return $this->error_code;
	}

	/**
	 * Gets the missing licenses.
	 *
	 * @return array<string> The missing licenses.
	 */
	public function get_missing_licenses(): array {
		return $this->missing_licenses;
	}

	/**
	 * Gets the response headers, keyed by lower-cased header name.
	 *
	 * @return array<string, string|array<string>> The response headers.
	 */
	public function get_headers(): array {
		return $this->headers;
	}
}