/** * @param CoreInterface $core */ protected function boot(CoreInterface $core) { $config = $core->make('Surume\\Config\\ConfigInterface'); $factory = $core->make('Surume\\Console\\Client\\Command\\CommandFactoryInterface'); $handler = $core->make('Surume\\Console\\Client\\Command\\CommandHandlerInterface'); $console = $core->make('Surume\\Console\\Client\\ConsoleClientInterface'); $cmds = (array) $factory->getDefinitions(); $commands = []; foreach ($cmds as $command => $definition) { $commands[] = $factory->create($command, [$handler]); } $this->symfony->addCommands($commands); $version = $core->version(); $console->onCommand(function () use($version) { echo "SurumePHP-v{$version}\n"; $this->symfony->run(); }); }