url correction and improve API doc
[so.git] / pom.xml
diff --git a/pom.xml b/pom.xml
index 9d1bcc5..5168141 100644 (file)
--- a/pom.xml
+++ b/pom.xml
@@ -1,36 +1,39 @@
+<?xml version="1.0"?>
 <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.oparent</groupId>
     <artifactId>oparent</artifactId>
-    <version>1.1.0</version>
+    <version>1.2.1</version>
     <relativePath />
   </parent>
   <groupId>org.onap.so</groupId>
   <artifactId>so</artifactId>
   <packaging>pom</packaging>
-  <version>1.2.0-SNAPSHOT</version>
+  <version>1.4.0-SNAPSHOT</version>
   <name>so</name>
   <description>This Maven project is responsible to build and package all child projects - contributions in the MSO project.
        This build can be configured to run Functional tests and to start/stop a jboss server + Mysql DB.
        "mvn clean install -P with-integration-tests -Dintegration-tests-user=root -Dintegration-tests-group=root -Dintegration-tests-db-type=MYSQL"
        </description>
   <organization>
-    <name>OPENECOMP - MSO</name>
+    <name>ONAP - SO</name>
     <url>http://www.onap.org/</url>
   </organization>
   <modules>
+    <module>deployment-configs</module>
     <module>common</module>
-    <module>cloudify-client</module>
-    <module>mso-api-handlers</module>
     <module>mso-catalog-db</module>
+    <module>mso-api-handlers</module>
     <module>adapters</module>
     <module>asdc-controller</module>
-    <module>status-control</module>
     <module>bpmn</module>
+    <module>cloudify-client</module>
+    <module>cxf-logging</module>
+    <module>so-monitoring</module>
+    <module>vnfm-simulator</module>
     <module>packages</module>
-    <module>aria</module>
   </modules>
   <properties>
     <project.mso.base.folder>.</project.mso.base.folder>
     <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.mso.base.folder}/packages/arquillian-unit-tests/target/mso-automated-tests/jacoco-it.exec</sonar.jacoco.itReportPath>
+    <sonar.jacoco.reportPath>${project.build.directory}/code-coverage/jacoco-ut.exec</sonar.jacoco.reportPath>
+    <!--sonar.jacoco.itReportPath>${project.mso.base.folder}/packages/arquillian-unit-tests/target/mso-automated-tests/jacoco-it.exec</sonar.jacoco.itReportPath -->
     <sonar.jacoco.reportMissing.force.zero>true</sonar.jacoco.reportMissing.force.zero>
     <sonar.projectVersion>${project.version}</sonar.projectVersion>
-    <org.apache.maven.user-settings></org.apache.maven.user-settings>
-    <!-- this is used for Chef mso-code cookbook -->
-    <swm.version>2.19.3-1</swm.version>
-       <openstack.version>1.2.1</openstack.version>
-    <nexusproxy>https://nexus.onap.org</nexusproxy>
+    <sonar.cpd.exclusions>**/*</sonar.cpd.exclusions>
+    <jacoco.version>0.7.5.201505241946</jacoco.version>
+    <org.apache.maven.user-settings />
+    <openstack.version>1.4.0</openstack.version>
     <maven.build.timestamp.format>yyyyMMdd'T'HHmm</maven.build.timestamp.format>
-    <resteasy.version>3.0.19.Final</resteasy.version>
+    <originalClassifier>original</originalClassifier>
+    <docker.skip>true</docker.skip>
+    <docker.skip.build>true</docker.skip.build>
+    <docker.skip.push>true</docker.skip.push>
+    <docker.buildArg.project_version>${project.version}</docker.buildArg.project_version>
+    <docker.buildArg.artifact_id>${project.artifactId}</docker.buildArg.artifact_id>
+    <docker.buildArg.docker_repository>${dockerPullRepo}</docker.buildArg.docker_repository>
+    <enforcer.skip>true</enforcer.skip>
+    <nexusproxy>https://nexus.onap.org</nexusproxy>
+    <releaseNexusPath>content/repositories/releases/</releaseNexusPath>
+    <snapshotNexusPath>content/repositories/snapshots/</snapshotNexusPath>
+    <publicNexusPath>content/repositories/public/</publicNexusPath>
+    <siteNexusPath>content/sites/site/org/onap/so/${project.version}/</siteNexusPath>
+    <cxf.version>3.2.6</cxf.version>
+    <jax.ws.rs>2.1</jax.ws.rs>
+    <springboot.version>2.0.5.RELEASE</springboot.version>
+    <camunda.springboot.version>3.2.0</camunda.springboot.version>
+    <format.skipValidate>false</format.skipValidate>
+    <format.skipExecute>true</format.skipExecute>
   </properties>
   <distributionManagement>
     <repository>
       <id>ecomp-releases</id>
-      <name>Clamp Release Repository</name>
-      <url>https://nexus.onap.org/content/repositories/releases/</url>
+      <url>${nexusproxy}/${releaseNexusPath}</url>
     </repository>
     <snapshotRepository>
       <id>ecomp-snapshots</id>
-      <name>Clamp Snapshot Repository</name>
-      <url>https://nexus.onap.org/content/repositories/snapshots/</url>
+      <url>${nexusproxy}/${snapshotNexusPath}</url>
     </snapshotRepository>
     <site>
       <id>ecomp-site</id>
-      <url>dav:https://nexus.onap.org/content/sites/site/org/onap/so/${project.version}</url>
+      <url>dav:${nexusproxy}${siteNexusPath}</url>
     </site>
   </distributionManagement>
   <reporting>
       <id>central</id>
       <url>http://repo1.maven.org/maven2</url>
     </pluginRepository>
-
     <pluginRepository>
-      <id>Restlet</id>
-      <name>Restlet Repository</name>
+      <id>restlet</id>
       <url>http://maven.restlet.com</url>
     </pluginRepository>
+    <pluginRepository>
+      <id>ecomp-public</id>
+      <url>${nexusproxy}/${publicNexusPath}</url>
+      <snapshots>
+        <enabled>false</enabled>
+      </snapshots>
+    </pluginRepository>
+    <pluginRepository>
+      <id>ecomp-release</id>
+      <url>${nexusproxy}/${releaseNexusPath}</url>
+      <snapshots>
+        <enabled>false</enabled>
+      </snapshots>
+    </pluginRepository>
+    <pluginRepository>
+      <id>ecomp-snapshots</id>
+      <url>${nexusproxy}/${snapshotNexusPath}</url>
+      <releases>
+        <enabled>false</enabled>
+      </releases>
+    </pluginRepository>
   </pluginRepositories>
   <repositories>
     <repository>
-      <id>Onap public</id>
-      <url>https://nexus.onap.org/content/groups/public/</url>
-      <name>Onap public</name>
-    </repository>
-    <repository>
-      <id>JBOSS</id>
-      <name>JBoss Repository</name>
-      <url>http://repository.jboss.org/nexus/content/groups/public-jboss/</url>
-    </repository>
-    <repository>
-      <id>opendaylight-mirror</id>
-      <name>opendaylight-mirror</name>
-      <url>https://nexus.opendaylight.org/content/repositories/public/</url>
-      <releases>
-      <enabled>true</enabled>
-      <updatePolicy>never</updatePolicy>
-      </releases>
+      <id>ecomp-public</id>
+      <url>https://nexus.onap.org/content/repositories/public/</url>
       <snapshots>
         <enabled>false</enabled>
       </snapshots>
     </repository>
-    <repository>
-      <id>jboss-deprecated-repository</id>
-      <name>JBoss Deprecated Maven Repository</name>
-      <url>https://repository.jboss.org/nexus/content/repositories/deprecated/</url>
-    </repository>
     <repository>
       <id>ecomp-releases</id>
-      <name>ONAP Release Repository</name>
       <url>https://nexus.onap.org/content/repositories/releases/</url>
-    </repository>
-    <repository>
-      <id>ecomp-staging</id>
-      <name>ONAP Staging Repository</name>
-      <url>https://nexus.onap.org/content/repositories/staging/</url>
+      <snapshots>
+        <enabled>false</enabled>
+      </snapshots>
     </repository>
     <repository>
       <id>ecomp-snapshots</id>
-      <name>ONAP Snapshot Repository</name>
       <url>https://nexus.onap.org/content/repositories/snapshots/</url>
-      <snapshots>
-        <enabled>true</enabled>
-      </snapshots>
       <releases>
         <enabled>false</enabled>
       </releases>
     </repository>
-    <!-- Camunda Web Repository -->
     <repository>
-      <id>CamundaWebRepo</id>
+      <id>camunda-bpm</id>
       <url>https://app.camunda.com/nexus/content/repositories/camunda-bpm/</url>
-      <name>Camunda Web Repository</name>
     </repository>
     <repository>
-      <id>CamundaPublicRepo</id>
+      <id>camunda-public</id>
       <url>https://app.camunda.com/nexus/content/groups/public</url>
-      <name>Camunda Public repository</name>
     </repository>
-
     <repository>
-      <id>soapUI</id>
-      <url>http://www.soapui.org/repository/maven2/</url>
-      <name>SoapUI plugin</name>
+      <!-- TODO: remove from ONAP environemnt -->
+      <id>onap-releases</id>
+      <url>https://nexus.onap.org/content/repositories/releases/</url>
+      <snapshots>
+        <enabled>false</enabled>
+      </snapshots>
+    </repository>
+    <repository>
+      <!-- TODO: remove from ONAP environemnt -->
+      <id>onap-snapshots</id>
+      <url>https://nexus.onap.org/content/repositories/snapshots/</url>
+      <releases>
+        <enabled>false</enabled>
+      </releases>
     </repository>
   </repositories>
   <!-- *********************************************************************************************************** -->
       <plugin>
         <groupId>org.apache.maven.plugins</groupId>
         <artifactId>maven-deploy-plugin</artifactId>
-        <version>2.8</version> <!-- This version supports the "deployAtEnd" parameter -->
+        <version>2.8</version>
+        <!-- This version supports the "deployAtEnd" parameter -->
         <configuration>
           <skip />
         </configuration>
       </plugin>
-      <plugin>
-        <groupId>org.apache.maven.plugins</groupId>
-        <artifactId>maven-surefire-plugin</artifactId>
-        <version>2.19.1</version>
-        <configuration>
-          <argLine>${surefireArgLine}</argLine>
-          <!-- <forkCount>2C</forkCount> <reuseForks>true</reuseForks> -->
-          <excludes>
-            <exclude>**/IT*.java</exclude>
-          </excludes>
-        </configuration>
-      </plugin>
       <plugin>
         <groupId>org.apache.maven.plugins</groupId>
         <artifactId>maven-compiler-plugin</artifactId>
           <showWarnings>true</showWarnings>
           <source>1.8</source>
           <target>1.8</target>
+          <compilerArgs>
+            <arg>-parameters</arg>
+          </compilerArgs>
         </configuration>
       </plugin>
-      <!-- <plugin> -->
-      <!-- <groupId>org.codehaus.mojo</groupId> -->
-      <!-- <artifactId>sonar-maven-plugin</artifactId> -->
-      <!-- <version>2.1</version> -->
-      <!-- </plugin> -->
       <plugin>
         <groupId>org.apache.maven.plugins</groupId>
         <artifactId>maven-ejb-plugin</artifactId>
         <artifactId>maven-checkstyle-plugin</artifactId>
         <version>2.17</version>
         <configuration>
+          <skip>true</skip>
           <includes>**/org/openecomp/**/*.java</includes>
           <configLocation>/google_checks.xml</configLocation>
         </configuration>
       <plugin>
         <groupId>org.codehaus.mojo</groupId>
         <artifactId>sonar-maven-plugin</artifactId>
-        <version>3.2</version>
+        <version>5.1</version>
       </plugin>
       <plugin>
         <artifactId>maven-scm-plugin</artifactId>
         <artifactId>versions-maven-plugin</artifactId>
         <version>1.3.1</version>
       </plugin>
+
       <plugin>
-        <groupId>org.codehaus.mojo</groupId>
-        <artifactId>jboss-packaging-maven-plugin</artifactId>
-        <version>2.2</version>
-        <!-- <configuration> <archive> <manifest> <addClasspath>true</addClasspath> 
-          </manifest> </archive> </configuration> Enable 'jboss-sar', etc., as a recoginized 
-          maven packaging type -->
-        <extensions>true</extensions>
+        <groupId>com.fortify.ps.maven.plugin</groupId>
+        <artifactId>sca-maven-plugin</artifactId>
+        <version>4.20</version>
+        <configuration>
+          <buildId>mso-${project.version}</buildId>
+          <source>1.8</source>
+        </configuration>
       </plugin>
       <plugin>
         <groupId>org.jacoco</groupId>
         <artifactId>jacoco-maven-plugin</artifactId>
-        <version>0.7.7.201606060606</version>
+        <version>${jacoco.version}</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.codehaus.mojo</groupId>
+        <artifactId>license-maven-plugin</artifactId>
+        <version>1.15</version>
         <configuration>
-          <dumpOnExit>true</dumpOnExit>
+          <inceptionYear>2017</inceptionYear>
+          <projectName>ONAP - SO</projectName>
+          <licenseName>apache_v2</licenseName>
+          <addJavaLicenseAfterPackage>false</addJavaLicenseAfterPackage>
+          <emptyLineAfterHeader>true</emptyLineAfterHeader>
+          <trimHeaderLine>true</trimHeaderLine>
+          <processStartTag>============LICENSE_START=======================================================</processStartTag>
+          <sectionDelimiter>================================================================================</sectionDelimiter>
+          <processEndTag>============LICENSE_END=========================================================</processEndTag>
           <includes>
-            <include>org.openecomp.*</include>
+            <include>**/*.java</include>
+            <include>**/*.groovy</include>
           </includes>
+          <excludes>
+            <exclude>**/com/att/**</exclude>
+          </excludes>
         </configuration>
         <executions>
           <execution>
-            <id>pre-unit-test</id>
+            <id>verify-headers</id>
             <goals>
-              <goal>prepare-agent</goal>
+              <goal>check-file-header</goal>
             </goals>
             <configuration>
-              <destFile>${sonar.jacoco.reportPath}</destFile>
-              <propertyName>surefireArgLine</propertyName>
+              <failOnNotUptodateHeader>true</failOnNotUptodateHeader>
+              <failOnMissingHeader>true</failOnMissingHeader>
             </configuration>
           </execution>
         </executions>
       </plugin>
       <plugin>
-        <groupId>com.fortify.ps.maven.plugin</groupId>
-        <artifactId>sca-maven-plugin</artifactId>
-        <version>4.20</version>
-        <configuration>
-          <buildId>mso-${project.version}</buildId>
-          <source>1.8</source>
-        </configuration>
+        <groupId>org.codehaus.gmaven</groupId>
+        <artifactId>groovy-maven-plugin</artifactId>
+        <version>2.0</version>
+        <executions>
+          <!-- set absolute base path from super pom -->
+          <execution>
+            <id>find-basepath</id>
+            <phase>validate</phase>
+            <goals>
+              <goal>execute</goal>
+            </goals>
+            <configuration>
+              <source>
+                <![CDATA[
+                    import java.io.File;
+                    log.info('## define projects super pom absolute path through basepath_marker')
+                    String p = "basepath_marker";
+                    File f = null;
+                    if( p != null ) {
+                        def _max_child_poms = 0
+                        while( _max_child_poms++ < 5 ) {
+                            f = new File( p );
+                            if( f.exists() ) {
+                                break;
+                            }   
+                            p = "../" + p;
+                        }
+                    }
+                    if( f != null ) {
+                        String basePath = f.getCanonicalPath();
+                        basePath = basePath.substring( 0, basePath.lastIndexOf( File.separator ) ); 
+                        project.properties['base-path'] = basePath.replace( '\\' , '/');
+                        log.info(' - used base path = ' + project.properties['base-path'] );
+                    } else {
+                        log.error( 'Could not find basepath_marker marker file!' );
+                        System.stop( 0 );
+                    }
+                ]]>
+              </source>
+            </configuration>
+          </execution>
+        </executions>
+      </plugin>
+      <plugin>
+        <groupId>net.revelc.code.formatter</groupId>
+        <artifactId>formatter-maven-plugin</artifactId>
+        <version>2.9.0</version>
+        <executions>
+          <execution>
+            <id>format-java</id>
+            <goals>
+              <goal>format</goal>
+            </goals>
+            <configuration>
+              <skip>${format.skipExecute}</skip>
+              <configFile>${base-path}/project-configs/code-tools/onap-eclipse-format.xml</configFile>
+            </configuration>
+          </execution>
+          <execution>
+            <id>format-xml</id>
+            <goals>
+              <goal>format</goal>
+            </goals>
+            <configuration>
+              <skip>${format.skipExecute}</skip>
+              <sourceDirectory>${project.basedir}</sourceDirectory>
+              <configXmlFile>${base-path}/project-configs/code-tools/pom-format.properties</configXmlFile>
+              <includes>
+                <include>pom.xml</include>
+              </includes>
+            </configuration>
+          </execution>
+          <execution>
+            <id>validate-java</id>
+            <goals>
+              <goal>validate</goal>
+            </goals>
+            <configuration>
+              <skip>${format.skipValidate}</skip>
+              <configFile>${base-path}/project-configs/code-tools/onap-eclipse-format.xml</configFile>
+            </configuration>
+          </execution>
+          <execution>
+            <id>validate-poms</id>
+            <goals>
+              <goal>validate</goal>
+            </goals>
+            <configuration>
+              <skip>${format.skipValidate}</skip>
+              <configFile>${base-path}/project-configs/code-tools/pom-format.properties</configFile>
+              <includes>
+                <include>pom.xml</include>
+              </includes>
+            </configuration>
+          </execution>
+        </executions>
+        <dependencies>
+          <dependency>
+            <groupId>com.fasterxml.jackson.core</groupId>
+            <artifactId>jackson-annotations</artifactId>
+            <version>2.9.8</version>
+          </dependency>
+        </dependencies>
       </plugin>
     </plugins>
+    <pluginManagement>
+      <plugins>
+        <plugin>
+          <groupId>io.fabric8</groupId>
+          <artifactId>fabric8-maven-plugin</artifactId>
+          <version>3.5.33</version>
+          <configuration>
+            <skip>${docker.skip}</skip>
+            <skipBuild>${docker.skip.build}</skipBuild>
+            <skipPush>${docker.skip.push}</skipPush>
+            <dockerHost>${docker.newHost}</dockerHost>
+            <!-- 1. Update address to your local docker VM. 2. Add IP to your NO_PROXY environment variable -->
+            <certPath>${docker.host.cert.path}</certPath>
+            <!-- Add -Ddocker.host.cert.pat="path to your local certs directory" 
+              to maven build command -->
+            <pushRegistry>${dockerPushRepo}</pushRegistry>
+            <!-- Update .m2/settings.xml Add server id settings.dockerRepository, username, and password -->
+            <pullRegistry>${dockerPullRepo}</pullRegistry>
+            <!-- If docker repo is not public. Update .m2/settings.xml Add server id settings.dockerRepository, username, and password -->
+            <images>
+              <image>
+                <alias>service</alias>
+                <name>${artifactId}:${project.version}</name>
+                <build>
+                  <dockerFileDir>${project.build.directory}</dockerFileDir>
+                </build>
+              </image>
+            </images>
+          </configuration>
+          <executions>
+            <execution>
+              <id>start</id>
+              <goals>
+                <goal>build</goal>
+                <goal>push</goal>
+              </goals>
+            </execution>
+          </executions>
+        </plugin>
+        <plugin>
+          <groupId>org.apache.maven.plugins</groupId>
+          <artifactId>maven-surefire-plugin</artifactId>
+          <version>2.20</version>
+          <configuration>
+            <systemPropertyVariables>
+              <so.log.level>DEBUG</so.log.level>
+            </systemPropertyVariables>
+            <rerunFailingTestsCount>2</rerunFailingTestsCount>
+            <parallel>classes</parallel>
+            <useUnlimitedThreads>false</useUnlimitedThreads>
+            <threadCount>1</threadCount>
+          </configuration>
+        </plugin>
+        <plugin>
+          <groupId>org.apache.maven.plugins</groupId>
+          <artifactId>maven-failsafe-plugin</artifactId>
+          <version>2.20</version>
+          <configuration>
+            <skip>true</skip>
+            <systemPropertyVariables>
+              <so.log.level>DEBUG</so.log.level>
+            </systemPropertyVariables>
+            <rerunFailingTestsCount>2</rerunFailingTestsCount>
+          </configuration>
+        </plugin>
+        <plugin>
+          <groupId>org.apache.maven.plugins</groupId>
+          <artifactId>maven-dependency-plugin</artifactId>
+          <executions>
+            <execution>
+              <id>extract-docker-file</id>
+              <goals>
+                <goal>unpack</goal>
+              </goals>
+              <configuration>
+                <artifactItems>
+                  <artifactItem>
+                    <groupId>org.onap.so</groupId>
+                    <artifactId>deployment-configs</artifactId>
+                    <version>${project.version}</version>
+                    <outputDirectory>${project.build.directory}</outputDirectory>
+                    <includes>*,scripts/**,certs/**, logger/*.xml</includes>
+                    <excludes>Kubernetes</excludes>
+                  </artifactItem>
+                </artifactItems>
+              </configuration>
+            </execution>
+          </executions>
+        </plugin>
+        <plugin>
+          <groupId>org.apache.maven.plugins</groupId>
+          <artifactId>maven-jar-plugin</artifactId>
+          <version>3.0.2</version>
+          <executions>
+            <execution>
+              <id>tests</id>
+              <goals>
+                <goal>test-jar</goal>
+              </goals>
+              <configuration>
+                <skip>false</skip>
+              </configuration>
+            </execution>
+            <execution>
+              <id>original</id>
+              <phase>package</phase>
+              <goals>
+                <goal>jar</goal>
+              </goals>
+              <configuration>
+                <classifier>${originalClassifier}</classifier>
+                <includes>
+                  <include>**</include>
+                </includes>
+              </configuration>
+            </execution>
+          </executions>
+        </plugin>
+        <plugin>
+          <groupId>org.springframework.boot</groupId>
+          <artifactId>spring-boot-maven-plugin</artifactId>
+          <version>${springboot.version}</version>
+          <executions>
+            <execution>
+              <id>build-info</id>
+              <goals>
+                <goal>build-info</goal>
+              </goals>
+            </execution>
+          </executions>
+        </plugin>
+      </plugins>
+    </pluginManagement>
   </build>
   <!-- *********************************************************************************************************** -->
   <!-- Dependencies -->
     <dependency>
       <groupId>com.fasterxml.jackson.core</groupId>
       <artifactId>jackson-core</artifactId>
-      <version>2.8.7</version>
     </dependency>
     <dependency>
       <groupId>com.fasterxml.jackson.module</groupId>
       <artifactId>jackson-module-jaxb-annotations</artifactId>
-      <version>2.4.0</version>
     </dependency>
     <dependency>
       <groupId>com.fasterxml.jackson.core</groupId>
       <artifactId>jackson-databind</artifactId>
-      <version>2.8.7</version>
     </dependency>
     <dependency>
       <groupId>com.fasterxml.jackson.core</groupId>
       <artifactId>jackson-annotations</artifactId>
-      <version>2.8.7</version>
     </dependency>
     <dependency>
-        <groupId>com.fasterxml.jackson.jaxrs</groupId>
-        <artifactId>jackson-jaxrs-base</artifactId>
-        <version>2.9.2</version>
+      <groupId>com.fasterxml.jackson.jaxrs</groupId>
+      <artifactId>jackson-jaxrs-base</artifactId>
     </dependency>
     <dependency>
-        <groupId>com.fasterxml.jackson.jaxrs</groupId>
-        <artifactId>jackson-jaxrs-providers</artifactId>
-        <version>2.9.2</version>
-        <type>pom</type>
+      <groupId>com.fasterxml.jackson.jaxrs</groupId>
+      <artifactId>jackson-jaxrs-json-provider</artifactId>
     </dependency>
     <dependency>
-      <groupId>org.jboss.resteasy</groupId>
-      <artifactId>resteasy-jaxrs</artifactId>
-      <version>${resteasy.version}</version>
-      <scope>provided</scope>
-      <exclusions>
-        <exclusion>
-           <groupId>org.slf4j</groupId>
-           <artifactId>slf4j-api</artifactId>
-        </exclusion>
-        <exclusion>
-          <groupId>org.slf4j</groupId>
-          <artifactId>slf4j-simple</artifactId>
-        </exclusion>
-        <exclusion>
-          <groupId>org.apache.httpcomponents</groupId>
-          <artifactId>httpclient</artifactId>
-        </exclusion>
-          </exclusions>
+      <groupId>javax.ws.rs</groupId>
+      <artifactId>javax.ws.rs-api</artifactId>
+      <version>${jax.ws.rs}</version>
     </dependency>
     <dependency>
-       <groupId>org.jboss.resteasy</groupId>
-       <artifactId>resteasy-client</artifactId>
-       <version>${resteasy.version}</version>
-       <scope>provided</scope>
-       <exclusions>
-         <exclusion>
-           <groupId>org.apache.httpcomponents</groupId>
-           <artifactId>httpclient</artifactId>
-         </exclusion>
-      </exclusions>
+      <groupId>javax.annotation</groupId>
+      <artifactId>javax.annotation-api</artifactId>
+      <version>1.3.1</version>
     </dependency>
     <dependency>
-      <groupId>org.jboss.resteasy</groupId>
-      <artifactId>resteasy-jackson2-provider</artifactId>
-      <version>3.1.0.Final</version>
+      <groupId>javax.inject</groupId>
+      <artifactId>javax.inject</artifactId>
+      <version>1</version>
     </dependency>
-       <dependency>
-               <groupId>org.hamcrest</groupId>
-               <artifactId>hamcrest-core</artifactId>
-               <version>1.3</version>
-       </dependency>
-       <dependency>
-               <groupId>org.hamcrest</groupId>
-               <artifactId>hamcrest-all</artifactId>
-               <version>1.3</version>
-       </dependency>
-       <dependency>
-      <groupId>junit</groupId>
-      <artifactId>junit</artifactId>
-      <version>4.12</version>
-      <scope>test</scope>
+    <dependency>
+      <groupId>org.mockito</groupId>
+      <artifactId>mockito-core</artifactId>
     </dependency>
     <dependency>
-      <groupId>org.jmockit</groupId>
-      <artifactId>jmockit</artifactId>
-      <version>1.19</version>
-      <scope>test</scope>
+      <groupId>org.hamcrest</groupId>
+      <artifactId>hamcrest-core</artifactId>
     </dependency>
     <dependency>
-      <groupId>org.jmockit</groupId>
-      <artifactId>jmockit-coverage</artifactId>
-      <version>1.19</version>
-      <scope>test</scope>
+      <groupId>org.hamcrest</groupId>
+      <artifactId>hamcrest-library</artifactId>
     </dependency>
     <dependency>
-      <groupId>org.powermock</groupId>
-      <artifactId>powermock-api-mockito</artifactId>
-      <version>1.6.2</version>
+      <groupId>junit</groupId>
+      <artifactId>junit</artifactId>
       <scope>test</scope>
     </dependency>
     <dependency>
-      <groupId>org.powermock</groupId>
-      <artifactId>powermock-module-junit4</artifactId>
-      <version>1.6.2</version>
+      <groupId>xmlunit</groupId>
+      <artifactId>xmlunit</artifactId>
+      <version>1.6</version>
       <scope>test</scope>
     </dependency>
     <dependency>
       <groupId>com.github.tomakehurst</groupId>
-      <artifactId>wiremock</artifactId>
-      <version>1.56</version>
+      <artifactId>wiremock-standalone</artifactId>
+      <version>2.13.0</version>
       <scope>test</scope>
-      <classifier>standalone</classifier>
       <exclusions>
         <exclusion>
           <groupId>org.mortbay.jetty</groupId>
       </exclusions>
     </dependency>
     <dependency>
-      <groupId>org.jboss.resteasy</groupId>
-      <artifactId>tjws</artifactId>
-      <version>${resteasy.version}</version>
+      <groupId>com.openpojo</groupId>
+      <artifactId>openpojo</artifactId>
+      <version>0.8.10</version>
+    </dependency>
+    <dependency>
+      <groupId>com.shazam</groupId>
+      <artifactId>shazamcrest</artifactId>
+      <version>0.11</version>
+      <scope>test</scope>
+      <exclusions>
+        <exclusion>
+          <groupId>com.google.guava</groupId>
+          <artifactId>guava</artifactId>
+        </exclusion>
+        <exclusion>
+          <groupId>org.apache.commons</groupId>
+          <artifactId>commons-lang3</artifactId>
+        </exclusion>
+      </exclusions>
+    </dependency>
+    <dependency>
+      <groupId>org.assertj</groupId>
+      <artifactId>assertj-core</artifactId>
+      <version>3.11.1</version>
       <scope>test</scope>
     </dependency>
+    <dependency>
+      <groupId>com.googlecode.junit-toolbox</groupId>
+      <artifactId>junit-toolbox</artifactId>
+      <version>2.4</version>
+    </dependency>
   </dependencies>
   <dependencyManagement>
     <dependencies>
       <!-- https://mvnrepository.com/artifact/org.apache.httpcomponents/httpclient -->
-      <!-- force use of version 4.5 everywhere in transient deps, aligned 
-        on WildFly 10 version -->
-      <dependency>
-        <groupId>org.apache.httpcomponents</groupId>
-        <artifactId>httpclient</artifactId>
-        <version>4.5.5</version>
-        <scope>compile</scope>
-      </dependency>
+      <!-- force use of version 4.5 everywhere in transient deps, aligned on WildFly 10 version -->
       <dependency>
         <groupId>org.apache.httpcomponents</groupId>
         <artifactId>httpcore</artifactId>
         <scope>compile</scope>
       </dependency>
       <dependency>
-        <groupId>log4j</groupId>
-        <artifactId>log4j</artifactId>
-        <version>1.2.17</version>
+        <groupId>com.sun.xml.fastinfoset</groupId>
+        <artifactId>FastInfoset</artifactId>
+        <version>1.2.13</version>
         <scope>compile</scope>
       </dependency>
       <dependency>
-        <groupId>org.slf4j</groupId>
-        <artifactId>slf4j-api</artifactId>
-        <version>1.7.10</version>
-        <scope>compile</scope>
+        <groupId>org.springframework.boot</groupId>
+        <artifactId>spring-boot-dependencies</artifactId>
+        <version>${springboot.version}</version>
+        <type>pom</type>
+        <scope>import</scope>
       </dependency>
       <dependency>
-        <groupId>com.sun.xml.fastinfoset</groupId>
-        <artifactId>FastInfoset</artifactId>
-        <version>1.2.13</version>
-        <scope>compile</scope>
+        <groupId>org.yaml</groupId>
+        <artifactId>snakeyaml</artifactId>
+        <version>1.23</version>
+      </dependency>
+      <dependency>
+        <groupId>javax.interceptor</groupId>
+        <artifactId>javax.interceptor-api</artifactId>
+        <version>1.2.2</version>
+      </dependency>
+      <dependency>
+        <groupId>org.springframework.boot</groupId>
+        <artifactId>spring-boot-starter-test</artifactId>
+        <version>${springboot.version}</version>
+        <exclusions>
+          <exclusion>
+            <groupId>com.vaadin.external.google</groupId>
+            <artifactId>android-json</artifactId>
+          </exclusion>
+        </exclusions>
+      </dependency>
+      <dependency>
+        <groupId>net.javacrumbs.shedlock</groupId>
+        <artifactId>shedlock-spring</artifactId>
+        <version>0.18.2</version>
+      </dependency>
+      <dependency>
+        <groupId>net.javacrumbs.shedlock</groupId>
+        <artifactId>shedlock-provider-jdbc-template</artifactId>
+        <version>0.18.2</version>
+      </dependency>
+      <dependency>
+        <groupId>org.flywaydb</groupId>
+        <artifactId>flyway-core</artifactId>
+        <version>5.1.4</version>
+      </dependency>
+      <dependency>
+        <groupId>org.json</groupId>
+        <artifactId>json</artifactId>
+        <version>20140107</version>
+      </dependency>
+      <dependency>
+        <groupId>org.yaml</groupId>
+        <artifactId>snakeyaml</artifactId>
+        <version>1.19</version>
       </dependency>
-         <dependency>
-               <groupId>org.mockito</groupId>
-               <artifactId>mockito-core</artifactId>
-               <version>1.10.19</version>
-               <scope>test</scope>
-         </dependency>
     </dependencies>
   </dependencyManagement>
+  <profiles>
+    <profile>
+      <id>docker-image-build</id>
+      <properties>
+        <docker.skip>false</docker.skip>
+        <docker.skip.build>false</docker.skip.build>
+        <fabric8.skipResourceValidation>true</fabric8.skipResourceValidation>
+      </properties>
+    </profile>
+    <profile>
+      <id>docker-image-build-push</id>
+      <properties>
+        <docker.skip>false</docker.skip>
+        <docker.skip.build>false</docker.skip.build>
+        <docker.skip.push>false</docker.skip.push>
+        <fabric8.skipResourceValidation>true</fabric8.skipResourceValidation>
+      </properties>
+    </profile>
+    <profile>
+      <id>format</id>
+      <properties>
+        <format.skipValidate>true</format.skipValidate>
+        <format.skipExecute>false</format.skipExecute>
+      </properties>
+    </profile>
+    <profile>
+      <id>m2e</id>
+      <activation>
+        <property>
+          <name>m2e.version</name>
+        </property>
+      </activation>
+      <properties>
+        <originalClassifier />
+      </properties>
+    </profile>
+  </profiles>
 </project>