<!--
  ============LICENSE_START====================================================
  * org.onap.aaf
  * ===========================================================================
  * Copyright © 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====================================================
  *
  * ECOMP is a trademark and service mark of AT&T Intellectual Property.
  *
-->
<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">

	<modelVersion>4.0.0</modelVersion>
	<groupId>org.onap.aaf.authz</groupId>
	<artifactId>parent</artifactId>
	<version>1.0.1-SNAPSHOT</version>
	<name>aaf-authz</name>
	<packaging>pom</packaging>
	<url>https://github.com/att/AAF</url>
	
	<parent>             
        <groupId>org.onap.oparent</groupId>
        <artifactId>oparent</artifactId>
        <version>0.1.1</version>
    </parent>
	

	<developers>
		<developer>
		<name>Jonathan Gathman</name>
		<email></email>
	<organization>ATT</organization>
	<organizationUrl></organizationUrl>
		</developer>
	</developers>
	<description>This module is used to organize all of the common SWM (Software Manager) 
		artifacts and capabilities that are inherited by all modules that are SWM
		packaged.  This prevents duplication of these common artifacts, plugins, and 
		other settings and provides a single place to support this configuration.
	</description>
	<properties>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
		<skipTests>false</skipTests>
		<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.dme2Version>3.1.200</project.dme2Version>
	<!--  SONAR  -->
		 <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.reportPath>target/code-coverage/jacoco-ut.exec</sonar.jacoco.reportPath>
	    <sonar.jacoco.itReportPath>target/code-coverage/jacoco-it.exec</sonar.jacoco.itReportPath>
	    <!-- 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>
	</properties>
	<build>
		<pluginManagement>
	    	<plugins>
			  <plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-compiler-plugin</artifactId>
					<version>2.3.2</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.17</version>
				  <configuration>
					<skipTests>${skipTests}</skipTests>
					<includes>
					  <include>**/JU*.java</include>
					</includes>
					<excludes>
				
					 	<exclude>**/JU_DataFile.java</exclude>
					<exclude>**/JU_ArtiDAO.java</exclude>
					<exclude>**/JU_CertDAO.java</exclude>
					<exclude>**/JU_FastCalling.java</exclude>
					<exclude>**/JU_NsDAO.java</exclude>
					  <!-- <exclude>**/authz-cass/**</exclude> -->
					  <!-- <exclude>**/JU_UseCase1.java</exclude> -->
					  <exclude>**/JU_RoleDAO.java</exclude>
					  <exclude>**/JU_PermDAO.java</exclude>
					   <exclude>**/JU_Question.java</exclude> 
					  <!-- <exclude>**/JU_NS.java</exclude> -->
					  <exclude>**/JU_HistoryDAO.java</exclude>				  
					  <exclude>**/JU_DelegateDAO.java</exclude>
					  <exclude>**/JU_CredDAO.java</exclude>
					  <exclude>**/JU_CacheInfoDAO.java</exclude>
					  <exclude>**/JU_ApprovalDAO.java</exclude>
					<!--  <exclude>**/JU_Define.java</exclude>  -->
					<exclude>**/JU_Identities.java</exclude>
					  <exclude>**/JU_AuthzTransFilter.java</exclude>
					  <exclude>**/JU_CachingFileAccess.java</exclude>
					  <!-- <exclude>**/AbsServiceTest.java</exclude>  -->
				  <!--		  <exclude>**/JU_DefaultOrg.java</exclude> -->
					  <exclude>**/JU_FileServer.java</exclude>
					  <exclude>**/JU_DirectAAFLur.java</exclude>
					  <exclude>**/JU_AuthAPI.java</exclude>
					  <exclude>**/JU_GwAPI.java</exclude>  
					  
					  <!-- <exclude>**/JU_Perm_2_0*.java</exclude> -->
					  <!-- <exclude>**/JU_Role_2_0*.java</exclude>				   -->
			
					</excludes>
	
				  </configuration>
				</plugin>
	
				<plugin>
					<groupId>org.codehaus.mojo</groupId>
					<artifactId>jaxb2-maven-plugin</artifactId>
					<version>1.3</version>
					<executions>
						<execution>
							<phase>generate-sources</phase>
							<goals>
								<goal>xjc</goal>
							</goals>
						</execution>
					</executions>
					<configuration>
						<schemaDirectory>src/main/xsd</schemaDirectory>
					</configuration>
				</plugin>
	
				<plugin>
				  <groupId>org.apache.maven.plugins</groupId>
				  <artifactId>maven-failsafe-plugin</artifactId>
				  <version>2.17</version>
				  <configuration>
		  				<skipTests>true</skipTests>
				  </configuration>
				  <executions>
					<execution>
					  <id>integration-test</id>
					  <goals>
						<goal>integration-test</goal>
						<goal>verify</goal>
					  </goals>
					</execution>
				  </executions>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-jarsigner-plugin</artifactId>
					<version>1.2</version>
					<executions>
						<execution>
							<id>sign</id>
							<goals>
								<goal>sign</goal>
							</goals>
							<configuration>
								<!--  skip>${skipSigning}</skip -->
								<archive>target/${project.artifactId}-${project.version}.jar</archive>
							</configuration>
						</execution>
						<execution>
							<id>verify</id>
							<goals>
								<goal>verify</goal>
							</goals>
							<configuration>
								<archive>target/${project.artifactId}-${project.version}.jar</archive>
							</configuration>
						</execution>
					</executions>
					<configuration>
						<skip>true</skip>
						<alias>aaf</alias>
						<keystore>/Volumes/Data/src/cadi/keys/aaf_cadi.jks</keystore>
						<storepass>Surprise!</storepass>
						<keypass>Surprise!</keypass>
						<verbose>true</verbose>
						<certs>true</certs>
					</configuration>
				</plugin>
				
		<plugin>
			<groupId>org.apache.maven.plugins</groupId>
			<artifactId>maven-javadoc-plugin</artifactId>
			<version>2.10.4</version>
			<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.codehaus.mojo</groupId>
				<artifactId>cobertura-maven-plugin</artifactId>
				<version>2.7</version>
				<configuration>
					<formats>
					<format>html</format>
					<format>xml</format>
				  </formats>
				</configuration>
			</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>${jacoco.version}</version>
          <configuration>
            <excludes>
              <exclude>**/gen/**</exclude>
              <exclude>**/generated-sources/**</exclude>
              <exclude>**/yang-gen/**</exclude>
              <exclude>**/pax/**</exclude>
            </excludes>
          </configuration>
          <executions>

            <execution>
              <id>pre-unit-test</id>
              <goals>
                <goal>prepare-agent</goal>
              </goals>
              <configuration>
                <destFile>${project.build.directory}/code-coverage/jacoco-ut.exec</destFile>
                <propertyName>surefireArgLine</propertyName>
              </configuration>
            </execution>
            
       
            <execution>
              <id>post-unit-test</id>
              <phase>test</phase>
              <goals>
                <goal>report</goal>
              </goals>
              <configuration>
                <dataFile>${project.build.directory}/code-coverage/jacoco-ut.exec</dataFile>
                <outputDirectory>${project.reporting.outputDirectory}/jacoco-ut</outputDirectory>
              </configuration>
            </execution>
            <execution>
              <id>pre-integration-test</id>
              <phase>pre-integration-test</phase>
              <goals>
                <goal>prepare-agent</goal>
              </goals>
              <configuration>
                <destFile>${project.build.directory}/code-coverage/jacoco-it.exec</destFile>

                <propertyName>failsafeArgLine</propertyName>
              </configuration>
            </execution>

       
            <execution>
              <id>post-integration-test</id>
              <phase>post-integration-test</phase>
              <goals>
                <goal>report</goal>
              </goals>
              <configuration>
                <dataFile>${project.build.directory}/code-coverage/jacoco-it.exec</dataFile>
                <outputDirectory>${project.reporting.outputDirectory}/jacoco-it</outputDirectory>
              </configuration>
            </execution>
          </executions>
        </plugin>	
				
	    	</plugins>
		</pluginManagement>			
    </build>	
   	
	<dependencies> 
		<dependency>
			<groupId>junit</groupId>
			<artifactId>junit</artifactId>
			<version>4.10</version>
			<scope>test</scope>
		</dependency>

		<dependency>
		    <groupId>org.mockito</groupId>
		    <artifactId>mockito-core</artifactId>
		    <version>1.10.19</version>
		    <scope>test</scope>
		</dependency>
		<dependency>
		    <groupId>org.powermock</groupId>
		    <artifactId>powermock-module-junit4</artifactId>
		    <version>1.6.4</version>
		    <scope>test</scope>
		</dependency>
		<dependency>
		    <groupId>org.powermock</groupId>
		    <artifactId>powermock-api-mockito</artifactId>
		    <version>1.6.4</version>
		    <scope>test</scope>
		</dependency> 

    	 
	</dependencies>    	

	<modules>
		<!-- 
		   <module> auth-client</module>
		   complile manually with mvn -N independently
		-->
		<module>authz-client</module>
		<module>authz-core</module>
		<module>authz-cass</module>
		<module>authz-defOrg</module>
 		<module>authz-cmd</module>
 		<!--  <module>authz-batch</module>-->
 		<module>authz-test</module>
 		<!--  <module>authz-gui</module> -->
 		<module>authz-gw</module>
 		<module>authz-certman</module>
 		<module>authz-fs</module>
		<module>authz-service</module>
 	</modules>
	
	<dependencyManagement>
		<dependencies>
			<dependency>
				<groupId>org.onap.aaf.inno</groupId>
				<artifactId>env</artifactId>
				<version>${project.innoVersion}</version>
			</dependency>

			<dependency>
				<groupId>org.onap.aaf.inno</groupId>
				<artifactId>log4j</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.inno</groupId>
				<artifactId>xgen</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-client</artifactId>
				<version>${project.cadiVersion}</version>
			</dependency>
			
			
			<dependency>
				<groupId>org.onap.aaf.cadi</groupId>
				<artifactId>cadi-aaf</artifactId>
				<version>${project.cadiVersion}</version>
				<exclusions>
			      <exclusion> 
					<groupId>org.apache.cassandra</groupId>
		    		<artifactId>cassandra-all</artifactId>
    		      </exclusion>
			    </exclusions> 
			</dependency>
			
			<dependency>
				<groupId>org.onap.aaf.authz</groupId>
				<artifactId>authz-client</artifactId>
				<version>${project.interfaceVersion}</version>
			</dependency>
			
			
			<dependency>
				<groupId>org.onap.aaf.authz</groupId>
				<artifactId>authz-core</artifactId>
				<version>${project.version}</version>
			</dependency>
			
			<dependency>
	            <groupId>org.onap.aaf.authz</groupId>
	            <artifactId>authz-cass</artifactId>
				<version>${project.version}</version>
	        </dependency>
	        
	        <dependency>
				<groupId>org.onap.aaf.authz</groupId>
				<artifactId>authz-batch</artifactId>
				<version>${project.interfaceVersion}</version>
			</dependency>
	    


		    <dependency>
	            <groupId>org.onap.aaf.authz</groupId>
	            <artifactId>authz-cmd</artifactId>
				<version>${project.version}</version>
	        </dependency>
	        <dependency>
	            <groupId>org.onap.aaf.authz</groupId>
	            <artifactId>authz-gw</artifactId>
				<version>${project.version}</version>
	        </dependency>

			<dependency>
				<groupId>com.att.aft</groupId>
				<artifactId>dme2</artifactId>
				<version>${project.dme2Version}</version>
			</dependency>
		
			<dependency>
			  <groupId>javax.servlet</groupId>
			  <artifactId>servlet-api</artifactId>
			  <version>2.5</version>
			</dependency>
			
			<dependency>
				<groupId>org.eclipse.jetty</groupId>
				<artifactId>jetty-servlet</artifactId>
				<version>9.0.3.v20130506</version>
			</dependency>
			
			<dependency>
				<groupId>com.datastax.cassandra</groupId>
				<artifactId>cassandra-all</artifactId>
				<version>2.1.10</version>
				<exclusions>
			      <exclusion> 
			        <groupId>org.slf4j</groupId>
			        <artifactId>slf4j-log4j12</artifactId>
			      </exclusion>
			      <exclusion> 
			        <groupId>log4j</groupId>
			        <artifactId>log4j</artifactId>
			      </exclusion>
			    </exclusions> 
			</dependency>
			<dependency>
				<groupId>com.datastax.cassandra</groupId>
				<artifactId>cassandra-driver-core</artifactId>
				<!-- version>1.0.3</version -->
				<!-- version>1.0.5</version -->
				<version>2.1.10</version>
				<exclusions>
			      <exclusion> 
			        <groupId>org.slf4j</groupId>
			        <artifactId>slf4j-log4j12</artifactId>
			      </exclusion>
			      <exclusion> 
			        <groupId>log4j</groupId>
			        <artifactId>log4j</artifactId>
			      </exclusion>
			    </exclusions> 
			</dependency>	

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

			<dependency>
	      		<groupId>javax.mail</groupId>
	      		<artifactId>mail</artifactId>
	      		<version>1.4.5</version>
	    	</dependency> 

			
		</dependencies>
	</dependencyManagement>
	<distributionManagement>
		<repository>
			<id>ecomp-releases</id>
			<name>AAF Release Repository</name>
			<url>${nexusproxy}${releaseNexusPath}</url>
		</repository>
		<snapshotRepository>
			<id>ecomp-snapshots</id>
			<name>AAF Snapshot Repository</name>
			<url>${nexusproxy}${snapshotNexusPath}</url>
		</snapshotRepository>
		<site>
			<id>ecomp-site</id>
			<url>dav:${nexusproxy}${sitePath}</url>
		</site>
	</distributionManagement>

</project>	
