minor #20478 [Workflow] Removed definition builder (Nyholm)

This PR was squashed before being merged into the 3.2-dev branch (closes #20478).

Discussion
----------

[Workflow] Removed definition builder

| Q             | A
| ------------- | ---
| Branch?       | "master"
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | n/a
| License       | MIT
| Doc PR        | n/a

As of @xabbuh comment in https://github.com/symfony/symfony/pull/20451#discussion_r87398660

We do not really need the definition builder here.

Commits
-------

caa3d6f [Workflow] Removed definition builder
This commit is contained in:
Grégoire Pineau 2016-11-10 16:20:21 +01:00
commit e269ca5d27

View File

@ -406,16 +406,14 @@ class FrameworkExtension extends Extension
foreach ($workflows as $name => $workflow) {
$type = $workflow['type'];
// Create a DefinitionBuilder
$definitionBuilderDefinition = new Definition(Workflow\DefinitionBuilder::class);
$definitionBuilderDefinition->addMethodCall('addPlaces', array($workflow['places']));
$transitions = array();
foreach ($workflow['transitions'] as $transitionName => $transition) {
if ($type === 'workflow') {
$definitionBuilderDefinition->addMethodCall('addTransition', array(new Definition(Workflow\Transition::class, array($transitionName, $transition['from'], $transition['to']))));
$transitions[] = new Definition(Workflow\Transition::class, array($transitionName, $transition['from'], $transition['to']));
} elseif ($type === 'state_machine') {
foreach ($transition['from'] as $from) {
foreach ($transition['to'] as $to) {
$definitionBuilderDefinition->addMethodCall('addTransition', array(new Definition(Workflow\Transition::class, array($transitionName, $from, $to))));
$transitions[] = new Definition(Workflow\Transition::class, array($transitionName, $from, $to));
}
}
}
@ -424,7 +422,8 @@ class FrameworkExtension extends Extension
// Create a Definition
$definitionDefinition = new Definition(Workflow\Definition::class);
$definitionDefinition->setPublic(false);
$definitionDefinition->setFactory(array($definitionBuilderDefinition, 'build'));
$definitionDefinition->addArgument($workflow['places']);
$definitionDefinition->addArgument($transitions);
$definitionDefinition->addTag('workflow.definition', array(
'name' => $name,
'type' => $type,