<?xml version="1.0" encoding="UTF-8"?>
<project name="org.eclipse.wst.ws_core.feature" default="build.update.jar" basedir=".">

	<target name="init">
		<property name="feature.temp.folder" value="${basedir}/feature.temp.folder"/>
		<property name="feature.destination" value="${basedir}"/>
	</target>

	<target name="all.plugins" depends="init">
		<ant antfile="build.xml" dir="../org.eclipse.wst.wsdl" target="${target}">
		</ant>
		<ant antfile="build.xml" dir="../org.eclipse.wst.ws.parser" target="${target}">
		</ant>
		<ant antfile="build.xml" dir="../org.eclipse.wst.ws" target="${target}">
		</ant>
		<ant antfile="build.xml" dir="../org.eclipse.wst.wsi" target="${target}">
		</ant>
	</target>
	<target name="all.features" depends="init">
		<ant antfile="build.xml" dir="../org.apache.axis.feature/" target="${target}"/>
		<ant antfile="build.xml" dir="../org.apache.wsil4j.feature/" target="${target}"/>
		<ant antfile="build.xml" dir="../org.uddi4j.feature/" target="${target}"/>
		<ant antfile="build.xml" dir="../org.wsdl4j.feature/" target="${target}"/>
	</target>
	<target name="update.feature" depends="init">
	</target>

	<target name="all.children" depends="init,all.features,all.plugins,update.feature">
	</target>

	<target name="children" if="include.children">
		<antcall target="all.children"/>
	</target>

	<target name="build.jars" depends="init" description="Build all the jars for the feature: org.eclipse.wst.ws_core.feature.">
		<antcall target="all.children">
			<param name="target" value="build.jars"/>
		</antcall>
	</target>

	<target name="build.sources" depends="init">
		<antcall target="all.children">
			<param name="target" value="build.sources"/>
		</antcall>
	</target>

	<target name="build.zips" depends="init">
		<antcall target="all.children">
			<param name="target" value="build.zips"/>
		</antcall>
	</target>

	<target name="build.update.jar" depends="init" description="Build the feature jar of: org.eclipse.wst.ws_core.feature for an update site.">
		<antcall target="all.children">
			<param name="target" value="build.update.jar"/>
		</antcall>
		<property name="feature.base" value="${feature.temp.folder}"/>
		<delete dir="${feature.temp.folder}"/>
		<mkdir dir="${feature.temp.folder}"/>
		<antcall target="gather.bin.parts" inheritAll="false">
			<param name="arch" value="*"/>
			<param name="ws" value="*"/>
			<param name="nl" value="*"/>
			<param name="os" value="*"/>
			<param name="feature.base" value="${feature.temp.folder}"/>
		</antcall>
		<jar destfile="${feature.destination}/org.eclipse.wst.ws_core.feature_1.0.0.jar" basedir="${feature.temp.folder}/features/org.eclipse.wst.ws_core.feature_1.0.0"/>
		<delete dir="${feature.temp.folder}"/>
	</target>

	<target name="gather.bin.parts" depends="init" if="feature.base">
		<antcall target="children">
			<param name="destination.temp.folder" value="${feature.base}/plugins"/>
			<param name="target" value="gather.bin.parts"/>
		</antcall>
		<mkdir dir="${feature.base}/features/org.eclipse.wst.ws_core.feature_1.0.0"/>
		<copy todir="${feature.base}/features/org.eclipse.wst.ws_core.feature_1.0.0" failonerror="true" overwrite="false">
			<fileset dir="${basedir}" includes="feature.xml"			/>
		</copy>
		<eclipse.idReplacer featureFilePath="${feature.base}/features/org.eclipse.wst.ws_core.feature_1.0.0/feature.xml"  selfVersion="1.0.0" featureIds="org.apache.axis.feature,1.2.1,org.apache.wsil4j.feature,1.0.0,org.uddi4j.feature,2.0.3,org.wsdl4j.feature,1.4.0," pluginIds="org.eclipse.wst.ws,0.7.0,org.eclipse.wst.ws.parser,0.7.0,org.eclipse.wst.wsdl,0.7.0,org.eclipse.wst.wsi,0.7.0,"/>
		<antcall target="rootFiles${os}_${ws}_${arch}"/>
	</target>
	<target name="rootFiles*_*_*">
	</target>

	<target name="zip.distribution" depends="init" description="Create a zip containing all the plug-ins and features for the feature: org.eclipse.wst.ws_core.feature.">
		<delete dir="${feature.temp.folder}"/>
		<mkdir dir="${feature.temp.folder}"/>
		<antcall target="gather.bin.parts">
			<param name="arch" value="*"/>
			<param name="ws" value="*"/>
			<param name="nl" value="*"/>
			<param name="include.children" value="true"/>
			<param name="feature.base" value="${feature.temp.folder}"/>
			<param name="os" value="*"/>
		</antcall>
		<zip destfile="${feature.destination}/org.eclipse.wst.ws_core.feature_1.0.0.bin.dist.zip" basedir="${feature.temp.folder}" filesonly="false" whenempty="skip" update="false"/>
		<delete dir="${feature.temp.folder}"/>
	</target>

	<target name="zip.sources" depends="init">
		<delete dir="${feature.temp.folder}"/>
		<mkdir dir="${feature.temp.folder}"/>
		<antcall target="all.children">
			<param name="destination.temp.folder" value="${feature.temp.folder}/plugins/org.eclipse.wst.ws_core.feature.source_1.0.0/src"/>
			<param name="include.children" value="true"/>
			<param name="target" value="gather.sources"/>
		</antcall>
		<zip destfile="${feature.destination}/org.eclipse.wst.ws_core.feature_1.0.0.src.zip" basedir="${feature.temp.folder}" filesonly="true" whenempty="skip" update="false"/>
		<delete dir="${feature.temp.folder}"/>
	</target>

	<target name="zip.logs" depends="init">
		<delete dir="${feature.temp.folder}"/>
		<mkdir dir="${feature.temp.folder}"/>
		<antcall target="all.children" inheritAll="false">
			<param name="destination.temp.folder" value="${feature.temp.folder}/plugins"/>
			<param name="include.children" value="true"/>
			<param name="target" value="gather.logs"/>
		</antcall>
		<zip destfile="${feature.destination}/org.eclipse.wst.ws_core.feature_1.0.0.log.zip" basedir="${feature.temp.folder}" filesonly="true" whenempty="skip" update="false"/>
		<delete dir="${feature.temp.folder}"/>
	</target>

	<target name="clean" depends="init" description="Clean the feature: org.eclipse.wst.ws_core.feature of all the zips, jars and logs created.">
		<delete file="${feature.destination}/org.eclipse.wst.ws_core.feature_1.0.0.jar"/>
		<delete file="${feature.destination}/org.eclipse.wst.ws_core.feature_1.0.0.bin.dist.zip"/>
		<delete file="${feature.destination}/org.eclipse.wst.ws_core.feature_1.0.0.log.zip"/>
		<delete file="${feature.destination}/org.eclipse.wst.ws_core.feature_1.0.0.src.zip"/>
		<delete dir="${feature.temp.folder}"/>
		<antcall target="all.children">
			<param name="target" value="clean"/>
		</antcall>
	</target>

	<target name="refresh" depends="init" if="eclipse.running" description="Refresh this folder.">
		<eclipse.convertPath fileSystemPath="D:/builds/Workspaces/pureHeadWTP/org.eclipse.wst.ws_core.feature/" property="resourcePath"/>
		<eclipse.refreshLocal resource="${resourcePath}" depth="infinite"/>
		<antcall target="all.children">
			<param name="target" value="refresh"/>
		</antcall>
	</target>
	<target name="gather.sources">
		<antcall target="children">
			<param name="destination.temp.folder" value="${feature.temp.folder}/plugins/org.eclipse.wst.ws_core.feature.source_1.0.0/src"/>
			<param name="target" value="gather.sources"/>
		</antcall>
	</target>

	<target name="gather.logs" depends="init">
		<mkdir dir="${feature.temp.folder}"/>
		<antcall target="all.children" inheritAll="false">
			<param name="destination.temp.folder" value="${feature.temp.folder}/plugins"/>
			<param name="target" value="gather.logs"/>
		</antcall>
	</target>

</project>
