<?xml version="1.0" encoding="UTF-8"?>
<!--
 ******************************************************************************
 * Copyright (c) 2008, 2010 VMware Inc.
 * All rights reserved. This program and the accompanying materials
 * are made available under the terms of the Eclipse Public License v1.0
 * which accompanies this distribution, and is available at
 * http://www.eclipse.org/legal/epl-v10.html
 *
 * Contributors:
 *   VMware Inc. - initial contribution
 ******************************************************************************
-->
<project name="common-common" xmlns:ivy="antlib:org.apache.ivy.ant">

	<tstamp>
		<format property="timestamp" pattern="yyyyMMddHHmmss" timezone="GMT"/>
	</tstamp>

<!-- Properties -->
	<dirname property="virgo.build.dir" file="${ant.file.common-common}/.."/>
	<property file="${virgo.build.dir}/common/common.properties"/>

<!-- Global tasks -->
	<condition property="adjusted.release.type" value="snapshot" else="${release.type}">
		<equals arg1="integration" arg2="${release.type}"/>
	</condition>

	<condition property="publication.resolver.prefix" value="local" else="remote">
		<istrue value="${local.build}"/>
	</condition>

<!-- Main targets -->
	<target name="clean" description="Removes the target directory.">
		<delete quiet="true" dir="${target.dir}"/>
	</target>

	<target name="clean-integration" description="Removes the integration repository directory.">
		<fail message="The 'integration.repo.dir' property must be set on this project.">
			<condition>
				<not>
					<isset property="integration.repo.dir"/>
				</not>
			</condition>
		</fail>
        <fail message="The 'project.organisation' property must be set on this project.">
			<condition>
				<not>
					<isset property="project.organisation"/>
				</not>
			</condition>
		</fail>
		<delete dir="${integration.repo.dir}/${project.organisation}"/>
	</target>

	<target name="clean-ivy" description="Removes the ivy cache directory.">
		<fail message="The 'ivy.cache.dir' property must be set on this project.">
			<condition>
				<not>
					<isset property="ivy.cache.dir"/>
				</not>
			</condition>
		</fail>
		<delete quiet="true" dir="${ivy.cache.dir}"/>
	</target>

	<target name="resolve" depends="resolve.init" description="Retrieves all external dependencies for this project.">
		<ivy:resolve id="all.classpath" log="download-only"/>
	</target>

<!-- Other targets -->
	<target name="ivy.init" unless="ivy.initialized">
		<taskdef resource="org/apache/ivy/ant/antlib.xml" uri="antlib:org.apache.ivy.ant">
			<classpath>
				<path location="${ivy.lib.dir}/ivy.jar"/>
				<path location="${ivy.lib.dir}/org.springframework.build.aws.ivy.jar"/>
				<path location="${ivy.lib.dir}/commons-codec.jar"/>
				<path location="${ivy.lib.dir}/commons-httpclient.jar"/>
				<path location="${ivy.lib.dir}/commons-logging.jar"/>
				<path location="${ivy.lib.dir}/jets3t.jar"/>
				<path location="${ivy.lib.dir}/jsch-0.1.42.jar"/>
				<path location="${ivy.lib.dir}"/>
			</classpath>
		</taskdef>
		<ivy:settings file="${ivy.settings.file}"/>
		<property name="ivy.initialized" value="true"/>
	</target>

	<target name="resolve.init" depends="ivy.file.exists">
		<fail message="Dependency resolution requires an ${ivy.file} file to exist.">
			<condition>
				<not>
					<isset property="ivy.file.exists"/>
				</not>
			</condition>
		</fail>
	</target>

	<target name="ivy.file.exists" depends="ivy.init">
		 <condition property="ivy.file.exists">
			<available file="${ivy.file}"/>
		</condition>
	</target>

	<target name="resolve.compile" depends="resolve.init">
		<ivy:cachepath resolveId="compile.classpath" pathid="compile.classpath" conf="compile,optional,provided,server-provided" type="jar" log="download-only"/>
	</target>

	<target name="resolve.test" depends="resolve.init, resolve.compile">
		<ivy:cachepath resolveId="test.classpath" pathid="test.classpath" conf="test" type="jar" log="download-only"/>
		<ivy:cachepath resolveId="runtime.classpath" pathid="runtime.classpath" conf="runtime" type="jar" log="download-only"/>
	</target>

	<target name="resolve.aspects" depends="resolve.init">
		<ivy:cachepath resolveId="aspects.classpath" pathid="aspects.classpath" conf="aspects" type="jar" log="download-only"/>
	</target>

	<target name="resolve.external" depends="resolve.init">
		<ivy:cachepath resolveId="external.classpath" pathid="external.classpath" conf="external" type="jar" transitive="false" log="download-only"/>
		<ivy:cachepath resolveId="external.srcpath" pathid="external.srcpath" conf="external" type="src" transitive="false" log="download-only"/>
	</target>

	<target name="src.init">
		<condition property="src.exists">
			<resourcecount when="gt" count="0">
				<fileset dir="${main.java.dir}" erroronmissingdir="false">
					<include name="**/*.java"/>
					<include name="*.java"/>
				</fileset>
			</resourcecount>
		</condition>
	</target>

	<target name="test.init">
		<condition property="test.exists">
			<resourcecount when="gt" count="0">
				<fileset dir="${test.java.dir}" erroronmissingdir="false">
					<include name="**/*.java"/>
					<include name="*.java"/>
				</fileset>
			</resourcecount>
        </condition>
        
        <!-- init the property containing the ivy-cache and the integration repo location placeholders -->
        <delete file="${basedir}/../user-ivy.properties"/>
        <condition property="virgo.deps.path" value="${integration.repo.dir}" else="${ivy.cache.dir}/repository">
            <equals arg1="${virgo.deps.location}" arg2="integration-repo"/>
        </condition>
        <echo file="${basedir}/../user-ivy.properties" message="ivy.cache=${ivy.cache.dir}&#xa;integration.repo.dir=${virgo.deps.path}&#xa;"/> 
	</target>

	<target name="diagnostics" description="diagnostics">
		<sequential>
			<echo>The diagnostics target was explicitly requested...</echo>
			<echo>----Ant diagnostics-------------------------------</echo>
        	<diagnostics/>
			<echo>----Properties--Ant-------------------------------</echo>
			<echoproperties>
				<propertyset>
					<propertyref builtin="all"/>
				</propertyset>
			</echoproperties>
			<echo>----Environment-----------------------------------</echo>
			<property environment="env"/>
			<echoproperties>
				<propertyset>
					<propertyref prefix="env."/>
				</propertyset>
			</echoproperties>
			<echo>--------------------------------------------------</echo>
			<fail message="Diagnostics output -- build aborted."/>
		</sequential>
    </target>

	<target name="exec-ant" description="execute an ant command">
		<sequential>
			<echo>exec-ant for target '${exec-ant-target}' executing in directory '${basedir}'</echo>
			<exec executable="ant" dir="${basedir}"
				failonerror="true" osfamily="unix"
				resultproperty="exec-ant-rc">
			    <arg value="${exec-ant-target}"/>
				<arg value="-Dci.build=${ci.build}"/>
				<arg value="-Dtimestamp=${timestamp}"/>
				<arg value="-Dbundle.version=${bundle.version}"/>
                <arg value="-Dvirgo.deps.location=${virgo.deps.location}"/>
				<arg value="${exec-args}"/>
			</exec>
			<exec executable="${virgo.build.dir}\common\runant.bat" dir="${basedir}"
				failonerror="true" osfamily="windows"
				resultproperty="exec-ant-rc">
			    <arg value="${exec-ant-target}"/>
				<arg value="-Dci.build=${ci.build}"/>
				<arg value="-Dtimestamp=${timestamp}"/>
				<arg value="-Dbundle.version=${bundle.version}"/>
                <arg value="-Dvirgo.deps.location=${virgo.deps.location}"/>
				<arg value="${exec-args}"/>
			</exec>
			<echo>exec-ant for target '${exec-ant-target}' gave return code ${exec-ant-rc}</echo>
		</sequential>
	</target>	

<!-- Macros -->
	<macrodef name="compile">
		<attribute name="classpath.id"/>
		<attribute name="input.dir"/>
		<attribute name="output.dir"/>
		<attribute name="resources.dir"/>
		<sequential>
			<delete quiet="true" dir="@{output.dir}"/>
			<mkdir dir="@{output.dir}"/>
			<pre-compile classpath.id="@{classpath.id}" input.dir="@{input.dir}" output.dir="@{output.dir}"
					resources.dir="@{resources.dir}"/>
			<do-compile classpath.id="@{classpath.id}" input.dir="@{input.dir}" output.dir="@{output.dir}"
					resources.dir="@{resources.dir}"/>
			<post-compile classpath.id="@{classpath.id}" input.dir="@{input.dir}" output.dir="@{output.dir}"
					resources.dir="@{resources.dir}"/>
		</sequential>
	</macrodef>

	<macrodef name="test-compile">
		<attribute name="classpath.id"/>
		<attribute name="input.dir"/>
		<attribute name="output.dir"/>
		<attribute name="resources.dir"/>
		<sequential>
			<delete quiet="true" dir="@{output.dir}"/>
			<mkdir dir="@{output.dir}"/>
			<test-pre-compile classpath.id="@{classpath.id}" input.dir="@{input.dir}" output.dir="@{output.dir}"
					resources.dir="@{resources.dir}"/>
			<do-compile classpath.id="@{classpath.id}" input.dir="@{input.dir}" output.dir="@{output.dir}"
					resources.dir="@{resources.dir}"/>
			<test-post-compile classpath.id="@{classpath.id}" input.dir="@{input.dir}" output.dir="@{output.dir}"
					resources.dir="@{resources.dir}"/>
		</sequential>
	</macrodef>

	<macrodef name="pre-compile">
		<attribute name="classpath.id"/>
		<attribute name="input.dir"/>
		<attribute name="output.dir"/>
		<attribute name="resources.dir"/>
		<sequential/>
	</macrodef>

	<macrodef name="post-compile">
		<attribute name="classpath.id"/>
		<attribute name="input.dir"/>
		<attribute name="output.dir"/>
		<attribute name="resources.dir"/>
		<sequential/>
	</macrodef>

	<macrodef name="test-pre-compile">
		<attribute name="classpath.id"/>
		<attribute name="input.dir"/>
		<attribute name="output.dir"/>
		<attribute name="resources.dir"/>
		<sequential/>
	</macrodef>

	<macrodef name="test-post-compile">
		<attribute name="classpath.id"/>
		<attribute name="input.dir"/>
		<attribute name="output.dir"/>
		<attribute name="resources.dir"/>
		<sequential/>
	</macrodef>

	<macrodef name="java-doc">
		<attribute name="input.dir"/>
		<attribute name="output.dir"/>
		<attribute name="classpath.id"/>
		<attribute name="access"/>
		<attribute name="exclude.package.names" default=""/>
		<sequential>
			<delete quiet="true" dir="@{output.dir}"/>
			<mkdir dir="@{output.dir}"/>
			<javadoc.links sourcepath="@{input.dir}" destdir="@{output.dir}" classpathref="@{classpath.id}"
					access="@{access}" excludepackagenames="@{exclude.package.names}" maxmemory="${javadoc.max.memory}"
					stylesheetfile="${javadoc.stylesheet.file}" splitindex="true" useexternalfile="true">
				<header><![CDATA[<!-- Begin Google Analytics code --> <script type="text/javascript"> var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www."); document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E")); </script> <script type="text/javascript"> var pageTracker = _gat._getTracker("UA-2728886-3"); pageTracker._setDomainName("none"); pageTracker._setAllowLinker(true); pageTracker._trackPageview(); </script> <!-- End Google Analytics code -->]]></header>
				<bottom><![CDATA[<!-- Begin LoopFuse code --> <script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"> </script> <script type="text/javascript"> _lf_cid = "LF_48be82fa"; _lf_remora(); </script> <!-- End LoopFuse code -->]]></bottom>
			</javadoc.links>
			<copy toDir="@{output.dir}/resources">
				<fileset dir="${javadoc.resources.dir}" erroronmissingdir="false"/>
			</copy>
		</sequential>
	</macrodef>
	
	<presetdef name="javadoc.links">
		<javadoc/>
	</presetdef>

</project>
