<?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="api_platform.state_processor.main" alias="api_platform.state_processor.respond" />

        <service id="api_platform.state_processor.serialize" class="ApiPlatform\State\Processor\SerializeProcessor" decorates="api_platform.state_processor.main" decoration-priority="200">
            <argument type="service" id="api_platform.state_processor.serialize.inner" />
            <argument type="service" id="api_platform.serializer" />
            <argument type="service" id="api_platform.serializer.context_builder" />
        </service>

        <service id="api_platform.state_processor.write" class="ApiPlatform\State\Processor\WriteProcessor" decorates="api_platform.state_processor.main" decoration-priority="100">
            <argument type="service" id="api_platform.state_processor.write.inner" />
            <argument type="service" id="api_platform.state_processor.locator" />
        </service>

        <service id="api_platform.state_processor.respond" class="ApiPlatform\State\Processor\RespondProcessor">
            <argument type="service" id="api_platform.iri_converter" />
            <argument type="service" id="api_platform.resource_class_resolver" />
            <argument type="service" id="api_platform.metadata.operation.metadata_factory" />
        </service>

        <service id="api_platform.state_processor.add_link_header" class="ApiPlatform\State\Processor\AddLinkHeaderProcessor" decorates="api_platform.state_processor.respond">
            <argument type="service" id="api_platform.state_processor.add_link_header.inner" />
        </service>
    </services>
</container>
