<?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.
-->
<!--
 +======================================================================+
 |****                                                              ****|
 |****      THIS FILE IS GENERATED BY THE COMMONS BUILD PLUGIN      ****|
 |****                    DO NOT EDIT DIRECTLY                      ****|
 |****                                                              ****|
 +======================================================================+
 | TEMPLATE FILE: download-page-template.xml                            |
 | commons-build-plugin/trunk/src/main/resources/commons-xdoc-templates |
 +======================================================================+
 |                                                                      |
 | 1) Re-generate using: mvn commons:download-page                      |
 |                                                                      |
 | 2) Set the following properties in the component's pom:              |
 |    - commons.componentid (required, alphabetic, lower case)          |
 |    - commons.release.version (required)                              |
 |    - commons.binary.suffix (optional)                                |
 |      (defaults to "-bin", set to "" for pre-maven2 releases)         |
 |                                                                      |
 | 3) Example Properties                                                |
 |                                                                      |
 |  <properties>                                                        |
 |    <commons.componentid>math</commons.componentid>                   |
 |    <commons.release.version>1.2</commons.release.version>            |
 |  </properties>                                                       |
 |                                                                      |
 +======================================================================+
-->
<document>
  <properties>
    <title>Download Apache Commons Digester</title>
    <author email="dev@commons.apache.org">Commons Documentation Team</author>
  </properties>
  <body>
    <section name="Download Apache Commons Digester">
    <subsection name="Using a Mirror">
      <p>
        We recommend you use a mirror to download our release
        builds, but you <strong>must</strong> verify the integrity of
        the downloaded files using signatures downloaded from our main 
        distribution directories. Recent releases (48 hours) may not yet
        be available from the mirrors.
      </p>

      <p>
        You are currently using <b>[preferred]</b>.  If you
        encounter a problem with this mirror, please select another
        mirror.  If all mirrors are failing, there are <i>backup</i>
        mirrors (at the end of the mirrors list) that should be
        available.
        <br></br>
        [if-any logo]<a href="[link]"><img align="right" src="[logo]" border="0"></img></a>[end]
      </p>

      <form action="[location]" method="get" id="SelectMirror">
        <p>
          Other mirrors: 
          <select name="Preferred">
          [if-any http]
            [for http]<option value="[http]">[http]</option>[end]
          [end]
          [if-any ftp]
            [for ftp]<option value="[ftp]">[ftp]</option>[end]
          [end]
          [if-any backup]
            [for backup]<option value="[backup]">[backup] (backup)</option>[end]
          [end]
          </select>
          <input type="submit" value="Change"></input>
        </p>
      </form>

      <p>
        The <a href="http://www.apache.org/dist/commons/KEYS">KEYS</a>
        link links to the code signing keys used to sign the product.
        The <code>PGP</code> link downloads the OpenPGP compatible signature from our main site. 
        The <code>MD5</code> link downloads the checksum from the main site.
      </p>
    </subsection>
    </section>
    <section name="Apache Commons Digester 3.1 (minium JDK 1.5)">
      <subsection name="Binaries">
        <table>
          <tr>
              <td><a href="[preferred]/commons/digester/binaries/commons-digester3-3.1-bin.tar.gz">commons-digester3-3.1-bin.tar.gz</a></td>
              <td><a href="http://www.apache.org/dist/commons/digester/binaries/commons-digester3-3.1-bin.tar.gz.md5">md5</a></td>
              <td><a href="http://www.apache.org/dist/commons/digester/binaries/commons-digester3-3.1-bin.tar.gz.asc">pgp</a></td>
          </tr>
          <tr>
              <td><a href="[preferred]/commons/digester/binaries/commons-digester3-3.1-bin.zip">commons-digester3-3.1-bin.zip</a></td>
              <td><a href="http://www.apache.org/dist/commons/digester/binaries/commons-digester3-3.1-bin.zip.md5">md5</a></td>
              <td><a href="http://www.apache.org/dist/commons/digester/binaries/commons-digester3-3.1-bin.zip.asc">pgp</a></td>
          </tr>
        </table>
      </subsection>
      <subsection name="Source">
        <table>
          <tr>
              <td><a href="[preferred]/commons/digester/source/commons-digester3-3.1-src.tar.gz">commons-digester3-3.1-src.tar.gz</a></td>
              <td><a href="http://www.apache.org/dist/commons/digester/source/commons-digester3-3.1-src.tar.gz.md5">md5</a></td>
              <td><a href="http://www.apache.org/dist/commons/digester/source/commons-digester3-3.1-src.tar.gz.asc">pgp</a></td>
          </tr>
          <tr>
              <td><a href="[preferred]/commons/digester/source/commons-digester3-3.1-src.zip">commons-digester3-3.1-src.zip</a></td>
              <td><a href="http://www.apache.org/dist/commons/digester/source/commons-digester3-3.1-src.zip.md5">md5</a></td>
              <td><a href="http://www.apache.org/dist/commons/digester/source/commons-digester3-3.1-src.zip.asc">pgp</a></td>
          </tr>
        </table>
      </subsection>
    </section>
    <section name="Apache Commons Digester 2.1 (minimum JDK 1.5)">
      <subsection name="Binaries">
        <table>
          <tr>
              <td><a href="[preferred]/commons/digester/binaries/commons-digester3-2.1-bin.tar.gz">commons-digester3-2.1-bin.tar.gz</a></td>
              <td><a href="http://www.apache.org/dist/commons/digester/binaries/commons-digester3-2.1-bin.tar.gz.md5">md5</a></td>
              <td><a href="http://www.apache.org/dist/commons/digester/binaries/commons-digester3-2.1-bin.tar.gz.asc">pgp</a></td>
          </tr>
          <tr>
              <td><a href="[preferred]/commons/digester/binaries/commons-digester3-2.1-bin.zip">commons-digester3-2.1-bin.zip</a></td>
              <td><a href="http://www.apache.org/dist/commons/digester/binaries/commons-digester3-2.1-bin.zip.md5">md5</a></td>
              <td><a href="http://www.apache.org/dist/commons/digester/binaries/commons-digester3-2.1-bin.zip.asc">pgp</a></td>
          </tr>
        </table>
      </subsection>
      <subsection name="Source">
        <table>
          <tr>
              <td><a href="[preferred]/commons/digester/source/commons-digester3-2.1-src.tar.gz">commons-digester3-2.1-src.tar.gz</a></td>
              <td><a href="http://www.apache.org/dist/commons/digester/source/commons-digester3-2.1-src.tar.gz.md5">md5</a></td>
              <td><a href="http://www.apache.org/dist/commons/digester/source/commons-digester3-2.1-src.tar.gz.asc">pgp</a></td>
          </tr>
          <tr>
              <td><a href="[preferred]/commons/digester/source/commons-digester3-2.1-src.zip">commons-digester3-2.1-src.zip</a></td>
              <td><a href="http://www.apache.org/dist/commons/digester/source/commons-digester3-2.1-src.zip.md5">md5</a></td>
              <td><a href="http://www.apache.org/dist/commons/digester/source/commons-digester3-2.1-src.zip.asc">pgp</a></td>
          </tr>
        </table>
      </subsection>
    </section>
    <section name="Archives">
        <p>
          Older releases can be obtained from the archives.
        </p>
        <ul>
          <li class="download"><a href="[preferred]/commons/digester/">browse download area</a></li>
          <li><a href="http://archive.apache.org/dist/commons/digester/">archives...</a></li>
        </ul>
    </section>
  </body>
</document>
