Skip to content

Commit

Permalink
Fix generate form command (#2868)
Browse files Browse the repository at this point in the history
* inyect services in generate:form [NOT WORKING YET]

* Fix generator to use extension manager
  • Loading branch information
enzolutions authored Nov 1, 2016
1 parent f8e66c3 commit 9cb5bd9
Show file tree
Hide file tree
Showing 3 changed files with 33 additions and 6 deletions.
2 changes: 1 addition & 1 deletion config/services/drupal-console/generate.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ services:
- { name: drupal.command }
console.generate_form:
class: Drupal\Console\Command\Generate\FormBaseCommand
arguments: ['@console.extension_manager', '@console.form_generator', '@console.chain_queue']
arguments: ['@console.extension_manager', '@console.form_generator', '@console.chain_queue', '@console.string_converter', '@plugin.manager.element_info', '@router.route_provider']
tags:
- { name: drupal.command }
console.generate_form_alter:
Expand Down
2 changes: 1 addition & 1 deletion src/Command/Generate/ConfigFormBaseCommand.php
Original file line number Diff line number Diff line change
Expand Up @@ -77,7 +77,7 @@ public function __construct(
$this->elementInfoManager = $elementInfoManager;
$this->appRoot = $appRoot;
$this->chainQueue = $chainQueue;
parent::__construct();
parent::__construct($extensionManager, $generator, $chainQueue, $stringConverter, $elementInfoManager, $routeProvider);
}

protected function configure()
Expand Down
35 changes: 31 additions & 4 deletions src/Command/Generate/FormCommand.php
Original file line number Diff line number Diff line change
Expand Up @@ -16,14 +16,17 @@
use Drupal\Console\Command\Shared\FormTrait;
use Symfony\Component\Console\Command\Command;
use Drupal\Console\Style\DrupalStyle;
use Drupal\Console\Command\Shared\CommandTrait;
use Drupal\Console\Command\Shared\ContainerAwareCommandTrait;
use Drupal\Console\Generator\FormGenerator;
use Drupal\Console\Extension\Manager;
use Drupal\Console\Utils\ChainQueue;
use Drupal\Console\Utils\StringConverter;
use Drupal\Core\Render\ElementInfoManager;
use Drupal\Core\Routing\RouteProviderInterface;

abstract class FormCommand extends Command
{
use CommandTrait;
use ContainerAwareCommandTrait;
use ModuleTrait;
use ServicesTrait;
use FormTrait;
Expand All @@ -41,21 +44,45 @@ abstract class FormCommand extends Command
/** @var ChainQueue */
protected $chainQueue;

/**
* @var StringConverter
*/
protected $stringConverter;

/**
* @var ElementInfoManager
*/
protected $elementInfoManager;

/**
* @var RouteProviderInterface
*/
protected $routeProvider;


/**
* FormCommand constructor.
* @param Manager $extensionManager
* @param FormGenerator $generator
* @param ChainQueue $chainQueue
* @param StringConverter $stringConverter
* @param ElementInfoManager $elementInfoManager
* @param RouteProviderInterface $routeProvider
*/
public function __construct(
Manager $extensionManager,
FormGenerator $generator,
ChainQueue $chainQueue
ChainQueue $chainQueue,
StringConverter $stringConverter,
ElementInfoManager $elementInfoManager,
RouteProviderInterface $routeProvider
) {
$this->extensionManager = $extensionManager;
$this->generator = $generator;
$this->chainQueue = $chainQueue;
$this->stringConverter = $stringConverter;
$this->elementInfoManager = $elementInfoManager;
$this->routeProvider = $routeProvider;
parent::__construct();
}

Expand Down Expand Up @@ -236,7 +263,7 @@ protected function interact(InputInterface $input, OutputInterface $output)
$form_path = sprintf(
'/%s/form/%s',
$module,
$this->getStringHelper()->camelCaseToMachineName($this->stringConverter->removeSuffix($className))
$this->stringConverter->camelCaseToMachineName($this->stringConverter->removeSuffix($className))
);
}
$path = $io->ask(
Expand Down

0 comments on commit 9cb5bd9

Please sign in to comment.