<?xml version="1.0" encoding="UTF-8"?>
<mule xmlns="http://www.mulesource.org/schema/mule/core/2.0"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:spring="http://www.springframework.org/schema/beans"
       xmlns:vm="http://www.mulesource.org/schema/mule/vm/2.0"
    xsi:schemaLocation="
       http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
       http://www.mulesource.org/schema/mule/core/2.0 http://www.mulesource.org/schema/mule/core/2.0/mule.xsd
       http://www.mulesource.org/schema/mule/vm/2.0 http://www.mulesource.org/schema/mule/vm/2.0/mule-vm.xsd">

    <vm:connector name="default"/>
    <vm:connector name="queue" queueEvents="true"/>

    <vm:endpoint name="in" address="vm://in" connector-ref="default"/>
    <endpoint name="direct" address="vm://direct" connector-ref="queue"/>
    <vm:endpoint name="global-name-global-transformer" path="global-name-global-transformer"
                 connector-ref="queue" transformer-refs="transformer"/>
    <endpoint name="global-name-local-transformer" address="vm://global-name-local-transformer"
              connector-ref="queue"/>

    <custom-transformer name="transformer" class="org.mule.tck.functional.StringAppendTestTransformer"/>

    <model name="endpoint transformer tests">

        <service name="main">
            <inbound>
                <inbound-endpoint ref="in"/>
            </inbound>
            <outbound>
                <multicasting-router>
                    <outbound-endpoint ref="direct"/>
                    <outbound-endpoint ref="global-name-global-transformer"/>
                    <vm:outbound-endpoint name="local-name-local-transformer" address="vm://local-name-local-transformer"
                                          connector-ref="queue" transformer-refs="transformer"/>
                    <!-- these two don't transform -->
                    <outbound-endpoint ref="global-name-local-transformer" transformer-refs="transformer"/>
                    <vm:outbound-endpoint path="no-name-local-transformer" connector-ref="queue"
                                          transformer-refs="transformer"/>
                </multicasting-router>
            </outbound>
        </service>

    </model>

</mule>
