| Server IP : 217.11.249.137 / Your IP : 216.73.216.54 Web Server : Apache System : FreeBSD triton.blueboard.cz 13.5-STABLE FreeBSD 13.5-STABLE stable/13-a3d32f9e6 GENERIC amd64 User : www ( 80) PHP Version : 8.0.30 Disable Function : ini_restore, show_source, socket_select, socket_create_listen, socket_create_pair, socket_listen, socket_strerror, shell_exec, proc_nice, proc_terminate, readlink, symlink, link, pfsocketopen, ini_alter, dl, pcntl_exec, pcntl_fork, pcntl_signal, pcntl_waitpid, pcntl_wexitstatus, pcntl_wifexited, pcntl_wifsignaled, pcntl_wifsignaled, pcntl_wifstoped, pcntl_wifstopsig, pcntl_wtermsig, socket_accept, socket_bind, socket_create, socket_create_listen, popen, zlib_decode MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /data/www/24781/extramagazin_cz/www/wp-content/plugins/amp/src/ |
Upload File : |
<?php
/**
* Class Services.
*
* @package AmpProject\AmpWP
*/
namespace AmpProject\AmpWP;
use AmpProject\AmpWP\Infrastructure\Injector;
use AmpProject\AmpWP\Infrastructure\Plugin;
use AmpProject\AmpWP\Infrastructure\Service;
use AmpProject\AmpWP\Infrastructure\ServiceContainer;
/**
* Convenience class to get easy access to the service container.
*
* Using this should always be the last resort.
* Always prefer to use constructor injection instead.
*
* @package AmpProject\AmpWP
* @since 2.0
* @internal
*/
final class Services {
/**
* Plugin object instance.
*
* @var Plugin
*/
private static $plugin;
/**
* Service container object instance.
*
* @var ServiceContainer
*/
private static $container;
/**
* Dependency injector object instance.
*
* @var Injector
*/
private static $injector;
/**
* Get a particular service out of the service container.
*
* @param string $service Service ID to retrieve.
* @return Service
*/
public static function get( $service ) {
return self::get_container()->get( $service );
}
/**
* Check if a particular service has been registered in the service container.
*
* @param string $service Service ID to retrieve.
* @return bool
*/
public static function has( $service ) {
return self::get_container()->has( $service );
}
/**
* Get an instance of the plugin.
*
* @return Plugin Plugin object instance.
*/
public static function get_plugin() {
if ( null === self::$plugin ) {
self::$plugin = AmpWpPluginFactory::create();
}
return self::$plugin;
}
/**
* Get an instance of the service container.
*
* @return ServiceContainer Service container object instance.
*/
public static function get_container() {
if ( null === self::$container ) {
self::$container = self::get_plugin()->get_container();
}
return self::$container;
}
/**
* Get an instance of the dependency injector.
*
* @return Injector Dependency injector object instance.
*/
public static function get_injector() {
if ( null === self::$injector ) {
self::$injector = self::get_container()->get( 'injector' );
}
return self::$injector;
}
}