This repository has been archived on 2023-08-20. You can view files and clone it, but cannot push or open issues or pull requests.
symfony/src/Symfony/Component/DependencyInjection/Extension/ExtensionInterface.php

59 lines
1.6 KiB
PHP
Raw Normal View History

2010-01-04 14:26:20 +00:00
<?php
namespace Symfony\Component\DependencyInjection\Extension;
2010-01-04 14:26:20 +00:00
use Symfony\Component\DependencyInjection\ContainerBuilder;
2010-01-04 14:26:20 +00:00
/*
* This file is part of the Symfony framework.
2010-01-04 14:26:20 +00:00
*
* (c) Fabien Potencier <fabien.potencier@symfony-project.com>
*
* This source file is subject to the MIT license that is bundled
* with this source code in the file LICENSE.
*/
/**
* ExtensionInterface is the interface implemented by container extension classes.
2010-01-04 14:26:20 +00:00
*
* @author Fabien Potencier <fabien.potencier@symfony-project.com>
*/
interface ExtensionInterface
2010-01-04 14:26:20 +00:00
{
/**
* Loads a specific configuration.
*
* @param string $tag The tag name
* @param array $config An array of configuration values
* @param ContainerBuilder $configuration A ContainerBuilder instance
*
* @return ContainerBuilder A ContainerBuilder instance
*
* @throws \InvalidArgumentException When provided tag is not defined in this extension
*/
function load($tag, array $config, ContainerBuilder $configuration);
2010-01-04 14:26:20 +00:00
/**
* Returns the namespace to be used for this extension (XML namespace).
*
* @return string The XML namespace
*/
function getNamespace();
/**
* Returns the base path for the XSD files.
*
* @return string The XSD base path
*/
function getXsdValidationBasePath();
/**
* Returns the recommended alias to use in XML.
*
* This alias is also the mandatory prefix to use when using YAML.
*
* @return string The alias
*/
function getAlias();
2010-01-04 14:26:20 +00:00
}