HEX
Server: Apache
System: Linux WWW 6.1.0-40-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.153-1 (2025-09-20) x86_64
User: web11 (1011)
PHP: 8.2.29
Disabled: NONE
Upload Files
File: /var/www/itself.kauko.lt/wp-content/plugins/jetpack-boost-git/app/rest-api/REST_API.php
<?php

namespace Automattic\Jetpack_Boost\REST_API;

use Automattic\Jetpack_Boost\REST_API\Contracts\Endpoint;

class REST_API {

	/**
	 * @var Route[]
	 */
	protected $routes = array();

	/**
	 * @param Endpoint[] $routes
	 */
	public function __construct( $routes ) {
		foreach ( $routes as $route_class ) {
			$this->routes[] = new Route( $route_class );
		}
	}

	public function register_rest_routes() {
		foreach ( $this->routes as $route ) {
			$route->register_rest_route();
		}
	}

	/**
	 * @param Endpoint|Endpoint[]|string $endpoints
	 *
	 * @return void
	 */
	public static function register( $endpoints ) {
		// If endpoints are passed as a string,
		// (array) will convert it to an array.
		$rest_api = new REST_API( (array) $endpoints );
		add_action( 'rest_api_init', array( $rest_api, 'register_rest_routes' ) );
	}
}