Skip to content

Commit 17fb46a

Browse files
committed
[Workflow] Made the configuration more robust for the 'property' key
1 parent 7ca5cc2 commit 17fb46a

File tree

2 files changed

+10
-2
lines changed

2 files changed

+10
-2
lines changed

DependencyInjection/Configuration.php

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -303,7 +303,7 @@ private function addWorkflowSection(ArrayNodeDefinition $rootNode)
303303
->end()
304304
->end()
305305
->scalarNode('property')
306-
->defaultValue('marking')
306+
->defaultNull() // In Symfony 5.0, set "marking" as default property
307307
->end()
308308
->scalarNode('service')
309309
->cannotBeEmpty()
@@ -481,6 +481,14 @@ private function addWorkflowSection(ArrayNodeDefinition $rootNode)
481481
return $v;
482482
})
483483
->end()
484+
->validate()
485+
->ifTrue(function ($v) {
486+
return isset($v['marking_store']['property'])
487+
&& (!isset($v['marking_store']['type']) || 'method' !== $v['marking_store']['type'])
488+
;
489+
})
490+
->thenInvalid('"property" option is only supported by the "method" marking store.')
491+
->end()
484492
->end()
485493
->end()
486494
->end()

DependencyInjection/FrameworkExtension.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -666,7 +666,7 @@ private function registerWorkflowConfiguration(array $config, ContainerBuilder $
666666
if ('method' === $workflow['marking_store']['type']) {
667667
$markingStoreDefinition->setArguments([
668668
'state_machine' === $type, //single state
669-
$workflow['marking_store']['property'],
669+
$workflow['marking_store']['property'] ?? 'marking',
670670
]);
671671
} else {
672672
foreach ($workflow['marking_store']['arguments'] as $argument) {

0 commit comments

Comments
 (0)