X-Git-Url: https://git.rapsys.eu/packbundle/blobdiff_plain/64b64c20e1bab3722d13e9c5e36e1129aa4ad390..013e3b68170a39d007a29ef45ea0eb222fbcb2d8:/RapsysPackBundle.php

diff --git a/RapsysPackBundle.php b/RapsysPackBundle.php
index e773042..285c7bb 100644
--- a/RapsysPackBundle.php
+++ b/RapsysPackBundle.php
@@ -11,18 +11,67 @@
 
 namespace Rapsys\PackBundle;
 
-use Symfony\Component\DependencyInjection\Container;
+use Rapsys\PackBundle\DependencyInjection\RapsysPackExtension;
+
+use Symfony\Component\DependencyInjection\Extension\ExtensionInterface;
 use Symfony\Component\HttpKernel\Bundle\Bundle;
 
 /**
  * {@inheritdoc}
  */
 class RapsysPackBundle extends Bundle {
+	/**
+	 * {@inheritdoc}
+	 */
+	public function getContainerExtension(): ?ExtensionInterface {
+		//Return created container extension
+		return $this->createContainerExtension();
+	}
+
 	/**
 	 * Return bundle alias
 	 *
 	 * @return string The bundle alias
 	 */
+	public static function getBundleAlias(): string {
+		//With namespace
+		if ($npos = strrpos(static::class, '\\')) {
+			//Set name pos
+			$npos++;
+
+			//With single namespace
+			$nspos = strpos(static::class, '\\');
+			//Without namespace
+		} else {
+			//Set name pos
+			$npos = 0;
+		}
+
+		//With trailing bundle
+		if (substr(static::class, -strlen('Bundle'), strlen('Bundle')) === 'Bundle') {
+			//Set bundle pos
+			$bpos = strlen(static::class) - $npos - strlen('Bundle');
+			//Without bundle
+		} else {
+			//Set bundle pos
+			$bpos = strlen(static::class) - $npos;
+		}
+
+		//With namespace
+		if ($npos) {
+			//Return prefixed class name
+			return strtolower(substr(static::class, 0, $nspos).'/'.substr(static::class, $npos, $bpos));
+		}
+
+		//Return class name
+		return strtolower(substr(static::class, $npos, $bpos));
+	}
+
+	/**
+	 * Return alias
+	 *
+	 * @return string The alias
+	 */
 	public static function getAlias(): string {
 		//With namespace
 		if ($npos = strrpos(static::class, '\\')) {
@@ -43,8 +92,8 @@ class RapsysPackBundle extends Bundle {
 			$bpos = strlen(static::class) - $npos;
 		}
 
-		//Return underscored lowercase bundle alias
-		return Container::underscore(substr(static::class, $npos, $bpos));
+		//Return lowercase bundle alias
+		return strtolower(substr(static::class, $npos, $bpos));
 	}
 
 	/**
@@ -54,6 +103,6 @@ class RapsysPackBundle extends Bundle {
 	 */
 	public static function getVersion(): string {
 		//Return version
-		return '0.2.5';
+		return '0.5.3';
 	}
 }