<?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">

    <services>
        <service id="doctrine_reflection_service" class="PartKeepr\DoctrineReflectionBundle\Services\ReflectionService">
            <argument type="service" id="doctrine"/>
            <argument type="service" id="templating"/>
            <argument type="service" id="annotation_reader"/>
        </service>

        <service id="doctrine_filter_service" class="PartKeepr\DoctrineReflectionBundle\Services\FilterService">
            <argument type="service" id="doctrine"/>
        </service>

        <service id="doctrine_reflection_service.search_filter"
                 class="PartKeepr\DoctrineReflectionBundle\Filter\AdvancedSearchFilter" public="false">
            <argument type="service" id="doctrine"/>
            <argument type="service" id="api.iri_converter"/>
            <argument type="service" id="property_accessor"/>
            <argument type="service" id="request_stack"/>
            <argument type="service" id="doctrine_filter_service"/>
        </service>

        <service id="doctrine_reflection_deletion_service" class="PartKeepr\DoctrineReflectionBundle\Services\DeletionService">
            <argument type="service" id="doctrine.orm.default_entity_manager"/>
        </service>

        <service id="partkeepr.exceptionwrapper"
                 class="PartKeepr\DoctrineReflectionBundle\Exception\ExceptionWrapperHandler">
        </service>

    </services>
</container>
