<?xml version="1.0" ?>

<container xmlns="http://symfony.com/schema/dic/services"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://symfony.com/schema/dic/services http://symfony.com/schema/dic/services/services-1.0.xsd">
    
    <parameters>
        <parameter key="office_brain_feed_back.feedback_manager">OfficeBrain\Bundle\FeedBackBundle\Manager\Service\FeedBackService</parameter>
        <parameter key="office_brain_feedback_api.class">OfficeBrain\Bundle\FeedBackBundle\ApiClient\ApiClient</parameter>
        <parameter key="office_brain_feed_back.site_feedback_service">OfficeBrain\Bundle\FeedBackBundle\Manager\Service\SiteFeedBackService</parameter>
    </parameters>
    
    <services>
        <service id="office_brain_feedback_api" class="%office_brain_feedback_api.class%"  scope="request">
            <argument type="service" id="request" />
            <argument>%api.base_url%</argument>
            <argument>%api.access_token%</argument>
            <argument>%api.default_version%</argument>
            <argument>%api.available_call_to_override%</argument>            
        </service>
        
        <service id="office_brain_feedback_factory" class="%office_brain_feed_back.feedback_manager%"/>
        <service id="office_brain_feedback_manager" class="%office_brain_feed_back.feedback_manager%" scope='request'>
            <factory service="office_brain_feedback_factory" method="initFactory"/>
            <argument type="service" id="doctrine.orm.entity_manager" />
            <argument type="service" id="request"/>
            <argument type="service" id="office_brain_order_manager" />
            <argument type="service" id="office_brain_email_service" />
            <argument type="service" id="office_brain_user_manager" />
            <argument type="service" id="office_brain_feedback_api" />
            <argument type="service" id="solarium.client_registry" />
            <argument type="service" id="knp_paginator" />
            <argument type="service" id="serializer" />
            <argument type="service" id="translator" />
        </service>
        
        <service id="office_brain_site_feedback_factory" class="%office_brain_feed_back.site_feedback_service%"/>
        <service id="office_brain_site_feedback_manager" class="%office_brain_feed_back.site_feedback_service%" scope='request'>
            <factory service="office_brain_site_feedback_factory" method="initFactory"/>
            <argument type="service" id="doctrine.orm.entity_manager" />
            <argument type="service" id="request"/>
            <argument type="service" id="office_brain_session_manager"/>
            <argument type="service" id="office_brain_email_service"/>            
        </service>
    </services>
</container>
