parameters:
    oro_comment.migration.extension.comment.class:    Oro\Bundle\CommentBundle\Migration\Extension\CommentExtension
    oro_comment.entity_generator.extension.class:     Oro\Bundle\CommentBundle\Tools\CommentEntityGeneratorExtension
    oro_comment.entity_config_dumper.extension.class: Oro\Bundle\CommentBundle\Tools\CommentEntityConfigDumperExtension
    oro_comment.comment.api_manager.class:            Oro\Bundle\CommentBundle\Entity\Manager\CommentApiManager
    oro_comment.comment_lifecycle_listener.class:     Oro\Bundle\CommentBundle\EventListener\CommentLifecycleListener
    oro_comment.placeholder.filter.class:             Oro\Bundle\CommentBundle\Placeholder\CommentPlaceholderFilter

services:
    oro_comment.association_helper:
        class: Oro\Bundle\CommentBundle\Tools\CommentAssociationHelper
        public: false
        arguments:
            - '@oro_entity_config.config_manager'

    oro_comment.migration.extension.comment:
        class: %oro_comment.migration.extension.comment.class%
        tags:
            - { name: oro_migration.extension, extension_name: comment }

    oro_comment.entity_generator.extension:
        class: %oro_comment.entity_generator.extension.class%
        tags:
            - { name: oro_entity_extend.entity_generator_extension }

    oro_comment.entity_config_dumper.extension:
        class: %oro_comment.entity_config_dumper.extension.class%
        parent: oro_entity_extend.entity_config_dumper.extension.association
        tags:
            - { name: oro_entity_extend.entity_config_dumper_extension }

    oro_comment.exclusion_provider:
        class: Oro\Bundle\CommentBundle\Provider\CommentExclusionProvider
        public: false
        tags:
            - { name: oro_entity.exclusion_provider.api }

    oro_comment.comment.api_manager:
        class: %oro_comment.comment.api_manager.class%
        arguments:
            - '@doctrine'
            - '@oro_security.security_facade'
            - '@oro_entity.entity_name_resolver'
            - '@oro_datagrid.extension.pager.orm.pager'
            - '@event_dispatcher'
            - '@oro_attachment.provider.attachment'
            - '@oro_security.acl_helper'
            - '@oro_entity_config.config_manager'

    oro_comment.comment_lifecycle_listener:
        class: %oro_comment.comment_lifecycle_listener.class%
        arguments:
            - '@oro_security.security_facade.link'
        tags:
            - { name: doctrine.event_listener, event: preUpdate }
    
    oro_comment.placeholder.filter:
        class: %oro_comment.placeholder.filter.class%
        arguments:
            - '@oro_comment.association_helper'
            - '@oro_entity.doctrine_helper'
            - '@oro_security.security_facade'

