<?xml version="1.0" encoding="UTF-8"?>
<!--#======================================================================= -->
<!--# Copyright (c) 2011, 2016 - Loetz GmbH&Co.KG (69115 Heidelberg, Germany). -->
<!--# All rights reserved. This program and the accompanying materials -->
<!--# are made available under the terms of the Eclipse Public License 2.0  -->
<!--# which accompanies this distribution, and is available at -->
<!--# https://www.eclipse.org/legal/epl-2.0/    -->
<!--#                                           -->
<!--# SPDX-License-Identifier: EPL-2.0          -->
<!--# -->
<!--# Contributors: -->
<!--# Christophe Loetz (Loetz GmbH&Co.KG) - initial API and implementation -->
<!--#======================================================================= -->
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
	<modelVersion>4.0.0</modelVersion>

	<parent>
		<groupId>org.eclipse.osbp.dependencies</groupId>
		<artifactId>org.eclipse.osbp.dependencies</artifactId>
		<version>0.9.0-SNAPSHOT</version>
	</parent>

	<artifactId>org.eclipse.osbp.dependencies.feature.jetty</artifactId>
	<packaging>eclipse-feature</packaging>

	<dependencies>
		<!-- CQ: not needed. All bundles are Eclipse bundles -->
		<dependency>
			<groupId>org.eclipse.osbp.dependencies</groupId>
			<artifactId>
				org.eclipse.osbp.dependencies.feature.javax.annotation
			</artifactId>
			<version>1.2.0-SNAPSHOT</version>
			<type>eclipse-feature</type>
		</dependency>
		<!--  we have to use jetty 9.2.25 due to compatibility issues of newer jetty versions with Vaadin 7.7.13 -->
		<dependency>
			<groupId>org.eclipse.osbp.dependencies</groupId>
			<artifactId>org.eclipse.osbp.dependencies.feature.jetty_9.2.25</artifactId>
			<version>9.2.25-SNAPSHOT</version>
			<type>eclipse-feature</type>
		</dependency>
	</dependencies>

	<repositories>
<!-- 		<repository> -->
<!-- 			<id>jetty</id> -->
<!-- 			<url>http://download.eclipse.org/jetty/updates/jetty-bundles-9.x/9.4.1.v20170120</url> -->
<!-- 			<layout>p2</layout> -->
<!-- 		</repository> -->
	</repositories>

	<build>
		<plugins>
			<plugin>
				<groupId>org.eclipse.tycho.extras</groupId>
				<artifactId>tycho-source-feature-plugin</artifactId>
				<version>${tychoExtrasVersion}</version>
				<executions>
					<execution>
						<id>source-feature</id>
						<phase>package</phase>
						<goals>
							<goal>source-feature</goal>
						</goals>
					</execution>
				</executions>
				<configuration>
					<labelSuffix> (source)</labelSuffix>
					<excludes>
						<feature id="org.eclipse.osbp.dependencies.feature.javax.annotation" />
						<plugin id="org.eclipse.jetty.continuation.source" />
						<plugin id="org.eclipse.jetty.http.source" />
						<plugin id="org.eclipse.jetty.io.source" />
						<plugin id="org.eclipse.jetty.deploy.source" />
						<plugin id="org.eclipse.jetty.security.source" />
						<plugin id="org.eclipse.jetty.server.source" />
						<plugin id="org.eclipse.jetty.servlet.source" />
						<plugin id="org.eclipse.jetty.util.source" />
						<plugin id="org.eclipse.jetty.webapp.source" />
						<plugin id="org.eclipse.jetty.xml.source" />
					</excludes>
				</configuration>
			</plugin>
			<plugin>
				<!-- workaround while bug https://bugs.eclipse.org/bugs/show_bug.cgi?id=398250 
					is not fixed -->
				<groupId>org.eclipse.tycho</groupId>
				<artifactId>tycho-p2-plugin</artifactId>
				<version>${tycho-version}</version>
				<executions>
					<execution>
						<id>attached-p2-metadata</id>
						<phase>package</phase>
						<goals>
							<goal>p2-metadata</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
		</plugins>
	</build>

</project>
