HEX
Server: LiteSpeed
System: Linux s383.bitcommand.com 5.14.0-687.24.1.el9_8.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Jul 9 18:14:06 EDT 2026 x86_64
User: pclast (1605)
PHP: 8.1.34
Disabled: exec,system,passthru,shell_exec,escapeshellarg,escapeshellcmd,proc_close,proc_open,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/pclast/www/wp-content/plugins/wp-rocket/inc/Engine/Optimization/RUCSS/Jobs/Factory.php
<?php
declare(strict_types=1);

namespace WP_Rocket\Engine\Optimization\RUCSS\Jobs;

use WP_Rocket\Engine\Common\JobManager\AbstractFactory\SaasFactory;
use WP_Rocket\Engine\Common\JobManager\APIHandler\AbstractAPIClient;
use WP_Rocket\Engine\Common\JobManager\Managers\ManagerInterface;
use WP_Rocket\Engine\Common\Database\TableInterface;

class Factory implements SaasFactory {

	/**
	 * RUCSS Manager.
	 *
	 * @var ManagerInterface
	 */
	private $manager;

	/**
	 * RUCSS Table.
	 *
	 * @var TableInterface
	 */
	private $table;

	/**
	 * API Client instance.
	 *
	 * @var AbstractAPIClient
	 */
	private $api_client;

	/**
	 * Instantiate the class.
	 *
	 * @param ManagerInterface  $manager RUCSS Manager.
	 * @param TableInterface    $table RUCSS Table.
	 * @param AbstractAPIClient $api_client API Client instance.
	 */
	public function __construct( ManagerInterface $manager, TableInterface $table, AbstractAPIClient $api_client ) {
		$this->manager    = $manager;
		$this->table      = $table;
		$this->api_client = $api_client;
	}

	/**
	 * RUCSS job manager.
	 *
	 * @return ManagerInterface
	 */
	public function manager(): ManagerInterface {
		return $this->manager;
	}

	/**
	 * RUCSS Table.
	 *
	 * @return TableInterface
	 */
	public function table(): TableInterface {
		return $this->table;
	}

	/**
	 * API Client.
	 *
	 * @return AbstractAPIClient
	 */
	public function api(): AbstractAPIClient {
		return $this->api_client;
	}
}