<?xml version="1.0"?>
<project
        xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
        xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <modelVersion>4.0.0</modelVersion>

    <!-- This is the Maven project object model (POM) file for VID web application
        based on the ECOMP SDK distribution. This file stands alone; it does not
        inherit from a parent maven module. -->
    <groupId>org.onap.vid</groupId>
    <artifactId>vid-app-common</artifactId>
    <version>6.0.3-SNAPSHOT</version>
    <packaging>war</packaging>
    <name>VID Common</name>
    <description>VID Common code for opensource version</description>

    <parent>
        <groupId>org.onap.oparent</groupId>
        <artifactId>oparent</artifactId>
        <version>2.1.0</version>
        <relativePath/>
    </parent>

    <properties>
        <encoding>UTF-8</encoding>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        <epsdk.version>2.6.0</epsdk.version>
        <epsdk.overlay.version>2.5.0</epsdk.overlay.version>
        <springframework.version>5.2.3.RELEASE</springframework.version>
        <springframework.orm.version>4.3.22.RELEASE</springframework.orm.version>
        <!-- epsdk-core is importing this class, which is only on spring-orm 4 but not in orm 5:
         org.springframework.orm.hibernate4.HibernateTransactionManager
         so following orm.version lets epsdk-core find it -->
        <hibernate.version>4.3.11.Final</hibernate.version>
        <jackson.version>2.10.1</jackson.version>
        <jackson.databind.version>2.10.1</jackson.databind.version>
        <onap.logging.version>1.6.1</onap.logging.version>
        <jersey.version>2.29.1</jersey.version>
        <surefire.version>2.22.1</surefire.version>
        <selenium.version>3.141.59</selenium.version>
        <sonar.coverage.exclusions>**/webapp/**/*,**/*.js</sonar.coverage.exclusions>

        <!--Specify path to load jacoco xml report, as Sonar can't load Kotlin coverage from binary report. -->
        <sonar.coverage.jacoco.xmlReportPaths>
            ${project.reporting.outputDirectory}/jacoco-ut/jacoco.xml
        </sonar.coverage.jacoco.xmlReportPaths>

        <!-- Skip assembling the zip by default -->
        <skipassembly>true</skipassembly>
        <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/vid/${project.version}</sitePath>

        <aspectj.version>1.8.9</aspectj.version>
        <kotlin.version>1.3.60</kotlin.version>
        <kotlin.compiler.jvmTarget>1.8</kotlin.compiler.jvmTarget>

        <eirslett.version>1.6</eirslett.version>
        <node.version>v8.9.4</node.version>
        <npm.version>5.6.0</npm.version>

        <!-- override using -Drelease_version=foo -Dpatch_version=bar -->
        <release_version>${env.release_version}</release_version>
        <patch_version/>

        <reportportal.argline>-javaagent:${settings.localRepository}/org/aspectj/aspectjweaver/${aspectj.version}/aspectjweaver-${aspectj.version}.jar -Drp.enable=true -Drp.mode=DEFAULT -Drp.tags="CICD;BE_UNIT;BUILD_${env.BUILD_NUMBER}"</reportportal.argline>
        <frontendTestsPhase>generate-resources</frontendTestsPhase>

    </properties>

    <profiles>
        <profile>
            <id>no-frontend-tests</id>
            <properties>
                <frontendTestsPhase>none</frontendTestsPhase>
            </properties>
        </profile>
    </profiles>


    <!-- this should be commented for local debugging -->
    <!-- <deployenv>local</deployenv> -->

    <repositories>
        <repository>
            <id>ecomp-releases</id>
            <name>VID Release Repository</name>
            <url>${nexusproxy}/${releaseNexusPath}</url>
        </repository>
        <repository>
            <id>ecomp-snapshots</id>
            <name>VID Snapshot Repository</name>
            <url>${nexusproxy}/${snapshotNexusPath}</url>
        </repository>
        <repository>
            <id>ecomp-staging</id>
            <name>VID Staging Repository</name>
            <url>${nexusproxy}/${stagingNexusPath}</url>
        </repository>
        <repository>
            <!-- Snapshots repository has ECOMP snapshot artifacts -->
            <id>oss-snapshots</id>
            <name>oss Central - Snapshots</name>
            <url>https://oss.sonatype.org/service/local/repositories/releases/content/</url>
        </repository>

    </repositories>
    <distributionManagement>
        <repository>
            <id>ecomp-releases</id>
            <name>VID Release Repository</name>
            <url>${nexusproxy}/${releaseNexusPath}</url>
        </repository>
        <snapshotRepository>
            <id>ecomp-snapshots</id>
            <name>VID Snapshot Repository</name>
            <url>${nexusproxy}/${snapshotNexusPath}</url>
        </snapshotRepository>
        <!-- added for javadoc -->
        <site>
            <id>ecomp-site</id>
            <url>dav:${nexusproxy}/${sitePath}</url>
        </site>
    </distributionManagement>

    <build>
        <finalName>vid-common</finalName>

        <plugins>

            <plugin>
                <artifactId>kotlin-maven-plugin</artifactId>
                <groupId>org.jetbrains.kotlin</groupId>
                <version>${kotlin.version}</version>
                <executions>
                    <execution>
                        <id>compile</id>
                        <goals> <goal>compile</goal> </goals>
                        <configuration>
                            <sourceDirs>
                                <sourceDir>${project.basedir}/src/main/java</sourceDir>
                            </sourceDirs>
                        </configuration>
                    </execution>
                    <execution>
                        <id>test-compile</id>
                        <goals> <goal>test-compile</goal> </goals>
                        <configuration>
                            <sourceDirs>
                                <sourceDir>${project.basedir}/src/test/java</sourceDir>
                            </sourceDirs>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.sonarsource.scanner.maven</groupId>
                <artifactId>sonar-maven-plugin</artifactId>
                <version>3.6.0.1398</version>
            </plugin>
            <plugin>
                <groupId>org.jacoco</groupId>
                <artifactId>jacoco-maven-plugin</artifactId>
                <version>0.8.4</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.apache.tomcat.maven</groupId>
                <artifactId>tomcat6-maven-plugin</artifactId>
                <version>2.2</version>
            </plugin>
            <plugin>
                <groupId>org.apache.tomcat.maven</groupId>
                <artifactId>tomcat7-maven-plugin</artifactId>
                <version>2.2</version>
            </plugin>

            <plugin>
                <groupId>com.github.eirslett</groupId>
                <artifactId>frontend-maven-plugin</artifactId>
                <version>${eirslett.version}</version>
                <executions>
                    <execution>
                        <id>install node and npm</id>
                        <goals>
                            <goal>install-node-and-npm</goal>
                        </goals>
                        <phase>${frontendTestsPhase}</phase>
                        <configuration>
                            <npmVersion>${npm.version}</npmVersion>
                            <nodeVersion>${node.version}</nodeVersion>
                        </configuration>
                    </execution>
                    <execution>
                        <id>npm config list</id>
                        <configuration>
                            <arguments>config ls -l</arguments>
                        </configuration>
                        <goals>
                            <goal>npm</goal>
                        </goals>
                        <phase>${frontendTestsPhase}</phase>
                    </execution>
                    <execution>
                        <id>npm install</id>
                        <configuration>
                            <arguments>install</arguments>
                        </configuration>
                        <goals>
                            <goal>npm</goal>
                        </goals>
                        <phase>${frontendTestsPhase}</phase>
                    </execution>
                    <execution>
                        <id>npm run-script build</id>
                        <configuration>
                            <arguments>run-script build</arguments>
                        </configuration>
                        <goals>
                            <goal>npm</goal>
                        </goals>
                        <phase>${frontendTestsPhase}</phase>
                    </execution>
                </executions>
            </plugin>

            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.5.1</version>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                </configuration>

                <executions>
                    <!-- Replacing default-compile as it is treated specially by maven -->
                    <execution>
                        <id>default-compile</id>
                        <phase>none</phase>
                    </execution>
                    <!-- Replacing default-testCompile as it is treated specially by maven -->
                    <execution>
                        <id>default-testCompile</id>
                        <phase>none</phase>
                    </execution>
                    <execution>
                        <id>java-compile</id>
                        <phase>compile</phase>
                        <goals> <goal>compile</goal> </goals>
                    </execution>
                    <execution>
                        <id>java-test-compile</id>
                        <phase>test-compile</phase>
                        <goals> <goal>testCompile</goal> </goals>
                    </execution>
                </executions>

            </plugin>

            <plugin>
                <groupId>com.google.code.maven-replacer-plugin</groupId>
                <artifactId>replacer</artifactId>
                <version>1.5.3</version>
                <executions>
                    <execution>
                        <phase>prepare-package</phase>
                        <goals>
                            <goal>replace</goal>
                        </goals>
                    </execution>
                </executions>
                <configuration>
                    <regex>false</regex>
                    <file>${project.basedir}/src/main/webapp/app/vid/scripts/constants/version.json</file>
                    <replacements>
                        <replacement>
                            <token>BUILD_NUMBER</token>
                            <value>${release_version}.${patch_version}.${env.BUILD_NUMBER}</value>
                        </replacement>
                    </replacements>
                </configuration>
            </plugin>

            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-surefire-plugin</artifactId>
                <version>${surefire.version}</version>
                <configuration>
                    <includes>
                        <include>**/Test*.java</include>
                        <include>**/*Test.java</include>
                        <include>**/*TestCase.java</include>
                    </includes>
                    <excludes>
                        <exclude>**/selenium/*.java</exclude>
                        <exclude>**/integrationTest/*.java</exclude>
                    </excludes>
                    <additionalClasspathElements>
                        <additionalClasspathElement>${basedir}/war</additionalClasspathElement>
                    </additionalClasspathElements>
                    <systemPropertyVariables>
                        <container.classpath>classpath:</container.classpath>
                    </systemPropertyVariables>
                    <useSystemClassLoader>false</useSystemClassLoader>
                    <properties>
                        <property>
                            <!-- avoid running JUnit tests within surefire-testng provider -->
                            <name>junit</name>
                            <value>false</value>
                        </property>
                        <property>
                            <name>usedefaultlisteners</name>
                            <value>false</value>
                        </property>
                    </properties>
                    <threadCount>1</threadCount>
                </configuration>
                <dependencies>
                    <!-- Running TestNG and JUnit Tests -->
                    <!-- https://maven.apache.org/surefire/maven-surefire-plugin/examples/testng.html -->
                    <dependency>
                        <groupId>org.apache.maven.surefire</groupId>
                        <artifactId>surefire-junit47</artifactId>
                        <version>${surefire.version}</version>
                    </dependency>
                    <dependency>
                        <groupId>org.apache.maven.surefire</groupId>
                        <artifactId>surefire-testng</artifactId>
                        <version>${surefire.version}</version>
                    </dependency>
                </dependencies>
            </plugin>

            <plugin>
                <artifactId>maven-assembly-plugin</artifactId>
                <configuration>
                    <skipAssembly>${skipassembly}</skipAssembly>
                    <descriptors>
                        <descriptor>${basedir}/distribution.xml</descriptor>
                    </descriptors>
                </configuration>
                <executions>
                    <execution>
                        <id>make-assembly</id>
                        <phase>package</phase>
                        <goals>
                            <goal>single</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>


            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-war-plugin</artifactId>
                <version>3.0.0</version>
                <configuration>
                    <!-- Build a jar with all the Java classes -->
                    <attachClasses>true</attachClasses>
                    <!-- Do not put any jars in the war -->
                    <packagingExcludes>WEB-INF/lib/*.jar</packagingExcludes>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-site-plugin</artifactId>
                <version>3.6</version>
                <dependencies>
                    <dependency>
                        <groupId>org.apache.maven.wagon</groupId>
                        <artifactId>wagon-webdav-jackrabbit</artifactId>
                        <version>2.10</version>
                    </dependency>
                </dependencies>
            </plugin>
            <plugin>
                <groupId>pl.project13.maven</groupId>
                <artifactId>git-commit-id-plugin</artifactId>
                <version>2.2.4</version>
                <executions>
                    <execution>
                        <id>get-the-git-infos</id>
                        <goals>
                            <goal>revision</goal>
                        </goals>
                    </execution>
                </executions>
                <configuration>
                    <dotGitDirectory>${project.basedir}/.git</dotGitDirectory>
                    <dateFormat>yyyy-MM-dd'T'HH:mm:ssZ</dateFormat>
                    <dateFormatTimeZone>${user.timezone}</dateFormatTimeZone>
                    <generateGitPropertiesFile>true</generateGitPropertiesFile>
                    <generateGitPropertiesFilename>${project.build.outputDirectory}/git.properties</generateGitPropertiesFilename>
                    <includeOnlyProperties>
                        <includeOnlyProperty>^git.commit.id$</includeOnlyProperty>
                        <includeOnlyProperty>^git.commit.message.short$</includeOnlyProperty>
                        <includeOnlyProperty>^git.commit.time$</includeOnlyProperty>
                    </includeOnlyProperties>
                </configuration>
            </plugin>

            <plugin>
                <!--
                Replace phase "none" with "process-sources" to enable.
                Set organizationName as desired.
                Then run `mvn license:check-file-header`, or even `mvn
                license:update-file-header`.
                -->
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>license-maven-plugin</artifactId>
                <version>1.17</version>

                <executions>
                    <execution>
                        <id>first</id>
                        <goals>
                            <goal>update-file-header</goal>
                        </goals>
                        <!-- replace phase "none" with "process-sources" to enable -->
                        <phase>none</phase>
                    </execution>
                </executions>

                <configuration>
                    <canUpdateCopyright>false</canUpdateCopyright>
                    <canUpdateDescription>false</canUpdateDescription>
                    <licenseName>apache_v2</licenseName>
                    <processStartTag>============LICENSE_START=======================================================</processStartTag>
                    <processEndTag>============LICENSE_END=========================================================</processEndTag>
                    <sectionDelimiter>================================================================================</sectionDelimiter>
                    <projectName>VID</projectName>
                    <inceptionYear>2017</inceptionYear>
                    <organizationName>AT&amp;T Intellectual Property. All rights reserved.</organizationName>
                    <canUpdateLicense>true</canUpdateLicense>
                    <addJavaLicenseAfterPackage>false</addJavaLicenseAfterPackage>
                    <emptyLineAfterHeader>true</emptyLineAfterHeader>
                    <verbose>false</verbose>

                    <includes>
                        <include>**/*.java</include>
                        <include>**/*.kt</include>
                        <include>**/*.jsp</include>
                        <include>**/*.xml</include>
                        <include>**/*.js</include>
                        <include>**/*.ts</include>
                        <include>**/*.html</include>
                        <include>**/*.css</include>
                        <include>**/*.sql</include>
                    </includes>

                    <extraExtensions>
                        <sql>mysql</sql>
                    </extraExtensions>

                    <roots>
                        <root>src/main</root>
                        <root>src/test</root>
                    </roots>

                    <excludes>
                        <exclude>**/app/vid/external/**/*</exclude>
                        <exclude>**/main/webapp/WEB-INF/**/*</exclude>
                        <exclude>**/test/resources/WEB-INF/**/*</exclude>
                        <exclude>**/app/vid/scripts/angular-ui-tree.js</exclude>
                    </excludes>

                </configuration>
            </plugin>

        </plugins>
    </build>

    <reporting>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-javadoc-plugin</artifactId>
                <version>2.10.4</version>
                <configuration>
                    <failOnError>false</failOnError>
                    <doclet>org.umlgraph.doclet.UmlGraphDoc</doclet>
                    <docletArtifact>
                        <groupId>org.umlgraph</groupId>
                        <artifactId>umlgraph</artifactId>
                        <version>5.6</version>
                    </docletArtifact>
                    <additionalparam>-views</additionalparam>
                    <useStandardDocletOptions>true</useStandardDocletOptions>
                </configuration>
            </plugin>
        </plugins>
    </reporting>

    <dependencies>

        <dependency>
            <groupId>com.opencsv</groupId>
            <artifactId>opencsv</artifactId>
            <version>4.6</version>
        </dependency>

        <!-- HTTP client -->

        <dependency>
            <groupId>io.joshworks.unirest</groupId>
            <artifactId>unirest-java</artifactId>
            <version>0.2.1</version>
        </dependency>
        <dependency>
            <groupId>org.apache.httpcomponents</groupId>
            <artifactId>httpclient</artifactId>
            <version>4.5.9</version>
        </dependency>
        <dependency>
            <groupId>org.apache.httpcomponents</groupId>
            <artifactId>httpasyncclient</artifactId>
            <version>4.1.4</version>
        </dependency>
        <dependency>
            <groupId>org.apache.httpcomponents</groupId>
            <artifactId>httpmime</artifactId>
            <version>4.5.9</version>
        </dependency>
        <dependency>
            <groupId>com.xebialabs.restito</groupId>
            <artifactId>restito</artifactId>
            <version>0.9.3</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.jeasy</groupId>
            <artifactId>easy-random-core</artifactId>
            <version>4.0.0</version>
            <scope>test</scope>
        </dependency>

        <!-- Helpers -->
        <dependency>
            <groupId>io.vavr</groupId>
            <artifactId>vavr</artifactId>
            <version>0.10.2</version>
        </dependency>

        <!-- SDK overlay war -->
        <dependency>
            <groupId>org.onap.portal.sdk</groupId>
            <artifactId>epsdk-app-overlay</artifactId>
            <version>${epsdk.overlay.version}</version>
            <type>war</type>
        </dependency>
        <dependency>
            <groupId>org.onap.portal.sdk</groupId>
            <artifactId>epsdk-app-common</artifactId>
            <version>${epsdk.version}</version>
            <type>jar</type>
        </dependency>

        <dependency>
            <groupId>org.onap.portal.sdk</groupId>
            <artifactId>epsdk-core</artifactId>
            <version>${epsdk.version}</version>
        </dependency>
        <dependency>
            <groupId>org.onap.portal.sdk</groupId>
            <artifactId>epsdk-analytics</artifactId>
            <version>${epsdk.version}</version>
            <exclusions>
                <exclusion>
                    <groupId>com.lowagie</groupId>
                    <artifactId>itext</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>org.onap.portal.sdk</groupId>
            <artifactId>epsdk-workflow</artifactId>
            <version>${epsdk.version}</version>
        </dependency>
        <dependency>
            <groupId>com.att.eelf</groupId>
            <artifactId>eelf-core</artifactId>
            <version>1.0.0</version>
            <exclusions>
                <exclusion>
                    <artifactId>powermock-api-mockito</artifactId>
                    <groupId>org.powermock</groupId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>ch.qos.logback</groupId>
            <artifactId>logback-classic</artifactId>
        </dependency>
        <dependency>
            <groupId>org.onap.logging-analytics</groupId>
            <artifactId>logging-filter-base</artifactId>
            <version>${onap.logging.version}</version>
        </dependency>
        <dependency>
            <groupId>org.onap.logging-analytics</groupId>
            <artifactId>logging-filter-spring</artifactId>
            <version>${onap.logging.version}</version>
        </dependency>

        <dependency>
            <groupId>org.jetbrains.kotlin</groupId>
            <artifactId>kotlin-stdlib-jdk8</artifactId>
            <version>${kotlin.version}</version>
        </dependency>

        <!-- Mapper -->
        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-annotations</artifactId>
            <version>${jackson.version}</version>
        </dependency>
        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-core</artifactId>
            <version>${jackson.version}</version>
        </dependency>
        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-databind</artifactId>
            <version>${jackson.databind.version}</version>
        </dependency>
        <dependency>
            <groupId>com.fasterxml.jackson.module</groupId>
            <artifactId>jackson-module-kotlin</artifactId>
            <version>${jackson.version}</version>
        </dependency>
        <!-- c3p0 is to override epsdk-app-common's c3p0 0.9.5.2 vulnerability -->
        <dependency>
            <groupId>com.mchange</groupId>
            <artifactId>c3p0</artifactId>
            <version>0.9.5.4</version>
        </dependency>
        <dependency>
            <groupId>io.searchbox</groupId>
            <artifactId>jest</artifactId>
            <version>6.3.1</version>
            <exclusions>
                <exclusion>
                    <groupId>commons-logging</groupId>
                    <artifactId>commons-logging</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>javax.servlet-api</artifactId>
            <version>4.0.1</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.12</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>commons-io</groupId>
            <artifactId>commons-io</artifactId>
            <version>2.6</version>
            <!--<scope>test</scope>-->
        </dependency>
        <dependency>
            <groupId>com.google.code.bean-matchers</groupId>
            <artifactId>bean-matchers</artifactId>
            <version>0.11</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.json</groupId>
            <artifactId>json</artifactId>
            <version>20190722</version>
        </dependency>
        <dependency>
            <groupId>org.quartz-scheduler</groupId>
            <artifactId>quartz</artifactId>
            <version>2.3.1</version>
            <exclusions>
                <!-- exclude 0.9.1.1 to avoid dupe of com.mchange:c3p0:0.9.2.1 -->
                <exclusion>
                    <groupId>c3p0</groupId>
                    <artifactId>c3p0</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        <!-- bridge to implement commons-logging using slf4j -->
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>jcl-over-slf4j</artifactId>
            <version>1.7.27</version>
        </dependency>

        <!-- springframework to override epsdk-app-common's and epsdk-core's versions -->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-core</artifactId>
            <version>${springframework.version}</version>
            <exclusions>
                <exclusion>
                    <groupId>commons-logging</groupId>
                    <artifactId>commons-logging</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-test</artifactId>
            <version>${springframework.version}</version>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-tx</artifactId>
            <version>${springframework.version}</version>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-web</artifactId>
            <version>${springframework.version}</version>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-webmvc</artifactId>
            <version>${springframework.version}</version>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context-support</artifactId>
            <version>${springframework.version}</version>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-orm</artifactId>
            <version>${springframework.orm.version}</version>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-aop</artifactId>
            <version>${springframework.version}</version>
        </dependency>

        <dependency>
            <groupId>org.glassfish.jersey.core</groupId>
            <artifactId>jersey-client</artifactId>
            <version>${jersey.version}</version>
        </dependency>
        <dependency>
            <groupId>org.glassfish.jersey.connectors</groupId>
            <artifactId>jersey-jetty-connector</artifactId>
            <version>${jersey.version}</version>
        </dependency>
        <!--https://stackoverflow.com/questions/44088493/jersey-stopped-working-with-injectionmanagerfactory-not-found-->
        <dependency>
            <groupId>org.glassfish.jersey.inject</groupId>
            <artifactId>jersey-hk2</artifactId>
            <version>${jersey.version}</version>
        </dependency>
        <dependency>
            <groupId>com.fasterxml.jackson.jaxrs</groupId>
            <artifactId>jackson-jaxrs-json-provider</artifactId>
            <version>${jackson.version}</version>
        </dependency>
        <dependency>
            <groupId>commons-beanutils</groupId>
            <artifactId>commons-beanutils</artifactId>
        </dependency>
        <dependency>
            <groupId>com.googlecode.json-simple</groupId>
            <artifactId>json-simple</artifactId>
            <version>1.1.1</version>
        </dependency>
        <dependency>
            <groupId>org.seleniumhq.selenium</groupId>
            <artifactId>selenium-java</artifactId>
            <version>${selenium.version}</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.seleniumhq.selenium</groupId>
            <artifactId>selenium-api</artifactId>
            <version>${selenium.version}</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.testng</groupId>
            <artifactId>testng</artifactId>
            <version>6.14.3</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.mockito</groupId>
            <artifactId>mockito-core</artifactId>
            <version>2.23.0</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.seleniumhq.selenium</groupId>
            <artifactId>selenium-firefox-driver</artifactId>
            <version>${selenium.version}</version>
        </dependency>
        <dependency>
            <groupId>xml-apis</groupId>
            <artifactId>xml-apis</artifactId>
            <version>2.0.2</version>
        </dependency>
        <dependency>
            <groupId>org.yaml</groupId>
            <artifactId>snakeyaml</artifactId>
            <version>1.24</version>
        </dependency>
        <dependency>
            <groupId>org.skyscreamer</groupId>
            <artifactId>jsonassert</artifactId>
            <version>1.5.0</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.onap.sdc.sdc-tosca</groupId>
            <artifactId>sdc-tosca</artifactId>
            <version>1.6.0</version>
            <scope>compile</scope>
        </dependency>
        <dependency>
            <groupId>net.javacrumbs.json-unit</groupId>
            <artifactId>json-unit</artifactId>
            <version>2.8.0</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.glassfish.jersey.media</groupId>
            <artifactId>jersey-media-json-jackson</artifactId>
            <version>${jersey.version}</version>
                <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-lang3</artifactId>
            <version>3.9</version>
        </dependency>
        <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-text</artifactId>
            <version>1.7</version>
        </dependency>
        <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-proxy</artifactId>
            <version>1.0</version>
        </dependency>
        <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-collections4</artifactId>
            <version>4.4</version>
        </dependency>
        <dependency>
            <groupId>commons-cli</groupId>
            <artifactId>commons-cli</artifactId>
            <version>1.4</version>
        </dependency>
        <dependency>
            <groupId>org.hamcrest</groupId>
            <artifactId>java-hamcrest</artifactId>
            <version>2.0.0.0</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.togglz</groupId>
            <artifactId>togglz-spring-core</artifactId>
            <version>2.6.1.Final</version>
        </dependency>
        <dependency>
            <groupId>com.h2database</groupId>
            <artifactId>h2</artifactId>
            <version>1.4.199</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>javax.xml.bind</groupId>
            <artifactId>jaxb-api</artifactId>
            <version>2.3.1</version>
        </dependency>

        <dependency>
            <groupId>org.assertj</groupId>
            <artifactId>assertj-core</artifactId>
            <version>3.13.2</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>com.google.guava</groupId>
            <artifactId>guava</artifactId>
            <version>28.0-jre</version>
        </dependency>
        <dependency>
            <groupId>io.springfox</groupId>
            <artifactId>springfox-swagger2</artifactId>
            <version>2.9.2</version>
        </dependency>
        <dependency>
            <groupId>org.apache.maven</groupId>
            <artifactId>maven-artifact</artifactId>
            <version>3.6.1</version>
        </dependency>
    </dependencies>
</project>