<?xml version="1.0" encoding="UTF-8"?>
<project name="netjfwatcher_help" default="build.jars" basedir=".">

	<property name="basews" value="${ws}"/>
	<property name="baseos" value="${os}"/>
	<property name="basearch" value="${arch}"/>
	<property name="basenl" value="${nl}"/>

	<!-- Compiler settings. -->
	<property name="javacFailOnError" value="false"/>
	<property name="javacDebugInfo" value="on"/>
	<property name="javacVerbose" value="true"/>
	<property name="javacSource" value="1.3"/>
	<property name="javacTarget" value="1.2"/>
	<property name="compilerArg" value=""/>
	<path id="path_bootclasspath">
		<fileset dir="${java.home}/lib">
			<include name="*.jar"/>
		</fileset>
	</path>
	<property name="bootclasspath" refid="path_bootclasspath"/>

	<target name="init" depends="properties">
		<condition property="pluginTemp" value="${buildTempFolder}/plugins">
			<isset property="buildTempFolder"/>
		</condition>
		<property name="pluginTemp" value="${basedir}"/>
		<condition property="build.result.folder" value="${pluginTemp}/NetWatchHelp">
			<isset property="buildTempFolder"/>
		</condition>
		<property name="build.result.folder" value="${basedir}"/>
		<property name="temp.folder" value="${basedir}/temp.folder"/>
		<property name="plugin.destination" value="${basedir}"/>
	</target>

	<target name="properties" if="eclipse.running">
		<property name="build.compiler" value="org.eclipse.jdt.core.JDTCompilerAdapter"/>

	</target>

	<target name="build.update.jar" depends="init" description="Build the plug-in: netjfwatcher_help for an update site.">
		<delete dir="${temp.folder}"/>
		<mkdir dir="${temp.folder}"/>
		<antcall target="build.jars"/>
		<antcall target="gather.bin.parts">
			<param name="destination.temp.folder" value="${temp.folder}/"/>
		</antcall>
		<zip destfile="${plugin.destination}/netjfwatcher_help_1.0.0.jar" basedir="${temp.folder}/netjfwatcher_help_1.0.0" filesonly="false" whenempty="skip" update="false"/>
		<delete dir="${temp.folder}"/>
	</target>

	<target name="NetWatchHelp.jar" depends="init" unless="NetWatchHelp.jar" description="Create jar: netjfwatcher_help NetWatchHelp.jar.">
		<delete dir="${temp.folder}/NetWatchHelp.jar.bin"/>
		<mkdir dir="${temp.folder}/NetWatchHelp.jar.bin"/>
		<!-- compile the source code -->
		<javac destdir="${temp.folder}/NetWatchHelp.jar.bin" failonerror="${javacFailOnError}" verbose="${javacVerbose}" debug="${javacDebugInfo}" includeAntRuntime="no" bootclasspath="${bootclasspath}" source="${javacSource}" target="${javacTarget}"		>
			<compilerarg line="${compilerArg}"/>
			<classpath>
				<pathelement path="..\..\eclipse3.1\plugins\org.eclipse.help_3.1.0.jar"/>
				<pathelement path="../../eclipse3.1/plugins/org.eclipse.help.nl1_3.0.0/@dot"/>
				<pathelement path="../../eclipse3.1/plugins/org.eclipse.help.nl1_3.0.0/nl1.jar"/>
				<pathelement path="..\..\eclipse3.1\plugins\org.eclipse.core.runtime_3.1.0.jar"/>
				<pathelement path="../../eclipse3.1/plugins/org.eclipse.core.runtime.nl1_3.0.1/@dot"/>
				<pathelement path="../../eclipse3.1/plugins/org.eclipse.core.runtime.nl1_3.0.1/nl1.jar"/>
				<pathelement path="../../eclipse3.1/plugins/org.eclipse.osgi.nl1_3.0.1/@dot"/>
				<pathelement path="../../eclipse3.1/plugins/org.eclipse.osgi.nl1_3.0.1/nl1.jar"/>
				<pathelement path="..\..\eclipse3.1\plugins\org.eclipse.osgi_3.1.0.jar"/>
				<pathelement path="help.jar"/>
				<pathelement path="${build.result.folder}/../netjfwatcher_help/help.jar"/>
			</classpath>
			<src path="src/"			/>
			</javac>
		<!-- Copy necessary resources -->
		<copy todir="${temp.folder}/NetWatchHelp.jar.bin" failonerror="true" overwrite="false">
			<fileset dir="src/" excludes="**/*.java, **/package.htm*,null"			/>
		</copy>
		<mkdir dir="${build.result.folder}"/>
		<jar destfile="${build.result.folder}/NetWatchHelp.jar" basedir="${temp.folder}/NetWatchHelp.jar.bin"/>
		<delete dir="${temp.folder}/NetWatchHelp.jar.bin"/>
	</target>

	<target name="NetWatchHelpsrc.zip" depends="init" unless="NetWatchHelpsrc.zip">
		<mkdir dir="${build.result.folder}"/>
		<zip destfile="${build.result.folder}/NetWatchHelpsrc.zip" filesonly="false" whenempty="skip" update="false">
			<fileset dir="src/" includes="**/*.java"			/>
		</zip>
	</target>

	<target name="build.jars" depends="init" description="Build all the jars for the plug-in: netjfwatcher_help.">
		<available property="NetWatchHelp.jar" file="${build.result.folder}/NetWatchHelp.jar"/>
		<antcall target="NetWatchHelp.jar"/>
	</target>

	<target name="build.sources" depends="init">
		<available property="NetWatchHelpsrc.zip" file="${build.result.folder}/NetWatchHelpsrc.zip"/>
		<antcall target="NetWatchHelpsrc.zip"/>
	</target>

	<target name="gather.bin.parts" depends="init" if="destination.temp.folder">
		<mkdir dir="${destination.temp.folder}/netjfwatcher_help_1.0.0"/>
		<copy todir="${destination.temp.folder}/netjfwatcher_help_1.0.0" failonerror="true" overwrite="false">
			<fileset dir="${build.result.folder}" includes="NetWatchHelp.jar"			/>
		</copy>
		<copy todir="${destination.temp.folder}/netjfwatcher_help_1.0.0" failonerror="true" overwrite="false">
			<fileset dir="${basedir}" includes="plugin.xml,NetWatchHelp.jar,html/,*.xml,doc/"			/>
		</copy>
	</target>

	<target name="build.zips" depends="init">
	</target>

	<target name="gather.sources" depends="init" if="destination.temp.folder">
		<mkdir dir="${destination.temp.folder}/netjfwatcher_help_1.0.0"/>
		<copy file="${build.result.folder}/NetWatchHelpsrc.zip" todir="${destination.temp.folder}/netjfwatcher_help_1.0.0" failonerror="false" overwrite="false"/>
	</target>

	<target name="gather.logs" depends="init" if="destination.temp.folder">
		<mkdir dir="${destination.temp.folder}/netjfwatcher_help_1.0.0"/>
		<copy file="${temp.folder}/NetWatchHelp.jar.bin.log" todir="${destination.temp.folder}/netjfwatcher_help_1.0.0" failonerror="false" overwrite="false"/>
	</target>

	<target name="clean" depends="init" description="Clean the plug-in: netjfwatcher_help of all the zips, jars and logs created.">
		<delete file="${build.result.folder}/NetWatchHelp.jar"/>
		<delete file="${build.result.folder}/NetWatchHelpsrc.zip"/>
		<delete file="${plugin.destination}/netjfwatcher_help_1.0.0.jar"/>
		<delete file="${plugin.destination}/netjfwatcher_help_1.0.0.zip"/>
		<delete dir="${temp.folder}"/>
	</target>

	<target name="refresh" depends="init" if="eclipse.running" description="Refresh this folder.">
		<eclipse.convertPath fileSystemPath="C:/Java_Dev/NetWatchRCP3.1/NetWatchHelp" property="resourcePath"/>
		<eclipse.refreshLocal resource="${resourcePath}" depth="infinite"/>
	</target>

	<target name="zip.plugin" depends="init" description="Create a zip containing all the elements for the plug-in: netjfwatcher_help.">
		<delete dir="${temp.folder}"/>
		<mkdir dir="${temp.folder}"/>
		<antcall target="build.jars"/>
		<antcall target="build.sources"/>
		<antcall target="gather.bin.parts">
			<param name="destination.temp.folder" value="${temp.folder}/"/>
		</antcall>
		<antcall target="gather.sources">
			<param name="destination.temp.folder" value="${temp.folder}/"/>
		</antcall>
		<delete>
			<fileset dir="${temp.folder}" includes="**/*.bin.log"			/>
		</delete>
		<zip destfile="${plugin.destination}/netjfwatcher_help_1.0.0.zip" basedir="${temp.folder}" filesonly="true" whenempty="skip" update="false"/>
		<delete dir="${temp.folder}"/>
	</target>

</project>
