funivan/console

This package is abandoned and no longer maintained. No replacement package was suggested.

Improved symfony console

0.0.4 2016-10-23 12:17 UTC

This package is auto-updated.

Last update: 2023-09-12 05:11:08 UTC


README

Packagist Software License Build Status Coverage Status Quality Score Total Downloads

Improved symfony console

Install

Via Composer

composer require funivan/console

Usage

  use Funivan\Console\CommandsLoader\FileSystemCommandsLoader;
  use Funivan\Console\NameResolver\StandardNameResolver;
  use Funivan\Console\SingleState\SingleStateConfigurator;

  $configurator = new \Funivan\Console\ConsoleApplicationConfigurator();

  $dispatcher = new \Symfony\Component\EventDispatcher\EventDispatcher();
  $configurator->setEventDispatcher($dispatcher);


  $finder = new \Symfony\Component\Finder\Finder();
  $finder->files()->in(__DIR__ . '/commands/')->name('*.php'); # load commands from commands dir
  
  # Base namespace is 'Commands'
  
  $commandsLoader = (new FileSystemCommandsLoader($finder, new StandardNameResolver('Commands')));
  $configurator->setCommandsLoader($commandsLoader);

  $singleStateConfigurator = new SingleStateConfigurator();
  $configurator->setSingleStateConfigurator($singleStateConfigurator);


  # configure your app
  $consoleApp = new \Funivan\Console\ConsoleApplication();
  $configurator->configure($consoleApp);
  $consoleApp->run();

Testing

    ./vendor/bin/phpunit

Contributing

Please see CONTRIBUTING for details.

Credits

License

The MIT License (MIT). Please see License File for more information.