Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
0.00% covered (danger)
0.00%
0 / 5
0.00% covered (danger)
0.00%
0 / 2
CRAP
0.00% covered (danger)
0.00%
0 / 1
RestApi
0.00% covered (danger)
0.00%
0 / 5
0.00% covered (danger)
0.00%
0 / 2
12
0.00% covered (danger)
0.00%
0 / 1
 __construct
0.00% covered (danger)
0.00%
0 / 2
0.00% covered (danger)
0.00%
0 / 1
2
 register_routes
0.00% covered (danger)
0.00%
0 / 3
0.00% covered (danger)
0.00%
0 / 1
6
1<?php
2
3namespace NewfoldLabs\WP\Module\Performance\Images\RestApi;
4
5/**
6 * Instantiate controllers and register routes.
7 */
8final class RestApi {
9    /**
10     * Dependency injection container.
11     *
12     * @var \NewfoldLabs\WP\Container\Container
13     */
14    protected $container;
15
16    /**
17     * List of custom REST API controllers
18     *
19     * @var array
20     */
21    protected $controllers = array(
22        'NewfoldLabs\\WP\\Module\\Performance\\Images\\RestApi\\ImagesController',
23    );
24
25
26    /**
27     * Setup the custom REST API.
28     *
29     * @param \NewfoldLabs\WP\Container\Container $container Dependency injection container.
30     */
31    public function __construct( $container ) {
32        $this->container = $container;
33        add_action( 'rest_api_init', array( $this, 'register_routes' ) );
34    }
35
36    /**
37     * Register the custom REST API routes
38     */
39    public function register_routes() {
40        foreach ( $this->controllers as $controller ) {
41            /**
42             * Get an instance of the WP_REST_Controller.
43             *
44             * @var $instance WP_REST_Controller
45             */
46            $instance = new $controller( $this->container );
47            $instance->register_routes();
48        }
49    }
50}