parameters:
    visualm.tag_manager.entity.meta_tag_set.class: 'VisualM\TagManagerBundle\Entity\MetaTagSet'
    visualm.tag_manager.entity.meta_tag_preset.class: 'VisualM\TagManagerBundle\Entity\MetaTagPreset'
    visualm.tag_manager.entity.meta_tag.class: 'VisualM\TagManagerBundle\Entity\MetaTag'
    visualm.tag_manager.doctrine.meta_collection_subscriber.class: 'VisualM\TagManagerBundle\Doctrine\EventListener\MetaTagCollectionSubscriber'
    visualm.tag_manager.doctrine.update_tags_from_preset_subscriber.class: 'VisualM\TagManagerBundle\Doctrine\EventListener\UpdateTagFromPresetSubscriber'
    visualm.tag_manager.doctrine.add_meta_tag_form_preset_subscriber.class: 'VisualM\TagManagerBundle\Doctrine\EventListener\AddMetaTagFromPresetSubscriber'
    visualm.tag_manager.doctrine.add_meta_tag_set_subscriber.class: 'VisualM\TagManagerBundle\Doctrine\EventListener\AddMetaTagSetSubscriber'
    visualm.tag_manager.doctrine.add_meta_tag_set_by_content_name_subscriber.class: 'VisualM\TagManagerBundle\Doctrine\EventListener\AddMetaTagSetByContentNameSubscriber'

services:

    # MetaTagCollectionSubscriber
    # ----------------------------------------------------------
    visualm.tag_manager.doctrine.meta_collection_subscriber:
        class: '%visualm.tag_manager.doctrine.meta_collection_subscriber.class%'
        calls:
          - [ setContainer,[ @service_container ] ]
        tags:
          - { name : 'doctrine.event_subscriber' }
        
    # UpdateTagFromPresetSubscriber
    # ----------------------------------------------------------
    visualm.tag_manager.doctrine.update_tags_from_preset_subscriber:
        class: '%visualm.tag_manager.doctrine.update_tags_from_preset_subscriber.class%'
        calls:
          - [ setContainer,[ @service_container ] ]
        tags:
          - { name : 'doctrine.event_subscriber' }

    # AddMetaTagFromPresetSubscriber
    # ----------------------------------------------------------
    visualm.tag_manager.doctrine.add_meta_tag_form_preset_subscriber:
        class: '%visualm.tag_manager.doctrine.add_meta_tag_form_preset_subscriber.class%'
        calls:
          - [ setContainer,[ @service_container ] ]
        tags:
          - { name : 'doctrine.event_subscriber' }

    # AddMetaTagSetSubscriber
    # ----------------------------------------------------------
    visualm.tag_manager.doctrine.add_meta_tag_set_subscriber:
        class: '%visualm.tag_manager.doctrine.add_meta_tag_set_subscriber.class%'
        calls:
          - [ setContainer,[ @service_container ] ]
        tags:
          - { name : 'doctrine.event_subscriber' }

    # AddMetaTagSetByContentNameSubscriber
    # ----------------------------------------------------------
    visualm.tag_manager.doctrine.add_meta_tag_set_by_content_name_subscriber:
        class: '%visualm.tag_manager.doctrine.add_meta_tag_set_by_content_name_subscriber.class%'
        calls:
          - [ setContainer,[ @service_container ] ]
        tags:
          - { name : 'doctrine.event_subscriber' }


    # MetaTagSet Entity
    # ----------------------------------------------------------
    visualm.tag_manager.entity.meta_tag_set:
        class: '%visualm.tag_manager.entity.meta_tag_set.class%'
        scope: prototype

    visualm.tag_manager.manager.meta_tag_set:
        class: Doctrine\Common\Persistence\ObjectRepository
        factory_service: doctrine
        factory_method: getRepository
        arguments: [ %visualm.tag_manager.entity.meta_tag_set.class% ]

    # MetaTag Entity
    # ----------------------------------------------------------
    visualm.tag_manager.entity.meta_tag:
        class: '%visualm.tag_manager.entity.meta_tag.class%'
        scope: prototype

    visualm.tag_manager.manager.meta_tag:
        class: Doctrine\Common\Persistence\ObjectRepository
        factory_service: doctrine
        factory_method: getRepository
        arguments: [ %visualm.tag_manager.entity.meta_tag.class% ]


    # MetaTagPreset Entity
    # ----------------------------------------------------------
    visualm.tag_manager.entity.meta_tag_preset:
        class: '%visualm.tag_manager.entity.meta_tag_preset.class%'
        scope: prototype

    visualm.tag_manager.manager.meta_tag_preset:
        class: Doctrine\Common\Persistence\ObjectRepository
        factory_service: doctrine
        factory_method: getRepository
        arguments: [ %visualm.tag_manager.entity.meta_tag_preset.class% ]
