<?xml version="1.0" encoding="UTF-8"?>
<!--
    Copyright (c) 2016 AT&T Intellectual Property. All rights reserved.
 -->

<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>com.att.authz</groupId>
		<artifactId>parent</artifactId>
		<version>1.0.1-SNAPSHOT</version>
		<relativePath>../pom.xml</relativePath>
	</parent>
		
	<artifactId>authz-batch</artifactId>
	<name>Authz Batch</name>
	<description>Batch Processing for Authz</description>
	<packaging>jar</packaging>
		<url>https://github.com/att/AAF</url>
	<licenses>
		<license>
		<name>BSD License</name>
		<url> </url>
		</license>
	</licenses>
	<developers>
		<developer>
		<name>Jonathan Gathman</name>
		<email></email>
	<organization>ATT</organization>
	<organizationUrl></organizationUrl>
		</developer>
	</developers>

	<properties>
		<maven.test.failure.ignore>false</maven.test.failure.ignore>
		<project.swmVersion>1</project.swmVersion>
		<project.interfaceVersion>1.0.0-SNAPSHOT</project.interfaceVersion>
		<project.innoVersion>1.0.0-SNAPSHOT</project.innoVersion>
		<project.cadiVersion>1.0.0-SNAPSHOT</project.cadiVersion>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
		<skipTests>false</skipTests>
		<project.dme2Version>3.1.200</project.dme2Version>
		<sonar.language>java</sonar.language>
		<sonar.java.coveragePlugin>jacoco</sonar.java.coveragePlugin>
		<sonar.surefire.reportsPath>${project.build.directory}/surefire-reports</sonar.surefire.reportsPath>
		<sonar.jacoco.reportPath>${project.build.directory}/coverage-reports/jacoco.exec</sonar.jacoco.reportPath>
		<sonar.jacoco.itReportPath>${project.build.directory}/coverage-reports/jacoco-it.exec</sonar.jacoco.itReportPath>
		<sonar.jacoco.reportMissing.force.zero>true</sonar.jacoco.reportMissing.force.zero>
		<sonar.projectVersion>${project.version}</sonar.projectVersion>
		<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>
	</properties>
	
	<dependencies>

		<dependency>
			<groupId>org.onap.aaf.inno</groupId>
			<artifactId>env</artifactId>
			<version>${project.innoVersion}</version>
		</dependency>

		<dependency>
			<groupId>org.onap.aaf.inno</groupId>
			<artifactId>rosetta</artifactId>
			<version>${project.innoVersion}</version>
		</dependency>
		
 		<dependency>
	        <groupId>org.onap.aaf.cadi</groupId>
	        <artifactId>cadi-core</artifactId>
			<version>${project.cadiVersion}</version>
	    </dependency>

 		<dependency>
	        <groupId>org.onap.aaf.cadi</groupId>
	        <artifactId>cadi-aaf</artifactId>
			<version>${project.cadiVersion}</version>
	    </dependency>

		
		<dependency>
			<groupId>prg.onap.aaf.authz</groupId>
			<artifactId>authz-cass</artifactId>
			<version>${project.version}</version>
			<exclusions>
				<exclusion> 
 					<groupId>javax.servlet</groupId>
        			<artifactId>servlet-api</artifactId>
        		</exclusion>
        		<exclusion>
        			<groupId>org.onap.aaf.cadi</groupId>
        			<artifactId>cadi-aaf</artifactId>
        		</exclusion>
        		<exclusion>
			        <groupId>org.onap.aaf.cadi</groupId>
			        <artifactId>cadi-core</artifactId>
			    </exclusion>
			    <exclusion>
		        	<groupId>org.onap.aaf.cadi</groupId>
		        	<artifactId>cadi-client</artifactId>
		        </exclusion>
        		
			</exclusions> 
		</dependency>

	  	<dependency>
	    		<groupId>org.joda</groupId>
	    		<artifactId>joda-time</artifactId>
	    		<version>2.5</version>
	  	</dependency>

	  	<dependency>
	    		<groupId>org.slf4j</groupId>
	    		<artifactId>slf4j-log4j12</artifactId>
	  	</dependency>

	</dependencies>

	<build>
		<plugins>
			 
			    
				<plugin>
					<artifactId>maven-assembly-plugin</artifactId>
					<version>2.4</version>
					
					<configuration>
						<classifier>tests</classifier>
						<archive>
							<manifestEntries>
								<Sealed>true</Sealed>
							</manifestEntries>
						</archive>
					</configuration>
					<executions>
						<execution>
							<id>depends</id>
							<phase>package</phase>
							<goals>
								<goal>single</goal>
							</goals>
							<configuration>
						        <descriptorRefs>
						          <descriptorRef>jar-with-dependencies</descriptorRef>
						        </descriptorRefs>
						        <archive>
						          <manifest>
						            <mainClass>org.onap.aaf.authz.Batch</mainClass>
						          </manifest>
						        </archive>
							</configuration>
						</execution>
						<execution>
							<id>swm</id>
							<phase>package</phase>
							<goals>
								<goal>single</goal>
							</goals>
				      		<configuration>
				      			<finalName>authz-batch-${project.version}.${project.swmVersion}</finalName>
					      		 <descriptors>
					          		<descriptor>../authz-service/src/main/assemble/swm.xml</descriptor>
					        	</descriptors>
					        	<archive>
						        </archive>
				      		</configuration>
						</execution>
					</executions>
				</plugin>
		<plugin>
			<groupId>org.apache.maven.plugins</groupId>
			<artifactId>maven-javadoc-plugin</artifactId>
			<configuration>
			<failOnError>false</failOnError>
			</configuration>
			<executions>
				<execution>
					<id>attach-javadocs</id>
					<goals>
						<goal>jar</goal>
					</goals>
				</execution>
			</executions>
		</plugin> 
	   
	   
	       <plugin>
		      <groupId>org.apache.maven.plugins</groupId>
		      <artifactId>maven-source-plugin</artifactId>
		      <version>2.2.1</version>
		      <executions>
			<execution>
			  <id>attach-sources</id>
			  <goals>
			    <goal>jar-no-fork</goal>
			  </goals>
			</execution>
		      </executions>
		    </plugin>
	
<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.7.201606060606</version>
				<configuration>
					<dumpOnExit>true</dumpOnExit>
					<includes>
						<include>org.onap.aaf.*</include>
					</includes>
				</configuration>
				<executions>
					<execution>
						<id>pre-unit-test</id>
						<goals>
							<goal>prepare-agent</goal>
						</goals>
						<configuration>
							<destFile>${project.build.directory}/coverage-reports/jacoco.exec</destFile>
							<!-- <append>true</append> -->
						</configuration>
					</execution>
					<execution>
						<id>pre-integration-test</id>
						<phase>pre-integration-test</phase>
						<goals>
							<goal>prepare-agent</goal>
						</goals>
						<configuration>
							<destFile>${project.build.directory}/coverage-reports/jacoco-it.exec</destFile>
							<!-- <append>true</append> -->
						</configuration>
					</execution>
					<execution>
                        <goals>
                            <goal>merge</goal>
                        </goals>
                        <phase>post-integration-test</phase>
                        <configuration>
                            <fileSets>
                                <fileSet implementation="org.apache.maven.shared.model.fileset.FileSet">
                                    <directory>${project.build.directory}/coverage-reports</directory>
                                    <includes>
                                        <include>*.exec</include>
                                    </includes>
                                </fileSet>
                            </fileSets>
                            <destFile>${project.build.directory}/jacoco-dev.exec</destFile>
                        </configuration>
                    </execution>
				</executions>
			</plugin>
				
		
			</plugins>
	</build>
</project>
