File "class-buffer-subscriber.php"

Full path: /home/kosmetik/public_html/wp-content/plugins/wp-rocket/inc/classes/subscriber/Optimization/class-buffer-subscriber.php
File size: 981 B
MIME-type: text/x-php
Charset: utf-8

Download   Open   Edit   Advanced Editor   Back

<?php
namespace WP_Rocket\Subscriber\Optimization;

use WP_Rocket\Buffer\Optimization;
use WP_Rocket\Event_Management\Subscriber_Interface;

/**
 * Event subscriber to buffer and process a page content.
 *
 * @since  3.3
 * @author Grégory Viguier
 */
class Buffer_Subscriber implements Subscriber_Interface {
	/**
	 * Optimization instance
	 *
	 * @var Optimization
	 */
	private $optimizer;

	/**
	 * Constructor
	 *
	 * @param Optimization $optimizer Optimization instance.
	 */
	public function __construct( Optimization $optimizer ) {
		$this->optimizer = $optimizer;
	}

	/**
	 * {@inheritdoc}
	 */
	public static function get_subscribed_events() {
		return [
			'template_redirect' => [ 'start_content_process', 2 ],
		];
	}

	/**
	 * Start buffering the page content and apply optimizations if we can.
	 *
	 * @since  3.3
	 * @access public
	 * @author Grégory Viguier
	 */
	public function start_content_process() {
		return $this->optimizer->maybe_init_process();
	}
}