<?xml version="1.0" encoding="UTF-8"?>
<!--
    Copyright (c) 2007, 2019 IBM Corporation and others.
    This program and the accompanying materials
    are made available under the terms of the Eclipse Public License 2.0
    which accompanies this distribution, and is available at
    https://www.eclipse.org/legal/epl-2.0/

    SPDX-License-Identifier: EPL-2.0

    Contributors:
        IBM Corporation - initial API and implementation
 -->

<project name="org.eclipse.wst.server_core.feature.patch" 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.server.core" target="${target}">
		</ant>
	</target>
	<target name="all.features" depends="init">
	</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.server_core.feature.patch.">
		<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.server_core.feature.patch 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="nl" value="*"/>
			<param name="arch" value="*"/>
			<param name="os" value="*"/>
			<param name="ws" value="*"/>
			<param name="feature.base" value="${feature.temp.folder}"/>
		</antcall>
		<jar destfile="${feature.destination}/org.eclipse.wst.server_core.feature.patch_1.0.0.200705241442.jar" basedir="${feature.temp.folder}/features/org.eclipse.wst.server_core.feature.patch_1.0.0.200705241442"/>
		<delete dir="${feature.temp.folder}"/>
	</target>

	<target name="gather.bin.parts" depends="init" if="feature.base">
		<mkdir dir="${feature.base}/features/org.eclipse.wst.server_core.feature.patch_1.0.0.200705241442"/>
		<antcall target="children">
			<param name="target" value="gather.bin.parts"/>
			<param name="destination.temp.folder" value="${feature.base}/plugins"/>
		</antcall>
		<copy todir="${feature.base}/features/org.eclipse.wst.server_core.feature.patch_1.0.0.200705241442" failonerror="true" overwrite="false">
			<fileset dir="${basedir}" includes="feature.xml,license.html,feature.properties,epl-v10.html,eclipse_update_120.jpg"			/>
		</copy>
		<eclipse.idReplacer featureFilePath="${feature.base}/features/org.eclipse.wst.server_core.feature.patch_1.0.0.200705241442/feature.xml"  selfVersion="1.0.0.200705241442" featureIds="" pluginIds="org.eclipse.wst.server.core,1.0.107.200705241442,"/>
		<antcall target="rootFiles${os}_${ws}_${arch}"/>
	</target>
	<target name="rootFiles*_*_*">
	</target>
	<target name="rootFilesgroup_group_group">
		<antcall target="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.server_core.feature.patch.">
		<delete dir="${feature.temp.folder}"/>
		<mkdir dir="${feature.temp.folder}"/>
		<antcall target="gather.bin.parts">
			<param name="nl" value="*"/>
			<param name="arch" value="*"/>
			<param name="include.children" value="true"/>
			<param name="os" value="*"/>
			<param name="ws" value="*"/>
			<param name="feature.base" value="${feature.temp.folder}"/>
		</antcall>
		<zip destfile="${feature.destination}/org.eclipse.wst.server_core.feature.patch_1.0.0.200705241442.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="include.children" value="true"/>
			<param name="target" value="gather.sources"/>
			<param name="destination.temp.folder" value="${feature.temp.folder}/plugins/org.eclipse.wst.server_core.feature.patch.source_1.0.0.200705241442/src"/>
		</antcall>
		<zip destfile="${feature.destination}/org.eclipse.wst.server_core.feature.patch_1.0.0.200705241442.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="include.children" value="true"/>
			<param name="target" value="gather.logs"/>
			<param name="destination.temp.folder" value="${feature.temp.folder}/plugins"/>
		</antcall>
		<zip destfile="${feature.destination}/org.eclipse.wst.server_core.feature.patch_1.0.0.200705241442.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.server_core.feature.patch of all the zips, jars and logs created.">
		<delete file="${feature.destination}/org.eclipse.wst.server_core.feature.patch_1.0.0.200705241442.jar"/>
		<delete file="${feature.destination}/org.eclipse.wst.server_core.feature.patch_1.0.0.200705241442.bin.dist.zip"/>
		<delete file="${feature.destination}/org.eclipse.wst.server_core.feature.patch_1.0.0.200705241442.log.zip"/>
		<delete file="${feature.destination}/org.eclipse.wst.server_core.feature.patch_1.0.0.200705241442.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/WTP15maintenance/org.eclipse.wst.server_core.feature.patch/" 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="target" value="gather.sources"/>
			<param name="destination.temp.folder" value="${feature.temp.folder}/plugins/org.eclipse.wst.server_core.feature.patch.source_1.0.0.200705241442/src"/>
		</antcall>
	</target>

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

</project>
