<project name="Generates reference documentation for help bundle" default="default">

  <target name="default"
      depends="buildExtensionPointReference,buildApiReference,buildThemingReference">
  </target>

  <target name="buildExtensionPointReference">
    <pde.convertSchemaToHTML
        manifest="${runtimeSourceDir}/bundles/org.eclipse.rap.ui/plugin.xml"
        destination="${targetDir}/extension-points" />
  </target>

  <target name="buildApiReference">
    <javadoc
        destdir="${targetDir}/api"
        encoding="UTF-8"
        charset="UTF-8"
        author="false"
        version="true"
        use="true"
        useexternalfile="yes"
        additionalparam="--ignore-source-errors"
        windowtitle="Eclipse RAP ${version} API Reference"
        packagenames="org.eclipse.rap.rwt.*"
        excludePackageNames="org.eclipse.rap.rwt.internal.*,org.eclipse.swt.internal.*">
      <fileset
          dir="${runtimeSourceDir}/bundles/org.eclipse.rap.rwt/src"
          defaultexcludes="yes">
        <include name="org/eclipse/**/*.java" />
        <exclude name="org/eclipse/**/internal/**/*.java" />
      </fileset>
      <fileset
          dir="${runtimeSourceDir}/bundles/org.eclipse.rap.rwt.osgi/src"
          defaultexcludes="yes">
        <include name="org/eclipse/**/*.java" />
        <exclude name="org/eclipse/**/internal/**/*.java" />
      </fileset>
      <fileset
          dir="${runtimeSourceDir}/bundles/org.eclipse.rap.filedialog/src"
          defaultexcludes="yes">
        <include name="org/eclipse/**/*.java" />
        <exclude name="org/eclipse/**/internal/**/*.java" />
      </fileset>
      <fileset
          dir="${runtimeSourceDir}/bundles/org.eclipse.rap.fileupload/src"
          defaultexcludes="yes">
        <include name="org/eclipse/**/*.java" />
        <exclude name="org/eclipse/**/internal/**/*.java" />
      </fileset>
      <fileset
          dir="${runtimeSourceDir}/bundles/org.eclipse.rap.nebula.widgets.grid/src"
          defaultexcludes="yes">
        <include name="org/eclipse/**/*.java" />
        <exclude name="org/eclipse/**/internal/**/*.java" />
      </fileset>
      <fileset
          dir="${runtimeSourceDir}/bundles/org.eclipse.rap.nebula.jface.gridviewer/src"
          defaultexcludes="yes">
        <include name="org/eclipse/**/*.java" />
        <exclude name="org/eclipse/**/internal/**/*.java" />
      </fileset>
      <fileset
          dir="${runtimeSourceDir}/bundles/org.eclipse.rap.nebula.widgets.richtext/src"
          defaultexcludes="yes">
        <include name="org/eclipse/**/*.java" />
        <exclude name="org/eclipse/**/internal/**/*.java" />
      </fileset>
      <doctitle>
        <![CDATA[<h1>Eclipse Remote Application Platform API Reference</h1>]]>
      </doctitle>
      <bottom>
        <![CDATA[<font size="-1"><p>
          Copyright (c) EclipseSource and others 2002, 2022.
          All rights reserved. This program and the accompanying materials
          are made available under the terms of the
          <a href="http://www.eclipse.org/legal/epl-v10.html">Eclipse Public License v1.0</a>
        </p></font>]]>
      </bottom>
      <header>
        <![CDATA[<b>Eclipse RAP ${version}</b>]]>
      </header>
      <link href="http://download.oracle.com/javase/1.5.0/docs/api/"
        offline="true"
        packagelistLoc="${baseDir}/reference-build/javadoc-packages/javase-1.5.0" />
      <link href="http://www.osgi.org/javadoc/r4v43/"
        offline="true"
        packagelistLoc="${baseDir}/reference-build/javadoc-packages/osgi-r4v43" />
    </javadoc>
  </target>

  <target name="buildThemingReference" description="creates the RWT theming reference">
    <ant dir="${baseDir}/reference-build/theming">
      <property name="src.dir"
          value="${runtimeSourceDir}/bundles/org.eclipse.rap.rwt/" />
      <property name="dest.dir"
          value="${targetDir}/theming" />
    </ant>
  </target>

</project>
