<?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:mule="http://www.mulesource.org/schema/mule/core/2.0"
      xmlns:jms="http://www.mulesource.org/schema/mule/jms/2.0"
      xsi:schemaLocation="
       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/jms/2.0 http://www.mulesource.org/schema/mule/jms/2.0/mule-jms.xsd">

    <jms:activemq-connector name="jmsConnector"/>

    <jms:endpoint name="in" queue="in"/>
    <jms:endpoint name="topic" topic="broadcast"/>
    <jms:endpoint name="out" queue="out"/>

    <model name="echoSample">
        <service name="InputPart">
            <inbound>
                <inbound-endpoint ref="in"/>
            </inbound>
            <component>
                <singleton-object class="org.mule.tck.functional.FunctionalTestComponent"/>
            </component>
            <outbound>
                <outbound-pass-through-router>
                    <outbound-endpoint ref="topic"/>
                </outbound-pass-through-router>
            </outbound>
        </service>

        <service name="Topic1">
            <inbound>
                <inbound-endpoint ref="topic"/>
            </inbound>
            <component>
                <singleton-object class="org.mule.tck.functional.FunctionalTestComponent">
                    <property key="returnMessage" value="OUTPUT MESSAGE"/>
                </singleton-object>
            </component>
            <outbound>
                <outbound-pass-through-router>
                    <outbound-endpoint ref="out"/>
                </outbound-pass-through-router>
            </outbound>
        </service>

        <service name="Topic2">
            <inbound>
                <inbound-endpoint ref="topic"/>
            </inbound>
            <component>
                <singleton-object class="org.mule.tck.functional.FunctionalTestComponent">
                    <property key="returnMessage" value="OUTPUT MESSAGE"/>
                </singleton-object>
            </component>
            <outbound>
                <outbound-pass-through-router>
                    <outbound-endpoint ref="out"/>
                </outbound-pass-through-router>
            </outbound>
        </service>
    </model>
</mule>
