diff -r 490d5cc509ed -r cf61fcea0001 wp/wp-includes/class-wp-http-response.php --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/wp/wp-includes/class-wp-http-response.php Mon Oct 14 17:39:30 2019 +0200 @@ -0,0 +1,153 @@ +set_data( $data ); + $this->set_status( $status ); + $this->set_headers( $headers ); + } + + /** + * Retrieves headers associated with the response. + * + * @since 4.4.0 + * + * @return array Map of header name to header value. + */ + public function get_headers() { + return $this->headers; + } + + /** + * Sets all header values. + * + * @since 4.4.0 + * + * @param array $headers Map of header name to header value. + */ + public function set_headers( $headers ) { + $this->headers = $headers; + } + + /** + * Sets a single HTTP header. + * + * @since 4.4.0 + * + * @param string $key Header name. + * @param string $value Header value. + * @param bool $replace Optional. Whether to replace an existing header of the same name. + * Default true. + */ + public function header( $key, $value, $replace = true ) { + if ( $replace || ! isset( $this->headers[ $key ] ) ) { + $this->headers[ $key ] = $value; + } else { + $this->headers[ $key ] .= ', ' . $value; + } + } + + /** + * Retrieves the HTTP return code for the response. + * + * @since 4.4.0 + * + * @return int The 3-digit HTTP status code. + */ + public function get_status() { + return $this->status; + } + + /** + * Sets the 3-digit HTTP status code. + * + * @since 4.4.0 + * + * @param int $code HTTP status. + */ + public function set_status( $code ) { + $this->status = absint( $code ); + } + + /** + * Retrieves the response data. + * + * @since 4.4.0 + * + * @return mixed Response data. + */ + public function get_data() { + return $this->data; + } + + /** + * Sets the response data. + * + * @since 4.4.0 + * + * @param mixed $data Response data. + */ + public function set_data( $data ) { + $this->data = $data; + } + + /** + * Retrieves the response data for JSON serialization. + * + * It is expected that in most implementations, this will return the same as get_data(), + * however this may be different if you want to do custom JSON data handling. + * + * @since 4.4.0 + * + * @return mixed Any JSON-serializable value. + */ + public function jsonSerialize() { + return $this->get_data(); + } +}