<?xml version="1.0"?>
<!--

  Licensed to the Apache Software Foundation (ASF) under one or more
  contributor license agreements.  See the NOTICE file distributed with
  this work for additional information regarding copyright ownership.
  The ASF licenses this file to You under the Apache License, Version 2.0
  (the "License"); you may not use this file except in compliance with
  the License.  You may obtain a copy of the License at

      http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.

-->
<project name="core/build.xml" default="main" basedir="..">

    <!-- properties -->
    <property file="${basedir}/build.properties"/>
    <property name="lib.dir" value="${basedir}/lib"/>

    <property name="module.dir" value="${basedir}/core"/>
    <property name="module.lib.dir" location="${module.dir}/lib"/>
    <property name="tomcat.lib.dir" location="${lib.dir}"/>
    <property name="module.src" value="${module.dir}/src"/>
    <property name="module.classes" value="${module.dir}/classes"/>
    <property name="module.jar" value="${lib.dir}/flex-messaging-core.jar"/>
    <property name="module.dist.dir" value="${basedir}/dist/source"/>

    <property name="common.src" value="${basedir}/common/src"/>
    <property name="remoting.src" value="${basedir}/remoting/src"/>
    <property name="proxy.src" value="${basedir}/proxy/src"/>
    <property name="opt.src" value="${basedir}/opt/src"/>

    <property name="build.number" value=""/>

    <!-- j2ee apis required to compile -->
    <path id="classpath">
        <fileset dir="${lib.dir}" erroronmissingdir="false" includes="flex-messaging-common.jar"/>
        <fileset dir="${xalan.dir}" erroronmissingdir="false" includes="xalan-${xalan.version}.jar"/>
        <fileset dir="${activemq.dir}" erroronmissingdir="false"
                 includes="activemq-core/${activemq.version}/activemq-core-${activemq.version}.jar"/>
        <fileset dir="${servlet.dir}" erroronmissingdir="false" includes="servlet-api-${servlet.version}.jar"/>
        <fileset dir="${jms.dir}" erroronmissingdir="false" includes="${jms.jar}"/>
    </path>

    <target name="main" depends="clean,prepare,run-depend,jar" description="cleans and runs the full build"/>
    <target name="dev" depends="prepare,run-depend,jar" description="runs src.depend build for development"/>

    <target name="prepare">
        <mkdir dir="${lib.dir}"/>
        <mkdir dir="${module.classes}"/>
    </target>

    <target name="run-depend" if="src.depend">
        <echo message="Removing class files that changed and dependent class files."/>
        <depend cache="${module.classes}" srcdir="${module.src}" destdir="${module.classes}"/>
    </target>

    <target name="compile" depends="prepare" description="compile">
        <javac debug="${src.debug}" destdir="${module.classes}"
               srcdir="${module.src}" classpathref="classpath">
            <include name="**/*.java"/>
            <exclude name="flex/messaging/cluster/JGroupsCluster.java"/>
            <exclude name="flex/messaging/cluster/ClusterNode.java"/>
            <exclude name="flex/messaging/cluster/ClusterMembershipListener.java"/>
        </javac>
        <echo file="${module.classes}/flex/messaging/version.properties" append="false">build=${build.number}</echo>
        <copy todir="${module.classes}/flex/messaging" overwrite="true">
            <fileset dir="${module.src}/flex/messaging" includes="*.properties"/>
        </copy>
        <copy toDir="${module.classes}" file="${module.dir}/AdobeInfo.xml"/>
    </target>

    <!-- only compile jgroups code if jgroups present -->
    <condition property="jgroups.available">
        <available classname="org.jgroups.Channel" classpathref="classpath"/>
    </condition>

    <target name="compile-jgroups" depends="prepare" if="jgroups.available">
        <echo>-== Found JGroups, compiling JGroups cluster implementation ==-</echo>
        <javac debug="${src.debug}" destdir="${module.classes}" srcdir="${module.src}"
               classpathref="classpath">
            <include name="flex/messaging/cluster/JGroupsCluster.java"/>
            <include name="flex/messaging/cluster/ClusterNode.java"/>
            <include name="flex/messaging/cluster/ClusterMembershipListener.java"/>
        </javac>
    </target>

    <!-- jar containing messaging core infrastructure -->
    <target name="jar" depends="compile,compile-jgroups">
        <jar destfile="${module.jar}" basedir="${module.classes}">
            <include name="AdobeInfo.xml"/>
            <include name="flex/management/**"/>
            <include name="flex/messaging/**"/>
            <include name="flex/core/**"/>
            <exclude name=".dependency-info/**"/>
            <manifest>
                <attribute name="Sealed" value="${manifest.sealed}"/>
                <attribute name="Implementation-Title" value="${manifest.Implementation-Title} - Community Edition"/>
                <attribute name="Implementation-Version" value="${manifest.Implementation-Version}.${build.number}"/>
                <attribute name="Implementation-Vendor" value="${manifest.Implementation-Vendor}"/>
            </manifest>
        </jar>
        <delete failonerror="false">
            <fileset dir="${module.classes}/flex/messaging" includes="*.properties"/>
        </delete>
    </target>

    <target name="clean" description="clean">
        <delete file="${module.jar}" failonerror="false"/>
        <delete failonerror="false" includeEmptyDirs="true">
            <fileset dir="${module.classes}">
                <include name="**/*"/>
                <exclude name="dependencies.txt"/>
                <exclude name=".dependency-info/**"/>
            </fileset>
        </delete>
        <delete dir="${module.classes}" failonerror="false" includeEmptyDirs="true"/>
        <echo>modules/core clean</echo>
    </target>

    <target name="javadoc">
        <path id="javadoc.classpath">
            <path refid="classpath"/>
            <fileset dir="${basedir}/opt/lib" includes="*.jar" excludes="catalina-708.jar"/>
        </path>
        <mkdir dir="${basedir}/docs"/>
        <mkdir dir="${basedir}/docs/api"/>
        <javadoc
                access="public"
                destdir="${basedir}/docs/api"
                doclet="ExcludeDoclet"
                docletpathref="javadoc.classpath"
                author="false"
                version="true"
                use="true"
                sourcePath="${common.src};${module.src};${remoting.src};${proxy.src};${opt.src}/jrun;${opt.src}/oracle;${opt.src}/tomcat;${opt.src}/weblogic;${opt.src}/websphere"
                classpathref="javadoc.classpath"
                packageNames="flex.*"
                failonerror="true"
                windowtitle="${manifest.Implementation-Title} - Public APIs">

            <doctitle>
                <![CDATA[<h1>${manifest.Implementation-Title} - Public APIs</h1><h2>Build: ${manifest.Implementation-Version}.${build.number}</h2>]]></doctitle>
            <bottom><![CDATA[<i>Copyright &#169; 2008 Adobe Systems Inc. All Rights Reserved.</i>]]></bottom>
            <group title="Messaging APIs" packages="flex.messaging:flex.messaging.services"/>
            <group title="AMF Serialization APIs" packages="flex.messaging.io.amf"/>
            <group title="Logging and Debugging APIs" packages="flex.messaging.log"/>
            <group title="Configuration APIs" packages="flex.messaging.config:flex.messaging.security"/>
            <group title="Management APIs" packages="flex.management, flex.management.jmx, flex.management.runtime.*"/>
            <link offline="false" href="http://java.sun.com/j2se/1.5.0/docs/api/" packagelistLoc="C:\tmp"/>
        </javadoc>
        <zip destfile="${basedir}/docs/javadoc.zip" basedir="${basedir}/docs/api"/>
    </target>

</project>

