<?xml version="1.0" encoding="UTF-8"?>
<project name="build-snaps" xmlns:ivy="antlib:org.apache.ivy.ant">

	<path id="unit.test.bundles">
		<pathelement location="../org.eclipse.virgo.snaps.api"/>
		<pathelement location="../org.eclipse.virgo.snaps.core"/>
		<pathelement location="../org.eclipse.virgo.snaps"/>
	</path>

	<path id="bundles">
		<path refid="unit.test.bundles" />
		<pathelement location="../org.eclipse.virgo.snaps.test"/>
	</path>

	<path id="doc.bundles">
		<pathelement location="../snaps-guide"/>
	</path>

	<property file="${basedir}/../build.properties"/>
	<property file="${basedir}/../build.versions"/>
	<import file="${basedir}/package-top-level.xml" />
	<import file="${basedir}/../virgo-build/multi-bundle/default.xml"/>

	<target name="precommit" depends="clean, clean-integration, test, findbugs, clover"/>

    <target name="publish-build">
         <antcall target="publish-package-build">
            <param name="package.file" value="${package.output.file}"/>
        </antcall>
    </target>
    
    <target name="publish-download">
         <antcall target="publish-package-download">
            <param name="package.file" value="${package.output.file}"/>
        </antcall>
    </target>
    
	<target name="test" depends="build-test-apps">
		<ant target="quality-multi-bundle.test" />
	</target>

	<path id="test.apps.bundles">
		<pathelement location="../test-apps/simple-host"/>
		<pathelement location="../test-apps/simple-snap"/>
		<pathelement location="../test-apps/spring-snap"/>
		<pathelement location="../test-apps/taglib-host"/>
		<pathelement location="../test-apps/taglib-snap-one"/>
		<pathelement location="../test-apps/taglib-snap-two"/>
	</path>

	<target name="build-test-apps" description="Build all of the test applications">
		<delete dir="${basedir}/../org.eclipse.virgo.snaps.test/src/test/apps" />
		<mkdir dir="${basedir}/../org.eclipse.virgo.snaps.test/src/test/apps" />
		<all-bundles target="clean" buildpathRef="test.apps.bundles"></all-bundles>
		<all-bundles target="jar" buildpathRef="test.apps.bundles"></all-bundles>
	</target>

	<path id="sample.app.bundles">
		<pathelement location="../sample/org.eclipse.virgo.snaps.sample.animal"/>
		<pathelement location="../sample/org.eclipse.virgo.snaps.sample.blue"/>
		<pathelement location="../sample/org.eclipse.virgo.snaps.sample.cat"/>
		<pathelement location="../sample/org.eclipse.virgo.snaps.sample.dog"/>
	</path>

	<target name="build-sample-app" description="Build all of the sample application bundles">
		<all-bundles target="clean" buildpathRef="sample.app.bundles"></all-bundles>
		<all-bundles target="jar" buildpathRef="sample.app.bundles"></all-bundles>
	</target>

</project>
