<?xml version="1.0"?>
<!--/*******************************************************************************
* This program and the accompanying materials are made available under the
* terms of the Eclipse Public License v1.0 and Eclipse Distribution License v. 1.0
* which accompanies this distribution.
* The Eclipse Public License is available at http://www.eclipse.org/legal/epl-v10.html
* and the Eclipse Distribution License is available at
* http://www.eclipse.org/org/documents/edl-v10.php.
*
*   Ant naming conventions:
*   - regardless of the actual OS platform,'/' is the directory separator
*     (Ant will convert as appropriate).
*   - multi-word properties use periods '.'
*     - properties ending in .jar define jarfile names only (no path)
*     - properties ending in .lib are fully qualified jars (path and filename)
*     - properties ending in .dir are directory paths
*     - properties ending in .path are path refid names (classpath fragments)
*   - multi-word targets use hyphens '-'
*     - targets beginning with test- are reserved for high level test targets,
*       and are used in test results parsing
*     - targets typically use the form <action>-<object>-<type> (ie. package-bundle-zip)
*   - multi-word macros use underscores '_'
*   - multi-word macro attributes are concatenated
*     e.g. 'runpathref'
*   - multi-word tasks (taskdef) names are concatenated
*     e.g. 'validateconnection'
*   - OS environment variables are in ALLCAPS and have 'env' as a prefix
*     e.g. ${env.XXX}.
*   - Ant properties are lower case.
*
* Contributors:
*     bdoughan - initial API and implementation
*     egwin - update to adopt calling standards
*     egwin - strip BND and compile code. File only needed for dev packaging now
#******************************************************************************/-->
<project name="org.eclipse.persistence.moxy" default="jar" basedir=".">
    <available file="../${ant.project.name}" type="dir" property="moxy.is.local"/>
    <!-- Test to make sure that the calling script doesn't inherit the variable -->
    <!-- (should be set locally, and be destroyed upon return) -->
    <fail message="Not running from '${ant.project.name}' directory" unless="moxy.is.local"/>

    <dirname  property="moxy.build.location_temp" file="${ant.file.org.eclipse.persistence.moxy}"/>
    <pathconvert targetos="unix" property="moxy.build.location">
        <path>
            <pathelement location="${moxy.build.location_temp}"/>
        </path>
    </pathconvert>
    <condition property="moxy.2.base.dir" value="../.." else="..">
        <contains string="${moxy.build.location}" substring="moxy/${ant.project.name}"/>
    </condition>
    <echo message="moxy.2.base.dir = '${moxy.2.base.dir}'"/>
    <property name="moxy.2.common.plugins.dir" value="${moxy.2.base.dir}/plugins"/>

    <!-- local property overrides -->
    <condition property="custom.properties.message" value="Loading ${user.home}/build.properties..."
                                                     else="Custom properties file '${user.home}/build.properties' not found to load.">
        <available file="${user.home}/build.properties"/>
    </condition>
    <echo message="${custom.properties.message}"/>
    <property file="${user.home}/build.properties"/>
    <property file="${moxy.build.location}/antbuild.properties"/>

    <propertyset id="parser.properties">
        <propertyref prefix="javax.xml"/>
    </propertyset>

    <!-- Primary Targets: "jar" separate for dev use -->
    <target name="jar"   depends="package" description="package ${ant.project.name} component"/>

    <!-- initialize varables and paths needed for compile -->
    <!-- the number of properties needed now is too great for lazy loading without a target -->
    <target name="init">
        <property name="moxy.manifest.file"      value="${moxy.build.location}/META-INF/MANIFEST.MF"/>

        <!-- versioning -->
        <!-- These variables  are set in autobuild.xml. A manual build gets defaults -->
        <tstamp>
           <format property="build.date" pattern="yyyyMMdd"/>
           <format property="build.time" pattern="HHmm"/>
        </tstamp>
        <property name="build.type"            value="SNAPSHOT"/>
        <property name="svn.revision"          value="NA"/>
        <property name="version.qualifier"     value="qualifier"/>
        <property name="version.string"        value="${release.version}.${version.qualifier}"/>
        <property name="release.designation"   value="EclipseLink ${release.version} Build"/>
        <property name="specification.vendor"  value="Eclipse.org - EclipseLink Project"/>
        <property name="implementation.vendor" value="${specification.vendor}"/>

        <!-- dependency properties -->
        <property name="javax.validation.lib"       value="${moxy.2.base.dir}/jpa/plugins/${javax.validation.jar}"/>
        <property name="jaxb-api.lib"       value="${moxy.2.common.plugins.dir}/${jaxb-api.jar}"/>
        <property name="jaxb-xjc.lib"       value="${moxy.2.common.plugins.dir}/${jaxb-xjc.jar}"/>
        <property name="jaxb-core.lib"       value="${moxy.2.common.plugins.dir}/${jaxb-core.jar}"/>

        <!-- dependency tests -->
        <available file="${javax.validation.lib}"                               property="javax.validation.bundle.exist"/>
        <!--<fail message="Cannot find javax.validation: '${javax.validation.lib}'" unless="javax.validation.bundle.exist"/>-->
        <available file="${jaxb-api.lib}"                                       property="jaxb-api.bundle.exist"/>
        <fail message="Cannot find jaxb-api: '${jaxb-api.lib}'"                 unless="jaxb-api.bundle.exist"/>
        <available file="${jaxb-xjc.lib}"                                       property="jaxb-xjc.bundle.exist"/>
        <fail message="Cannot find jaxb-xjc: '${jaxb-xjc.lib}'"                 unless="jaxb-xjc.bundle.exist"/>

        <!-- Set Compile Path-->
        <path id="dynamic.compile.path">
            <pathelement path="${javax.validation.lib}"/>
            <pathelement path="${jaxb-api.lib}"/>
            <pathelement path="${jaxb-xjc.lib}"/>
            <pathelement path="${jaxb-core.lib}"/>
            <fileset
                    dir="${moxy.2.common.plugins.dir}"
                    includes="${eclipselink.global.depend}"/>
        </path>

        <condition property="compiled_classes.dir" value="${classes.dir}" else="target/classes">
            <available file="${classes.dir}" type="dir"/>
        </condition>

        <available file="${compiled_classes.dir}" type="dir" property="classes.exist"/>
    </target>

    <!-- package -->
    <target name="package-src" depends="init" description="jar OSGI src bundle">
        <delete file="${moxy.2.common.plugins.dir}/${ant.project.name}.source_${version.string}.jar"/>
        <jar jarfile="${moxy.2.common.plugins.dir}/${ant.project.name}.source_${version.string}.jar" duplicate="preserve">
             <manifest>
                <attribute name="Specification-Vendor"   value="${specification.vendor}"/>
                <attribute name="Specification-Version"  value="${release.version}"/>
                <attribute name="Implementation-Vendor"  value="${implementation.vendor}"/>
                <attribute name="Implementation-Version" value="${version.string}"/>
                <attribute name="Bundle-ManifestVersion" value="2"/>
                <attribute name="Bundle-Name"            value="EclipseLink MOXY Source"/>
                <attribute name="Bundle-SymbolicName"    value="${ant.project.name}.source"/>
                <attribute name="Bundle-Vendor"          value="${implementation.vendor}"/>
                <attribute name="Bundle-Version"         value="${version.string}"/>
                <attribute name="Eclipse-SourceBundle"   value="${ant.project.name};version=&quot;${version.string}&quot;"/>
            </manifest>
            <fileset dir="${moxy.2.base.dir}">
                <include name="about.html"/>
                <include name="readme.html"/>
                <include name="license.*"/>
            </fileset>
            <fileset dir="${src.dir}">
                <include name="org/eclipse/persistence/**/*.java"/>
            </fileset>
            <fileset dir="${resource.dir}">
                <include name="org/eclipse/persistence/**/*.xsd"/>
            </fileset>
            <fileset dir="${moxy.2.common.plugins.dir}">
                <include name="${javax.validation.lib}"/>
            </fileset>
            <fileset dir="${moxy.2.common.plugins.dir}">
                <include name="${jaxb-xjc.lib}"/>
            </fileset>
            <fileset dir="${moxy.2.common.plugins.dir}">
                <include name="${jaxb-core.lib}"/>
            </fileset>
        </jar>
    </target>

    <target name="package" depends="init, package-src" description="jar OSGI bundle">
        <delete file="${moxy.2.common.plugins.dir}/${ant.project.name}_${version.string}.jar"/>
        <jar jarfile="${moxy.2.common.plugins.dir}/${ant.project.name}_${version.string}.jar" duplicate="preserve" manifest="${moxy.manifest.file}">
            <fileset dir="${moxy.2.base.dir}">
                <include name="about.html"/>
                <include name="readme.html"/>
                <include name="license.*"/>
            </fileset>
            <fileset dir="${compiled_classes.dir}">
                <include name="org/eclipse/persistence/**/*.class"/>
            </fileset>
            <fileset dir="${resource.dir}">
                <include name="META-INF/services/*"/>
                <include name="org/eclipse/persistence/**/*.xsd"/>
            </fileset>
        </jar>
    </target>

</project>
