<?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.opendaylight.odlparent</groupId>
        <artifactId>odlparent</artifactId>
        <version>8.1.2</version>
        <relativePath/>
    </parent>

    <groupId>org.onap.ccsdk.parent</groupId>
    <artifactId>dependencies-odl-bom</artifactId>
    <version>2.4.1-SNAPSHOT</version>
    <packaging>pom</packaging>

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

    <!-- Note: maven properties do not work as expected in BOMs.  The property settings are
    not imported - so if you use a property in the version below, the pom that imports your BOM is
    expected to have that property set - defeating the whole point of a BOM.  Moral : use constants,
    not properties, for versions in BOMs -->
    <dependencyManagement>
        <dependencies>
            <!-- Preinstalled OpenDaylight artifacts -->
            <dependency>
                <groupId>${project.groupId}</groupId>
                <artifactId>installed-odl-bom</artifactId>
                <version>${project.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>

            <!-- Other OpenDaylight dependencies -->
            <dependency>
                <groupId>org.opendaylight.bgpcep</groupId>
                <artifactId>bgp-artifacts</artifactId>
                <version>0.16.13</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <dependency>
                <groupId>org.opendaylight.controller</groupId>
                <artifactId>controller-artifacts</artifactId>
                <version>4.0.7</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <dependency>
                <groupId>org.opendaylight.mdsal</groupId>
                <artifactId>mdsal-artifacts</artifactId>
                <version>8.0.7</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <dependency>
                <groupId>org.opendaylight.netconf</groupId>
                <artifactId>netconf-artifacts</artifactId>
                <version>2.0.11</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <dependency>
                <groupId>org.opendaylight.controller</groupId>
                <artifactId>sal-binding-broker-impl</artifactId>
                <version>2.0.11</version>
            </dependency>
            <dependency>
                <groupId>org.opendaylight.controller</groupId>
                <artifactId>sal-binding-broker-impl</artifactId>
                <version>2.0.11</version>
                <type>test-jar</type>
                <classifier>tests</classifier>
                <scope>test</scope>
            </dependency>
            <dependency>
                <groupId>org.opendaylight.controller</groupId>
                <artifactId>sal-test-model</artifactId>
                <version>2.0.11</version>
            </dependency>
            <dependency>
                <groupId>org.java-websocket</groupId>
                <artifactId>Java-WebSocket</artifactId>
                <version>1.5.2</version>
            </dependency>
            <!-- sdnr package dependencies -->
            <dependency>
                <groupId>org.elasticsearch.client</groupId>
                <artifactId>elasticsearch-rest-client</artifactId>
                <version>7.13.4</version>
            </dependency>
            <dependency>
                <groupId>org.onap.dmaap.messagerouter.dmaapclient</groupId>
                <artifactId>dmaapClient</artifactId>
                <version>1.1.12</version>
            </dependency>
            <!-- Below provides javax.annotations -->
            <dependency>
                <groupId>com.google.code.findbugs</groupId>
                <artifactId>annotations</artifactId>
                <version>3.0.1</version>
            </dependency>
            <!-- Below provides javax.xml.bind and javax.xml.bind.annotations -->
            <dependency>
                <groupId>javax.xml.bind</groupId>
                <artifactId>jaxb-api</artifactId>
                <version>2.3.1</version>
                <exclusions>
                    <exclusion>
                        <groupId>*</groupId>
                        <artifactId>*</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>
            <dependency>
                <groupId>jakarta.activation</groupId>
                <artifactId>jakarta.activation-api</artifactId>
                <version>2.0.1</version>
            </dependency>
            <!-- Below provides javax.jws -->
            <dependency>
                <groupId>com.sun.xml.ws</groupId>
                <artifactId>jaxws-ri</artifactId>
                <version>2.3.4</version>
                <type>pom</type>
            </dependency>
            <dependency>
                <groupId>org.glassfish.jersey</groupId>
                <artifactId>jersey-bom</artifactId>
                <version>2.27</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <dependency>
                <groupId>ch.qos.logback</groupId>
                <artifactId>logback-classic</artifactId>
                <version>1.2.5</version>
            </dependency>
            <dependency>
                <groupId>ch.qos.logback</groupId>
                <artifactId>logback-core</artifactId>
                <version>1.2.5</version>
            </dependency>
            <dependency>
                <groupId>commons-cli</groupId>
                <artifactId>commons-cli</artifactId>
                <version>1.3.1</version>
            </dependency>
            <dependency>
                <groupId>org.osgi</groupId>
                <artifactId>org.osgi.compendium</artifactId>
                <version>5.0.0</version>
            </dependency>
            <dependency>
                <groupId>org.dom4j</groupId>
                <artifactId>dom4j</artifactId>
                <version>2.1.3</version>
            </dependency>

            <!-- Below is required by com.google.guava : guava : jar : 28.2-jre -->
            <dependency>
                <groupId>com.google.guava</groupId>
                <artifactId>listenablefuture</artifactId>
                <version>9999.0-empty-to-avoid-conflict-with-guava</version>
            </dependency>
            <!-- Below is no longer packaged within ODL distribution -->
            <dependency>
                <groupId>com.typesafe.akka</groupId>
                <artifactId>akka-bom_2.13</artifactId>
                <version>2.6.12</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <dependency>
                <groupId>org.apache.sshd</groupId>
                <artifactId>sshd-core</artifactId>
                <version>2.7.0</version>
            </dependency>
            <!-- Below highstreet odl artifacts -->
            <dependency>
                <groupId>com.highstreet-technologies.aaa</groupId>
                <artifactId>aaa-shiro</artifactId>
                <version>0.13.5</version>
            </dependency>
            <dependency>
                <groupId>com.highstreet-technologies.opendaylight</groupId>
                <artifactId>odl-ready</artifactId>
                <version>3.2.0</version>
            </dependency>
            <dependency>
                <groupId>com.auth0</groupId>
                <artifactId>java-jwt</artifactId>
                <version>3.11.0</version>
                <exclusions>
                    <exclusion>
                        <groupId>*</groupId>
                        <artifactId>*</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>
        </dependencies>
    </dependencyManagement>

    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-deploy-plugin</artifactId>
                <!-- This version supports the "deployAtEnd" parameter -->
                <version>2.8</version>
                <configuration>
                    <skip/>
                    <deployAtEnd>true</deployAtEnd>
                </configuration>
            </plugin>
        </plugins>
    </build>
</project>
