<?xml version="1.0"?>
<!--
  ~ Copyright (C) 2014 The Android Open Source Project
  ~
  ~ Licensed 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.
  -->
<template
    format="4"
    revision="1"
    name="App Engine Java Endpoints Module"
    description="Creates an App Engine Gradle Module with a simple Endpoint">

  <category value="AppEngine"/>

  <parameter id="packageName" name="Package name" type="string" constraints="package|nonempty" default="com.mycompany.myapp"/>
  <parameter id="appId" name="Application Id" type="string" constraints="nonempty" default="myApplicationId"/>
  <parameter id="endpointOwnerDomain" name="Endpoint Owner Domain" type="string" constraints="package" default="mycompany.com"/>
  <parameter id="endpointPackagePath" name="Endpoint Package Path" type="string" constraints="package" default="myapp"/>
  <parameter id="appEngineVersion" name="AppEngine Version" type="string" default="1.9.6" />
  <parameter id="docUrl" name="Doc URL" type="string" visibility="false"
             default="https://github.com/GoogleCloudPlatform/gradle-appengine-templates/tree/master/HelloEndpoints"/>


  <globals file="globals.xml.ftl"/>
  <execute file="recipe.xml.ftl"/>

  <thumbs>
    <thumb>background_endpoints.png</thumb>
  </thumbs>

</template>
