protected function configure()
{
$this->setDefinition([new InputOption('namespace', '', InputOption::VALUE_REQUIRED, 'The namespace of the bundle to create'), new InputOption('dir', '', InputOption::VALUE_REQUIRED, 'The directory where to create the bundle'), new InputOption('bundle-name', '', InputOption::VALUE_REQUIRED, 'The optional bundle name'), new InputOption('structure', '', InputOption::VALUE_NONE, 'Whether to generate the whole directory structure')])->setDescription('Generates a sulu bundle')->setHelp(<<<'EOT'
The <info>generate:bundle</info> command helps you generates new bundles.
By default, the command interacts with the developer to tweak the generation.
Any passed option will be used as a default value for the interaction
(<comment>--namespace</comment> is the only one needed if you follow the
conventions):
<info>php app/console generate:sulu:bundle --namespace=Acme/BlogBundle</info>
Note that you can use <comment>/</comment> instead of <comment>\ </comment>for the namespace delimiter to avoid any
problem.
If you want to disable any user interaction, use <comment>--no-interaction</comment> but don't forget to pass all needed options:
<info>php app/console generate:sulu:bundle --namespace=Acme/BlogBundle --dir=src [--bundle-name=...] --no-interaction</info>
Note that the bundle namespace must end with "Bundle".
EOT
)->setName('sulu:generate:bundle');
}