<?xml version="1.0" encoding="UTF-8"?>
<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.springframework.boot</groupId>
            <artifactId>spring-boot-starter-parent</artifactId>
            <version>2.2.1.RELEASE</version>
            <relativePath/> <!-- lookup parent from repository -->
      </parent>
      <groupId>org.onap</groupId>
      <artifactId>portal</artifactId>
      <version>0.0.1-SNAPSHOT</version>
      <name>portal-BE</name>
      <packaging>jar</packaging>
      <description></description>

      <dependencies>
            <dependency>
                  <groupId>org.springframework.boot</groupId>
                  <artifactId>spring-boot-starter-actuator</artifactId>
            </dependency>
            <dependency>
                  <groupId>org.springframework.boot</groupId>
                  <artifactId>spring-boot-starter-data-jpa</artifactId>
            </dependency>
            <dependency>
                  <groupId>org.springframework.boot</groupId>
                  <artifactId>spring-boot-starter-security</artifactId>
            </dependency>
            <dependency>
                  <groupId>org.springframework.boot</groupId>
                  <artifactId>spring-boot-starter-thymeleaf</artifactId>
            </dependency>
            <dependency>
                  <groupId>org.springframework.boot</groupId>
                  <artifactId>spring-boot-starter-web</artifactId>
            </dependency>
            <dependency>
                  <groupId>org.springframework.session</groupId>
                  <artifactId>spring-session-core</artifactId>
            </dependency>
            <dependency>
                  <groupId>org.springframework.boot</groupId>
                  <artifactId>spring-boot-devtools</artifactId>
                  <scope>runtime</scope>
                  <optional>true</optional>
            </dependency>
            <dependency>
                  <groupId>org.springframework.boot</groupId>
                  <artifactId>spring-boot-starter-aop</artifactId>
                  <version>2.1.6.RELEASE</version>
            </dependency>
            <!-- https://mvnrepository.com/artifact/org.springframework/spring-context-support -->
            <dependency>
                  <groupId>org.springframework</groupId>
                  <artifactId>spring-context-support</artifactId>
                  <version>5.2.0.RELEASE</version>
            </dependency>
            <dependency>
                  <groupId>com.h2database</groupId>
                  <artifactId>h2</artifactId>
                  <scope>runtime</scope>
            </dependency>
            <!-- https://mvnrepository.com/artifact/org.mariadb.jdbc/mariadb-java-client -->
            <dependency>
                  <groupId>org.mariadb.jdbc</groupId>
                  <artifactId>mariadb-java-client</artifactId>
                  <version>2.5.0</version>
            </dependency>
            <!-- https://mvnrepository.com/artifact/org.glassfish/javax.el -->
            <dependency>
                  <groupId>org.glassfish</groupId>
                  <artifactId>javax.el</artifactId>
                  <version>3.0.1-b11</version>
            </dependency>
            <!-- https://mvnrepository.com/artifact/javax.el/el-api -->
            <dependency>
                  <groupId>javax.el</groupId>
                  <artifactId>el-api</artifactId>
                  <version>2.2.1-b04</version>
            </dependency>
            <!-- https://mvnrepository.com/artifact/org.jsoup/jsoup -->
            <dependency>
                  <groupId>org.jsoup</groupId>
                  <artifactId>jsoup</artifactId>
                  <version>1.12.1</version>
            </dependency>
            <dependency>
                  <groupId>org.projectlombok</groupId>
                  <artifactId>lombok</artifactId>
                  <optional>true</optional>
            </dependency>
            <dependency>
                  <groupId>org.powermock</groupId>
                  <artifactId>powermock-module-junit4</artifactId>
                  <version>2.0.0</version>
                  <scope>test</scope>
            </dependency>

            <dependency>
                  <groupId>org.powermock</groupId>
                  <artifactId>powermock-api-mockito2</artifactId>
                  <version>2.0.0</version>
                  <scope>test</scope>
            </dependency>
            <dependency>
                  <groupId>org.onap.portal.sdk</groupId>
                  <artifactId>epsdk-logger</artifactId>
                  <version>2.6.0</version>
            </dependency>
            <dependency>
                  <groupId>org.onap.portal.sdk</groupId>
                  <artifactId>epsdk-core</artifactId>
                  <version>2.6.0</version>
            </dependency>
            <dependency>
                  <groupId>org.springframework.boot</groupId>
                  <artifactId>spring-boot-starter-test</artifactId>
                  <scope>test</scope>
                  <exclusions>
                        <exclusion>
                              <groupId>org.junit.vintage</groupId>
                              <artifactId>junit-vintage-engine</artifactId>
                        </exclusion>
                        <exclusion>
                              <groupId>junit</groupId>
                              <artifactId>junit</artifactId>
                        </exclusion>
                  </exclusions>
            </dependency>
            <dependency>
                  <groupId>org.springframework.security</groupId>
                  <artifactId>spring-security-test</artifactId>
                  <scope>test</scope>
            </dependency>
            <dependency>
                  <groupId>javax.servlet</groupId>
                  <artifactId>javax.servlet-api</artifactId>
                  <version>4.0.1</version>
                  <scope>compile</scope>
            </dependency>
            <dependency>
                  <groupId>org.apache.cxf</groupId>
                  <artifactId>cxf-rt-rs-client</artifactId>
                  <version>3.3.4</version>
                  <scope>compile</scope>
            </dependency>
          <dependency>
              <groupId>org.hibernate.validator</groupId>
              <artifactId>hibernate-validator</artifactId>
              <version>6.0.18.Final</version>
              <scope>compile</scope>
          </dependency>
            <dependency>
                  <groupId>io.swagger</groupId>
                  <artifactId>swagger-annotations</artifactId>
                  <version>1.5.13</version>
                  <scope>compile</scope>
            </dependency>
        <dependency>
          <groupId>org.glassfish.jersey.core</groupId>
          <artifactId>jersey-client</artifactId>
          <version>2.29.1</version>
          <scope>compile</scope>
        </dependency>
        <dependency>
          <groupId>org.eclipse.jetty</groupId>
          <artifactId>jetty-util</artifactId>
          <version>9.4.18.v20190429</version>
          <scope>compile</scope>
        </dependency>
        <dependency>
          <groupId>com.fasterxml.jackson.jaxrs</groupId>
          <artifactId>jackson-jaxrs-json-provider</artifactId>
          <version>2.10.0</version>
          <scope>compile</scope>
        </dependency>
        <dependency>
          <groupId>org.onap.portal.sdk</groupId>
          <artifactId>epsdk-app-common</artifactId>
          <version>2.6.0</version>
          <scope>compile</scope>
        </dependency>
      </dependencies>
      <properties>
            <docker.image.prefix>portal</docker.image.prefix>
            <sonar.coverage.jacoco.xmlReportPaths>${project.reporting.outputDirectory}/jacoco-ut/jacoco.xml,${project.reporting.outputDirectory}/jacoco-it/jacoco.xml</sonar.coverage.jacoco.xmlReportPaths>
			<sonar.skip>true</sonar.skip>
      </properties>
      <build>
            <plugins>
                  <plugin>
                        <groupId>org.springframework.boot</groupId>
                        <artifactId>spring-boot-maven-plugin</artifactId>
                  </plugin>
                  <plugin>
                        <groupId>com.spotify</groupId>
                        <artifactId>dockerfile-maven-plugin</artifactId>
                        <version>1.4.9</version>
                        <configuration>
                              <repository>${docker.image.prefix}/${project.version}</repository>
                        </configuration>
                  </plugin>
                  <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-jar-plugin</artifactId>
                        <configuration>
                              <!-- DO NOT include log4j.properties file in your Jar -->
                              <excludes>
                                    <exclude>**/log4j.properties</exclude>
                              </excludes>
                              <archive>
                                    <manifest>
                                          <!-- Jar file entry point -->
                                          <mainClass>org.onap.portal.PortalApplication</mainClass>
                                    </manifest>
                              </archive>
                        </configuration>
                  </plugin>
                  <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-dependency-plugin</artifactId>
                        <executions>
                              <execution>
                                    <id>unpack</id>
                                    <phase>package</phase>
                                    <goals>
                                          <goal>unpack</goal>
                                    </goals>
                                    <configuration>
                                          <artifactItems>
                                                <artifactItem>
                                                      <groupId>${project.groupId}</groupId>
                                                      <artifactId>${project.artifactId}</artifactId>
                                                      <version>${project.version}</version>
                                                </artifactItem>
                                          </artifactItems>
                                    </configuration>
                              </execution>
                        </executions>
                  </plugin>
                  <plugin>
                        <groupId>org.jacoco</groupId>
                        <artifactId>jacoco-maven-plugin</artifactId>
                        <version>0.7.7.201606060606</version>
                        <executions>
                              <execution>
                                    <goals>
                                          <goal>prepare-agent</goal>
                                    </goals>
                              </execution>
                              <execution>
                                    <id>report</id>
                                    <phase>prepare-package</phase>
                                    <goals>
                                          <goal>report</goal>
                                    </goals>
                              </execution>
                        </executions>
                  </plugin>
            </plugins>
            <resources>
                  <resource>
                        <directory>src/main/resources</directory>
                  </resource>
            </resources>
      </build>

      <repositories>
            <repository>
                  <id>spring-milestones</id>
                  <name>Spring Milestones</name>
                  <url>https://repo.spring.io/milestone</url>
            </repository>
      </repositories>
      <pluginRepositories>
            <pluginRepository>
                  <id>spring-milestones</id>
                  <name>Spring Milestones</name>
                  <url>https://repo.spring.io/milestone</url>
            </pluginRepository>
      </pluginRepositories>

</project>
