<?xml version="1.0" encoding="UTF-8"?>

<!--
 * See the NOTICE file distributed with this work for additional
 * information regarding copyright ownership.
 *
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU Affero General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU Affero General Public License for more details.
 *
 * You should have received a copy of the GNU Affero General Public License
 * along with this program.  If not, see http://www.gnu.org/licenses/
-->

<!DOCTYPE Configure PUBLIC "-//Jetty//Configure//EN" "http://www.eclipse.org/jetty/configure.dtd">

<!-- =============================================================== -->
<!-- Create the deployment manager                                   -->
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
<!-- The deployment manager handles the lifecycle of deploying web   -->
<!-- applications. Apps are provided by instances of the             -->
<!-- AppProvider interface.  Typically these are provided by         -->
<!-- one or more of:                                                 -->
<!--   jetty-webapps.xml       - monitors webapps for wars and dirs  -->
<!--   jetty-contexts.xml      - monitors contexts for context xml   -->
<!--   jetty-templates.xml     - monitors contexts and templates     -->
<!-- =============================================================== -->
<Configure id="Server" class="org.eclipse.jetty.server.Server">

  <Call name="addBean">
    <Arg>
      <New id="DeploymentManager" class="org.eclipse.jetty.deploy.DeploymentManager">
        <Set name="contexts">
          <Ref id="Contexts"/>
        </Set>
        <!-- Note: We don't need to define a "org.eclipse.jetty.server.webapp.ContainerIncludeJarPattern" attribute
             since 1) we don't use tlds and 2) starting with Jetty 8.x, jetty employs a Servlet 3.0 way of finding
             tlds, see http://wiki.eclipse.org/Jetty/Howto/Configure_JSP#Jetty_8.x -->
        <!-- Note: Once we start using Servlet 3.0 we'll need to set the attribute named
             "org.eclipse.jetty.server.webapp.WebInfIncludeJarPattern" to not incur too heavy startup times.
             See http://wiki.eclipse.org/Jetty/Howto/Avoid_slow_deployment.

             Example:

               <Call name="setContextAttribute">
                 <Arg>org.eclipse.jetty.server.webapp.WebInfIncludeJarPattern</Arg>
                 <Arg>.*/.*myPrefixedJarToScan1-[^/]\.jar$|.*/.*myPrefixedJarToScan2-[^/]\.jar$</Arg>
               </Call>
             -->


        <!-- Add a customize step to the deployment lifecycle -->
        <!-- uncomment and replace DebugBinding with your extended AppLifeCycle.Binding class
        <Call name="insertLifeCycleNode">
          <Arg>deployed</Arg>
          <Arg>starting</Arg>
          <Arg>customise</Arg>
        </Call>
        <Call name="addLifeCycleBinding">
          <Arg>
            <New class="org.eclipse.jetty.deploy.bindings.DebugBinding">
              <Arg>customise</Arg>
            </New>
          </Arg>
        </Call>
        -->

      </New>
    </Arg>
  </Call>

</Configure>
