Skip to content

Commit 5bf5ebd

Browse files
committed
Bootstraped the documentation of Workflow options
1 parent 8f3e142 commit 5bf5ebd

File tree

1 file changed

+146
-1
lines changed

1 file changed

+146
-1
lines changed

reference/configuration/framework.rst

Lines changed: 146 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -125,7 +125,7 @@ Configuration
125125
* `https_port`_
126126
* `resource`_
127127
* `strict_requirements`_
128-
* `type`_
128+
* :ref:`type <reference-router-type>`
129129

130130
* `secret`_
131131
* `serializer`_
@@ -191,6 +191,20 @@ Configuration
191191
* `strict_email`_
192192
* `translation_domain`_
193193

194+
* `workflows`_
195+
196+
* :ref:`enabled <reference-workflows-enabled>`
197+
* :ref:`name <reference-workflows-name>`
198+
199+
* `audit_trail`_
200+
* `initial_place`_
201+
* `marking_store`_
202+
* `places`_
203+
* `supports`_
204+
* `support_strategy`_
205+
* `transitions`_
206+
* :ref:`type <reference-workflows-type>`
207+
194208
secret
195209
~~~~~~
196210

@@ -746,6 +760,8 @@ resource
746760
The path the main routing resource (e.g. a YAML file) that contains the
747761
routes and imports the router should load.
748762

763+
.. _reference-router-type:
764+
749765
type
750766
....
751767

@@ -2143,6 +2159,135 @@ lock
21432159
The default lock adapter. If not defined, the value is set to ``semaphore`` when
21442160
available, or to ``flock`` otherwise. Store's DSN are also allowed.
21452161

2162+
workflows
2163+
~~~~~~~~~
2164+
2165+
**type**: ``array``
2166+
2167+
A list of workflows to be created by the framework extension:
2168+
2169+
.. configuration-block::
2170+
2171+
.. code-block:: yaml
2172+
2173+
# config/packages/workflow.yaml
2174+
framework:
2175+
workflows:
2176+
my_workflow:
2177+
# ...
2178+
2179+
.. code-block:: xml
2180+
2181+
<!-- config/packages/workflow.xml -->
2182+
<?xml version="1.0" encoding="UTF-8" ?>
2183+
<container xmlns="http://symfony.com/schema/dic/services"
2184+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
2185+
xmlns:framework="http://symfony.com/schema/dic/symfony"
2186+
xsi:schemaLocation="http://symfony.com/schema/dic/services
2187+
http://symfony.com/schema/dic/services/services-1.0.xsd
2188+
http://symfony.com/schema/dic/symfony http://symfony.com/schema/dic/symfony/symfony-1.0.xsd">
2189+
2190+
<framework:config>
2191+
<framework:workflows>
2192+
<framework:workflow
2193+
name="my_workflow" />
2194+
</framework:workflows>
2195+
<!-- ... -->
2196+
</framework:config>
2197+
</container>
2198+
2199+
.. code-block:: php
2200+
2201+
// config/packages/workflow.php
2202+
$container->loadFromExtension('framework', [
2203+
'workflows' => [
2204+
'my_workflow' => // ...
2205+
],
2206+
]);
2207+
2208+
.. seealso::
2209+
2210+
See also the article about :doc:`using workflows in Symfony apps </workflow>`.
2211+
2212+
.. _reference-workflows-enabled:
2213+
2214+
enabled
2215+
.......
2216+
2217+
**type**: ``boolean`` **default**: ``false``
2218+
2219+
Whether to enable the support for workflows or not. This setting is
2220+
automatically set to ``true`` when one of the child settings is configured.
2221+
2222+
.. _reference-workflows-name:
2223+
2224+
name
2225+
....
2226+
2227+
**type**: ``prototype``
2228+
2229+
Name of the workflow you want to create.
2230+
2231+
audit_trail
2232+
"""""""""""
2233+
2234+
**type**: ``array``
2235+
2236+
initial_place
2237+
"""""""""""""
2238+
2239+
**type**: ``string`` **default**: ``null``
2240+
2241+
marking_store
2242+
"""""""""""""
2243+
2244+
**type**: ``array``
2245+
2246+
Each marking store can define any of these options:
2247+
2248+
* ``arguments`` (**type**: ``array``)
2249+
* ``service`` (**type**: ``string``)
2250+
* ``type`` (**type**: ``string`` **possible values**: ``'multiple_state'`` or
2251+
``'single_state'``)
2252+
2253+
places
2254+
""""""
2255+
2256+
**type**: ``array``
2257+
2258+
supports
2259+
""""""""
2260+
2261+
**type**: ``string`` | ``array``
2262+
2263+
support_strategy
2264+
""""""""""""""""
2265+
2266+
**type**: ``string``
2267+
2268+
transitions
2269+
"""""""""""
2270+
2271+
**type**: ``array``
2272+
2273+
Each marking store can define any of these options:
2274+
2275+
* ``from`` (**type**: ``string``)
2276+
* ``guard`` (**type**: ``string``) a :doc:`ExpressionLanguage </components/expression_language>`
2277+
compatible expression to block the transition
2278+
* ``name`` (**type**: ``string``)
2279+
* ``to`` (**type**: ``string``)
2280+
2281+
.. _reference-workflows-type:
2282+
2283+
type
2284+
""""
2285+
2286+
**type**: ``string`` **possible values**: ``'workflow'`` or ``'state_machine'``
2287+
2288+
Defines the kind fo workflow that is going to be created, which can be either
2289+
a :doc:`normal workflow </workflow/usage>` or a :doc:`state machine </workflow/state-machines>`.
2290+
21462291
.. _`HTTP Host header attacks`: http://www.skeletonscribe.net/2013/05/practical-http-host-header-attacks.html
21472292
.. _`Security Advisory Blog post`: https://symfony.com/blog/security-releases-symfony-2-0-24-2-1-12-2-2-5-and-2-3-3-released#cve-2013-4752-request-gethost-poisoning
21482293
.. _`Doctrine Cache`: http://docs.doctrine-project.org/projects/doctrine-common/en/latest/reference/caching.html

0 commit comments

Comments
 (0)