services:
    oro_workflow.exclusion_provider:
        class: Oro\Bundle\EntityBundle\Provider\ChainExclusionProvider
        calls:
            - [addProvider, ['@oro_entity.exclusion_provider']]

    oro_workflow.entity_provider:
        class: Oro\Bundle\EntityBundle\Provider\EntityProvider
        parent: oro_entity.entity_provider.abstract
        lazy: true
        calls:
            - [setExclusionProvider, ['@oro_workflow.exclusion_provider']]

    oro_workflow.entity_field_provider:
        class: 'Oro\Bundle\WorkflowBundle\Field\FieldProvider'
        parent: oro_entity.entity_field_provider.abstract
        lazy: true
        calls:
            - [setEntityProvider, ['@oro_workflow.entity_provider']]
            - [setExclusionProvider, ['@oro_workflow.exclusion_provider']]

    oro_workflow.entity_field_list_provider:
        class: Oro\Bundle\EntityBundle\Provider\EntityWithFieldsProvider
        public: true
        arguments:
            - '@oro_workflow.entity_field_provider'
            - '@oro_workflow.entity_provider'
            - '@oro_entity_config.config_manager'
