<?xml version="1.0" encoding="UTF-8"?>
<!--* ============LICENSE_START==================================================== 
	* =========================================================================== 
	* org.onap.aaf 
	* Copyright (c) 2017 AT&T Intellectual Property. All rights reserved. 
	* =========================================================================== 
	* 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. 
	* ============LICENSE_END==================================================== 
	* -->
<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/xsd/maven-4.0.0.xsd">
	<parent>
		<groupId>org.onap.aaf.cadi</groupId>
		<artifactId>parent</artifactId>
		<version>2.1.7-SNAPSHOT</version>
		<relativePath>..</relativePath>
	</parent>
	<modelVersion>4.0.0</modelVersion>
	<groupId>org.onap.aaf.cadi.sidecar</groupId>
	<artifactId>sidecar</artifactId>
	<name>Sidecar Parent</name>
	<packaging>pom</packaging>

	<properties>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
		<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
		<sonar.skip>true</sonar.skip>
		<jacoco.version>0.7.7.201606060606</jacoco.version>
		<sonar-jacoco-listeners.version>3.2</sonar-jacoco-listeners.version>
		<sonar.core.codeCoveragePlugin>jacoco</sonar.core.codeCoveragePlugin>
		<!-- Default Sonar configuration -->
		<sonar.jacoco.reportPaths>target/code-coverage/jacoco-ut.exec</sonar.jacoco.reportPaths>
		<sonar.jacoco.itReportPaths>target/code-coverage/jacoco-it.exec</sonar.jacoco.itReportPaths>
		<!-- Note: This list should match jacoco-maven-plugin's exclusion list 
			below -->
		<sonar.exclusions>**/gen/**,**/generated-sources/**,**/yang-gen**,**/pax/**</sonar.exclusions>
		<nexusproxy>https://nexus.onap.org</nexusproxy>
		<snapshotNexusPath>/content/repositories/snapshots/</snapshotNexusPath>
		<releaseNexusPath>/content/repositories/releases/</releaseNexusPath>
		<stagingNexusPath>/content/repositories/staging/</stagingNexusPath>
		<sitePath>/content/sites/site/org/onap/aaf/authz/${project.artifactId}/${project.version}</sitePath>

		<java.version>1.8</java.version>
		<!-- Spring boot version 
		  Must match oParent
		-->
	  	<spring.boot.version>2.0.3.RELEASE</spring.boot.version>
	  	<spring.web.version>3.0.4.RELEASE</spring.web.version>
		<docker.location>${basedir}/target</docker.location>
		<!-- <skipNexusStagingDeployMojo>true</skipNexusStagingDeployMojo> -->
		
	</properties>

	<dependencyManagement>
		<dependencies>
			<dependency>
				<groupId>org.onap.aaf.cadi.sidecar</groupId>
				<artifactId>fproxy</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>org.onap.aaf.cadi.sidecar</groupId>
				<artifactId>rproxy</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>javax.servlet</groupId>
				<artifactId>javax.servlet-api</artifactId>
				<version>3.1.0</version>
			</dependency>
			
			<dependency>
			    <groupId>org.aspectj</groupId>
			    <artifactId>aspectjrt</artifactId>
			    <version>1.9.2</version>
			</dependency>
			
			<dependency>
				<groupId>com.google.code.gson</groupId>
				<artifactId>gson</artifactId>
				<version>2.8.5</version>
			</dependency>
			
			<dependency>
				<groupId>org.apache.commons</groupId>
				<artifactId>commons-lang3</artifactId>
				<version>3.8.1</version>
			</dependency>
			
			<dependency>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-starter-jetty</artifactId>
				<version>${spring.boot.version}</version>
			</dependency>
	
			<dependency>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-starter-aop</artifactId>
				<version>${spring.boot.version}</version>
			</dependency>

			<dependency>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-starter-web</artifactId>
				<version>${spring.boot.version}</version>
			</dependency>
	
			<dependency>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-starter-test</artifactId>
				<version>${spring.boot.version}</version>
			</dependency>
			
		</dependencies>
	</dependencyManagement>

	<!-- ============================================================== -->
	<!-- Define sub-projects (modules) -->
	<!-- ============================================================== -->
	<modules>
		<module>fproxy</module>
		<module>rproxy</module>
		<module>tproxy-config</module>
	</modules>

	<build>
		<pluginManagement>
			<plugins>
				<plugin>
					<groupId>com.mycila</groupId>
					<artifactId>license-maven-plugin</artifactId>
					<version>3.0</version>
					<configuration>
						<header>License.txt</header>
						<includes>
							<include>src/main/java/**</include>
							<include>src/test/java/**</include>
							<include>pom.xml</include>
						</includes>
						<skipExistingHeaders>true</skipExistingHeaders>
					</configuration>
					<executions>
						<execution>
							<goals>
								<!-- Set goal from "check" to "format" to auto update license headers -->
								<goal>check</goal>
							</goals>
							<phase>validate</phase>
						</execution>
					</executions>
				</plugin>
			</plugins>
		</pluginManagement>
	</build>
</project>
