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

    <!--
        JmsConnector is used to send and receive information via the Jms channel
    -->
    <jms:activemq-connector name="jmsConnector" />
    <!-- this is needed also, but does not work now -->
    <!--                            brokerUrl="vm://localhost?broker.persistence=true"/> -->


    <model name="test">

        <service name="mycomponent">
            <inbound>
                <axis:inbound-endpoint address="jms://mycomponent"/>
            </inbound>
            <component class="org.mule.tck.testmodels.services.TestServiceComponent"/>
        </service>

        <service name="mycomponent2">
            <inbound>
                <axis:inbound-endpoint address="jms://mycomponent2"/>
            </inbound>
            <pooled-component>
                <prototype-object class="org.mule.tck.testmodels.services.TestServiceComponent">
                    <properties>
                        <spring:entry key="serviceInterfaces">
                            <spring:list>
                                <spring:value>org.mule.api.component.simple.EchoService</spring:value>
                                <spring:value>org.mule.tck.testmodels.services.DateService</spring:value>
                            </spring:list>
                        </spring:entry>
                    </properties>
                </prototype-object>
            </pooled-component>
        </service>

        <service name="mycomponent3">
            <inbound>
                <inbound-endpoint address="axis:jms://mycomponent3"/>
            </inbound>
            <component>
                <singleton-object class="org.mule.tck.testmodels.services.TestServiceComponent"/>
            </component>
        </service>

        <service name="mycomponent4">
            <inbound>
                <inbound-endpoint address="axis:jms://mycomponent4" synchronous="false"/>
            </inbound>
            <component>
                <singleton-object class="org.mule.tck.testmodels.services.TestServiceComponent"/>
            </component>
        </service>

    </model>

</mule>
