ConfigurableExtension

class ConfigurableExtension extends Extension

This extension sub-class provides first-class integration with the Config/Definition Component.

You can use this as base class if

a) you use the Config/Definition component for configuration, b) your configuration class is named "Configuration", and c) the configuration class resides in the DependencyInjection sub-folder.

Methods

string getXsdValidationBasePath()

Returns the base path for the XSD files.

from Extension
string getNamespace()

Returns the namespace to be used for this extension (XML namespace).

from Extension
string getAlias()

Returns the recommended alias to use in XML.

from Extension
ConfigurationInterface|null getConfiguration(array $config, ContainerBuilder $container)

Returns extension configuration.

from Extension
getProcessedConfigs() from Extension
array getClassesToCompile() deprecated

Gets the classes to cache.

from Extension
array getAnnotatedClassesToCompile()

Gets the annotated classes to cache.

from Extension
addClassesToCompile(array $classes) deprecated

Adds classes to the class cache.

from Extension
addAnnotatedClassesToCompile(array $annotatedClasses)

Adds annotated classes to the class cache.

from Extension
load(array $configs, ContainerBuilder $container)

Loads a specific configuration.

Details

string getXsdValidationBasePath()

Returns the base path for the XSD files.

Return Value

string The XSD base path

string getNamespace()

Returns the namespace to be used for this extension (XML namespace).

Return Value

string The XML namespace

string getAlias()

Returns the recommended alias to use in XML.

This alias is also the mandatory prefix to use when using YAML.

This convention is to remove the "Extension" postfix from the class name and then lowercase and underscore the result. So:

AcmeHelloExtension

becomes

acme_hello

This can be overridden in a sub-class to specify the alias manually.

Return Value

string The alias

Exceptions

BadMethodCallException When the extension name does not follow conventions

ConfigurationInterface|null getConfiguration(array $config, ContainerBuilder $container)

Returns extension configuration.

Parameters

array $config
ContainerBuilder $container

Return Value

ConfigurationInterface|null The configuration or null

final getProcessedConfigs()

array getClassesToCompile() deprecated

deprecated

since version 3.3, to be removed in 4.0.

Gets the classes to cache.

Return Value

array An array of classes

array getAnnotatedClassesToCompile()

Gets the annotated classes to cache.

Return Value

array An array of classes

addClassesToCompile(array $classes) deprecated

deprecated

since version 3.3, to be removed in 4.0.

Adds classes to the class cache.

Parameters

array $classes An array of class patterns

addAnnotatedClassesToCompile(array $annotatedClasses)

Adds annotated classes to the class cache.

Parameters

array $annotatedClasses An array of class patterns

final load(array $configs, ContainerBuilder $container)

Loads a specific configuration.

Parameters

array $configs
ContainerBuilder $container

Exceptions

InvalidArgumentException When provided tag is not defined in this extension