<?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/maven-v4_0_0.xsd">


    <modelVersion>4.0.0</modelVersion>
    <packaging>pom</packaging>
    <groupId>org.onap.ccsdk.parent</groupId>
    <artifactId>feature-repo-parent</artifactId>
    <version>1.0.1-SNAPSHOT</version>

    <parent>
        <groupId>org.opendaylight.odlparent</groupId>
        <artifactId>feature-repo-parent</artifactId>
        <version>2.0.5</version>
        <relativePath />
    </parent>


    <name>ONAP :: ${project.groupId} :: ${project.artifactId}</name>
    <url>http://wiki.onap.org</url>
    <description>Root POM to be used in place of odlparent for CCSDK based projects</description>


    <issueManagement>
        <system>JIRA</system>
        <url>https://jira.onap.org/</url>
    </issueManagement>

   <properties>

        <!--- properties from oparent -->
        <maven.compiler.source>1.8</maven.compiler.source>
        <maven.compiler.target>1.8</maven.compiler.target>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        <onap.nexus.url>https://nexus.onap.org</onap.nexus.url>
        <!-- sitePath may be overridden in the inheriting POM if desired -->
        <sitePath>/content/sites/site/${project.groupId}/${project.artifactId}/${project.version}</sitePath>
        <jacoco.version>0.7.7.201606060606</jacoco.version>
        <sonar-jacoco-listeners.version>3.2</sonar-jacoco-listeners.version>
        <sonar.core.codeCoveragePlugin>jacoco</sonar.core.codeCoveragePlugin>
        <!-- Default Sonar configuration -->
        <sonar.jacoco.reportPath>target/code-coverage/jacoco-ut.exec</sonar.jacoco.reportPath>
        <sonar.jacoco.itReportPath>target/code-coverage/jacoco-it.exec</sonar.jacoco.itReportPath>
        <!-- Note: This list should match jacoco-maven-plugin's exclusion
            list below -->
        <sonar.exclusions>**/gen/**,**/generated-sources/**,**/yang-gen**,**/pax/**</sonar.exclusions>
        <!-- If following file exist, auto-generation of swagger.json will
            be done -->
        <swagger-properties>${basedir}/src/main/resources/swagger.properties</swagger-properties>
        <!-- If following file exist, auto-generation of sdk will be done -->
        <swagger-json>${basedir}/src/main/resources/swagger.json</swagger-json>
        <!--- end of properties from oparent -->

        <!-- ONAP repositories -->
        <onap.nexus.host>nexus.onap.org</onap.nexus.host>
        <onap.nexus.port>443</onap.nexus.port>
        <onap.nexus.protocol>https</onap.nexus.protocol>
        <onap.nexus.public-url>https://nexus.onap.org/content/groups/public</onap.nexus.public-url>
        <onap.nexus.staging-url>https://nexus.onap.org/content/groups/staging</onap.nexus.staging-url>
        <onap.nexus.release-url>https://nexus.onap.org/content/repositories/releases</onap.nexus.release-url>
        <onap.nexus.snapshot-url>https://nexus.onap.org/content/repositories/snapshots</onap.nexus.snapshot-url>
        <onap.nexus.staging.server-id>ecomp-staging</onap.nexus.staging.server-id>
        <onap.nexus.staging.profile-id>176c31dfe190a</onap.nexus.staging.profile-id>


        <!-- OpenDaylight repositories -->
        <opendaylight.nexus.public-url>https://nexus.opendaylight.org/content/repositories/public/</opendaylight.nexus.public-url>
        <opendaylight.nexus.snapshot-url>https://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/</opendaylight.nexus.snapshot-url>


        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <java.version.source>1.8</java.version.source>
        <java.version.target>1.8</java.version.target>
        <bundle.plugin.version>2.5.0</bundle.plugin.version>
        <maven.compile.plugin.version>2.5.1</maven.compile.plugin.version>
        <features.file>features.xml</features.file>
        <jmxGeneratorPath>src/main/yang-gen-config</jmxGeneratorPath>
        <salGeneratorPath>src/main/yang-gen-sal</salGeneratorPath>
        <checkstyle.skip>true</checkstyle.skip>


        <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.reportMissing.force.zero>true</sonar.jacoco.reportMissing.force.zero>
        <sonar.projectVersion>${project.version}</sonar.projectVersion>




        <!-- CCSDK component versions -->
        <ccsdk.sli.core.version>0.2.1-SNAPSHOT</ccsdk.sli.core.version>
        <ccsdk.sli.adaptors.version>0.2.1-SNAPSHOT</ccsdk.sli.adaptors.version>
        <ccsdk.sli.northbound.version>0.2.1-SNAPSHOT</ccsdk.sli.northbound.version>
        <ccsdk.sli.plugins.version>0.2.1-SNAPSHOT</ccsdk.sli.plugins.version>
        <ccsdl.distribution.version>0.2.1-SNAPSHOT</ccsdl.distribution.version>
        <sdnctl.sli.version>${ccsdk.sli.core.version}</sdnctl.sli.version>
        <sdnctl.aai.service.version>${ccsdk.sli.adaptors.version}</sdnctl.aai.service.version>
        <sdnctl.dblib.version>${ccsdk.sli.core.version}</sdnctl.dblib.version>
        <sdnctl.mdsal.resource.version>${ccsdk.sli.adaptors.version}</sdnctl.mdsal.resource.version>
        <sdnctl.slipluginutils.version>${ccsdk.sli.core.version}</sdnctl.slipluginutils.version>


        <!-- Support libraries used by OpenDaylight -->
        <odl.mdsal.version>1.6.1</odl.mdsal.version>
        <!-- Used by aaa, vtn -->
        <commons.codec.version>1.10</commons.codec.version>
        <!-- Used by netconf, ovsdb -->
        <commons.lang3.version>3.6</commons.lang3.version>
        <!-- Used by sfc, snmp4sdn; see also affinity, toolkit -->
        <commons.lang.version>2.6</commons.lang.version>
        <!-- Used by neutron; see also controller, vtn -->
        <commons.net.version>3.6</commons.net.version>
        <!-- Used by neutron -->
        <eclipse.persistence.version>2.6.2</eclipse.persistence.version>
        <!-- Used by aaa -->
        <felix.dependencymanager.version>4.3.0</felix.dependencymanager.version>
        <!-- Used by lacp, netconf, ovsdb, sfc, toolkit; see also vtn -->
        <gson.version>2.7</gson.version>
        <!-- Used by aaa, dlux, persistence, snmp4sdn, sxp -->
        <guava.version>22.0</guava.version>
        <!-- Used by lispflowmapping, sxp, vtn/manager -->
        <hamcrest.version>1.3</hamcrest.version>
        <!-- Used by aaa, alto, netconf, ovsdb, sfc; see also affinity, defense4all,
            integration/distribution, snmp4sdn, toolkit, ttp -->
        <jackson.version>2.3.2</jackson.version>
        <!-- Used by snmp4sdn, yangtools -->
        <javassist.version>3.20.0-GA</javassist.version>

        <!-- FIXME remove all dependencies for jersey 1.17 after migration
            all projects -->
        <!-- Used by aaa, alto, netconf, neutron, sfc; see also affinity,
            defense4all, snmp4sdn, toolkit -->
        <jersey.version>1.17</jersey.version>
        <!-- Used by sfc -->
        <jersey.client.version>1.17</jersey.client.version>

        <!-- New packages for jersey migration 1.17 to 2.8 -->
        <!-- appache.geronimo.bundle for DocGen -->
        <!-- Used by aaa, iotdm, netconf, ovsdb, sfc -->
        <org.json.version>20131018</org.json.version>

        <!-- Used by sfc -->
        <jettison.version>1.3.7</jettison.version>
        <!-- Used by persistence -->
        <jsr305.api.version>3.0.0</jsr305.api.version>
        <!-- Need to stick to JUnit 4.11 until https://github.com/jayway/powermock/issues/560
            is fixed (either in PowerMock or with a new JUnit release) -->
        <!-- Used everywhere -->
        <junit.version>4.11</junit.version>
        <!-- Used by coretutorials, sfc, snmp4sdn, sxp; see also affinity,
            toolkit -->
        <logback.version>1.2.2</logback.version>
        <!-- Used by nic, sfc, sxp, tsdr -->
        <mockito.version>1.10.19</mockito.version>
        <!-- Used by bgpcep, netconf, ovsdb, sxp; see also opendove, toolkit -->
        <netty.version>4.1.8.Final</netty.version>
        <!-- Used by openflowjava, persistence, sfc, snmp4sdn, sxp; see also
            affinity, toolkit -->
        <slf4j.version>1.7.21</slf4j.version>
        <!-- Used in integration/distribution; see also affinity, snmp4sdn,
            toolkit, tsdr, ttp -->
        <spring.version>5.0.4.RELEASE</spring.version>



        <!-- Extra support libraries used by SDN-C -->
        <equinox.osgi.version>3.8.1.v20120830-144521</equinox.osgi.version>
        <jackson-annotations-version>${jackson.version}</jackson-annotations-version>
        <jvnet.jaxb2.version>0.6.4</jvnet.jaxb2.version>
        <apache.httpcomponents.core.version>4.4.4</apache.httpcomponents.core.version>
        <apache.httpcomponents.client.version>4.5.2</apache.httpcomponents.client.version>
        <antlr.version>4.7</antlr.version>
        <mysql.connector.version>5.1.39</mysql.connector.version>
        <mariadb.connector.version>2.1.1</mariadb.connector.version>
        <h2database.version>1.4.186</h2database.version>

        <tomcat-jdbc.version>8.5.14</tomcat-jdbc.version>
    </properties>

    <profiles>
        <!-- Profiles from ONAP oparent -->
        <profile>
            <id>generate-json</id>
            <activation>
                <file>
                    <exists>${swagger-properties}</exists>
                </file>
                <property>
                    <name>swagger-sdk.generate-json</name>
                </property>
            </activation>
            <build>
                <plugins>
                    <plugin>
                        <groupId>org.codehaus.mojo</groupId>
                        <artifactId>properties-maven-plugin</artifactId>
                        <version>1.0.0</version>
                        <executions>
                            <execution>
                                <phase>initialize</phase>
                                <goals>
                                    <goal>read-project-properties</goal>
                                </goals>
                                <configuration>
                                    <files>
                                        <file>${basedir}/src/main/resources/swagger.properties</file>
                                    </files>
                                </configuration>
                            </execution>
                        </executions>
                    </plugin>
                    <plugin>
                        <groupId>com.github.kongchen</groupId>
                        <artifactId>swagger-maven-plugin</artifactId>
                        <version>3.1.4</version>
                        <configuration>
                            <apiSources>
                                <apiSource>
                                    <locations>${api-rest-package}</locations>
                                    <schemes>http,https</schemes>
                                    <host>${api-host-ip}:${api-host-port}</host>
                                    <basePath>${api-base-path}</basePath>
                                    <info>
                                        <title>${api-title}</title>
                                        <version>${api-version}</version>
                                        <description>${api-description}</description>
                                        <license>
                                            <name>${api-license}</name>
                                        </license>
                                    </info>
                                    <swaggerDirectory>${basedir}/src/main/resources</swaggerDirectory>
                                </apiSource>
                            </apiSources>
                        </configuration>
                        <executions>
                            <execution>
                                <phase>compile</phase>
                                <goals>
                                    <goal>generate</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-install-plugin</artifactId>
                        <version>2.3.1</version>
                        <executions>
                            <execution>
                                <id>install-file-id</id>
                                <phase>install</phase>
                                <goals>
                                    <goal>install-file</goal>
                                </goals>
                                <configuration>
                                    <file>${basedir}/src/main/resources/swagger.json</file>
                                    <groupId>${project.groupId}</groupId>
                                    <artifactId>${project.artifactId}-swagger-schema</artifactId>
                                    <version>${project.version}</version>
                                    <packaging>json</packaging>
                                </configuration>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>
        </profile>
        <profile>
            <id>generate-sdk</id>
            <activation>
                <file>
                    <exists>${swagger-json}</exists>
                </file>
                <property>
                    <name>swagger-sdk.generate-java-sdk</name>
                </property>
            </activation>
            <build>
                <plugins>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-antrun-plugin</artifactId>
                        <version>1.8</version>
                        <executions>
                            <execution>
                                <phase>initialize</phase>
                                <id>ant-create-script</id>
                                <configuration>
                                    <exportAntProperties>true</exportAntProperties>
                                    <tasks>

                                        <taskdef
                                            resource="net/sf/antcontrib/antlib.xml"
                                            classpathref="maven.plugin.classpath" />
                                        <condition property="is_windows"
                                            value="true">
                                            <os family="windows" />
                                        </condition>
                                        <condition property="isLinux"
                                            value="true">
                                            <os family="unix" />
                                        </condition>
                                        <if>
                                            <equals arg1="${is_windows}"
                                                arg2="true" />
                                            <then>
                                                <property
                                                    name="swagger.sdk.script.file"
                                                    value="generated-source-script.bat" />
                                                <echo
                                                    file="${project.build.directory}${file.separator}generated-source-script.bat"
                                                    append="true"
                                                    message="cd ${project.build.directory}${file.separator}generated-sources${line.separator}" />
                                                <echo
                                                    file="${project.build.directory}${file.separator}generated-source-script.bat"
                                                    append="true"
                                                    message="mvn clean install -Dmaven.test.skip=true${line.separator}" />
                                            </then>
                                            <else>
                                                <property
                                                    name="swagger.sdk.script.file"
                                                    value="generated-source-script.sh" />
                                                <echo
                                                    file="${project.build.directory}${file.separator}generated-source-script.sh"
                                                    append="true"
                                                    message="cd ${project.build.directory}${file.separator}generated-sources${line.separator}" />
                                                <echo
                                                    file="${project.build.directory}${file.separator}generated-source-script.sh"
                                                    append="true"
                                                    message="mvn clean install -Dmaven.test.skip=true${line.separator}" />
                                                <chmod
                                                    file="${project.build.directory}${file.separator}generated-source-script.sh"
                                                    perm="755" />
                                            </else>
                                        </if>
                                    </tasks>
                                </configuration>
                                <goals>
                                    <goal>run</goal>
                                </goals>
                            </execution>
                        </executions>
                        <dependencies>
                            <dependency>
                                <groupId>ant-contrib</groupId>
                                <artifactId>ant-contrib</artifactId>
                                <version>1.0b3</version>
                                <exclusions>
                                    <exclusion>
                                        <artifactId>ant</artifactId>
                                        <groupId>ant</groupId>
                                    </exclusion>
                                </exclusions>
                            </dependency>
                        </dependencies>
                    </plugin>
                    <plugin>
                        <groupId>io.swagger</groupId>
                        <artifactId>swagger-codegen-maven-plugin</artifactId>
                        <version>2.2.1</version>
                        <executions>
                            <execution>
                                <goals>
                                    <goal>generate</goal>
                                </goals>
                                <configuration>
                                    <inputSpec>${basedir}/src/main/resources/swagger.json</inputSpec>
                                    <output>${project.build.directory}/generated-sources</output>
                                    <language>java</language>
                                    <configOptions>
                                        <dateLibrary>joda</dateLibrary>
                                    </configOptions>
                                    <library>jersey2</library>
                                    <groupId>${project.groupId}</groupId>
                                    <artifactId>${project.artifactId}-java-sdk</artifactId>
                                    <artifactVersion>${project.version}</artifactVersion>
                                    <modelPackage>${project.groupId}.${project.artifactId}.client.model</modelPackage>
                                    <apiPackage>${project.groupId}.${project.artifactId}.client.api</apiPackage>
                                    <invokerPackage>${project.groupId}.${project.artifactId}.client.invoker</invokerPackage>
                                </configuration>
                            </execution>
                        </executions>
                    </plugin>
                    <plugin>
                        <artifactId>exec-maven-plugin</artifactId>
                        <groupId>org.codehaus.mojo</groupId>
                        <version>1.5.0</version>
                        <executions>
                            <execution>
                                <id>swagger-generate-sources</id>
                                <phase>generate-sources</phase>
                                <goals>
                                    <goal>exec</goal>
                                </goals>
                                <configuration>
                                    <executable>${project.build.directory}${file.separator}${swagger.sdk.script.file}</executable>
                                </configuration>
                            </execution>
                        </executions>
                    </plugin>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-clean-plugin</artifactId>
                        <version>3.0.0</version>
                        <executions>
                            <execution>
                                <id>clean-generated-files</id>
                                <phase>generate-sources</phase>
                                <goals>
                                    <goal>clean</goal>
                                </goals>
                                <configuration>
                                    <filesets>
                                        <fileset>
                                            <directory>${project.build.directory}/generated-sources</directory>
                                        </fileset>
                                    </filesets>
                                </configuration>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>
            <dependencies>
                <dependency>
                    <groupId>org.onap.msb.swagger-sdk</groupId>
                    <artifactId>swagger-sdk</artifactId>
                    <version>1.0.0</version>
                </dependency>
            </dependencies>
        </profile>

        <!-- End of profiles from ONAP oparent -->

    </profiles>


    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.onap.sdnc.core</groupId>
                <artifactId>sli-common</artifactId>
                <version>${sdnctl.sli.version}</version>
            </dependency>

            <dependency>
                <groupId>org.onap.sdnc.core</groupId>
                <artifactId>sli-provider</artifactId>
                <version>${sdnctl.sli.version}</version>
            </dependency>

            <dependency>
                <groupId>org.onap.sdnc.core</groupId>
                <artifactId>aai-service-provider</artifactId>
                <version>${sdnctl.aai.service.version}</version>
            </dependency>

            <dependency>
                <groupId>org.onap.sdnc.core</groupId>
                <artifactId>dblib-provider</artifactId>
                <version>${sdnctl.dblib.version}</version>
            </dependency>
        </dependencies>

    </dependencyManagement>


    <reporting>
        <plugins>
            <plugin>
                <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>
                    <excludePackageNames>org.opendaylight.*</excludePackageNames>
                    <additionalDependencies>
                        <additionalDependency>
                            <groupId>org.slf4j</groupId>
                            <artifactId>slf4j-api</artifactId>
                            <version>${slf4j.version}</version>
                        </additionalDependency>
                        <additionalDependency>
                            <groupId>org.antlr</groupId>
                            <artifactId>antlr4</artifactId>
                            <version>${antlr.version}</version>
                        </additionalDependency>
                        <additionalDependency>
                            <groupId>org.antlr</groupId>
                            <artifactId>antlr4-runtime</artifactId>
                            <version>${antlr.version}</version>
                        </additionalDependency>

                        <additionalDependency>
                            <groupId>com.sun.jersey</groupId>
                            <artifactId>jersey-client</artifactId>
                            <version>${jersey.json.version}</version>
                        </additionalDependency>
                        <additionalDependency>
                            <groupId>com.sun.jersey</groupId>
                            <artifactId>jersey-core</artifactId>
                            <version>${jersey.json.version}</version>
                        </additionalDependency>
                        <additionalDependency>
                            <groupId>org.apache.httpcomponents</groupId>
                            <artifactId>httpcore-osgi</artifactId>
                            <version>${apache.httpcomponents.core.version}</version>
                        </additionalDependency>
                        <additionalDependency>
                            <groupId>org.apache.httpcomponents</groupId>
                            <artifactId>httpclient-osgi</artifactId>
                            <version>${apache.httpcomponents.client.version}</version>
                        </additionalDependency>
                        <additionalDependency>
                            <groupId>com.fasterxml.jackson.core</groupId>
                            <artifactId>jackson-databind</artifactId>
                            <version>${fasterxml.jackson.version}</version>
                        </additionalDependency>
                        <additionalDependency>
                            <groupId>com.fasterxml.jackson.core</groupId>
                            <artifactId>jackson-annotations</artifactId>
                            <version>${fasterxml.jackson.version}</version>
                        </additionalDependency>
                        <additionalDependency>
                            <groupId>com.fasterxml.jackson.core</groupId>
                            <artifactId>jackson-core</artifactId>
                            <version>${fasterxml.jackson.version}</version>
                        </additionalDependency>
                        <additionalDependency>
                            <groupId>commons-lang</groupId>
                            <artifactId>commons-lang</artifactId>
                            <version>${commons.lang.version}</version>
                        </additionalDependency>
                    </additionalDependencies>
                </configuration>
                <reportSets>
                    <reportSet>
                        <reports>
                            <report>javadoc-no-fork</report>
                            <report>test-javadoc-no-fork</report>
                        </reports>
                    </reportSet>
                    <reportSet>
                        <id>aggregate</id>
                        <reports>
                            <report>aggregate</report>
                            <report>test-aggregate</report>
                        </reports>
                    </reportSet>
                </reportSets>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-jxr-plugin</artifactId>
                <version>2.3</version>
                <reportSets>
                    <reportSet>
                        <id>aggregate</id>
                        <reports>
                            <report>aggregate</report>
                            <report>test-aggregate</report>
                        </reports>
                    </reportSet>
                </reportSets>
            </plugin>

            <plugin>
                <artifactId>maven-surefire-plugin</artifactId>
                <version>2.17</version>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-changelog-plugin</artifactId>
                <version>2.3</version>
                <reportSets>
                    <reportSet>
                        <id>dual-report</id>
                        <configuration>
                            <type>range</type>
                            <range>30</range>
                        </configuration>
                        <reports>
                            <report>changelog</report>
                            <report>file-activity</report>
                        </reports>
                    </reportSet>
                </reportSets>
            </plugin>
            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>taglist-maven-plugin</artifactId>
                <version>2.4</version>
            </plugin>
        </plugins>
    </reporting>


    <pluginRepositories>
        <pluginRepository>
            <id>onap-public</id>
            <url>${onap.nexus.public-url}</url>
            <releases>
                <enabled>true</enabled>
            </releases>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
        </pluginRepository>
        <pluginRepository>
            <id>onap-snapshot</id>
            <url>${onap.nexus.snapshot-url}</url>
            <releases>
                <enabled>false</enabled>
            </releases>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
        </pluginRepository>
        <pluginRepository>
            <id>opendaylight-mirror</id>
            <name>opendaylight-mirror</name>
            <url>${opendaylight.nexus.public-url}</url>
            <releases>
                <enabled>true</enabled>
                <updatePolicy>never</updatePolicy>
            </releases>
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
        </pluginRepository>
        <pluginRepository>
            <id>opendaylight-snapshot</id>
            <name>opendaylight-snapshot</name>
            <url>${opendaylight.nexus.snapshot-url}</url>
            <releases>
                <enabled>false</enabled>
            </releases>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
        </pluginRepository>
        <!-- Black Duck plugin dependencies -->
        <pluginRepository>
            <id>JCenter</id>
            <name>JCenter Repository</name>
            <url>http://jcenter.bintray.com</url>
        </pluginRepository>

        <pluginRepository>
            <id>Restlet</id>
            <name>Restlet Repository</name>
            <url>http://maven.restlet.com</url>
        </pluginRepository>
    </pluginRepositories>


    <repositories>
        <repository>
            <id>onap-public</id>
            <url>https://nexus.onap.org/content/groups/public</url>
            <releases>
                <enabled>true</enabled>
                <updatePolicy>never</updatePolicy>
            </releases>
            <snapshots>
                <enabled>true</enabled>
                <updatePolicy>always</updatePolicy>
            </snapshots>
        </repository>
        <repository>
            <id>onap-staging</id>
            <url>https://nexus.onap.org/content/groups/staging</url>
            <releases>
                <enabled>true</enabled>
                <updatePolicy>never</updatePolicy>
            </releases>
            <snapshots>
                <enabled>true</enabled>
                <updatePolicy>always</updatePolicy>
            </snapshots>
        </repository>
        <repository>
            <id>ecomp-release</id>
            <name>onap-repository-releases</name>
            <url>https://nexus.onap.org/content/repositories/releases</url>
            <releases>
                <enabled>true</enabled>
                <updatePolicy>never</updatePolicy>
            </releases>
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
        </repository>
        <repository>
            <id>ecomp-snapshot</id>
            <name>onap-repository-snapshots</name>
            <url>https://nexus.onap.org/content/repositories/snapshots</url>
            <releases>
                <enabled>false</enabled>
            </releases>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
        </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>
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
        </repository>
        <repository>
            <id>opendaylight-snapshot</id>
            <name>opendaylight-snapshot</name>
            <url>https://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/</url>
            <releases>
                <enabled>false</enabled>
            </releases>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
        </repository>

    </repositories>

    <distributionManagement>
        <repository>
            <id>ecomp-releases</id>
            <url>http://nexus.onap.org/content/repositories/releases</url>
        </repository>
        <snapshotRepository>
            <id>ecomp-snapshots</id>
            <url>http://nexus.onap.org/content/repositories/snapshots</url>
        </snapshotRepository>
    </distributionManagement>

    <build>
        <pluginManagement>
            <plugins>

                <!-- Plugins from ONAP oparent -->
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-deploy-plugin</artifactId>
                    <!-- This version supports the "deployAtEnd" parameter -->
                    <version>2.8</version>
                    <configuration>
                        <skip />
                    </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>
                        <dependency>
                            <groupId>org.apache.maven.doxia</groupId>
                            <artifactId>doxia-core</artifactId>
                            <version>1.7</version>
                        </dependency>
                        <dependency>
                            <groupId>org.apache.maven.doxia</groupId>
                            <artifactId>doxia-sink-api</artifactId>
                            <version>1.7</version>
                        </dependency>
                        <dependency>
                            <groupId>org.apache.maven.doxia</groupId>
                            <artifactId>doxia-logging-api</artifactId>
                            <version>1.7</version>
                        </dependency>
                    </dependencies>
                    <executions>
                        <execution>
                            <id>attach-descriptor</id>
                            <goals>
                                <goal>attach-descriptor</goal>
                            </goals>
                        </execution>
                    </executions>
                </plugin>
                <plugin>
                    <artifactId>maven-checkstyle-plugin</artifactId>
                    <version>2.17</version>
                    <dependencies>
                        <dependency>
                            <groupId>org.onap.oparent</groupId>
                            <artifactId>checkstyle</artifactId>
                            <version>1.1.0-SNAPSHOT</version>
                        </dependency>
                    </dependencies>
                    <executions>
                        <execution>
                            <id>check-license</id>
                            <goals>
                                <goal>check</goal>
                            </goals>
                            <phase>process-sources</phase>
                            <configuration>
                                <configLocation>onap-checkstyle/check-license.xml</configLocation>
                                <headerLocation>onap-checkstyle/apache-license-2.regexp.txt</headerLocation>
                                <includeResources>false</includeResources>
                                <includeTestSourceDirectory>true</includeTestSourceDirectory>
                                <includeTestResources>false</includeTestResources>
                                <sourceDirectory>${project.build.sourceDirectory}</sourceDirectory>
                                <excludes>
                                </excludes>
                                <failsOnError>false</failsOnError>
                                <consoleOutput>true</consoleOutput>
                            </configuration>
                        </execution>
                        <execution>
                            <id>check-style</id>
                            <goals>
                                <goal>check</goal>
                            </goals>
                            <phase>process-sources</phase>
                            <configuration>
                                <!-- Use Google Java Style Guide: https://github.com/checkstyle/checkstyle/blob/master/src/main/resources/google_checks.xml
                                    with minor changes -->
                                <configLocation>onap-checkstyle/onap-java-style.xml</configLocation>
                                <!-- <sourceDirectory> is needed so that
                                    checkstyle ignores the generated sources directory -->
                                <sourceDirectory>${project.build.sourceDirectory}/src/main/java</sourceDirectory>
                                <includeResources>true</includeResources>
                                <includeTestSourceDirectory>true</includeTestSourceDirectory>
                                <includeTestResources>true</includeTestResources>
                                <excludes>
                                </excludes>
                                <failsOnError>false</failsOnError>
                                <consoleOutput>true</consoleOutput>
                            </configuration>
                        </execution>
                    </executions>
                </plugin>
                <plugin>
                    <groupId>org.jacoco</groupId>
                    <artifactId>jacoco-maven-plugin</artifactId>
                    <version>${jacoco.version}</version>
                    <configuration>
                        <!-- Note: This exclusion list should match <sonar.exclusions>
                            property above -->
                        <excludes>
                            <exclude>**/gen/**</exclude>
                            <exclude>**/generated-sources/**</exclude>
                            <exclude>**/yang-gen/**</exclude>
                            <exclude>**/pax/**</exclude>
                        </excludes>
                    </configuration>
                    <executions>
                        <!-- Prepares the property pointing to the JaCoCo
                            runtime agent which is passed as VM argument when Maven the Surefire plugin
                            is executed. -->
                        <execution>
                            <id>pre-unit-test</id>
                            <goals>
                                <goal>prepare-agent</goal>
                            </goals>
                            <configuration>
                                <!-- Sets the path to the file which contains
                                    the execution data. -->
                                <destFile>${project.build.directory}/code-coverage/jacoco-ut.exec</destFile>
                                <!-- Sets the name of the property containing
                                    the settings for JaCoCo runtime agent. -->
                                <propertyName>surefireArgLine</propertyName>
                            </configuration>
                        </execution>
                        <!-- Ensures that the code coverage report for unit
                            tests is created after unit tests have been run. -->
                        <execution>
                            <id>post-unit-test</id>
                            <phase>test</phase>
                            <goals>
                                <goal>report</goal>
                            </goals>
                            <configuration>
                                <!-- Sets the path to the file which contains
                                    the execution data. -->
                                <dataFile>${project.build.directory}/code-coverage/jacoco-ut.exec</dataFile>
                                <!-- Sets the output directory for the code
                                    coverage report. -->
                                <outputDirectory>${project.reporting.outputDirectory}/jacoco-ut</outputDirectory>
                            </configuration>
                        </execution>
                        <execution>
                            <id>pre-integration-test</id>
                            <phase>pre-integration-test</phase>
                            <goals>
                                <goal>prepare-agent</goal>
                            </goals>
                            <configuration>
                                <!-- Sets the path to the file which contains
                                    the execution data. -->
                                <destFile>${project.build.directory}/code-coverage/jacoco-it.exec</destFile>
                                <!-- Sets the name of the property containing
                                    the settings for JaCoCo runtime agent. -->
                                <propertyName>failsafeArgLine</propertyName>
                            </configuration>
                        </execution>
                        <!-- Ensures that the code coverage report for integration
                            tests after integration tests have been run. -->
                        <execution>
                            <id>post-integration-test</id>
                            <phase>post-integration-test</phase>
                            <goals>
                                <goal>report</goal>
                            </goals>
                            <configuration>
                                <!-- Sets the path to the file which contains
                                    the execution data. -->
                                <dataFile>${project.build.directory}/code-coverage/jacoco-it.exec</dataFile>
                                <!-- Sets the output directory for the code
                                    coverage report. -->
                                <outputDirectory>${project.reporting.outputDirectory}/jacoco-it</outputDirectory>
                            </configuration>
                        </execution>
                    </executions>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-surefire-plugin</artifactId>
                    <version>2.19.1</version>
                    <configuration>
                        <!-- Sets the VM argument line used when unit tests
                            are run. -->
                        <argLine>${surefireArgLine}</argLine>
                        <!-- Excludes integration tests when unit tests are
                            run. -->
                        <excludes>
                            <exclude>**/IT*.java</exclude>
                        </excludes>
                    </configuration>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-failsafe-plugin</artifactId>
                    <version>2.19.1</version>
                    <executions>
                        <!-- Ensures that both integration-test and verify
                            goals of the Failsafe Maven plugin are executed. -->
                        <execution>
                            <id>integration-tests</id>
                            <goals>
                                <goal>integration-test</goal>
                                <goal>verify</goal>
                            </goals>
                            <configuration>
                                <!-- Sets the VM argument line used when
                                    integration tests are run. -->
                                <argLine>${failsafeArgLine}</argLine>
                            </configuration>
                        </execution>
                    </executions>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-compiler-plugin</artifactId>
                    <version>${maven.compile.plugin.version}</version>
                    <configuration>
                        <source>${java.version.source}</source>
                        <target>${java.version.target}</target>
                    </configuration>
                </plugin>
                <plugin>
                    <groupId>org.sonarsource.scanner.maven</groupId>
                    <artifactId>sonar-maven-plugin</artifactId>
                    <version>3.3.0.603</version>
                </plugin>

                <!-- End of plugins from ONAP oparent -->

                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-javadoc-plugin</artifactId>
                    <version>2.10</version>
                    <configuration>
                        <additionalDependencies>
                            <additionalDependency>
                                <groupId>org.slf4j</groupId>
                                <artifactId>slf4j-api</artifactId>
                                <version>${slf4j.version}</version>
                            </additionalDependency>
                            <additionalDependency>
                                <groupId>org.antlr</groupId>
                                <artifactId>antlr4</artifactId>
                                <version>${antlr.version}</version>
                            </additionalDependency>
                            <additionalDependency>
                                <groupId>org.antlr</groupId>
                                <artifactId>antlr4-runtime</artifactId>
                                <version>${antlr.version}</version>
                            </additionalDependency>

                            <additionalDependency>
                                <groupId>com.sun.jersey</groupId>
                                <artifactId>jersey-client</artifactId>
                                <version>${jersey.client.version}</version>
                            </additionalDependency>
                            <additionalDependency>
                                <groupId>com.sun.jersey</groupId>
                                <artifactId>jersey-core</artifactId>
                                <version>${jersey.version}</version>
                            </additionalDependency>
                            <additionalDependency>
                                <groupId>org.apache.httpcomponents</groupId>
                                <artifactId>httpcore-osgi</artifactId>
                                <version>${apache.httpcomponents.core.version}</version>
                            </additionalDependency>
                            <additionalDependency>
                                <groupId>org.apache.httpcomponents</groupId>
                                <artifactId>httpclient-osgi</artifactId>
                                <version>${apache.httpcomponents.client.version}</version>
                            </additionalDependency>
                            <additionalDependency>
                                <groupId>com.fasterxml.jackson.core</groupId>
                                <artifactId>jackson-databind</artifactId>
                                <version>${jackson.version}</version>
                            </additionalDependency>
                            <additionalDependency>
                                <groupId>com.fasterxml.jackson.core</groupId>
                                <artifactId>jackson-annotations</artifactId>
                                <version>${jackson.version}</version>
                            </additionalDependency>
                            <additionalDependency>
                                <groupId>com.fasterxml.jackson.core</groupId>
                                <artifactId>jackson-core</artifactId>
                                <version>${jackson.version}</version>
                            </additionalDependency>
                            <additionalDependency>
                                <groupId>commons-lang</groupId>
                                <artifactId>commons-lang</artifactId>
                                <version>${commons.lang.version}</version>
                            </additionalDependency>
                        </additionalDependencies>
                    </configuration>

                    <executions>
                        <execution>
                            <id>aggregate</id>
                            <goals>
                                <goal>aggregate</goal>
                            </goals>
                            <phase>site</phase>

                        </execution>
                    </executions>
                </plugin>
                <plugin>
                    <artifactId>maven-source-plugin</artifactId>
                    <version>2.1.1</version>
                    <executions>
                        <execution>
                            <id>bundle-sources</id>
                            <phase>package</phase>
                            <goals>
                                <!-- produce source artifact for main project
                                    sources -->
                                <goal>jar-no-fork</goal>

                                <!-- produce source artifact for project
                                    test sources -->
                                <goal>test-jar-no-fork</goal>
                            </goals>
                        </execution>
                    </executions>
                </plugin>


            </plugins>

        </pluginManagement>

        <plugins>
            <!-- Plugins from ONAP oparent -->
            <plugin>
                <artifactId>maven-checkstyle-plugin</artifactId>
            </plugin>
            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>build-helper-maven-plugin</artifactId>
                <version>1.12</version>
            </plugin>
            <!-- Jacoco / Sonar -->
            <plugin>
                <groupId>org.jacoco</groupId>
                <artifactId>jacoco-maven-plugin</artifactId>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-surefire-plugin</artifactId>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-failsafe-plugin</artifactId>
            </plugin>

            <!-- End of plugins from ONAP oparent -->
            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>properties-maven-plugin</artifactId>
                <version>1.0.0</version>
                <executions>
                    <execution>
                        <goals>
                            <goal>set-system-properties</goal>
                        </goals>
                        <configuration>
                            <properties>
                                <property>
                                    <name>maven.wagon.http.ssl.allowall</name>
                                    <value>${ssl.allowall}</value>
                                </property>
                                <property>
                                    <name>maven.wagon.http.ssl.insecure</name>
                                    <value>${ssl.insecure}</value>
                                </property>
                            </properties>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.sonatype.plugins</groupId>
                <artifactId>nexus-staging-maven-plugin</artifactId>
                <version>1.6.7</version>
                <extensions>true</extensions>
                <configuration>
                    <nexusUrl>${onap.nexus.url}</nexusUrl>
                    <stagingProfileId>176c31dfe190a</stagingProfileId>
                    <serverId>ecomp-staging</serverId>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>versions-maven-plugin</artifactId>
                <version>2.5</version>
                 <configuration>
                    <processAllModules>true</processAllModules>
                </configuration>
            </plugin>
            <plugin>
                <artifactId>maven-scm-plugin</artifactId>
                <version>1.8.1</version>
                <configuration>
                    <tag>${project.artifactId}-${project.version}</tag>
                </configuration>
            </plugin>
        </plugins>
    </build>
    <organization>
        <name>ONAP</name>
    </organization>
</project>