<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>
	<parent>
		<groupId>org.onap.so</groupId>
		<artifactId>adapters</artifactId>
		<version>1.4.0-SNAPSHOT</version>
	</parent>
	<artifactId>mso-openstack-adapters</artifactId>
	<packaging>jar</packaging>
	<name>mso-openstack-adapters</name>
	<description>Consolidate openstack adapters into one Spring Boot project</description>

	<build>
		<finalName>${project.artifactId}-${project.version}</finalName>
		
		<plugins>			
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-dependency-plugin</artifactId>
			</plugin>
			<plugin>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-maven-plugin</artifactId>
				<configuration>
					<mainClass>org.onap.so.adapters.openstack.MsoOpenstackAdaptersApplication</mainClass>
				</configuration>
				<executions>
					<execution>
						<goals>
							<goal>
								repackage
							</goal>
						</goals>
					</execution>
				</executions>
			</plugin>

<!--  run the following plugin only when there's a wsdl change and you need to recompile the java classes
			<plugin>
				<groupId>org.codehaus.mojo</groupId>
				<artifactId>jaxws-maven-plugin</artifactId>
				<version>2.4.1</version>
				<executions>
					<execution>
						<id>generate-network-async-stubs</id>
						<phase>process-classes</phase>
						<goals>
							<goal>wsimport</goal>
						</goals>
						<configuration>
                            <vmArgs>
                                <vmArg>-Djavax.xml.accessExternalSchema=all</vmArg>
                            </vmArgs>
							<wsdlDirectory>src/main/resources/wsdl</wsdlDirectory>
							<wsdlFiles>
								<wsdlFile>NetworkAdapterNotify.wsdl</wsdlFile>
							</wsdlFiles>
							<wsdlLocation>/NetworkAdapterNotify.wsdl</wsdlLocation>
							<packageName>org.onap.so.adapters.network.async.client</packageName>
							<xnocompile>false</xnocompile>
							<keep>true</keep>
						</configuration>
					</execution>
					
					<execution>
						<id>generate-vnf-async-stubs</id>
						<phase>process-classes</phase>
						<goals>
							<goal>wsimport</goal>
						</goals>
						<configuration>
					        <vmArgs>
					            <vmArg>-Djavax.xml.accessExternalSchema=all</vmArg>
					        </vmArgs>
							<wsdlDirectory>src/main/resources/wsdl</wsdlDirectory>
							<wsdlFiles>
								<wsdlFile>VnfAdapterNotify.wsdl</wsdlFile>
							</wsdlFiles>
							<wsdlLocation>/VnfAdapterNotify.wsdl</wsdlLocation>
							<packageName>org.onap.so.adapters.vnf.async.client</packageName>
							<xnocompile>false</xnocompile>
							<keep>true</keep>
						</configuration>
					</execution>
				</executions>
			</plugin>
			<plugin>
			    <groupId>org.codehaus.mojo</groupId>
			    <artifactId>build-helper-maven-plugin</artifactId>
			    <version>3.0.0</version>
			    <executions>
			        <execution>
			            <id>add-source</id>
			            <phase>generate-sources</phase>
			            <goals>
			                <goal>add-source</goal>
			            </goals>
			            <configuration>
			                <sources>
			                    <source>${project.build.directory}/generated-sources/wsimport/</source>
			                </sources>
			            </configuration>
			        </execution>
			    </executions>
			 </plugin>			
 -->		<plugin>
				<groupId>org.jacoco</groupId>
				<artifactId>jacoco-maven-plugin</artifactId>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-dependency-plugin</artifactId>
				<executions>
					<execution>
						<id>extract-docker-file</id>
					</execution>
				</executions>
			</plugin>
			<plugin>
				<groupId>io.fabric8</groupId>
				<artifactId>fabric8-maven-plugin</artifactId>
				<executions>
					<execution>
						<id>start</id>
					</execution>
				</executions>
			</plugin>
		</plugins>		
		
		
		<pluginManagement>
			<plugins>
				<!--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.jvnet.jax-ws-commons
										</groupId>
										<artifactId>
											jaxws-maven-plugin
										</artifactId>
										<versionRange>
											[2.3,)
										</versionRange>
										<goals>
											<goal>wsgen</goal>
										</goals>
									</pluginExecutionFilter>
									<action>
										<ignore></ignore>
									</action>
								</pluginExecution>
							</pluginExecutions>
						</lifecycleMappingMetadata>
					</configuration>
				</plugin>
			</plugins>
		</pluginManagement>
	</build>

	<dependencies>
	<!-- added for spring boot support -->	
		<dependency>
    		<groupId>org.springframework.boot</groupId>
    		<artifactId>spring-boot-starter-actuator</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-web</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-data-jpa</artifactId>
			<exclusions>
				<exclusion>
					<groupId>org.apache.tomcat</groupId>
					<artifactId>tomcat-jdbc</artifactId>
				</exclusion>
			</exclusions>
		</dependency>
		<dependency>
			<groupId>org.apache.cxf</groupId>
			<artifactId>cxf-spring-boot-starter-jaxws</artifactId>
   		 	<version>${cxf.version}</version>
		</dependency>
		<dependency>
			<groupId>org.apache.cxf</groupId>
			<artifactId>cxf-spring-boot-starter-jaxrs</artifactId>
			<version>${cxf.version}</version>
		</dependency>
		<dependency>
    		<groupId>org.apache.cxf</groupId>
    		<artifactId>cxf-rt-rs-service-description-swagger</artifactId>
    		<version>${cxf.version}</version>
		</dependency>
		<dependency>
            <groupId>org.webjars</groupId>
            <artifactId>swagger-ui</artifactId>
            <version>3.5.0</version>
        </dependency>

		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-test</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
    		<groupId>janino</groupId>
    		<artifactId>janino</artifactId>
    		<version>2.5.15</version>
		</dependency>
        
	<!-- end added for spring boot support -->	
	
	
	
	<!-- added for unit testing -->		
		<dependency>
			<groupId>org.onap.so.adapters</groupId>
			<artifactId>mso-adapter-utils</artifactId>
			<version>${project.version}</version>
		</dependency>
		<dependency>
			<groupId>org.onap.so.adapters</groupId>
			<artifactId>mso-adapters-rest-interface</artifactId>
			<version>${project.version}</version>
		</dependency>
		<dependency>
			<groupId>javax.servlet</groupId>
			<artifactId>javax.servlet-api</artifactId>
			<scope>test</scope>
		</dependency>		
		<dependency>
			<groupId>org.mariadb.jdbc</groupId>
			<artifactId>mariadb-java-client</artifactId>
		</dependency>		
		<dependency>
			<groupId>org.onap.so</groupId>
			<artifactId>common</artifactId>
			<version>${project.version}</version>
		</dependency>
		<dependency>
            <groupId>ch.vorburger.mariaDB4j</groupId>
            <artifactId>mariaDB4j</artifactId>
            <version>2.2.3</version>
            <scope>test</scope>
        </dependency>
        <dependency>
			<groupId>org.springframework.cloud</groupId>
			<artifactId>spring-cloud-contract-wiremock</artifactId>
			<version>1.2.4.RELEASE</version>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.flywaydb</groupId>
			<artifactId>flyway-core</artifactId>
		</dependency>
		<dependency>
			<groupId>org.onap.so</groupId>
			<artifactId>cxf-logging</artifactId>
			<version>${project.version}</version>
		</dependency>
	</dependencies>
</project>