<!--
 * Licensed to the Apache Software Foundation (ASF) under one
 * or more contributor license agreements.  See the NOTICE file
 * distributed with this work for additional information
 * regarding copyright ownership.  The ASF licenses this file
 * to you under the Apache License, Version 2.0 (the
 * "License"); you may not use this file except in compliance
 * with the License.  You may obtain a copy of the License at
 * 
 *   http://www.apache.org/licenses/LICENSE-2.0
 * 
 * Unless required by applicable law or agreed to in writing,
 * software distributed under the License is distributed on an
 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 * KIND, either express or implied.  See the License for the
 * specific language governing permissions and limitations
 * under the License.    
-->
<project name="calculator" default="runDomainNode">
    <property name="node.class" value="node.CalculatorNode" />
	<property name="domain.class" value="node.DomainNode" />
	<property name="test.jar"   value="sample-calculator-distributed.jar" 
/>
	
    <target name="init">
        <mkdir dir="target/classes"/>
    </target>
	
    <target name="compile" depends="init">
        <javac srcdir="src/main/java"
               destdir="target/classes"
               debug="on"
               source="1.5"
               target="1.5">
            <classpath>
            	<pathelement location="../../lib/tuscany-sca-manifest.jar"/>
            </classpath>
        </javac> 
        <copy todir="target/classes">
            <fileset dir="src/main/resources"/>
        </copy>
        <jar destfile="target/${test.jar}" basedir="target/classes">
            <manifest>
                <attribute name="Main-Class" value="${test.class}" /> 
            </manifest>
        </jar>    	
    </target>
	
    <target name="runDomainNode">
        <java classname="${domain.class}"
              fork="true">
            <classpath>
            	<pathelement path="src/main/resources"/>
                <pathelement path="target/classes"/>
            	<pathelement path="target/${test.jar}"/>
            	<pathelement location="../../lib/tuscany-sca-manifest.jar"/>
            </classpath>    	        	
        </java>
    </target>
	
    <target name="runNodeA">
        <java classname="${node.class}"
              fork="true">
            <classpath>
            	<pathelement path="src/main/resources"/>
                <pathelement path="target/classes"/>
            	<pathelement path="target/${test.jar}"/>
            	<pathelement location="../../lib/tuscany-sca-manifest.jar"/>
            </classpath>
        	<arg value="mydomain"/>
        	<arg value="nodeA"/>        	        	
        </java>
    </target>
	
    <target name="runNodeB">
        <java classname="${node.class}"
              fork="true">
            <classpath>
            	<pathelement path="src/main/resources"/>
                <pathelement path="target/classes"/>
            	<pathelement path="target/${test.jar}"/>
            	<pathelement location="../../lib/tuscany-sca-manifest.jar"/>
            </classpath>
        	<arg value="mydomain"/>
        	<arg value="nodeB"/>        	
        </java>
    </target>	
	
    <target name="runNodeC">
        <java classname="${node.class}"
              fork="true">
            <classpath>
            	<pathelement path="src/main/resources"/>
                <pathelement path="target/classes"/>
            	<pathelement path="target/${test.jar}"/>
            	<pathelement location="../../lib/tuscany-sca-manifest.jar"/>
            </classpath>
        	<arg value="mydomain"/>
        	<arg value="nodeC"/>        	
        </java>
    </target>	
	
    <target name="clean">
        <delete dir="target" includeemptydirs="true"/>
    </target>	
	
	<!-- If you want to test without building the distribution jars set the       -->
	<!-- localtion value of the m2.repo on your machine and use the targets below -->
	<property name="m2.repo"   value="your dir here\.m2\repository" />
    <path id="repo.classpath">
        <!--pathelement location="${classpath}"/-->
    	<!--pathelement location="${m2.repo}\annogen\annogen\0.1.0\annogen-0.1.0.jar"/>
        <pathelement location="${m2.repo}\avalon-framework\avalon-framework\4.1.3\avalon-framework-4.1.3.jar"/>
        <pathelement location="${m2.repo}\backport-util-concurrent\backport-util-concurrent\2.2\backport-util-concurrent-2.2.jar"/>
        <pathelement location="${m2.repo}\cglib\cglib-nodep\2.1_3\cglib-nodep-2.1_3.jar"/>
    	<pathelement location="${m2.repo}\com\metaparadigm\json-rpc\1.0\json-rpc-1.0.jar"/>
        <pathelement location="${m2.repo}\commons-codec\commons-codec\1.3\commons-codec-1.3.jar"/>
        <pathelement location="${m2.repo}\commons-fileupload\commons-fileupload\1.1.1\commons-fileupload-1.1.1.jar"/>
        <pathelement location="${m2.repo}\commons-httpclient\commons-httpclient\3.0.1\commons-httpclient-3.1.jar"/>
        <pathelement location="${m2.repo}\commons-io\commons-io\1.1\commons-io-1.1.jar"/>
        <pathelement location="${m2.repo}\commons-logging\commons-logging\1.1\commons-logging-1.1.jar"/>
        <pathelement location="${m2.repo}\javax\activation\activation\1.1\activation-1.1.jar"/>
        <pathelement location="${m2.repo}\javax\mail\mail\1.4\mail-1.4.jar"/>
    	<pathelement location="${m2.repo}\javax\servlet\servlet-api\2.5\servlet-api-2.5.jar"/>
        <pathelement location="${m2.repo}\jaxen\jaxen\1.1-beta-9\jaxen-1.1-beta-9.jar"/>
        <pathelement location="${m2.repo}\log4j\log4j\1.2.12\log4j-1.2.12.jar"/>
        <pathelement location="${m2.repo}\logkit\logkit\1.0.1\logkit-1.0.1.jar"/>
        <pathelement location="${m2.repo}\org\apache\ant\ant\1.7.0\ant-1.7.0.jar"/>
        <pathelement location="${m2.repo}\org\apache\ant\ant-launcher\1.7.0\ant-launcher-1.7.0.jar"/>
        <pathelement location="${m2.repo}\org\apache\axis2\axis2-java2wsdl\1.2\axis2-java2wsdl-1.2.jar"/>
        <pathelement location="${m2.repo}\org\apache\axis2\axis2-kernel\1.2\axis2-kernel-1.2.jar"/>
        <pathelement location="${m2.repo}\org\apache\geronimo\specs\geronimo-commonj_1.1_spec\1.0\geronimo-commonj_1.1_spec-1.0.jar"/>
        <pathelement location="${m2.repo}\org\apache\geronimo\specs\geronimo-jms_1.1_spec\1.1\geronimo-jms_1.1_spec-1.1.jar"/>
        <pathelement location="${m2.repo}\org\apache\httpcomponents\jakarta-httpcore\4.0-alpha4\jakarta-httpcore-4.0-alpha4.jar"/>
        <pathelement location="${m2.repo}\org\apache\neethi\neethi\2.0.1\neethi-2.0.1.jar"/>
        <pathelement location="${m2.repo}\org\apache\tuscany\sca\sca-api\1.7-SNAPSHOT\sca-api-1.7-SNAPSHOT.jar"/>
        <pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-assembly\1.7-SNAPSHOT\tuscany-assembly-1.7-SNAPSHOT.jar"/>
        <pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-assembly-xml\1.7-SNAPSHOT\tuscany-assembly-xml-1.7-SNAPSHOT.jar"/>
        <pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-binding-sca\1.7-SNAPSHOT\tuscany-binding-sca-1.7-SNAPSHOT.jar"/>
        <pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-binding-sca-axis2\1.7-SNAPSHOT\tuscany-binding-sca-axis2-1.7-SNAPSHOT.jar"/>
        <pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-binding-sca-xml\1.7-SNAPSHOT\tuscany-binding-sca-xml-1.7-SNAPSHOT.jar"/>
        <pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-binding-ws\1.7-SNAPSHOT\tuscany-binding-ws-1.7-SNAPSHOT.jar"/>
        <pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-binding-ws-axis2\1.7-SNAPSHOT\tuscany-binding-ws-axis2-1.7-SNAPSHOT.jar"/>
        <pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-binding-ws-xml\1.7-SNAPSHOT\tuscany-binding-ws-xml-1.7-SNAPSHOT.jar"/>
        <pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-contribution\1.7-SNAPSHOT\tuscany-contribution-1.7-SNAPSHOT.jar"/>
        <pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-contribution-impl\1.7-SNAPSHOT\tuscany-contribution-impl-1.7-SNAPSHOT.jar"/>
        <pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-contribution-java\1.7-SNAPSHOT\tuscany-contribution-java-1.7-SNAPSHOT.jar"/>
        <pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-contribution-namespace\1.7-SNAPSHOT\tuscany-contribution-namespace-1.7-SNAPSHOT.jar"/>
        <pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-core\1.7-SNAPSHOT\tuscany-core-1.7-SNAPSHOT.jar"/>
        <pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-core-databinding\1.7-SNAPSHOT\tuscany-core-databinding-1.7-SNAPSHOT.jar"/>
        <pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-core-spi\1.7-SNAPSHOT\tuscany-core-spi-1.7-SNAPSHOT.jar"/>
        <pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-databinding\1.7-SNAPSHOT\tuscany-databinding-1.7-SNAPSHOT.jar"/>
        <pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-databinding-axiom\1.7-SNAPSHOT\tuscany-databinding-axiom-1.7-SNAPSHOT.jar"/>
        <pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-distributed\1.7-SNAPSHOT\tuscany-distributed-1.7-SNAPSHOT.jar"/>
        <pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-distributed-impl\1.7-SNAPSHOT\tuscany-distributed-impl-1.7-SNAPSHOT.jar"/>
        <pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-host-embedded\1.7-SNAPSHOT\tuscany-host-embedded-1.7-SNAPSHOT.jar"/>
        <pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-host-http\1.7-SNAPSHOT\tuscany-host-http-1.7-SNAPSHOT.jar"/>
    	<pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-host-tomcat\1.7-SNAPSHOT\tuscany-host-jetty-1.7-SNAPSHOT.jar"/>
        <pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-implementation-java\1.7-SNAPSHOT\tuscany-implementation-java-1.7-SNAPSHOT.jar"/>
        <pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-implementation-java-runtime\1.7-SNAPSHOT\tuscany-implementation-java-runtime-1.7-SNAPSHOT.jar"/>
        <pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-implementation-java-xml\1.7-SNAPSHOT\tuscany-implementation-java-xml-1.7-SNAPSHOT.jar"/>
        <pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-interface\1.7-SNAPSHOT\tuscany-interface-1.7-SNAPSHOT.jar"/>
        <pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-interface-java\1.7-SNAPSHOT\tuscany-interface-java-1.7-SNAPSHOT.jar"/>
        <pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-interface-java-xml\1.7-SNAPSHOT\tuscany-interface-java-xml-1.7-SNAPSHOT.jar"/>
        <pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-interface-wsdl\1.7-SNAPSHOT\tuscany-interface-wsdl-1.7-SNAPSHOT.jar"/>
        <pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-interface-wsdl-xml\1.7-SNAPSHOT\tuscany-interface-wsdl-xml-1.7-SNAPSHOT.jar"/>
        <pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-policy\1.7-SNAPSHOT\tuscany-policy-1.7-SNAPSHOT.jar"/>
    	<pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-policy-xml\1.7-SNAPSHOT\tuscany-policy-xml-1.7-SNAPSHOT.jar"/>
        <pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-topology\1.7-SNAPSHOT\tuscany-topology-1.7-SNAPSHOT.jar"/>
        <pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-topology-xml\1.7-SNAPSHOT\tuscany-topology-xml-1.7-SNAPSHOT.jar"/>
        <pathelement location="${m2.repo}\org\apache\woden\woden\1.0-incubating-M7a\woden-1.0-incubating-M7a.jar"/>
        <pathelement location="${m2.repo}\org\apache\ws\commons\axiom\axiom-api\1.2.4\axiom-api-1.2.4.jar"/>
        <pathelement location="${m2.repo}\org\apache\ws\commons\axiom\axiom-dom\1.2.4\axiom-dom-1.2.4.jar"/>
        <pathelement location="${m2.repo}\org\apache\ws\commons\axiom\axiom-impl\1.2.4\axiom-impl-1.2.4.jar"/>
        <pathelement location="${m2.repo}\org\apache\ws\commons\schema\XmlSchema\1.3.1\XmlSchema-1.3.1.jar"/>
        <pathelement location="${m2.repo}\org\codehaus\woodstox\wstx-asl\3.2.1\wstx-asl-3.2.1.jar"/>
        <pathelement location="${m2.repo}\stax\stax-api\1.0.1\stax-api-1.0.1.jar"/>
        <pathelement location="${m2.repo}\wsdl4j\wsdl4j\1.6.2\wsdl4j-1.6.2.jar"/>
        <pathelement location="${m2.repo}\xerces\xercesImpl\2.8.1\xercesImpl-2.8.1.jar"/>
        <pathelement location="${m2.repo}\xml-apis\xml-apis\1.3.03\xml-apis-1.3.03.jar"/>    	
    	<pathelement location="target/classes"/-->  
    	<pathelement location="${m2.repo}\annogen\annogen\0.1.0\annogen-0.1.0.jar"/>
    	<pathelement location="${m2.repo}\avalon-framework\avalon-framework\4.1.3\avalon-framework-4.1.3.jar"/>
    	<pathelement location="${m2.repo}\backport-util-concurrent\backport-util-concurrent\2.2\backport-util-concurrent-2.2.jar"/>
    	<pathelement location="${m2.repo}\cglib\cglib-nodep\2.1_3\cglib-nodep-2.1_3.jar"/>
    	<pathelement location="${m2.repo}\com\metaparadigm\json-rpc\1.0\json-rpc-1.0.jar"/>
    	<pathelement location="${m2.repo}\commons-codec\commons-codec\1.3\commons-codec-1.3.jar"/>
    	<pathelement location="${m2.repo}\commons-fileupload\commons-fileupload\1.1.1\commons-fileupload-1.1.1.jar"/>
    	<pathelement location="${m2.repo}\commons-httpclient\commons-httpclient\3.0.1\commons-httpclient-3.0.1.jar"/>
    	<pathelement location="${m2.repo}\commons-io\commons-io\1.1\commons-io-1.1.jar"/>
    	<pathelement location="${m2.repo}\commons-logging\commons-logging\1.1\commons-logging-1.1.jar"/>
    	<pathelement location="${m2.repo}\javax\activation\activation\1.1\activation-1.1.jar"/>
    	<pathelement location="${m2.repo}\javax\mail\mail\1.4\mail-1.4.jar"/>
    	<pathelement location="${m2.repo}\jaxen\jaxen\1.1-beta-9\jaxen-1.1-beta-9.jar"/>
    	<pathelement location="${m2.repo}\log4j\log4j\1.2.12\log4j-1.2.12.jar"/>
    	<pathelement location="${m2.repo}\logkit\logkit\1.0.1\logkit-1.0.1.jar"/>
    	<pathelement location="${m2.repo}\org\apache\ant\ant\1.7.0\ant-1.7.0.jar"/>
    	<pathelement location="${m2.repo}\org\apache\ant\ant-launcher\1.7.0\ant-launcher-1.7.0.jar"/>
    	<pathelement location="${m2.repo}\org\apache\axis2\axis2-adb\1.2\axis2-adb-1.2.jar"/>
    	<pathelement location="${m2.repo}\org\apache\axis2\axis2-java2wsdl\1.2\axis2-java2wsdl-1.2.jar"/>
    	<pathelement location="${m2.repo}\org\apache\axis2\axis2-kernel\1.2\axis2-kernel-1.2.jar"/>
    	<pathelement location="${m2.repo}\org\apache\geronimo\specs\geronimo-commonj_1.1_spec\1.0\geronimo-commonj_1.1_spec-1.0.jar"/>
    	<pathelement location="${m2.repo}\org\apache\geronimo\specs\geronimo-jms_1.1_spec\1.1\geronimo-jms_1.1_spec-1.1.jar"/>
    	<pathelement location="${m2.repo}\org\apache\httpcomponents\jakarta-httpcore\4.0-alpha4\jakarta-httpcore-4.0-alpha4.jar"/>
    	<pathelement location="${m2.repo}\org\apache\neethi\neethi\2.0.1\neethi-2.0.1.jar"/>
    	<pathelement location="${m2.repo}\org\apache\tuscany\sca\sca-api\1.7-SNAPSHOT\sca-api-1.7-SNAPSHOT.jar"/>
    	<pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-assembly\1.7-SNAPSHOT\tuscany-assembly-1.7-SNAPSHOT.jar"/>
    	<pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-assembly-xml\1.7-SNAPSHOT\tuscany-assembly-xml-1.7-SNAPSHOT.jar"/>
    	<pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-binding-http\1.7-SNAPSHOT\tuscany-binding-http-1.7-SNAPSHOT.jar"/>
    	<pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-binding-jsonrpc\1.7-SNAPSHOT\tuscany-binding-jsonrpc-1.7-SNAPSHOT.jar"/>
    	<pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-binding-sca\1.7-SNAPSHOT\tuscany-binding-sca-1.7-SNAPSHOT.jar"/>
    	<pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-binding-sca-axis2\1.7-SNAPSHOT\tuscany-binding-sca-axis2-1.7-SNAPSHOT.jar"/>
    	<pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-binding-sca-xml\1.7-SNAPSHOT\tuscany-binding-sca-xml-1.7-SNAPSHOT.jar"/>
    	<pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-binding-ws\1.7-SNAPSHOT\tuscany-binding-ws-1.7-SNAPSHOT.jar"/>
    	<pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-binding-ws-axis2\1.7-SNAPSHOT\tuscany-binding-ws-axis2-1.7-SNAPSHOT.jar"/>
    	<pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-binding-ws-xml\1.7-SNAPSHOT\tuscany-binding-ws-xml-1.7-SNAPSHOT.jar"/>
    	<pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-contribution\1.7-SNAPSHOT\tuscany-contribution-1.7-SNAPSHOT.jar"/>
    	<pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-contribution-impl\1.7-SNAPSHOT\tuscany-contribution-impl-1.7-SNAPSHOT.jar"/>
    	<pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-contribution-java\1.7-SNAPSHOT\tuscany-contribution-java-1.7-SNAPSHOT.jar"/>
    	<pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-contribution-namespace\1.7-SNAPSHOT\tuscany-contribution-namespace-1.7-SNAPSHOT.jar"/>
    	<pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-core\1.7-SNAPSHOT\tuscany-core-1.7-SNAPSHOT.jar"/>
    	<pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-core-databinding\1.7-SNAPSHOT\tuscany-core-databinding-1.7-SNAPSHOT.jar"/>
    	<pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-core-spi\1.7-SNAPSHOT\tuscany-core-spi-1.7-SNAPSHOT.jar"/>
    	<pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-databinding\1.7-SNAPSHOT\tuscany-databinding-1.7-SNAPSHOT.jar"/>
    	<pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-databinding-axiom\1.7-SNAPSHOT\tuscany-databinding-axiom-1.7-SNAPSHOT.jar"/>
    	<pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-distributed\1.7-SNAPSHOT\tuscany-distributed-1.7-SNAPSHOT.jar"/>
    	<pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-distributed-impl\1.7-SNAPSHOT\tuscany-distributed-impl-1.7-SNAPSHOT.jar"/>
    	<pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-extension-helper\1.7-SNAPSHOT\tuscany-extension-helper-1.7-SNAPSHOT.jar"/>
    	<pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-host-embedded\1.7-SNAPSHOT\tuscany-host-embedded-1.7-SNAPSHOT.jar"/>
    	<pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-host-http\1.7-SNAPSHOT\tuscany-host-http-1.7-SNAPSHOT.jar"/>
    	<pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-interface\1.7-SNAPSHOT\tuscany-interface-1.7-SNAPSHOT.jar"/>
    	<pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-interface-java\1.7-SNAPSHOT\tuscany-interface-java-1.7-SNAPSHOT.jar"/>
    	<pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-interface-java-xml\1.7-SNAPSHOT\tuscany-interface-java-xml-1.7-SNAPSHOT.jar"/>
    	<pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-interface-wsdl\1.7-SNAPSHOT\tuscany-interface-wsdl-1.7-SNAPSHOT.jar"/>
    	<pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-interface-wsdl-xml\1.7-SNAPSHOT\tuscany-interface-wsdl-xml-1.7-SNAPSHOT.jar"/>
    	<pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-policy\1.7-SNAPSHOT\tuscany-policy-1.7-SNAPSHOT.jar"/>
    	<pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-policy-xml\1.7-SNAPSHOT\tuscany-policy-xml-1.7-SNAPSHOT.jar"/>
    	<pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-topology\1.7-SNAPSHOT\tuscany-topology-1.7-SNAPSHOT.jar"/>
    	<pathelement location="${m2.repo}\org\apache\tuscany\sca\tuscany-topology-xml\1.7-SNAPSHOT\tuscany-topology-xml-1.7-SNAPSHOT.jar"/>
    	<pathelement location="${m2.repo}\org\apache\woden\woden\1.0-incubating-M7a\woden-1.0-incubating-M7a.jar"/>
    	<pathelement location="${m2.repo}\org\apache\ws\commons\axiom\axiom-api\1.2.4\axiom-api-1.2.4.jar"/>
    	<pathelement location="${m2.repo}\org\apache\ws\commons\axiom\axiom-dom\1.2.4\axiom-dom-1.2.4.jar"/>
    	<pathelement location="${m2.repo}\org\apache\ws\commons\axiom\axiom-impl\1.2.4\axiom-impl-1.2.4.jar"/>
    	<pathelement location="${m2.repo}\org\apache\ws\commons\schema\XmlSchema\1.3.1\XmlSchema-1.3.1.jar"/>
    	<pathelement location="${m2.repo}\org\codehaus\woodstox\wstx-asl\3.2.1\wstx-asl-3.2.1.jar"/>
    	<pathelement location="${m2.repo}\stax\stax-api\1.0.1\stax-api-1.0.1.jar"/>
    	<pathelement location="${m2.repo}\wsdl4j\wsdl4j\1.6.2\wsdl4j-1.6.2.jar"/>
    	<pathelement location="${m2.repo}\xerces\xercesImpl\2.8.1\xercesImpl-2.8.1.jar"/>
    	<pathelement location="${m2.repo}\xml-apis\xml-apis\1.3.03\xml-apis-1.3.03.jar"/>    	
    </path>	
    	
    <target name="runDomainNodeRepo">
        <java classname="${domain.class}"
              fork="true">
            <classpath>
            	<path refid="repo.classpath"/>
            </classpath>    	        	
        </java>
    </target>
	
    <target name="runNodeARepo">
        <java classname="${node.class}"
              fork="true">
            <classpath>
            	<path refid="repo.classpath"/>
            </classpath>
        	<arg value="mydomain"/>
        	<arg value="nodeA"/>        	        	
        </java>
    </target>
	
    <target name="runNodeBRepo">
        <java classname="${node.class}"
              fork="true">
            <classpath>
            	<path refid="repo.classpath"/>
            </classpath>
        	<arg value="mydomain"/>
        	<arg value="nodeB"/>        	
        </java>
    </target>	
	
    <target name="runNodeCRepo">
        <java classname="${node.class}"
              fork="true">
            <classpath>
            	<path refid="repo.classpath"/>
            </classpath>
        	<arg value="mydomain"/>
        	<arg value="nodeC"/>        	
        </java>
    </target>	
	
</project>
