<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>
  <properties>
    <openfeign.version>10.1.0</openfeign.version>
  </properties>
  <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>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-surefire-plugin</artifactId>
        <executions>
          <execution>
            <id>default-test</id>
            <goals>
              <goal>test</goal>
            </goals>
            <configuration>
              <includes>
                <include>**/AllTestsTestSuite.java</include>
              </includes>
              <parallel>suites</parallel>
            </configuration>
          </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>
    </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 -->

    <dependency>
      <groupId>org.pacesys</groupId>
      <artifactId>openstack4j-core</artifactId>
      <version>3.1.0</version>
    </dependency>
    <dependency>
      <groupId>org.pacesys.openstack4j.connectors</groupId>
      <artifactId>openstack4j-httpclient</artifactId>
      <version>3.1.0</version>
    </dependency>

    <dependency>
      <groupId>commons-collections</groupId>
      <artifactId>commons-collections</artifactId>
      <version>3.2.1</version>
    </dependency>

    <dependency>
      <groupId>com.typesafe</groupId>
      <artifactId>config</artifactId>
      <version>1.3.2</version>
    </dependency>
    <dependency>
      <groupId>com.google.code.findbugs</groupId>
      <artifactId>jsr305</artifactId>
      <version>1.3.9</version>
    </dependency>

    <dependency>
      <groupId>commons-validator</groupId>
      <artifactId>commons-validator</artifactId>
      <version>1.4.0</version>
    </dependency>

    <!-- 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.onap.so</groupId>
      <artifactId>cxf-logging</artifactId>
      <version>${project.version}</version>
    </dependency>
    <dependency>
      <groupId>org.onap.so.libs.openstack-java-sdk</groupId>
      <artifactId>nova-model</artifactId>
      <version>${openstack.version}</version>
    </dependency>
    <dependency>
      <groupId>org.camunda.bpm</groupId>
      <artifactId>camunda-external-task-client</artifactId>
      <version>1.1.1</version>
    </dependency>
  </dependencies>
</project>
