Blame | Last modification | View Log | RSS feed
<project name="javadoc-task"><macrodef name="ant-javadoc"><attribute name="projectname" default="${ant.project.name}"/><attribute name="title"/><attribute name="copyright" default="Copyright © ERG Transit Systems. All Rights Reserved."/><attribute name="docdir" default="${basedir}/build/doc"/><attribute name="destdir" default="@{docdir}/javadoc"/><attribute name="zipname" default="@{projectname}-javadoc"/><attribute name="versioned" default="false"/><attribute name="packagenames" default="*"/><attribute name="compareVersion" default=""/><element name = "ant-javadoc-paths"optional = "yes"implicit = "yes"description = "Allows caller to specify classpath and sourcepath, and any doclets."/><sequential><mkdir dir="@{destdir}"/><!-- Generate standard Javadoc API documentation --><javadoc packagenames = "@{packagenames}"destdir = "@{destdir}"author = "true"version = "true"use = "true"windowtitle = "@{title}"failonerror = "false"><ant-javadoc-paths/><doctitle><![CDATA[<h1>@{title}</h1>]]></doctitle><bottom><![CDATA[<font size="-1">@{copyright}</font>]]></bottom><link offline = "true"href = "http://java.sun.com/j2se/1.5.0/docs/api/"packagelistLoc = "${env.JAVA_HOME}\docs\api"/></javadoc><if><isset property="${jants.build.version}"/><then><property name="thisversion" value="${jants.build.version}"/></then><else><echo message="JDiff running on unversioned package..." taskname="ant-javadoc"/><property name="thisversion" value="LATEST"/></else></if><!-- Generate JDiff XML file for this package --><javadoc packagenames = "@{packagenames}"destdir = "@{destdir}"><doclet name = "jdiff.JDiff"path = "${using.ant-javadoc.basedir}/jar/jdiff.jar:${using.ant-javadoc.basedir}/jar/xerces.jar"><param name="-apidir" value="@{destdir}"/><param name="-apiname" value="@{projectname}-${thisversion}"/><param name="-baseURI" value="http://www.w3.org"/></doclet><ant-javadoc-paths/></javadoc><if><equals arg1="@{compareVersion}" arg2=""/><then><echo message="No comparison version provided. Skipping JDiff task..." taskname="ant-javadoc"/></then><else><if><available file="${jats.home}/@{projectname}/@{compareVersion}/doc/javadoc/@{zipname}.zip"/><then><!-- Find the latest released version of this project; this is what we will compare against. --><unzip src = "${jats.home}/@{projectname}/@{compareVersion}/doc/javadoc/@{zipname}.zip"dest = "${basedir}/build/doc/tmp"><patternset includes="@{projectname}-@{compareVersion}.xml"/></unzip><if><available file="${basedir}/build/doc/tmp/@{projectname}-@{compareVersion}.xml"/><then><!-- Perform actual JDiff comparison --><javadoc private = "yes"sourcepath = "${using.ant-javadoc.basedir}"destdir = "${basedir}/build/doc/javadoc"sourcefiles = "${using.ant-javadoc.basedir}/jar/Null.java"><doclet name = "jdiff.JDiff"path = "${using.ant-javadoc.basedir}/jar/jdiff.jar:${using.ant-javadoc.basedir}/jar/xerces.jar"><param name="-stats"/><param name="-oldapidir" value="${basedir}/build/doc/tmp"/><param name="-oldapi" value="@{projectname}-@{compareVersion}"/><param name="-newapidir" value="@{destdir}"/><param name="-newapi" value="@{projectname}-${thisversion}"/><!-- <param name="-javadocold" value="../../olddocs/"/>--><param name="-javadocnew" value="../"/></doclet></javadoc></then><else><echo message="Comparison version does not contain a JDiff XML file. Skipping JDiff task..."/></else></if></then><else><echo message="No Javadoc available in @{projectname} version @{compareVersion}, or release does not exist. Skipping JDiff task..." taskname="ant-javadoc"/></else></if></else></if><zip destfile = "@{docdir}/@{zipname}.zip"basedir = "@{destdir}"update = "true"/></sequential></macrodef></project>