Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
0.00% covered (danger)
0.00%
0 / 4
0.00% covered (danger)
0.00%
0 / 1
CRAP
0.00% covered (danger)
0.00%
0 / 1
TaskManager
0.00% covered (danger)
0.00%
0 / 4
0.00% covered (danger)
0.00%
0 / 1
20
0.00% covered (danger)
0.00%
0 / 1
 __construct
0.00% covered (danger)
0.00%
0 / 4
0.00% covered (danger)
0.00%
0 / 1
20
1<?php
2
3namespace NewfoldLabs\WP\Module\Installer\TaskManagers;
4
5use NewfoldLabs\WP\Module\Installer\Data\Options;
6
7/**
8 * Class TaskManager
9 */
10final class TaskManager {
11
12    /**
13     * List of Task Managers.
14     *
15     * @var array
16     */
17    protected $task_managers = array(
18        'NewfoldLabs\\WP\Module\\Installer\\TaskManagers\\PluginInstallTaskManager',
19        'NewfoldLabs\\WP\Module\\Installer\\TaskManagers\\PluginUninstallTaskManager',
20        'NewfoldLabs\\WP\Module\\Installer\\TaskManagers\\ThemeInstallTaskManager',
21        'NewfoldLabs\\WP\Module\\Installer\\TaskManagers\\PluginActivationTaskManager',
22        'NewfoldLabs\\WP\Module\\Installer\\TaskManagers\\PluginDeactivationTaskManager',
23    );
24
25    /**
26     * Constructor that registers all the TaskManagers.
27     */
28    public function __construct() {
29        TaskManagerSchedules::init();
30
31        /**
32         * Task Manager Class
33         *
34         * @var $task_manager PluginUninstallTaskManager|PluginDeactivationTaskManager|ThemeInstallTaskManager|PluginInstallTaskManager|PluginActivationTaskManager
35         */
36        foreach ( $this->task_managers as $task_manager ) {
37            if ( wp_next_scheduled( $task_manager::get_hook_name() ) || ! empty( get_option( Options::get_option_name( $task_manager::get_queue_name() ), array() ) ) ) {
38                new $task_manager();
39            }
40        }
41    }
42}