212 lines
		
	
	
		
			5.1 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			212 lines
		
	
	
		
			5.1 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
| <?php
 | |
| 
 | |
| /*
 | |
|  * This file is part of the Symfony package.
 | |
|  *
 | |
|  * (c) Fabien Potencier <fabien@symfony.com>
 | |
|  *
 | |
|  * For the full copyright and license information, please view the LICENSE
 | |
|  * file that was distributed with this source code.
 | |
|  */
 | |
| 
 | |
| namespace Symfony\Component\HttpKernel;
 | |
| 
 | |
| use Symfony\Component\DependencyInjection\ContainerInterface;
 | |
| use Symfony\Component\HttpKernel\Bundle\BundleInterface;
 | |
| use Symfony\Component\Config\Loader\LoaderInterface;
 | |
| 
 | |
| /**
 | |
|  * The Kernel is the heart of the Symfony system.
 | |
|  *
 | |
|  * It manages an environment made of bundles.
 | |
|  *
 | |
|  * @author Fabien Potencier <fabien@symfony.com>
 | |
|  *
 | |
|  * @api
 | |
|  */
 | |
| interface KernelInterface extends HttpKernelInterface, \Serializable
 | |
| {
 | |
|     /**
 | |
|      * Returns an array of bundles to register.
 | |
|      *
 | |
|      * @return BundleInterface[] An array of bundle instances.
 | |
|      *
 | |
|      * @api
 | |
|      */
 | |
|     public function registerBundles();
 | |
| 
 | |
|     /**
 | |
|      * Loads the container configuration.
 | |
|      *
 | |
|      * @param LoaderInterface $loader A LoaderInterface instance
 | |
|      *
 | |
|      * @api
 | |
|      */
 | |
|     public function registerContainerConfiguration(LoaderInterface $loader);
 | |
| 
 | |
|     /**
 | |
|      * Boots the current kernel.
 | |
|      *
 | |
|      * @api
 | |
|      */
 | |
|     public function boot();
 | |
| 
 | |
|     /**
 | |
|      * Shutdowns the kernel.
 | |
|      *
 | |
|      * This method is mainly useful when doing functional testing.
 | |
|      *
 | |
|      * @api
 | |
|      */
 | |
|     public function shutdown();
 | |
| 
 | |
|     /**
 | |
|      * Gets the registered bundle instances.
 | |
|      *
 | |
|      * @return BundleInterface[] An array of registered bundle instances
 | |
|      *
 | |
|      * @api
 | |
|      */
 | |
|     public function getBundles();
 | |
| 
 | |
|     /**
 | |
|      * Checks if a given class name belongs to an active bundle.
 | |
|      *
 | |
|      * @param string $class A class name
 | |
|      *
 | |
|      * @return bool true if the class belongs to an active bundle, false otherwise
 | |
|      *
 | |
|      * @api
 | |
|      *
 | |
|      * @deprecated Deprecated since version 2.6, to be removed in 3.0.
 | |
|      */
 | |
|     public function isClassInActiveBundle($class);
 | |
| 
 | |
|     /**
 | |
|      * Returns a bundle and optionally its descendants by its name.
 | |
|      *
 | |
|      * @param string $name  Bundle name
 | |
|      * @param bool   $first Whether to return the first bundle only or together with its descendants
 | |
|      *
 | |
|      * @return BundleInterface|BundleInterface[] A BundleInterface instance or an array of BundleInterface instances if $first is false
 | |
|      *
 | |
|      * @throws \InvalidArgumentException when the bundle is not enabled
 | |
|      *
 | |
|      * @api
 | |
|      */
 | |
|     public function getBundle($name, $first = true);
 | |
| 
 | |
|     /**
 | |
|      * Returns the file path for a given resource.
 | |
|      *
 | |
|      * A Resource can be a file or a directory.
 | |
|      *
 | |
|      * The resource name must follow the following pattern:
 | |
|      *
 | |
|      *     "@BundleName/path/to/a/file.something"
 | |
|      *
 | |
|      * where BundleName is the name of the bundle
 | |
|      * and the remaining part is the relative path in the bundle.
 | |
|      *
 | |
|      * If $dir is passed, and the first segment of the path is "Resources",
 | |
|      * this method will look for a file named:
 | |
|      *
 | |
|      *     $dir/<BundleName>/path/without/Resources
 | |
|      *
 | |
|      * before looking in the bundle resource folder.
 | |
|      *
 | |
|      * @param string $name  A resource name to locate
 | |
|      * @param string $dir   A directory where to look for the resource first
 | |
|      * @param bool   $first Whether to return the first path or paths for all matching bundles
 | |
|      *
 | |
|      * @return string|array The absolute path of the resource or an array if $first is false
 | |
|      *
 | |
|      * @throws \InvalidArgumentException if the file cannot be found or the name is not valid
 | |
|      * @throws \RuntimeException         if the name contains invalid/unsafe characters
 | |
|      *
 | |
|      * @api
 | |
|      */
 | |
|     public function locateResource($name, $dir = null, $first = true);
 | |
| 
 | |
|     /**
 | |
|      * Gets the name of the kernel.
 | |
|      *
 | |
|      * @return string The kernel name
 | |
|      *
 | |
|      * @api
 | |
|      */
 | |
|     public function getName();
 | |
| 
 | |
|     /**
 | |
|      * Gets the environment.
 | |
|      *
 | |
|      * @return string The current environment
 | |
|      *
 | |
|      * @api
 | |
|      */
 | |
|     public function getEnvironment();
 | |
| 
 | |
|     /**
 | |
|      * Checks if debug mode is enabled.
 | |
|      *
 | |
|      * @return bool true if debug mode is enabled, false otherwise
 | |
|      *
 | |
|      * @api
 | |
|      */
 | |
|     public function isDebug();
 | |
| 
 | |
|     /**
 | |
|      * Gets the application root dir.
 | |
|      *
 | |
|      * @return string The application root dir
 | |
|      *
 | |
|      * @api
 | |
|      */
 | |
|     public function getRootDir();
 | |
| 
 | |
|     /**
 | |
|      * Gets the current container.
 | |
|      *
 | |
|      * @return ContainerInterface A ContainerInterface instance
 | |
|      *
 | |
|      * @api
 | |
|      */
 | |
|     public function getContainer();
 | |
| 
 | |
|     /**
 | |
|      * Gets the request start time (not available if debug is disabled).
 | |
|      *
 | |
|      * @return int The request start timestamp
 | |
|      *
 | |
|      * @api
 | |
|      */
 | |
|     public function getStartTime();
 | |
| 
 | |
|     /**
 | |
|      * Gets the cache directory.
 | |
|      *
 | |
|      * @return string The cache directory
 | |
|      *
 | |
|      * @api
 | |
|      */
 | |
|     public function getCacheDir();
 | |
| 
 | |
|     /**
 | |
|      * Gets the log directory.
 | |
|      *
 | |
|      * @return string The log directory
 | |
|      *
 | |
|      * @api
 | |
|      */
 | |
|     public function getLogDir();
 | |
| 
 | |
|     /**
 | |
|      * Gets the charset of the application.
 | |
|      *
 | |
|      * @return string The charset
 | |
|      *
 | |
|      * @api
 | |
|      */
 | |
|     public function getCharset();
 | |
| }
 | 
