<?xml version="1.0"?>
<!DOCTYPE Configure PUBLIC "-//Jetty//Configure//EN" "http://www.eclipse.org/jetty/configure_9_3.dtd">
<!--
 ***************************************************************************************************************************
 * 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.                                              *
 ***************************************************************************************************************************
-->

<Configure id="ExampleServer" class="org.eclipse.jetty.server.Server">

	<Set name="connectors">
		<Array type="org.eclipse.jetty.server.Connector">
			<Item>
				<New class="org.eclipse.jetty.server.ServerConnector">
					<Arg>
						<Ref refid="ExampleServer" />
					</Arg>
					<Set name="port">$S{availablePort,8080}</Set>
				</New>
			</Item>
		</Array>
	</Set>

	<New id="context" class="org.eclipse.jetty.servlet.ServletContextHandler">
		<Set name="contextPath">/</Set>
		<Call name="addServlet">
			<Arg>org.apache.juneau.examples.rest.RootResources</Arg>
			<Arg>/*</Arg>
		</Call>
		<Set name="sessionHandler">
			<New class="org.eclipse.jetty.server.session.SessionHandler" />
		</Set>
	</New>

	<Set name="handler">
		<New class="org.eclipse.jetty.server.handler.HandlerCollection">
			<Set name="handlers">
				<Array type="org.eclipse.jetty.server.Handler">
					<Item>
						<Ref refid="context" />
					</Item>
					<Item>
						<New class="org.eclipse.jetty.server.handler.DefaultHandler" />
					</Item>
				</Array>
			</Set>
		</New>
	</Set>

	<Set name="requestLog">
		<New id="RequestLogImpl" class="org.eclipse.jetty.server.NCSARequestLog">
			<Set name="filename"><Property name="jetty.logs" default="$C{Logging/logDir,logs}"/>/jetty-requests.log</Set>
			<Set name="filenameDateFormat">yyyy_MM_dd</Set>
			<Set name="LogTimeZone">GMT</Set>
			<Set name="retainDays">90</Set>
			<Set name="append">false</Set>
			<Set name="LogLatency">true</Set>
		</New>
	</Set>

    <Get name="ThreadPool">
        <Set name="minThreads" type="int">10</Set>
        <Set name="maxThreads" type="int">100</Set>
        <Set name="idleTimeout" type="int">60000</Set>
        <Set name="detailedDump">true</Set>
    </Get>
</Configure>
