vendor/symfony/src/Symfony/Component/DependencyInjection/Extension/ExtensionInterface.php
changeset 0 7f95f8617b0b
equal deleted inserted replaced
-1:000000000000 0:7f95f8617b0b
       
     1 <?php
       
     2 
       
     3 /*
       
     4  * This file is part of the Symfony package.
       
     5  *
       
     6  * (c) Fabien Potencier <fabien@symfony.com>
       
     7  *
       
     8  * For the full copyright and license information, please view the LICENSE
       
     9  * file that was distributed with this source code.
       
    10  */
       
    11 
       
    12 namespace Symfony\Component\DependencyInjection\Extension;
       
    13 
       
    14 use Symfony\Component\DependencyInjection\ContainerBuilder;
       
    15 
       
    16 /**
       
    17  * ExtensionInterface is the interface implemented by container extension classes.
       
    18  *
       
    19  * @author Fabien Potencier <fabien@symfony.com>
       
    20  *
       
    21  * @api
       
    22  */
       
    23 interface ExtensionInterface
       
    24 {
       
    25     /**
       
    26      * Loads a specific configuration.
       
    27      *
       
    28      * @param array            $config    An array of configuration values
       
    29      * @param ContainerBuilder $container A ContainerBuilder instance
       
    30      *
       
    31      * @throws \InvalidArgumentException When provided tag is not defined in this extension
       
    32      *
       
    33      * @api
       
    34      */
       
    35     function load(array $config, ContainerBuilder $container);
       
    36 
       
    37     /**
       
    38      * Returns the namespace to be used for this extension (XML namespace).
       
    39      *
       
    40      * @return string The XML namespace
       
    41      *
       
    42      * @api
       
    43      */
       
    44     function getNamespace();
       
    45 
       
    46     /**
       
    47      * Returns the base path for the XSD files.
       
    48      *
       
    49      * @return string The XSD base path
       
    50      *
       
    51      * @api
       
    52      */
       
    53     function getXsdValidationBasePath();
       
    54 
       
    55     /**
       
    56      * Returns the recommended alias to use in XML.
       
    57      *
       
    58      * This alias is also the mandatory prefix to use when using YAML.
       
    59      *
       
    60      * @return string The alias
       
    61      *
       
    62      * @api
       
    63      */
       
    64     function getAlias();
       
    65 }