<?xml version="1.0" encoding="ISO-8859-1"?>
<!--
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="Apache HttpComponents">

<!-- N.B. all non-body elements are automatically inherited -->

  <version position="none" /><!-- no version display on unversioned part of the site -->
  <edit>${project.scm.url}</edit>

  <skin>
    <groupId>org.apache.maven.skins</groupId>
    <artifactId>maven-fluido-skin</artifactId>
    <version>1.9</version>
  </skin>

  <bannerLeft>
    <name>Apache</name>
    <src>https://www.apache.org/images/asf_logo_wide.gif</src>
    <href>https://www.apache.org/</href>
  </bannerLeft>

  <bannerRight>
    <name>HttpComponents</name>
    <src>https://hc.apache.org/images/logos/httpcomponents.png</src>
    <href>https://hc.apache.org/</href>
  </bannerRight>

  <body>
    <breadcrumbs>
      <item name="HttpComponents" href="https://hc.apache.org/index.html"/>
    </breadcrumbs>

    <!-- N.B. body links are automatically inherited -->
    <links>
      <item name="Apache" href="https://www.apache.org/"/>
    </links>
    
    <!-- add standard menu links for all sub-sites -->
    <menu name="HttpComponents" inherit="top">
      <item name="Home" href="index.html"/>
      <item name="License" href="https://www.apache.org/licenses/"/>
      <item name="Download" href="downloads.cgi"/>
      <item name="Mailing Lists" href="mail.html"/>
      <item name="Wiki (external)" href="https://wiki.apache.org/HttpComponents/"/>
      <item name="Security" href="https://www.apache.org/security/"/>
    </menu>
    
    <!-- sections for top-level site only -->
    <menu name="Overview">
      <item name="About" href="index.html"/>
      <item name="News" href="news.html"/>
      <item name="Get Involved" href="get-involved.html"/>
    </menu>
    <menu name="Components">
      <item name="HttpClient 5.2" collapse="true" href="httpcomponents-client-5.2.x/index.html">
        <item name="Quick Start" href="httpcomponents-client-5.2.x/quickstart.html"/>
        <item name="Migration Guide" collapse="true" href="httpcomponents-client-5.2.x/migration-guide/index.html">
          <item name="Preparation" href="httpcomponents-client-5.2.x/migration-guide/preparation.html"/>
          <item name="Classic" href="httpcomponents-client-5.2.x/migration-guide/migration-to-classic.html"/>
          <item name="Async Simple" href="httpcomponents-client-5.2.x/migration-guide/migration-to-async-simple.html"/>
          <item name="Async Streaming" href="httpcomponents-client-5.2.x/migration-guide/migration-to-async-streaming.html"/>
          <item name="Async HTTP/2 only" href="httpcomponents-client-5.2.x/migration-guide/migration-to-async-http2.html"/>
        </item>
        <item name="Examples (Classic)" href="httpcomponents-client-5.2.x/examples.html"/>
        <item name="Examples (Async)" href="httpcomponents-client-5.2.x/examples-async.html"/>
        <item name="Examples (Reactive)" href="httpcomponents-client-5.2.x/examples-reactive.html"/>
        <item name="Logging Guide" href="httpcomponents-client-5.2.x/logging.html"/>
        <item name="Android" href="httpcomponents-client-5.2.x/android.html"/>
        <item name="Related" href="httpcomponents-client-5.2.x/related-projects.html"/>
        <item name="Download" href="httpcomponents-client-5.2.x/download.html"/>
      </item>
      <item name="HttpCore 5.2" collapse="true" href="httpcomponents-core-5.2.x/index.html">
        <item name="Examples" href="httpcomponents-core-5.2.x/examples.html"/>
        <item name="Related" href="httpcomponents-core-5.1.x/related-projects.html"/>
        <item name="Download" href="httpcomponents-core-5.2.x/download.html"/>
      </item>
      <item name="HttpClient 4.5" collapse="true" href="httpcomponents-client-4.5.x/index.html">
        <item name="Quick Start" href="httpcomponents-client-4.5.x/quickstart.html"/>
        <item name="Tutorial" href="httpcomponents-client-4.5.x/current/tutorial/html/index.html"/>
        <item name="Examples" href="httpcomponents-client-4.5.x/examples.html"/>
        <item name="Android" href="httpcomponents-client-4.5.x/android.html"/>
        <item name="Programming Primer" href="httpcomponents-client-4.5.x/primer.html"/>
        <item name="NTLM Guide" href="httpcomponents-client-4.5.x/ntlm.html"/>
        <item name="Logging Guide" href="httpcomponents-client-4.5.x/logging.html"/>
        <item name="Download" href="httpcomponents-client-4.5.x/download.html"/>
      </item>
      <item name="HttpCore 4.4" collapse="true" href="httpcomponents-core-4.4.x/index.html">
        <item name="Tutorial" href="httpcomponents-core-4.4.x/current/tutorial/html/index.html"/>
        <item name="Examples" href="httpcomponents-core-4.4.x/examples.html"/>
        <item name="Download" href="httpcomponents-core-4.4.x/download.html"/>
      </item>
      <item name="HttpAsyncClient 4.1" collapse="true" href="httpcomponents-asyncclient-4.1.x/index.html">
        <item name="Quick Start" href="httpcomponents-asyncclient-4.1.x/quickstart.html"/>
        <item name="Examples" href="httpcomponents-asyncclient-4.1.x/examples.html"/>
        <item name="Download" href="httpcomponents-asyncclient-4.1.x/download.html"/>
      </item>
    </menu>
    <menu name="Legacy">
      <item name="Commons HttpClient" href="httpclient-legacy/index.html"/>
    </menu>
    <menu name="Project">
      <item name="Status" href="status.html"/>
      <item name="Charter" href="charter.html"/>
    </menu>

    <!-- inherited -->
    <menu ref="reports" inherit="bottom"/>

    <menu name="ASF" inherit="bottom">
      <item name="ASF Home Page" href="https://www.apache.org"/>
      <item name="Foundation" href="https://www.apache.org/foundation/"/>
      <item name="Sponsor Apache" href="https://www.apache.org/foundation/sponsorship.html"/>
      <item name="Thanks" href="https://www.apache.org/foundation/thanks.html"/>
    </menu>
  </body>
  
  <!-- inherited -->
  <poweredBy>
    <!-- Add ApacheCon logo -->
    <logo name="ApacheCon" href="https://www.apache.org/events/current-event.html"
          img="https://www.apache.org/events/current-event-125x125.png"/>
    <!-- Keep the default logo as well -->
    <logo name="Maven" href="https://maven.apache.org/"
          img="https://maven.apache.org/images/logos/maven-feather.png"/>
  </poweredBy>

  <!-- inherited -->
  <custom>
    <footer>
      <div class="xleft">Apache HttpComponents, Commons HttpClient, Apache, the Apache feather logo, and the Apache HttpComponents project logo are trademarks of The Apache Software Foundation.</div>
      <br/>
      <div class="xleft">All other marks mentioned may be trademarks or registered trademarks of their respective owners.</div>
    </footer>
    <fluidoSkin>
      <skipGenerationDate>true</skipGenerationDate>
    </fluidoSkin>
  </custom>
</project>
