# 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.

book_repo: apache/geode-native/docs/geode-native-book
public_host: localhost

sections:
- repository:
    name: geode-native-docs
  directory: docs/guide-native/18
  subnav_template: geode-nc-nav

template_variables:
  product_name_long: Apache Geode
  product_name: Geode
  product_name_lc: geode
  product_version: 1.8
  product_version_nodot: 18
  client_name: Geode Native
  min_java_update: 121
  support_url: http://geode.apache.org/community
  product_url: http://geode.apache.org
  book_title: Apache Geode Native Documentation
  book_header_img: /images/Apache_Geode_logo_symbol_white.png
  support_link: <a href="http://geode.apache.org/community" target="_blank">Community</a>
  support_call_to_action: <a href="http://geode.apache.org/community" target="_blank">Need Help?</a>
  changelog_href: https://cwiki.apache.org/confluence/display/GEODE/Release+Notes
  product_link: <div class="header-item"><a href="http://geode.apache.org">Back to Product Page</a></div>
  domain_name: apache.org
  book_title_short: Geode Native Docs
  local_header_title: Apache Geode Native
  local_header_img: /images/Apache_Geode_logo_symbol.png

broken_link_exclusions: iefix|using_custom_classes|arrowhead|cppdocs|dotnetdocs|#
