<?xml version="1.0"?>
<project
	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
	xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
	<modelVersion>4.0.0</modelVersion>

	<!-- This is the Maven project object model (POM) file for VID web application 
		based on the ECOMP SDK distribution. This file stands alone; it does not 
		inherit from a parent maven module. -->
	<groupId>org.onap.vid</groupId>
	<artifactId>vid-app-common</artifactId>
	<version>3.0.0-SNAPSHOT</version>
	<packaging>war</packaging>
	<name>VID Common</name>
	<description>VID Common code for opensource version</description>

	<properties>
		<encoding>UTF-8</encoding>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
		<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
		<epsdk.version>2.1.0</epsdk.version>
		<springframework.version>4.2.9.RELEASE</springframework.version>
		<hibernate.version>4.3.11.Final</hibernate.version>
		<!-- Skip assembling the zip by default -->
		<skipassembly>true</skipassembly>
		<!-- Tests usually require some setup that maven cannot do, so skip. -->
		<skiptests>false</skiptests>
		<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/vid/${project.version}</sitePath>
	</properties>


	<!-- this should be commented for local debugging -->
	<!-- <deployenv>local</deployenv> -->

	<repositories>
		<repository>
			<id>ecomp-releases</id>
			<name>VID Release Repository</name>
			<url>${nexusproxy}${releaseNexusPath}</url>
		</repository>
		<repository>
			<id>ecomp-snapshots</id>
			<name>VID Snapshot Repository</name>
			<url>${nexusproxy}${snapshotNexusPath}</url>
		</repository>
		<repository>
			<id>ecomp-staging</id>
			<name>VID Staging Repository</name>
			<url>${nexusproxy}${stagingNexusPath}</url>
		</repository>
		<repository>
			<!-- Snapshots repository has ECOMP snapshot artifacts -->
			<id>oss-snapshots</id>
			<name>oss Central - Snapshots</name>
			<url>https://oss.sonatype.org/service/local/repositories/releases/content/</url>
		</repository>

	</repositories>
	<distributionManagement>
		<repository>
			<id>ecomp-releases</id>
			<name>VID Release Repository</name>
			<url>${nexusproxy}/${releaseNexusPath}</url>
		</repository>
		<snapshotRepository>
			<id>ecomp-snapshots</id>
			<name>VID Snapshot Repository</name>
			<url>${nexusproxy}/${snapshotNexusPath}</url>
		</snapshotRepository>
		<!-- added for javadoc -->
		<site>
			<id>ecomp-site</id>
			<url>dav:${nexusproxy}${sitePath}</url>
		</site>
	</distributionManagement>

	<build>
		<finalName>vid-common</finalName>

		<plugins>
			<plugin>
				<groupId>org.sonatype.plugins</groupId>
				<artifactId>nexus-staging-maven-plugin</artifactId>
				<version>1.6.7</version>
				<extensions>true</extensions>
				<configuration>
					<nexusUrl>${nexusproxy}</nexusUrl>
					<stagingProfileId>176c31dfe190a</stagingProfileId>
					<serverId>ecomp-staging</serverId>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.jacoco</groupId>
				<artifactId>jacoco-maven-plugin</artifactId>
				<version>0.7.9</version>
				<executions>
					<execution>
						<id>default-prepare-agent</id>
						<goals>
							<goal>prepare-agent</goal>
						</goals>
					</execution>
					<execution>
						<id>default-report</id>
						<goals>
							<goal>report</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
			<plugin>
				<groupId>org.apache.tomcat.maven</groupId>
				<artifactId>tomcat6-maven-plugin</artifactId>
				<version>2.2</version>
			</plugin>
			<plugin>
				<groupId>org.apache.tomcat.maven</groupId>
				<artifactId>tomcat7-maven-plugin</artifactId>
				<version>2.2</version>
			</plugin>

			<!-- Generate POJOs from MSO json schema -->
			<plugin>
				<groupId>org.jsonschema2pojo</groupId>
				<artifactId>jsonschema2pojo-maven-plugin</artifactId>
				<version>0.4.23</version>
				<configuration>
					<sourceDirectory>${basedir}/src/main/resources/json/mso</sourceDirectory>
					<targetPackage>org.onap.vid.domain.mso</targetPackage>
					<outputDirectory>${project.build.directory}/generated-sources</outputDirectory>
				</configuration>
				<executions>
					<execution>
						<goals>
							<goal>generate</goal>
						</goals>
					</execution>
				</executions>
			</plugin>

			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-compiler-plugin</artifactId>
				<version>3.1</version>
				<configuration>
					<source>1.8</source>
					<target>1.8</target>
				</configuration>
			</plugin>

			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-surefire-plugin</artifactId>
				<version>2.19.1</version>
				<configuration>
					<skipTests>${skiptests}</skipTests>
					<includes>
						<include>**/Test*.java</include>
						<include>**/*Test.java</include>
						<include>**/*TestCase.java</include>
					</includes>
					<excludes>
						<exclude>**/selenium/*.java</exclude>
						<exclude>**/integrationTest/*.java</exclude>
					</excludes>
					<additionalClasspathElements>
						<additionalClasspathElement>${basedir}/war</additionalClasspathElement>
					</additionalClasspathElements>
					<systemPropertyVariables>
						<container.classpath>classpath:</container.classpath>
					</systemPropertyVariables>
				</configuration>
			</plugin>

			<plugin>
				<artifactId>maven-assembly-plugin</artifactId>
				<configuration>
					<skipAssembly>${skipassembly}</skipAssembly>
					<descriptors>
						<descriptor>${basedir}/distribution.xml</descriptor>
					</descriptors>
				</configuration>
				<executions>
					<execution>
						<id>make-assembly</id>
						<phase>package</phase>
						<goals>
							<goal>single</goal>
						</goals>
					</execution>
				</executions>
			</plugin>


			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-war-plugin</artifactId>
				<version>3.0.0</version>
				<configuration>
					<!-- Build a jar with all the Java classes -->
					<attachClasses>true</attachClasses>
					<!-- Do not put any jars in the war -->
					<packagingExcludes>WEB-INF/lib/*.jar</packagingExcludes>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-site-plugin</artifactId>
				<version>3.6</version>
				<dependencies>
					<dependency>
						<groupId>org.apache.maven.wagon</groupId>
						<artifactId>wagon-webdav-jackrabbit</artifactId>
						<version>2.10</version>
					</dependency>
				</dependencies>
			</plugin>
		</plugins>
	</build>

	<reporting>
		<plugins>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-javadoc-plugin</artifactId>
				<version>2.10.4</version>
				<configuration>
					<failOnError>false</failOnError>
					<doclet>org.umlgraph.doclet.UmlGraphDoc</doclet>
					<docletArtifact>
						<groupId>org.umlgraph</groupId>
						<artifactId>umlgraph</artifactId>
						<version>5.6</version>
					</docletArtifact>
					<additionalparam>-views</additionalparam>
					<useStandardDocletOptions>true</useStandardDocletOptions>
				</configuration>
			</plugin>
		</plugins>
	</reporting>

	<dependencies>
	
		<dependency>
		    <groupId>com.opencsv</groupId>
		    <artifactId>opencsv</artifactId>
		    <version>4.1</version>
		</dependency>
			
		<!-- HTTP client -->

		<dependency>
			<groupId>io.joshworks.unirest</groupId>
			<artifactId>unirest-java</artifactId>
			<version>0.2.1</version>
		</dependency>
		<dependency>
			<groupId>org.apache.httpcomponents</groupId>
			<artifactId>httpclient</artifactId>
			<version>4.3.6</version>
		</dependency>
		<dependency>
			<groupId>org.apache.httpcomponents</groupId>
			<artifactId>httpasyncclient</artifactId>
			<version>4.0.2</version>
		</dependency>
		<dependency>
			<groupId>org.apache.httpcomponents</groupId>
			<artifactId>httpmime</artifactId>
			<version>4.3.6</version>
		</dependency>
		<dependency>
			<groupId>com.xebialabs.restito</groupId>
			<artifactId>restito</artifactId>
			<version>0.9.3</version>
			<scope>test</scope>
		</dependency>

		<!-- Helpers -->
		<dependency>
			<groupId>org.projectlombok</groupId>
			<artifactId>lombok</artifactId>
			<version>1.18.2</version>
			<scope>provided</scope>
		</dependency>
		<dependency>
			<groupId>io.vavr</groupId>
			<artifactId>vavr</artifactId>
			<version>0.9.2</version>
		</dependency>

		<!-- SDK overlay war -->
		<dependency>
			<groupId>org.onap.portal.sdk</groupId>
			<artifactId>epsdk-app-overlay</artifactId>
			<version>${epsdk.version}</version>
			<type>war</type>
		</dependency>
		<dependency>
			<groupId>org.onap.portal.sdk</groupId>
			<artifactId>epsdk-app-common</artifactId>
			<version>${epsdk.version}</version>
			<type>jar</type>
		</dependency>

		<dependency>
			<groupId>org.onap.portal.sdk</groupId>
			<artifactId>epsdk-core</artifactId>
			<version>${epsdk.version}</version>
		</dependency>
		<dependency>
			<groupId>org.onap.portal.sdk</groupId>
			<artifactId>epsdk-analytics</artifactId>
			<version>${epsdk.version}</version>
		</dependency>
		<dependency>
			<groupId>org.onap.portal.sdk</groupId>
			<artifactId>epsdk-workflow</artifactId>
			<version>${epsdk.version}</version>
		</dependency>
		<dependency>
			<groupId>com.att.eelf</groupId>
			<artifactId>eelf-core</artifactId>
			<version>1.0.0</version>
		</dependency>
		<dependency>
			<groupId>ch.qos.logback</groupId>
			<artifactId>logback-core</artifactId>
			<version>1.2.3</version>
		</dependency>
		<dependency>
			<groupId>ch.qos.logback</groupId>
			<artifactId>logback-classic</artifactId>
			<version>1.2.3</version>
		</dependency>

		<!-- Mapper -->
		<dependency>
			<groupId>com.fasterxml.jackson.core</groupId>
			<artifactId>jackson-annotations</artifactId>
			<version>2.6.3</version>
		</dependency>
		<dependency>
			<groupId>com.fasterxml.jackson.core</groupId>
			<artifactId>jackson-core</artifactId>
			<version>2.8.6</version>
		</dependency>
		<dependency>
			<groupId>com.fasterxml.jackson.core</groupId>
			<artifactId>jackson-databind</artifactId>
			<version>2.6.7.1</version>
		</dependency>
		<dependency>
			<groupId>org.codehaus.jackson</groupId>
			<artifactId>jackson-mapper-asl</artifactId>
			<version>1.9.13</version>
		</dependency>
		<dependency>
			<groupId>com.mchange</groupId>
			<artifactId>c3p0</artifactId>
			<version>0.9.5.2</version>
		</dependency>
		<dependency>
			<groupId>io.searchbox</groupId>
			<artifactId>jest</artifactId>
			<version>2.0.0</version>
			<exclusions>
				<exclusion>
					<groupId>commons-logging</groupId>
					<artifactId>commons-logging</artifactId>
				</exclusion>
			</exclusions>
		</dependency>
		<dependency>
			<groupId>javax.servlet</groupId>
			<artifactId>javax.servlet-api</artifactId>
			<version>3.1.0</version>
			<scope>provided</scope>
		</dependency>
		<dependency>
			<groupId>junit</groupId>
			<artifactId>junit</artifactId>
			<version>4.12</version>
		</dependency>
		<dependency>
			<groupId>commons-io</groupId>
			<artifactId>commons-io</artifactId>
			<version>2.4</version>
			<!--<scope>test</scope>-->
		</dependency>
		<dependency>
			<groupId>com.google.code.bean-matchers</groupId>
			<artifactId>bean-matchers</artifactId>
			<version>0.11</version>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.json</groupId>
			<artifactId>json</artifactId>
			<version>20160212</version>
		</dependency>
		<dependency>
			<groupId>org.quartz-scheduler</groupId>
			<artifactId>quartz</artifactId>
			<version>2.2.1</version>
			<exclusions>
				<!-- exclude 0.9.1.1 to avoid dupe of com.mchange:c3p0:0.9.2.1 -->
				<exclusion>
					<groupId>c3p0</groupId>
					<artifactId>c3p0</artifactId>
				</exclusion>
			</exclusions>
		</dependency>
		<!-- bridge to implement commons-logging using slf4j -->
		<dependency>
			<groupId>org.slf4j</groupId>
			<artifactId>jcl-over-slf4j</artifactId>
			<version>1.7.12</version>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-context-support</artifactId>
			<version>${springframework.version}</version>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-core</artifactId>
			<version>${springframework.version}</version>
			<exclusions>
				<exclusion>
					<groupId>commons-logging</groupId>
					<artifactId>commons-logging</artifactId>
				</exclusion>
			</exclusions>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-test</artifactId>
			<version>${springframework.version}</version>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-tx</artifactId>
			<version>${springframework.version}</version>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-web</artifactId>
			<version>${springframework.version}</version>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-webmvc</artifactId>
			<version>${springframework.version}</version>
		</dependency>
		<dependency>
			<groupId>org.glassfish.jersey.core</groupId>
			<artifactId>jersey-client</artifactId>
			<version>2.23.1</version>
		</dependency>
		<dependency>
			<groupId>org.glassfish.jersey.connectors</groupId>
			<artifactId>jersey-jetty-connector</artifactId>
			<version>2.23.1</version>
		</dependency>
		<dependency>
			<groupId>com.fasterxml.jackson.jaxrs</groupId>
			<artifactId>jackson-jaxrs-json-provider</artifactId>
			<version>2.6.3</version>
		</dependency>
		<dependency>
			<groupId>commons-beanutils</groupId>
			<artifactId>commons-beanutils</artifactId>
			<version>1.9.3</version>
		</dependency>
		<dependency>
			<groupId>com.googlecode.json-simple</groupId>
			<artifactId>json-simple</artifactId>
			<version>1.1.1</version>
		</dependency>
		<dependency>
			<groupId>org.seleniumhq.selenium</groupId>
			<artifactId>selenium-java</artifactId>
			<version>2.53.1</version>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.seleniumhq.selenium</groupId>
			<artifactId>selenium-api</artifactId>
			<version>2.53.1</version>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.testng</groupId>
			<artifactId>testng</artifactId>
			<version>6.8</version>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.seleniumhq.selenium</groupId>
			<artifactId>selenium-firefox-driver</artifactId>
			<version>2.53.1</version>
		</dependency>
		<dependency>
			<groupId>xml-apis</groupId>
			<artifactId>xml-apis</artifactId>
			<version>1.4.01</version>
		</dependency>
		<dependency>
			<groupId>org.yaml</groupId>
			<artifactId>snakeyaml</artifactId>
			<version>1.16</version>
		</dependency>
	        <dependency>
	            <groupId>org.skyscreamer</groupId>
	            <artifactId>jsonassert</artifactId>
	            <version>1.5.0</version>
	        </dependency>
	        <dependency>
	            <groupId>org.onap.sdc.sdc-tosca</groupId>
	            <artifactId>sdc-tosca</artifactId>
            	    <version>1.4.1</version>
            	    <scope>compile</scope>
	        </dependency>
	        <dependency>
	            <groupId>net.javacrumbs.json-unit</groupId>
	            <artifactId>json-unit</artifactId>
	            <version>1.23.0</version>
	            <scope>test</scope>
	        </dependency>
	        <dependency>
	            <groupId>org.apache.commons</groupId>
	            <artifactId>commons-text</artifactId>
	            <version>1.1</version>
	        </dependency>
	        <dependency>
	            <groupId>org.hamcrest</groupId>
	            <artifactId>java-hamcrest</artifactId>
	            <version>2.0.0.0</version>
	            <scope>test</scope>
	        </dependency>
	        <dependency>
	            <groupId>org.togglz</groupId>
	            <artifactId>togglz-spring-core</artifactId>
	            <version>2.5.0.Final</version>
	        </dependency>
			<dependency>
				<groupId>org.assertj</groupId>
				<artifactId>assertj-core</artifactId>
				<version>3.10.0</version>
				<scope>compile</scope>
		 	</dependency>
		</dependencies>
</project>