HEX
Server: Apache/2
System: Linux bq-e705.pointdnshere.com 4.18.0-513.11.1.el8_9.x86_64 #1 SMP Wed Jan 17 02:00:40 EST 2024 x86_64
User: wellmix (1103)
PHP: 7.4.33
Disabled: NONE
Upload Files
File: /home/wellmix/public_html/wp-content/plugins/woocommerce-paypal-payments/src/PPCP.php
<?php
/**
 * Internal global data.
 *
 * @package WooCommerce\PayPalCommerce
 */

declare(strict_types=1);

namespace WooCommerce\PayPalCommerce;

use LogicException;
use WooCommerce\PayPalCommerce\Vendor\Psr\Container\ContainerInterface;

/**
 * Internal global data.
 */
class PPCP {
	/**
	 * The container with services of the application modules.
	 *
	 * @var ContainerInterface|null
	 */
	private static $container = null;

	/**
	 * The container with services of the application modules.
	 * Mainly for internal usage.
	 * The compatibility between different versions of the plugins is not guaranteed.
	 *
	 * @throws LogicException When no container.
	 */
	public static function container(): ContainerInterface {
		if ( ! self::$container ) {
			throw new LogicException( 'No PPCP container, probably called too early when the plugin is not initialized yet.' );
		}
		return self::$container;
	}

	/**
	 * Init the data.
	 *
	 * @param ContainerInterface $container The app container.
	 */
	public static function init( ContainerInterface $container ): void {
		self::$container = $container;
	}
}