<?xml version="1.0" encoding="UTF-8"?>
<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.ops4j</groupId>
		<artifactId>master</artifactId>
		<version>3.2.0</version>
	</parent>

	<groupId>org.ops4j.pax</groupId>
	<artifactId>web</artifactId>
	<version>3.1.0</version>
	<packaging>pom</packaging>

	<name>OPS4J Pax Web</name>

	<description>
    Pax Web - OPS4J implementation of OSGi HTTP service using Jetty 8.
    Detailed information to be found at http://team.ops4j.org/wiki/display/paxweb/.
  </description>

	<url>http://team.ops4j.org/wiki/display/paxweb/</url>

	<issueManagement>
		<system>jira</system>
		<url>http://issues.ops4j.org/jira/browse/PAXWEB</url>
	</issueManagement>

	<scm>
		<connection>scm:git:git@github.com:ops4j/org.ops4j.pax.web.git</connection>
		<developerConnection>scm:git:git@github.com:ops4j/org.ops4j.pax.web.git</developerConnection>
		<url>http://github.com/ops4j/org.ops4j.pax.web/tree/master</url>
		<tag>web-3.1.0</tag>
	</scm>

	<developers>
		<developer>
			<id>niclas</id>
			<name>Niclas Hedhman</name>
			<email>niclas@hedhman.org</email>
			<organization>Jayway Malaysia Sdn Bhd</organization>
			<roles>
				<role>Developer</role>
			</roles>
			<timezone>UTC+8</timezone>
		</developer>
		<developer>
			<id>adreghiciu</id>
			<name>Alin Dreghiciu</name>
			<email>adreghiciu@gmail.com</email>
			<roles>
				<role>Developer</role>
			</roles>
			<timezone>UTC+2</timezone>
		</developer>
		<developer>
			<id>anierbeck</id>
			<name>Achim Nierbeck</name>
			<email>bcanhome@googlemail.com</email>
			<roles>
				<role>Developer</role>
			</roles>
			<timezone>UTC+1</timezone>
		</developer>
		<developer>
			<id>jbonofre</id>
			<name>Jean-Baptiste Onofre</name>
			<email>jb@nanthrax.net</email>
			<roles>
				<role>Developer</role>
			</roles>
			<timezone>UTC+1</timezone>
		</developer>
	</developers>

	<properties>
		<dependency.base.version>1.4.0</dependency.base.version>
		<dependency.swissbox.version>1.6.0</dependency.swissbox.version>
		<dependency.jetty.version>8.1.14.v20131031</dependency.jetty.version>
		<dependency.jasper.version>6.0.29</dependency.jasper.version>
		<dependency.jstl.version>1.2</dependency.jstl.version>
		<dependency.fileinstall.version>3.1.4</dependency.fileinstall.version>
		<dependency.commons-logging.version>1.1.1</dependency.commons-logging.version>
		<dependency.slf4j>1.6.1</dependency.slf4j>
		<dependency.osgi.version>4.3.1</dependency.osgi.version>
		<dependency.pax-logging.version>1.6.3</dependency.pax-logging.version>
		<dependency.paxurl.version>1.5.1</dependency.paxurl.version>
		<dependency.bndlib.version>1.43.0</dependency.bndlib.version>
		<servlet.spec.groupId>org.apache.geronimo.specs</servlet.spec.groupId>
		<servlet.spec.artifactId>geronimo-servlet_3.0_spec</servlet.spec.artifactId>
		<servlet.spec.version>1.0</servlet.spec.version>
		<dependency.tomcat.version>7.0.27.1</dependency.tomcat.version>
		<dependency.jsr303.version>1.8.0</dependency.jsr303.version>
		<dependency.xbean.version>3.16</dependency.xbean.version>
		<dependency.asm.version>4.1</dependency.asm.version>
		<dependency.gatling.version>1.4.3</dependency.gatling.version>
		<dependency.karaf.version>3.0.0</dependency.karaf.version>
		<sonar.skippedModules>pax-web-itest-load</sonar.skippedModules>
		<!-- Tells Sonar to use JaCoCo as the code coverage tool -->
		<sonar.java.coveragePlugin>jacoco</sonar.java.coveragePlugin>
		<jacoco.dest.folder>${session.executionRootDirectory}/target</jacoco.dest.folder>
		<sonar.dynamicAnalysis>reuseReports</sonar.dynamicAnalysis>
		<sonar.jacoco.itReportPath>${project.basedir}/target/jacoco-it.exec</sonar.jacoco.itReportPath>
		<sonar.language>java</sonar.language>
	</properties>

	<build>
		<plugins>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-compiler-plugin</artifactId>
				<configuration>
					<source>1.6</source>
					<target>1.6</target>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-release-plugin</artifactId>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-checkstyle-plugin</artifactId>
				<executions>
					<execution>
						<id>verify-style</id>
						<phase>verify</phase>
						<goals>
							<goal>check</goal>
						</goals>
					</execution>
				</executions>
				<configuration>
					<configLocation>pax-web-checks.xml</configLocation>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.jacoco</groupId>
				<artifactId>jacoco-maven-plugin</artifactId>
				<inherited>true</inherited>
				<executions>
					<execution>
						<id>prepare-agent-tests</id>
						<goals>
							<goal>prepare-agent</goal>
						</goals>
						<phase>process-sources</phase>
						<configuration>
							<includes>
								<include>org.ops4j.pax.web.*</include>
							</includes>
							<propertyName>jcoverage.command</propertyName>
							<excludes>
								<exclude>org.apache.jasper</exclude>
								<exclude>org.apache.jasper.compiler</exclude>
								<exclude>org.apache.jasper.servlet</exclude>
								<exclude>org.apache.myfaces.test</exclude>
								<exclude>org.ops4j.pax.web.extender.samples.*</exclude>
								<exclude>org.ops4j.pax.web.itest.*</exclude>
								<exclude>org.ops4j.pax.web.samples.*</exclude>
							</excludes>
							<append>true</append>
						</configuration>
					</execution>
					<execution>
						<id>prepare-agent-integration</id>
						<goals>
							<goal>prepare-agent-integration</goal>
						</goals>
						<phase>pre-integration-test</phase>
						<configuration>
							<propertyName>jcoverage.command</propertyName>
							<destFile>${sonar.jacoco.itReportPath}</destFile>
							<includes>
								<include>org.ops4j.pax.web.*</include>
							</includes>
							<excludes>
								<exclude>org.apache.jasper</exclude>
								<exclude>org.apache.jasper.compiler</exclude>
								<exclude>org.apache.jasper.servlet</exclude>
								<exclude>org.apache.myfaces.test</exclude>
								<exclude>org.ops4j.pax.web.extender.samples.*</exclude>
								<exclude>org.ops4j.pax.web.itest.*</exclude>
								<exclude>org.ops4j.pax.web.samples.*</exclude>
							</excludes>
							<append>true</append>
						</configuration>
					</execution>
					<execution>
						<id>report-test</id>
						<goals>
							<goal>report</goal>
						</goals>
					</execution>
					<!-- <execution>
						<id>report-integration</id>
						<goals>
							<goal>report-integration</goal>
						</goals>
					</execution> -->
				</executions>
			</plugin>
			<plugin>
				<artifactId>maven-enforcer-plugin</artifactId>
				<version>1.0.1</version>
				<dependencies>
					<dependency>
						<groupId>org.semver</groupId>
						<artifactId>enforcer-rule</artifactId>
						<version>0.9.20</version>
					</dependency>
				</dependencies>
				<executions>
					<execution>
						<id>check</id>
						<phase>verify</phase>
						<goals>
							<goal>enforce</goal>
						</goals>
						<configuration>
							<rules>
								<requireBackwardCompatibility implementation="org.semver.enforcer.RequireBackwardCompatibility">
									<compatibilityType>BACKWARD_COMPATIBLE_IMPLEMENTER</compatibilityType>
								</requireBackwardCompatibility>
							</rules>
						</configuration>
					</execution>
					<execution>
						<id>enforce-java</id>
						<goals>
							<goal>enforce</goal>
						</goals>
						<configuration>
							<rules>
								<requireJavaVersion>
									<version>1.6.0</version>
								</requireJavaVersion>
							</rules>
						</configuration>
					</execution>
				</executions>
			</plugin>
		</plugins>
		<pluginManagement>
			<plugins>
				<plugin>
					<artifactId>maven-eclipse-plugin</artifactId>
					<version>2.8</version>
					<extensions>true</extensions>
				</plugin>
				<!--This plugin's configuration is used to store Eclipse m2e settings 
					only. It has no influence on the Maven build itself. -->
				<plugin>
					<groupId>org.eclipse.m2e</groupId>
					<artifactId>lifecycle-mapping</artifactId>
					<version>1.0.0</version>
					<configuration>
						<lifecycleMappingMetadata>
							<pluginExecutions>
								<pluginExecution>
									<pluginExecutionFilter>
										<groupId>org.mortbay.jetty</groupId>
										<artifactId>jetty-jspc-maven-plugin</artifactId>
										<versionRange>[7,)</versionRange>
										<goals>
											<goal>jspc</goal>
										</goals>
									</pluginExecutionFilter>
									<action>
										<ignore />
									</action>
								</pluginExecution>
							</pluginExecutions>
						</lifecycleMappingMetadata>
					</configuration>
				</plugin>
				<plugin>
					<groupId>com.excilys.ebi.gatling</groupId>
					<artifactId>gatling-maven-plugin</artifactId>
					<version>${dependency.gatling.version}</version>
				</plugin>
				<plugin>
					<groupId>org.jacoco</groupId>
					<artifactId>jacoco-maven-plugin</artifactId>
					<version>0.7.0.201403182114</version>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-surefire-plugin</artifactId>
					<version>2.13</version>
					<configuration>
						<argLine>${jcoverage.command}</argLine>
					</configuration>
				</plugin>
			</plugins>
		</pluginManagement>
	</build>

	<dependencyManagement>
		<dependencies>
			<dependency>
				<groupId>org.ops4j.base</groupId>
				<artifactId>ops4j-base-lang</artifactId>
				<version>${dependency.base.version}</version>
				<optional>true</optional>
			</dependency>
			<dependency>
				<groupId>org.ops4j.base</groupId>
				<artifactId>ops4j-base-util-property</artifactId>
				<version>${dependency.base.version}</version>
				<optional>true</optional>
			</dependency>
			<dependency>
				<groupId>org.ops4j.base</groupId>
				<artifactId>ops4j-base-util-xml</artifactId>
				<version>${dependency.base.version}</version>
				<optional>true</optional>
			</dependency>
			<dependency>
				<groupId>org.ops4j.base</groupId>
				<artifactId>ops4j-base-spi</artifactId>
				<version>${dependency.base.version}</version>
				<optional>true</optional>
			</dependency>
			<dependency>
				<groupId>org.ops4j.pax.swissbox</groupId>
				<artifactId>pax-swissbox-core</artifactId>
				<version>${dependency.swissbox.version}</version>
				<optional>true</optional>
			</dependency>
			<dependency>
				<groupId>org.ops4j.pax.swissbox</groupId>
				<artifactId>pax-swissbox-extender</artifactId>
				<version>${dependency.swissbox.version}</version>
				<optional>true</optional>
			</dependency>
			<dependency>
				<groupId>org.ops4j.pax.swissbox</groupId>
				<artifactId>pax-swissbox-optional-jcl</artifactId>
				<version>${dependency.swissbox.version}</version>
				<optional>true</optional>
			</dependency>
			<dependency>
				<groupId>org.ops4j.pax.swissbox</groupId>
				<artifactId>pax-swissbox-property</artifactId>
				<version>${dependency.swissbox.version}</version>
				<optional>true</optional>
			</dependency>
			<dependency>
				<groupId>org.ops4j.pax.swissbox</groupId>
				<artifactId>pax-swissbox-tracker</artifactId>
				<version>${dependency.swissbox.version}</version>
				<optional>true</optional>
			</dependency>
			<dependency>
				<groupId>org.ops4j.pax.swissbox</groupId>
				<artifactId>pax-swissbox-bnd</artifactId>
				<version>${dependency.swissbox.version}</version>
				<optional>true</optional>
			</dependency>
			<dependency>
				<groupId>org.ops4j.pax.url</groupId>
				<artifactId>pax-url-war</artifactId>
				<version>${dependency.paxurl.version}</version>
				<optional>true</optional>
			</dependency>
			<dependency>
				<groupId>org.ops4j.pax.url</groupId>
				<artifactId>pax-url-commons</artifactId>
				<version>${dependency.paxurl.version}</version>
				<optional>true</optional>
			</dependency>
			<dependency>
				<groupId>org.ops4j.pax.url</groupId>
				<artifactId>pax-url-aether</artifactId>
				<version>${dependency.paxurl.version}</version>
				<optional>true</optional>
			</dependency>
			<dependency>
				<groupId>org.eclipse.jetty.aggregate</groupId>
				<artifactId>jetty-all-server</artifactId>
				<version>${dependency.jetty.version}</version>
				<optional>true</optional>
			</dependency>
			<dependency>
				<groupId>org.apache.tomcat</groupId>
				<artifactId>jasper</artifactId>
				<version>${dependency.jasper.version}</version>
				<optional>true</optional>
				<exclusions>
					<exclusion>
						<groupId>org.apache.tomcat</groupId>
						<artifactId>catalina</artifactId>
					</exclusion>
					<exclusion>
						<groupId>org.apache.tomcat</groupId>
						<artifactId>servlet-api</artifactId>
					</exclusion>
				</exclusions>
			</dependency>
			<dependency>
				<groupId>javax.servlet</groupId>
				<artifactId>jstl</artifactId>
				<version>${dependency.jstl.version}</version>
				<optional>true</optional>
			</dependency>
			<dependency>
				<groupId>org.apache.tomcat</groupId>
				<artifactId>jasper-el</artifactId>
				<version>${dependency.jasper.version}</version>
			</dependency>
			<!-- Dependencies to slf4j -->
			<dependency>
				<groupId>org.slf4j</groupId>
				<artifactId>slf4j-api</artifactId>
				<version>${dependency.slf4j}</version>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.slf4j</groupId>
				<artifactId>slf4j-log4j12</artifactId>
				<version>${dependency.slf4j}</version>
			</dependency>
			<dependency>
				<groupId>org.slf4j</groupId>
				<artifactId>slf4j-simple</artifactId>
				<version>${dependency.slf4j}</version>
			</dependency>
			<!-- Dependencies to submodules -->
			<dependency>
				<groupId>org.ops4j.pax.web</groupId>
				<artifactId>pax-web-api</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>org.ops4j.pax.web</groupId>
				<artifactId>pax-web-spi</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>org.ops4j.pax.web</groupId>
				<artifactId>pax-web-jsp</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>org.ops4j.pax.web</groupId>
				<artifactId>pax-web-runtime</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>org.ops4j.pax.web</groupId>
				<artifactId>pax-web-jetty</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>org.ops4j.pax.web</groupId>
				<artifactId>pax-web-tomcat</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>org.ops4j.pax.web</groupId>
				<artifactId>pax-web-extender-whiteboard</artifactId>
				<version>${project.version}</version>
			</dependency>
			<!-- Provided dependencies -->
			<dependency>
				<groupId>org.osgi</groupId>
				<artifactId>org.osgi.core</artifactId>
				<version>${dependency.osgi.version}</version>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.osgi</groupId>
				<artifactId>org.osgi.compendium</artifactId>
				<version>${dependency.osgi.version}</version>
				<scope>provided</scope>
			</dependency>
			<!-- <dependency> -->
			<!-- <groupId>javax.servlet</groupId> -->
			<!-- <artifactId>servlet-api</artifactId> -->
			<!-- <version>${dependency.servlet-api.version}</version> -->
			<!-- </dependency> -->
			<dependency>
				<groupId>${servlet.spec.groupId}</groupId>
				<artifactId>${servlet.spec.artifactId}</artifactId>
				<version>${servlet.spec.version}</version>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.apache.felix</groupId>
				<artifactId>org.apache.felix.fileinstall</artifactId>
				<version>${dependency.fileinstall.version}</version>
			</dependency>
			<dependency>
				<groupId>biz.aQute</groupId>
				<artifactId>bndlib</artifactId>
				<version>${dependency.bndlib.version}</version>
			</dependency>
			<!-- testing dependencies -->
			<dependency>
				<groupId>commons-httpclient</groupId>
				<artifactId>commons-httpclient</artifactId>
				<version>3.1</version>
				<scope>test</scope>
			</dependency>
			<!-- Test dependencies -->
			<dependency>
				<groupId>junit</groupId>
				<artifactId>junit</artifactId>
				<version>4.9</version>
				<scope>test</scope>
			</dependency>
			<dependency>
				<groupId>org.easymock</groupId>
				<artifactId>easymock</artifactId>
				<version>2.3</version>
				<scope>test</scope>
			</dependency>
			<dependency>
				<groupId>org.ops4j.pax.logging</groupId>
				<artifactId>pax-logging-api</artifactId>
				<version>${dependency.pax-logging.version}</version>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.ops4j.pax.logging</groupId>
				<artifactId>pax-logging-service</artifactId>
				<version>${dependency.pax-logging.version}</version>
				<scope>provided</scope>
			</dependency>

			<dependency>
				<groupId>org.apache.xbean</groupId>
				<artifactId>xbean-finder-shaded</artifactId>
				<version>${dependency.xbean.version}</version>
			</dependency>
			<dependency>
				<groupId>org.apache.xbean</groupId>
				<artifactId>xbean-bundleutils</artifactId>
				<version>${dependency.xbean.version}</version>
			</dependency>
			<dependency>
				<groupId>org.ow2.asm</groupId>
				<artifactId>asm-all</artifactId>
				<version>${dependency.asm.version}</version>
			</dependency>

			<!-- Load-Test Dependencies -->
			<dependency>
				<groupId>com.excilys.ebi.gatling.highcharts</groupId>
				<artifactId>gatling-charts-highcharts</artifactId>
				<version>${dependency.gatling.version}</version>
				<scope>test</scope>
			</dependency>
		</dependencies>
	</dependencyManagement>

	<repositories>
		<repository>
			<id>ops4j.releases</id>
			<name>The OPS4J Release Repository</name>
			<url>https://oss.sonatype.org/content/groups/ops4j/</url>
			<snapshots>
				<enabled>false</enabled>
			</snapshots>
		</repository>
		<repository>
			<id>ops4j.snapshot</id>
			<name>The OPS4J SNAPSHOT Repository</name>
			<url>https://oss.sonatype.org/content/repositories/ops4j-snapshots/</url>
			<snapshots>
				<enabled>true</enabled>
			</snapshots>
			<releases>
				<enabled>false</enabled>
			</releases>
		</repository>
		<repository>
			<id>com.springsource.repository.bundles.external</id>
			<name>SpringSource Enterprise Bundle Repository - External Bundle Releases</name>
			<url>http://repository.springsource.com/maven/bundles/external</url>
			<snapshots>
				<enabled>false</enabled>
			</snapshots>
			<releases>
				<enabled>true</enabled>
			</releases>
		</repository>
		<repository>
			<id>com.springsource.repository.bundles.release</id>
			<name>SpringSource Enterprise Bundle Repository - Release Bundles</name>
			<url>http://repository.springsource.com/maven/bundles/release</url>
			<snapshots>
				<enabled>false</enabled>
			</snapshots>
			<releases>
				<enabled>true</enabled>
			</releases>
		</repository>
		<repository>
			<id>jetty-releases</id>
			<name>Jetty Releases</name>
			<url>https://oss.sonatype.org/content/repositories/jetty-releases</url>
			<snapshots>
				<enabled>false</enabled>
			</snapshots>
			<releases>
				<enabled>true</enabled>
			</releases>
		</repository>
		<repository>
			<id>excilys</id>
			<name>Excilys Repository</name>
			<url>http://repository.excilys.com/content/groups/public</url>
			<snapshots>
				<enabled>false</enabled>
			</snapshots>
			<releases>
				<enabled>true</enabled>
			</releases>
		</repository>
		<repository>
			<id>apache-snapshot</id>
			<name>Apache Snapshots</name>
			<url>https://repository.apache.org/content/groups/snapshots-group</url>
			<snapshots>
				<enabled>true</enabled>
			</snapshots>
			<releases>
				<enabled>false</enabled>
			</releases>
		</repository>

		<repository>
			<releases>
				<enabled>false</enabled>
			</releases>
			<snapshots>
				<enabled>true</enabled>
			</snapshots>
			<id>sonatype-nexus-snapshots</id>
			<name>Sonatype Nexus Snapshots</name>
			<url>https://oss.sonatype.org/content/repositories/ops4j-snapshots</url>
		</repository>
	</repositories>

	<pluginRepositories>
		<pluginRepository>
			<id>excilys</id>
			<name>Excilys Repository</name>
			<url>http://repository.excilys.com/content/groups/public</url>
		</pluginRepository>
	</pluginRepositories>

	<modules>
		<module>pax-web-api</module>
		<module>pax-web-spi</module>
		<module>pax-web-runtime</module>
		<module>pax-web-jsp</module>
		<module>pax-web-jetty</module>
		<module>pax-web-tomcat</module>
		<module>pax-web-jetty-bundle</module>
		<module>pax-web-extender-war</module>
		<module>pax-web-extender-whiteboard</module>
		<module>pax-web-deployer</module>
		<module>pax-web-features</module>
		<module>pax-web-archetypes</module>
		<module>samples</module>
		<module>itest</module>
		<module>pax-web-itest-karaf</module>
		<module>pax-web-itest-load</module>
	</modules>

</project>
