X-Git-Url: https://git.rapsys.eu/airbundle/blobdiff_plain/b9524b9b4eef9d21fe4af2ab2072afb62fd61ae9..63f450314124eeb396ac4c1513084e54bfc0d55e:/Command.php diff --git a/Command.php b/Command.php new file mode 100644 index 0000000..6f4a8ee --- /dev/null +++ b/Command.php @@ -0,0 +1,116 @@ + + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +namespace Rapsys\AirBundle\Command; + +use Doctrine\Persistence\ManagerRegistry; +use Symfony\Component\Console\Command\Command as BaseCommand; +use Symfony\Component\Routing\RouterInterface; +use Symfony\Contracts\Translation\TranslatorInterface; + +use Rapsys\AirBundle\RapsysAirBundle; + +use Rapsys\PackBundle\Util\SluggerUtil; + +class Command extends BaseCommand { + /** + * Doctrine instance + * + * @var ManagerRegistry + */ + protected ManagerRegistry $doctrine; + + /** + * Router instance + * + * @var RouterInterface + */ + protected RouterInterface $router; + + /** + * Slugger instance + * + * @var SluggerUtil + */ + protected SluggerUtil $slugger; + + /** + * Translator instance + * + * @var TranslatorInterface + */ + protected TranslatorInterface $translator; + + /** + * Locale + * + * @var string + */ + protected string $locale; + + /** + * Creates new command + * + * @param ManagerRegistry $doctrine The doctrine instance + * @param RouterInterface $router The router instance + * @param SluggerUtil $slugger The slugger instance + * @param TranslatorInterface $translator The translator instance + * @param string $locale The default locale + */ + public function __construct(ManagerRegistry $doctrine, RouterInterface $router, SluggerUtil $slugger, TranslatorInterface $translator, string $locale) { + //Call parent constructor + parent::__construct(); + + //Set doctrine + $this->doctrine = $doctrine; + + //Set router + $this->router = $router; + + //Set slugger + $this->slugger = $slugger; + + //Get router context + $context = $this->router->getContext(); + + //Set host + $context->setHost('airlibre.eu'); + + //Set scheme + $context->setScheme('https'); + + //Set the translator + $this->translator = $translator; + + //Set locale + $this->locale = $locale; + + //With default name + //TODO: XXX: see how to make it works + /*if (isset(self::$defaultName)) { + $this->name = self::$defaultName; + } + + //With default description + if (isset(self::$defaultDescription)) { + $this->name = self::$defaultDescription; + }*/ + } + + /** + * Return the bundle alias + * + * {@inheritdoc} + */ + public function getAlias(): string { + return RapsysAirBundle::getAlias(); + } +}