X-Git-Url: https://git.rapsys.eu/packbundle/blobdiff_plain/14ba641ec4faf849dc6eb562e119dbf6e77f8916..7a884a8cd503031c762e830044dbfce09aeddf5e:/DependencyInjection/RapsysPackExtension.php?ds=inline

diff --git a/DependencyInjection/RapsysPackExtension.php b/DependencyInjection/RapsysPackExtension.php
index c3b4a3b..3a6ed53 100644
--- a/DependencyInjection/RapsysPackExtension.php
+++ b/DependencyInjection/RapsysPackExtension.php
@@ -1,7 +1,18 @@
-<?php
+<?php declare(strict_types=1);
+
+/*
+ * This file is part of the Rapsys PackBundle package.
+ *
+ * (c) Raphaël Gertz <symfony@rapsys.eu>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
 
 namespace Rapsys\PackBundle\DependencyInjection;
 
+use Rapsys\PackBundle\RapsysPackBundle;
+
 use Symfony\Component\DependencyInjection\ContainerBuilder;
 use Symfony\Component\DependencyInjection\Extension\Extension;
 
@@ -9,40 +20,51 @@ use Symfony\Component\DependencyInjection\Extension\Extension;
  * This is the class that loads and manages your bundle configuration.
  *
  * @link http://symfony.com/doc/current/cookbook/bundles/extension.html
+ *
+ * {@inheritdoc}
  */
 class RapsysPackExtension extends Extension {
 	/**
 	 * {@inheritdoc}
 	 */
-	public function load(array $configs, ContainerBuilder $container) {
+	public function load(array $configs, ContainerBuilder $container): void {
 		//Load configuration
 		$configuration = $this->getConfiguration($configs, $container);
 
 		//Process the configuration to get merged config
 		$config = $this->processConfiguration($configuration, $configs);
 
+		//Set bundle alias
+		$alias = RapsysPackBundle::getAlias();
+
 		//Detect when no user configuration is provided
 		if ($configs === [[]]) {
 			//Prepend default config
-			$container->prependExtensionConfig($this->getAlias(), $config);
+			$container->prependExtensionConfig($alias, $config);
 		}
 
 		//Save configuration in parameters
-		$container->setParameter($this->getAlias(), $config);
-	}
+		$container->setParameter($alias, $config);
 
-	/**
-	 * {@inheritdoc}
-	 */
-	public function getConfiguration(array $configs, ContainerBuilder $container) {
-		//Get configuration instance with resolved public path
-		return new Configuration($container->getParameter('kernel.project_dir').'/public/');
+		//Set rapsyspack.alias key
+		$container->setParameter($alias.'.alias', $alias);
+
+		//Set rapsyspack.cache key
+		$container->setParameter($alias.'.cache', $config['cache']);
+
+		//Set rapsyspack.public key
+		$container->setParameter($alias.'.public', $config['public']);
+
+		//Set rapsyspack.version key
+		$container->setParameter($alias.'.version', RapsysPackBundle::getVersion());
 	}
 
 	/**
 	 * {@inheritdoc}
+	 *
+	 * @xxx Required by kernel to load renamed alias configuration
 	 */
-	public function getAlias() {
-		return 'rapsys_pack';
+	public function getAlias(): string {
+		return RapsysPackBundle::getAlias();
 	}
 }