Include ccsdk parents 17/14517/7
authorRavi Pendurty <ravi.pendurty@highstreet-technologies.com>
Mon, 2 Jun 2025 08:44:20 +0000 (14:14 +0530)
committerRavi Pendurty <ravi.pendurty@highstreet-technologies.com>
Fri, 6 Jun 2025 05:56:24 +0000 (11:26 +0530)
Required for building ccsdk features

Issue-ID: OAM-461
Change-Id: I83077cc9914679a8f461051ed5bf6267bd6b6778
Signed-off-by: Ravi Pendurty <ravi.pendurty@highstreet-technologies.com>
38 files changed:
.github/workflows/maven-build.yml [new file with mode: 0644]
README.md
parents/Readme.MD [new file with mode: 0644]
parents/dependencies-bom/pom.xml [new file with mode: 0644]
parents/dependencies-odl-bom/pom.xml [new file with mode: 0644]
parents/installed-odl-bom/README.md [new file with mode: 0644]
parents/installed-odl-bom/pom.xml [new file with mode: 0644]
parents/odlparent/binding-parent/pom.xml [new file with mode: 0644]
parents/odlparent/bundle-parent/pom.xml [new file with mode: 0644]
parents/odlparent/client-parent/pom.xml [new file with mode: 0644]
parents/odlparent/feature-repo-parent/pom.xml [new file with mode: 0644]
parents/odlparent/karaf4-parent/pom.xml [new file with mode: 0644]
parents/odlparent/mdsal-it-parent/pom.xml [new file with mode: 0644]
parents/odlparent/odlparent-lite/pom.xml [new file with mode: 0644]
parents/odlparent/odlparent/pom.xml [new file with mode: 0644]
parents/odlparent/pom.xml [new file with mode: 0755]
parents/odlparent/setup/pom.xml [new file with mode: 0755]
parents/odlparent/setup/src/main/properties/binding-parent.properties [new file with mode: 0644]
parents/odlparent/setup/src/main/properties/bundle-parent.properties [new file with mode: 0644]
parents/odlparent/setup/src/main/properties/feature-repo-parent.properties [new file with mode: 0644]
parents/odlparent/setup/src/main/properties/karaf4-parent.properties [new file with mode: 0644]
parents/odlparent/setup/src/main/properties/mdsal-it-parent.properties [new file with mode: 0644]
parents/odlparent/setup/src/main/properties/odlparent-lite.properties [new file with mode: 0644]
parents/odlparent/setup/src/main/properties/odlparent.properties [new file with mode: 0644]
parents/odlparent/setup/src/main/properties/single-feature-parent.properties [new file with mode: 0644]
parents/odlparent/setup/src/main/resources/pom-template.xml [new file with mode: 0755]
parents/odlparent/single-feature-parent/pom.xml [new file with mode: 0644]
parents/oparent/pom.xml [new file with mode: 0755]
parents/pom.xml [new file with mode: 0755]
parents/tools/README.md [new file with mode: 0644]
parents/tools/changeVersion.sh [new file with mode: 0755]
parents/tools/lib/pomfile.py [new file with mode: 0644]
parents/tools/lib/xpath.py [new file with mode: 0644]
parents/tools/migrateOdlParents.py [new file with mode: 0755]
parents/tools/mkbom.sh [new file with mode: 0755]
parents/tools/updParentVersion.sh [new file with mode: 0755]
parents/version.properties [new file with mode: 0644]
settings.xml [new file with mode: 0644]

diff --git a/.github/workflows/maven-build.yml b/.github/workflows/maven-build.yml
new file mode 100644 (file)
index 0000000..119301b
--- /dev/null
@@ -0,0 +1,44 @@
+# This workflow will build a Java project with Maven, and cache/restore any dependencies to improve the workflow execution time
+# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-java-with-maven
+
+# This workflow uses actions that are not certified by GitHub.
+# They are provided by a third-party and are governed by
+# separate terms of service, privacy policy, and support
+# documentation.
+
+name: Java CI with Maven
+
+on:
+  workflow_dispatch:
+  push:
+    branches: [ "master" ]
+  pull_request:
+    branches: [ "master" ]
+
+jobs:
+  build:
+
+    runs-on: ubuntu-latest
+    env:
+      GH_PAT: ${{ secrets.GITHUB_TOKEN }}
+
+    steps:
+    - name: Checkout
+      uses: actions/checkout@v4
+
+    - name: Set up JDK 21 and maven 3.9.9
+      uses: actions/setup-java@v4
+      with:
+        java-version: '21'
+        maven-version: '3.9.9'
+        distribution: 'temurin'
+        cache: maven
+
+    - name: ๐Ÿงพ Print All Environment Variables
+      run: env
+
+    - name: ๐Ÿš€ Deploy to GitHub Packages
+      env:
+        GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+      run: mvn -s ${GITHUB_WORKSPACE}/settings.xml --file ${GITHUB_WORKSPACE}/parents/pom.xml deploy -DaltDeploymentRepository=github::default::https://maven.pkg.github.com/o-ran-sc/oam-oam-controller -DskipTests=true
+      
index 5600f17..78ab067 100644 (file)
--- a/README.md
+++ b/README.md
@@ -1,7 +1,7 @@
 # Operation and Maintenance (OAM) Controller
 
 This repository contains code artifctes related to an OAM Controller, which
-terminats the O-RAN Alliance Interfaces O1 and OpenFronthaul Management Plane.
+terminates the O-RAN Alliance Interfaces O1 and OpenFronthaul Management Plane.
 
 ## Get stated
 
@@ -44,3 +44,7 @@ make docs
 ## License
 
 This project is licensed under the Apache License 2.0 - see the [LICENSE](LICENSE) file for details.
+
+# Important Info
+- oam-controller is using parts from onap ccsdk project
+- "Fork" reference is ccsdk-parent 3.1.1: https://gerrit.onap.org/r/gitweb?p=ccsdk/parent.git;a=tag;h=ef4a562efe380089eb8fd34e768119f8124a506c
\ No newline at end of file
diff --git a/parents/Readme.MD b/parents/Readme.MD
new file mode 100644 (file)
index 0000000..25b0719
--- /dev/null
@@ -0,0 +1,15 @@
+## !!!!! PLEASE READ !!!!!
+
+The actual parent poms are being generated from below two pom-template
+
+##### ODL related parent poms:
+ccsdk/parent/odlparent/setup/src/main/template/pom-template.xml
+
+##### Springboot related parent poms:
+ccsdk/parent/springboot/spring-boot-setup/src/main/template/pom-template.xml
+        
+#### Note:
+Any updates needed should be made to respective template and not to the generated pom.xml file/files.
+
+Every parent pom has associated properties files (src/main/properties).<br>
+Setup module will read those properties and populate respective values within generated pom.xml
\ No newline at end of file
diff --git a/parents/dependencies-bom/pom.xml b/parents/dependencies-bom/pom.xml
new file mode 100644 (file)
index 0000000..9bcb82c
--- /dev/null
@@ -0,0 +1,366 @@
+<?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>
+
+    <groupId>org.o-ran-sc.oam-controller.parent</groupId>
+    <artifactId>dependencies-bom</artifactId>
+    <version>3.0.2-SNAPSHOT</version>
+    <packaging>pom</packaging>
+
+    <distributionManagement>
+        <repository>
+            <id>o-ran-sc-releases</id>
+            <url>https://nexus.o-ran-sc.org/content/repositories/releases</url>
+        </repository>
+        <snapshotRepository>
+            <id>o-ran-sc-snapshots</id>
+            <url>https://nexus.o-ran-sc.org/content/repositories/snapshots</url>
+        </snapshotRepository>
+    </distributionManagement>
+
+    <dependencyManagement>
+        <dependencies>
+            <dependency>
+                <groupId>ch.qos.logback</groupId>
+                <artifactId>logback-classic</artifactId>
+                <version>1.2.11</version>
+            </dependency>
+            <dependency>
+                <groupId>ch.qos.logback</groupId>
+                <artifactId>logback-core</artifactId>
+                <version>1.2.11</version>
+            </dependency>
+            <dependency>
+                <groupId>ch.vorburger.mariaDB4j</groupId>
+                <artifactId>mariaDB4j</artifactId>
+                <version>2.4.0</version>
+                <scope>test</scope>
+            </dependency>
+            <dependency>
+                <groupId>com.att.eelf</groupId>
+                <artifactId>eelf-core</artifactId>
+                <version>1.0.0</version>
+            </dependency>
+            <dependency>
+                <groupId>com.fasterxml.jackson</groupId>
+                <artifactId>jackson-bom</artifactId>
+                <version>2.14.1</version>
+                <type>pom</type>
+                <scope>import</scope>
+            </dependency>
+            <dependency>
+                <groupId>com.google.code.gson</groupId>
+                <artifactId>gson</artifactId>
+                <version>2.9.0</version>
+            </dependency>
+            <dependency>
+                <groupId>com.google.guava</groupId>
+                <artifactId>guava</artifactId>
+                <version>28.2-jre</version>
+            </dependency>
+            <dependency>
+                <groupId>com.google.protobuf</groupId>
+                <artifactId>protobuf-java</artifactId>
+                <version>3.10.0</version>
+            </dependency>
+            <dependency>
+                <groupId>com.google.protobuf</groupId>
+                <artifactId>protobuf-java-util</artifactId>
+                <version>3.10.0</version>
+            </dependency>
+            <dependency>
+                <groupId>com.jayway.jsonpath</groupId>
+                <artifactId>json-path</artifactId>
+                <version>2.4.0</version>
+            </dependency>
+            <dependency>
+                <groupId>com.sun.xml.bind</groupId>
+                <artifactId>jaxb-core</artifactId>
+                <version>2.2.11</version>
+            </dependency>
+            <dependency>
+                <groupId>com.sun.xml.bind</groupId>
+                <artifactId>jaxb-impl</artifactId>
+                <version>2.2.11</version>
+            </dependency>
+            <dependency>
+                <groupId>commons-codec</groupId>
+                <artifactId>commons-codec</artifactId>
+                <version>1.15</version>
+            </dependency>
+            <dependency>
+                <groupId>commons-lang</groupId>
+                <artifactId>commons-lang</artifactId>
+                <version>2.6</version>
+            </dependency>
+            <dependency>
+                <groupId>commons-logging</groupId>
+                <artifactId>commons-logging</artifactId>
+                <version>1.2</version>
+            </dependency>
+            <dependency>
+                <groupId>io.grpc</groupId>
+                <artifactId>grpc-bom</artifactId>
+                <version>1.29.0</version>
+                <type>pom</type>
+                <scope>import</scope>
+            </dependency>
+            <dependency>
+                <groupId>io.swagger</groupId>
+                <artifactId>swagger-annotations</artifactId>
+                <version>1.6.0</version>
+            </dependency>
+            <dependency>
+                <groupId>io.swagger</groupId>
+                <artifactId>swagger-core</artifactId>
+                <version>1.6.0</version>
+            </dependency>
+            <dependency>
+                <groupId>javax</groupId>
+                <artifactId>javaee-api</artifactId>
+                <version>7.0</version>
+            </dependency>
+            <!-- Below provides javax.annotations -->
+            <dependency>
+                <groupId>com.google.code.findbugs</groupId>
+                <artifactId>annotations</artifactId>
+                <version>3.0.1</version>
+            </dependency>
+            <dependency>
+                <groupId>javax.annotation</groupId>
+                <artifactId>javax.annotation-api</artifactId>
+                <version>1.3.1</version>
+                <optional>true</optional>
+            </dependency>
+            <dependency>
+                <groupId>javax.servlet</groupId>
+                <artifactId>javax.servlet-api</artifactId>
+                <version>3.1.0</version>
+            </dependency>
+            <dependency>
+                <groupId>javax.ws.rs</groupId>
+                <artifactId>javax.ws.rs-api</artifactId>
+                <version>2.1.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>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>
+            <dependency>
+                <groupId>junit</groupId>
+                <artifactId>junit</artifactId>
+                <version>4.13.2</version>
+                <scope>test</scope>
+            </dependency>
+            <dependency>
+                <groupId>org.antlr</groupId>
+                <artifactId>antlr4-runtime</artifactId>
+                <version>4.12.0</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.commons</groupId>
+                <artifactId>commons-io</artifactId>
+                <version>1.3.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.commons</groupId>
+                <artifactId>commons-lang3</artifactId>
+                <version>3.12.0</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.commons</groupId>
+                <artifactId>commons-text</artifactId>
+                <version>1.9</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.derby</groupId>
+                <artifactId>derby</artifactId>
+                <version>10.14.2.0</version>
+                <scope>test</scope>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.httpcomponents</groupId>
+                <artifactId>httpcore</artifactId>
+                <version>4.4.14</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.httpcomponents</groupId>
+                <artifactId>httpclient</artifactId>
+                <version>4.5.13</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.logging.log4j</groupId>
+                <artifactId>log4j-slf4j-impl</artifactId>
+                <version>2.17.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.logging.log4j</groupId>
+                <artifactId>log4j-core</artifactId>
+                <version>2.17.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.tomcat</groupId>
+                <artifactId>tomcat-jdbc</artifactId>
+                <version>9.0.52</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.velocity</groupId>
+                <artifactId>velocity</artifactId>
+                <version>1.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.velocity</groupId>
+                <artifactId>velocity-engine-core</artifactId>
+                <version>2.3</version>
+            </dependency>
+            <dependency>
+                <groupId>org.codehaus.jackson</groupId>
+                <artifactId>jackson-jaxrs</artifactId>
+                <version>1.9.13</version>
+            </dependency>
+            <dependency>
+                <groupId>org.codehaus.jettison</groupId>
+                <artifactId>jettison</artifactId>
+                <version>1.4.1</version>
+            </dependency>
+            <dependency>
+                <groupId>org.glassfish.jersey</groupId>
+                <artifactId>jersey-bom</artifactId>
+                <!-- ODL has 2.27 -->
+                <version>2.33</version>
+                <type>pom</type>
+                <scope>import</scope>
+            </dependency>
+            <dependency>
+                <groupId>org.glassfish.jersey.bundles.repackaged</groupId>
+                <artifactId>jersey-guava</artifactId>
+                <version>2.26-b03</version>
+            </dependency>
+            <dependency>
+                <groupId>org.hamcrest</groupId>
+                <artifactId>hamcrest-library</artifactId>
+                <version>1.3</version>
+            </dependency>
+            <dependency>
+                <groupId>org.json</groupId>
+                <artifactId>json</artifactId>
+                <!-- ODL has 20131018 -->
+                <version>20201115</version>
+            </dependency>
+            <dependency>
+                <groupId>org.jsoup</groupId>
+                <artifactId>jsoup</artifactId>
+                <!-- ODL has 1.8.3 -->
+                <version>1.12.1</version>
+            </dependency>
+            <dependency>
+                <groupId>org.liquibase</groupId>
+                <artifactId>liquibase-core</artifactId>
+                <version>4.4.2-nordix</version>
+            </dependency>    
+            <dependency>
+                <groupId>org.mariadb.jdbc</groupId>
+                <artifactId>mariadb-java-client</artifactId>
+                <version>2.7.5</version>
+            </dependency>
+            <dependency>
+                <groupId>org.mockito</groupId>
+                <artifactId>mockito-core</artifactId>
+                <version>3.12.4</version>
+                <scope>test</scope>
+            </dependency>
+            <dependency>
+                <groupId>org.onap.logging-analytics</groupId>
+                <artifactId>logging-filter-base</artifactId>
+                <version>1.6.9</version>
+            </dependency>
+            <dependency>
+                <groupId>org.onap.logging-analytics</groupId>
+                <artifactId>logging-slf4j</artifactId>
+                <version>1.6.9</version>
+            </dependency>
+            <dependency>
+                <groupId>org.osgi</groupId>
+                <artifactId>org.osgi.core</artifactId>
+                <version>5.0.0</version>
+                <scope>provided</scope>
+            </dependency>
+            <dependency>
+                <groupId>org.slf4j</groupId>
+                <artifactId>jcl-over-slf4j</artifactId>
+                <version>1.7.32</version>
+            </dependency>
+            <dependency>
+                <groupId>org.slf4j</groupId>
+                <artifactId>slf4j-api</artifactId>
+                <!-- ODL has 1.7.29 -->
+                <version>1.7.32</version>
+            </dependency>
+            <dependency>
+                <groupId>org.slf4j</groupId>
+                <artifactId>slf4j-simple</artifactId>
+                <version>1.7.32</version>
+            </dependency>
+            <dependency>
+                <groupId>org.testng</groupId>
+                <artifactId>testng</artifactId>
+                <version>7.3.0</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.sshd</groupId>
+                <artifactId>sshd-core</artifactId>
+                <version>2.7.0</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.sshd</groupId>
+                <artifactId>sshd-scp</artifactId>
+                <version>2.7.0</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.sshd</groupId>
+                <artifactId>sshd-sftp</artifactId>
+                <version>2.7.0</version>
+            </dependency>
+        </dependencies>
+    </dependencyManagement>
+    <dependencies>
+        <dependency>
+            <groupId>org.slf4j</groupId>
+            <artifactId>slf4j-api</artifactId>
+        </dependency>
+    </dependencies>
+
+    <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>
diff --git a/parents/dependencies-odl-bom/pom.xml b/parents/dependencies-odl-bom/pom.xml
new file mode 100644 (file)
index 0000000..9160f04
--- /dev/null
@@ -0,0 +1,214 @@
+<?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.o-ran-sc.oam-controller.parent</groupId>
+    <artifactId>dependencies-odl-bom</artifactId>
+    <version>3.0.2-SNAPSHOT</version>
+    <packaging>pom</packaging>
+
+    <distributionManagement>
+        <repository>
+            <id>o-ran-sc-releases</id>
+            <url>https://nexus.o-ran-sc.org/content/repositories/releases</url>
+        </repository>
+        <snapshotRepository>
+            <id>o-ran-sc-snapshots</id>
+            <url>https://nexus.o-ran-sc.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>bgpcep-artifacts</artifactId>
+                <version>0.22.10</version>
+                <type>pom</type>
+                <scope>import</scope>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.controller</groupId>
+                <artifactId>controller-artifacts</artifactId>
+                <version>10.0.9</version>
+                <type>pom</type>
+                <scope>import</scope>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal</groupId>
+                <artifactId>mdsal-artifacts</artifactId>
+                <version>14.0.11</version>
+                <type>pom</type>
+                <scope>import</scope>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.netconf</groupId>
+                <artifactId>netconf-artifacts</artifactId>
+                <version>7.0.7</version>
+                <type>pom</type>
+                <scope>import</scope>
+            </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.14</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.kafka</groupId>
+                <artifactId>kafka-clients</artifactId>
+                <version>3.7.0</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.11</version>
+            </dependency>
+            <dependency>
+                <groupId>ch.qos.logback</groupId>
+                <artifactId>logback-core</artifactId>
+                <version>1.2.11</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.10.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>
diff --git a/parents/installed-odl-bom/README.md b/parents/installed-odl-bom/README.md
new file mode 100644 (file)
index 0000000..c0f5e40
--- /dev/null
@@ -0,0 +1 @@
+The file pom.xml is generated from Scandium SR2.
diff --git a/parents/installed-odl-bom/pom.xml b/parents/installed-odl-bom/pom.xml
new file mode 100644 (file)
index 0000000..3460b41
--- /dev/null
@@ -0,0 +1,3610 @@
+<?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>
+
+    <groupId>org.o-ran-sc.oam-controller.parent</groupId>
+    <artifactId>installed-odl-bom</artifactId>
+    <version>3.0.2-SNAPSHOT</version>
+    <packaging>pom</packaging>
+
+    <distributionManagement>
+        <repository>
+            <id>o-ran-sc-releases</id>
+            <url>https://nexus.o-ran-sc.org/content/repositories/releases</url>
+        </repository>
+        <snapshotRepository>
+            <id>o-ran-sc-snapshots</id>
+            <url>https://nexus.o-ran-sc.org/content/repositories/snapshots</url>
+        </snapshotRepository>
+    </distributionManagement>
+
+    <dependencyManagement>
+        <dependencies>
+            <dependency>
+                <groupId>com.fasterxml.jackson.core</groupId>
+                <artifactId>jackson-annotations</artifactId>
+                <version>2.17.3</version>
+            </dependency>
+            <dependency>
+                <groupId>com.fasterxml.jackson.core</groupId>
+                <artifactId>jackson-core</artifactId>
+                <version>2.17.3</version>
+            </dependency>
+            <dependency>
+                <groupId>com.fasterxml.jackson.core</groupId>
+                <artifactId>jackson-databind</artifactId>
+                <version>2.17.3</version>
+            </dependency>
+            <dependency>
+                <groupId>com.fasterxml.jackson.dataformat</groupId>
+                <artifactId>jackson-dataformat-xml</artifactId>
+                <version>2.17.3</version>
+            </dependency>
+            <dependency>
+                <groupId>com.fasterxml.jackson.datatype</groupId>
+                <artifactId>jackson-datatype-jsr310</artifactId>
+                <version>2.17.3</version>
+            </dependency>
+            <dependency>
+                <groupId>com.fasterxml.jackson.jaxrs</groupId>
+                <artifactId>jackson-jaxrs-base</artifactId>
+                <version>2.17.3</version>
+            </dependency>
+            <dependency>
+                <groupId>com.fasterxml.jackson.jaxrs</groupId>
+                <artifactId>jackson-jaxrs-json-provider</artifactId>
+                <version>2.17.3</version>
+            </dependency>
+            <dependency>
+                <groupId>com.fasterxml.jackson.module</groupId>
+                <artifactId>jackson-module-jaxb-annotations</artifactId>
+                <version>2.17.3</version>
+            </dependency>
+            <dependency>
+                <groupId>com.fasterxml.woodstox</groupId>
+                <artifactId>woodstox-core</artifactId>
+                <version>7.1.0</version>
+            </dependency>
+            <dependency>
+                <groupId>com.github.spotbugs</groupId>
+                <artifactId>spotbugs-annotations</artifactId>
+                <version>4.8.6</version>
+            </dependency>
+            <dependency>
+                <groupId>com.google.code.gson</groupId>
+                <artifactId>gson</artifactId>
+                <version>2.12.1</version>
+            </dependency>
+            <dependency>
+                <groupId>com.googlecode.json-simple</groupId>
+                <artifactId>json-simple</artifactId>
+                <version>1.1.1</version>
+            </dependency>
+            <dependency>
+                <groupId>com.google.guava</groupId>
+                <artifactId>failureaccess</artifactId>
+                <version>1.0.2</version>
+            </dependency>
+            <dependency>
+                <groupId>com.google.guava</groupId>
+                <artifactId>guava</artifactId>
+                <version>33.4.0-jre</version>
+            </dependency>
+            <dependency>
+                <groupId>com.h2database</groupId>
+                <artifactId>h2</artifactId>
+                <version>2.3.232</version>
+            </dependency>
+            <dependency>
+                <groupId>commons-beanutils</groupId>
+                <artifactId>commons-beanutils</artifactId>
+                <version>1.9.4</version>
+            </dependency>
+            <dependency>
+                <groupId>commons-codec</groupId>
+                <artifactId>commons-codec</artifactId>
+                <version>1.15</version>
+            </dependency>
+            <dependency>
+                <groupId>commons-collections</groupId>
+                <artifactId>commons-collections</artifactId>
+                <version>3.2.2</version>
+            </dependency>
+            <dependency>
+                <groupId>commons-io</groupId>
+                <artifactId>commons-io</artifactId>
+                <version>2.18.0</version>
+            </dependency>
+            <dependency>
+                <groupId>com.rabbitmq</groupId>
+                <artifactId>amqp-client</artifactId>
+                <version>5.24.0</version>
+            </dependency>
+            <dependency>
+                <groupId>com.typesafe</groupId>
+                <artifactId>config</artifactId>
+                <version>1.4.3</version>
+            </dependency>
+            <dependency>
+                <groupId>com.typesafe</groupId>
+                <artifactId>ssl-config-core_2.13</artifactId>
+                <version>0.4.3</version>
+            </dependency>
+            <dependency>
+                <groupId>dk.brics</groupId>
+                <artifactId>automaton</artifactId>
+                <version>1.12-4</version>
+            </dependency>
+            <dependency>
+                <groupId>io.aeron</groupId>
+                <artifactId>aeron-client</artifactId>
+                <version>1.38.1</version>
+            </dependency>
+            <dependency>
+                <groupId>io.aeron</groupId>
+                <artifactId>aeron-driver</artifactId>
+                <version>1.38.1</version>
+            </dependency>
+            <dependency>
+                <groupId>io.dropwizard.metrics</groupId>
+                <artifactId>metrics-core</artifactId>
+                <version>4.2.30</version>
+            </dependency>
+            <dependency>
+                <groupId>io.dropwizard.metrics</groupId>
+                <artifactId>metrics-graphite</artifactId>
+                <version>4.2.30</version>
+            </dependency>
+            <dependency>
+                <groupId>io.dropwizard.metrics</groupId>
+                <artifactId>metrics-healthchecks</artifactId>
+                <version>4.2.30</version>
+            </dependency>
+            <dependency>
+                <groupId>io.dropwizard.metrics</groupId>
+                <artifactId>metrics-jmx</artifactId>
+                <version>4.2.30</version>
+            </dependency>
+            <dependency>
+                <groupId>io.dropwizard.metrics</groupId>
+                <artifactId>metrics-jvm</artifactId>
+                <version>4.2.30</version>
+            </dependency>
+            <dependency>
+                <groupId>io.netty</groupId>
+                <artifactId>netty-buffer</artifactId>
+                <version>4.1.119.Final</version>
+            </dependency>
+            <dependency>
+                <groupId>io.netty</groupId>
+                <artifactId>netty-codec</artifactId>
+                <version>4.1.119.Final</version>
+            </dependency>
+            <dependency>
+                <groupId>io.netty</groupId>
+                <artifactId>netty-codec-http2</artifactId>
+                <version>4.1.119.Final</version>
+            </dependency>
+            <dependency>
+                <groupId>io.netty</groupId>
+                <artifactId>netty-codec-http</artifactId>
+                <version>4.1.119.Final</version>
+            </dependency>
+            <dependency>
+                <groupId>io.netty</groupId>
+                <artifactId>netty-common</artifactId>
+                <version>4.1.119.Final</version>
+            </dependency>
+            <dependency>
+                <groupId>io.netty</groupId>
+                <artifactId>netty-handler</artifactId>
+                <version>4.1.119.Final</version>
+            </dependency>
+            <dependency>
+                <groupId>io.netty</groupId>
+                <artifactId>netty-resolver</artifactId>
+                <version>4.1.119.Final</version>
+            </dependency>
+            <dependency>
+                <groupId>io.netty</groupId>
+                <artifactId>netty-transport</artifactId>
+                <version>4.1.119.Final</version>
+            </dependency>
+            <dependency>
+                <groupId>io.netty</groupId>
+                <artifactId>netty-transport-classes-epoll</artifactId>
+                <version>4.1.119.Final</version>
+            </dependency>
+            <dependency>
+                <groupId>io.netty</groupId>
+                <artifactId>netty-transport-native-epoll</artifactId>
+                <version>4.1.119.Final</version>
+            </dependency>
+            <dependency>
+                <groupId>io.netty</groupId>
+                <artifactId>netty-transport-native-unix-common</artifactId>
+                <version>4.1.119.Final</version>
+            </dependency>
+            <dependency>
+                <groupId>jakarta.activation</groupId>
+                <artifactId>jakarta.activation-api</artifactId>
+                <version>1.2.2</version>
+            </dependency>
+            <dependency>
+                <groupId>jakarta.annotation</groupId>
+                <artifactId>jakarta.annotation-api</artifactId>
+                <version>1.3.5</version>
+            </dependency>
+            <dependency>
+                <groupId>jakarta.el</groupId>
+                <artifactId>jakarta.el-api</artifactId>
+                <version>3.0.3</version>
+            </dependency>
+            <dependency>
+                <groupId>jakarta.servlet</groupId>
+                <artifactId>jakarta.servlet-api</artifactId>
+                <version>4.0.4</version>
+            </dependency>
+            <dependency>
+                <groupId>jakarta.validation</groupId>
+                <artifactId>jakarta.validation-api</artifactId>
+                <version>2.0.2</version>
+            </dependency>
+            <dependency>
+                <groupId>jakarta.websocket</groupId>
+                <artifactId>jakarta.websocket-api</artifactId>
+                <version>1.1.2</version>
+            </dependency>
+            <dependency>
+                <groupId>jakarta.ws.rs</groupId>
+                <artifactId>jakarta.ws.rs-api</artifactId>
+                <version>2.1.6</version>
+            </dependency>
+            <dependency>
+                <groupId>javax.enterprise</groupId>
+                <artifactId>cdi-api</artifactId>
+                <version>2.0.SP1</version>
+            </dependency>
+            <dependency>
+                <groupId>javax.interceptor</groupId>
+                <artifactId>javax.interceptor-api</artifactId>
+                <version>1.2.2</version>
+            </dependency>
+            <dependency>
+                <groupId>javax.jms</groupId>
+                <artifactId>javax.jms-api</artifactId>
+                <version>2.0.1</version>
+            </dependency>
+            <dependency>
+                <groupId>javax.servlet</groupId>
+                <artifactId>javax.servlet-api</artifactId>
+                <version>3.1.0</version>
+            </dependency>
+            <dependency>
+                <groupId>javax.transaction</groupId>
+                <artifactId>javax.transaction-api</artifactId>
+                <version>1.2</version>
+            </dependency>
+            <dependency>
+                <groupId>net.bytebuddy</groupId>
+                <artifactId>byte-buddy</artifactId>
+                <version>1.17.2</version>
+            </dependency>
+            <dependency>
+                <groupId>net.java.dev.stax-utils</groupId>
+                <artifactId>stax-utils</artifactId>
+                <version>20070216</version>
+            </dependency>
+            <dependency>
+                <groupId>org.agrona</groupId>
+                <artifactId>agrona</artifactId>
+                <version>1.15.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.antlr</groupId>
+                <artifactId>antlr4-runtime</artifactId>
+                <version>4.13.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.aries.blueprint</groupId>
+                <artifactId>org.apache.aries.blueprint.api</artifactId>
+                <version>1.0.1</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.aries.blueprint</groupId>
+                <artifactId>org.apache.aries.blueprint.cm</artifactId>
+                <version>1.3.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.aries.blueprint</groupId>
+                <artifactId>org.apache.aries.blueprint.core</artifactId>
+                <version>1.10.3</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.aries.blueprint</groupId>
+                <artifactId>org.apache.aries.blueprint.core.compatibility</artifactId>
+                <version>1.0.0</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.aries.blueprint</groupId>
+                <artifactId>org.apache.aries.blueprint.webosgi</artifactId>
+                <version>1.0.1</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.aries.jmx</groupId>
+                <artifactId>org.apache.aries.jmx.api</artifactId>
+                <version>1.1.5</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.aries.jmx</groupId>
+                <artifactId>org.apache.aries.jmx.blueprint.api</artifactId>
+                <version>1.2.0</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.aries.jmx</groupId>
+                <artifactId>org.apache.aries.jmx.blueprint.core</artifactId>
+                <version>1.2.0</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.aries.jmx</groupId>
+                <artifactId>org.apache.aries.jmx.core</artifactId>
+                <version>1.1.8</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.aries.jmx</groupId>
+                <artifactId>org.apache.aries.jmx.whiteboard</artifactId>
+                <version>1.2.0</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.aries</groupId>
+                <artifactId>org.apache.aries.util</artifactId>
+                <version>1.1.3</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.aries.proxy</groupId>
+                <artifactId>org.apache.aries.proxy</artifactId>
+                <version>1.1.14</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.aries.quiesce</groupId>
+                <artifactId>org.apache.aries.quiesce.api</artifactId>
+                <version>1.0.0</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.aries.spifly</groupId>
+                <artifactId>org.apache.aries.spifly.dynamic.bundle</artifactId>
+                <version>1.3.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.commons</groupId>
+                <artifactId>commons-dbcp2</artifactId>
+                <version>2.12.0</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.commons</groupId>
+                <artifactId>commons-lang3</artifactId>
+                <version>3.17.0</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.commons</groupId>
+                <artifactId>commons-pool2</artifactId>
+                <version>2.12.0</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.commons</groupId>
+                <artifactId>commons-text</artifactId>
+                <version>1.13.0</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.felix</groupId>
+                <artifactId>org.apache.felix.bundlerepository</artifactId>
+                <version>2.0.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.felix</groupId>
+                <artifactId>org.apache.felix.cm.json</artifactId>
+                <version>1.0.6</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.felix</groupId>
+                <artifactId>org.apache.felix.configadmin</artifactId>
+                <version>1.9.26</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.felix</groupId>
+                <artifactId>org.apache.felix.configadmin.plugin.interpolation</artifactId>
+                <version>1.2.8</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.felix</groupId>
+                <artifactId>org.apache.felix.configurator</artifactId>
+                <version>1.0.16</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.felix</groupId>
+                <artifactId>org.apache.felix.converter</artifactId>
+                <version>1.0.14</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.felix</groupId>
+                <artifactId>org.apache.felix.coordinator</artifactId>
+                <version>1.0.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.felix</groupId>
+                <artifactId>org.apache.felix.fileinstall</artifactId>
+                <version>3.7.4</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.felix</groupId>
+                <artifactId>org.apache.felix.framework</artifactId>
+                <version>7.0.5</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.felix</groupId>
+                <artifactId>org.apache.felix.framework.security</artifactId>
+                <version>2.8.4</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.felix</groupId>
+                <artifactId>org.apache.felix.http.jetty</artifactId>
+                <version>4.2.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.felix</groupId>
+                <artifactId>org.apache.felix.httplite.complete</artifactId>
+                <version>0.1.6</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.felix</groupId>
+                <artifactId>org.apache.felix.http.servlet-api</artifactId>
+                <version>1.2.0</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.felix</groupId>
+                <artifactId>org.apache.felix.http.whiteboard</artifactId>
+                <version>4.0.0</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.felix</groupId>
+                <artifactId>org.apache.felix.inventory</artifactId>
+                <version>1.1.0</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.felix</groupId>
+                <artifactId>org.apache.felix.metatype</artifactId>
+                <version>1.2.4</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.felix</groupId>
+                <artifactId>org.apache.felix.scr</artifactId>
+                <version>2.2.6</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.felix</groupId>
+                <artifactId>org.apache.felix.webconsole.plugins.ds</artifactId>
+                <version>2.2.0</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.felix</groupId>
+                <artifactId>org.apache.felix.webconsole.plugins.event</artifactId>
+                <version>1.1.8</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.felix</groupId>
+                <artifactId>org.apache.felix.webconsole.plugins.memoryusage</artifactId>
+                <version>1.0.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.felix</groupId>
+                <artifactId>org.osgi.service.obr</artifactId>
+                <version>1.0.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.geronimo.specs</groupId>
+                <artifactId>geronimo-atinject_1.0_spec</artifactId>
+                <version>1.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.geronimo.specs</groupId>
+                <artifactId>geronimo-j2ee-connector_1.6_spec</artifactId>
+                <version>1.0</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.httpcomponents</groupId>
+                <artifactId>httpclient-osgi</artifactId>
+                <version>4.5.14</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.httpcomponents</groupId>
+                <artifactId>httpcore-osgi</artifactId>
+                <version>4.4.16</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.kafka</groupId>
+                <artifactId>kafka-clients</artifactId>
+                <version>3.7.0</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.karaf.audit</groupId>
+                <artifactId>org.apache.karaf.audit.core</artifactId>
+                <version>4.4.6</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.karaf.bundle</groupId>
+                <artifactId>org.apache.karaf.bundle.blueprintstate</artifactId>
+                <version>4.4.6</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.karaf.bundle</groupId>
+                <artifactId>org.apache.karaf.bundle.core</artifactId>
+                <version>4.4.6</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.karaf.config</groupId>
+                <artifactId>org.apache.karaf.config.command</artifactId>
+                <version>4.4.6</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.karaf.config</groupId>
+                <artifactId>org.apache.karaf.config.core</artifactId>
+                <version>4.4.6</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.karaf.deployer</groupId>
+                <artifactId>org.apache.karaf.deployer.blueprint</artifactId>
+                <version>4.4.6</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.karaf.deployer</groupId>
+                <artifactId>org.apache.karaf.deployer.features</artifactId>
+                <version>4.4.6</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.karaf.deployer</groupId>
+                <artifactId>org.apache.karaf.deployer.kar</artifactId>
+                <version>4.4.6</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.karaf.deployer</groupId>
+                <artifactId>org.apache.karaf.deployer.wrap</artifactId>
+                <version>4.4.6</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.karaf.diagnostic</groupId>
+                <artifactId>org.apache.karaf.diagnostic.boot</artifactId>
+                <version>4.4.6</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.karaf.diagnostic</groupId>
+                <artifactId>org.apache.karaf.diagnostic.core</artifactId>
+                <version>4.4.6</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.karaf.features</groupId>
+                <artifactId>org.apache.karaf.features.command</artifactId>
+                <version>4.4.6</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.karaf.features</groupId>
+                <artifactId>org.apache.karaf.features.core</artifactId>
+                <version>4.4.6</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.karaf.features</groupId>
+                <artifactId>org.apache.karaf.features.extension</artifactId>
+                <version>4.4.6</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.karaf.http</groupId>
+                <artifactId>org.apache.karaf.http.core</artifactId>
+                <version>4.4.6</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.karaf.instance</groupId>
+                <artifactId>org.apache.karaf.instance.core</artifactId>
+                <version>4.4.6</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.karaf.jaas.blueprint</groupId>
+                <artifactId>org.apache.karaf.jaas.blueprint.config</artifactId>
+                <version>4.4.6</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.karaf.jaas.blueprint</groupId>
+                <artifactId>org.apache.karaf.jaas.blueprint.jasypt</artifactId>
+                <version>4.4.6</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.karaf.jaas</groupId>
+                <artifactId>org.apache.karaf.jaas.boot</artifactId>
+                <version>4.4.6</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.karaf.jaas</groupId>
+                <artifactId>org.apache.karaf.jaas.command</artifactId>
+                <version>4.4.6</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.karaf.jaas</groupId>
+                <artifactId>org.apache.karaf.jaas.config</artifactId>
+                <version>4.4.6</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.karaf.jaas</groupId>
+                <artifactId>org.apache.karaf.jaas.jasypt</artifactId>
+                <version>4.4.6</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.karaf.jaas</groupId>
+                <artifactId>org.apache.karaf.jaas.modules</artifactId>
+                <version>4.4.6</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.karaf.jaas</groupId>
+                <artifactId>org.apache.karaf.jaas.spring-security-crypto</artifactId>
+                <version>4.4.6</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.karaf.jdbc</groupId>
+                <artifactId>org.apache.karaf.jdbc.core</artifactId>
+                <version>4.4.6</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.karaf.kar</groupId>
+                <artifactId>org.apache.karaf.kar.core</artifactId>
+                <version>4.4.6</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.karaf.log</groupId>
+                <artifactId>org.apache.karaf.log.core</artifactId>
+                <version>4.4.6</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.karaf.management</groupId>
+                <artifactId>org.apache.karaf.management.server</artifactId>
+                <version>4.4.6</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.karaf</groupId>
+                <artifactId>manual</artifactId>
+                <version>4.4.6</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.karaf.maven</groupId>
+                <artifactId>org.apache.karaf.maven.core</artifactId>
+                <version>4.4.6</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.karaf.obr</groupId>
+                <artifactId>org.apache.karaf.obr.core</artifactId>
+                <version>4.4.6</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.karaf</groupId>
+                <artifactId>org.apache.karaf.client</artifactId>
+                <version>4.4.6</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.karaf</groupId>
+                <artifactId>org.apache.karaf.event</artifactId>
+                <version>4.4.6</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.karaf.package</groupId>
+                <artifactId>org.apache.karaf.package.core</artifactId>
+                <version>4.4.6</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.karaf.profile</groupId>
+                <artifactId>org.apache.karaf.profile.core</artifactId>
+                <version>4.4.6</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.karaf.scheduler</groupId>
+                <artifactId>org.apache.karaf.scheduler.core</artifactId>
+                <version>4.4.6</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.karaf.scr</groupId>
+                <artifactId>org.apache.karaf.scr.management</artifactId>
+                <version>4.4.6</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.karaf.scr</groupId>
+                <artifactId>org.apache.karaf.scr.state</artifactId>
+                <version>4.4.6</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.karaf.service</groupId>
+                <artifactId>org.apache.karaf.service.core</artifactId>
+                <version>4.4.6</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.karaf.service</groupId>
+                <artifactId>org.apache.karaf.service.guard</artifactId>
+                <version>4.4.6</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.karaf.services</groupId>
+                <artifactId>org.apache.karaf.services.eventadmin</artifactId>
+                <version>4.4.6</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.karaf.shell</groupId>
+                <artifactId>org.apache.karaf.shell.commands</artifactId>
+                <version>4.4.6</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.karaf.shell</groupId>
+                <artifactId>org.apache.karaf.shell.console</artifactId>
+                <version>4.4.6</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.karaf.shell</groupId>
+                <artifactId>org.apache.karaf.shell.core</artifactId>
+                <version>4.4.6</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.karaf.shell</groupId>
+                <artifactId>org.apache.karaf.shell.groovy</artifactId>
+                <version>4.4.6</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.karaf.shell</groupId>
+                <artifactId>org.apache.karaf.shell.ssh</artifactId>
+                <version>4.4.6</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.karaf.shell</groupId>
+                <artifactId>org.apache.karaf.shell.table</artifactId>
+                <version>4.4.6</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.karaf.system</groupId>
+                <artifactId>org.apache.karaf.system.core</artifactId>
+                <version>4.4.6</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.karaf.tooling</groupId>
+                <artifactId>org.apache.karaf.tools.utils</artifactId>
+                <version>4.4.6</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.karaf.webconsole</groupId>
+                <artifactId>org.apache.karaf.webconsole.console</artifactId>
+                <version>4.4.6</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.karaf.webconsole</groupId>
+                <artifactId>org.apache.karaf.webconsole.features</artifactId>
+                <version>4.4.6</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.karaf.webconsole</groupId>
+                <artifactId>org.apache.karaf.webconsole.gogo</artifactId>
+                <version>4.4.6</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.karaf.webconsole</groupId>
+                <artifactId>org.apache.karaf.webconsole.http</artifactId>
+                <version>4.4.6</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.karaf.webconsole</groupId>
+                <artifactId>org.apache.karaf.webconsole.instance</artifactId>
+                <version>4.4.6</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.karaf.web</groupId>
+                <artifactId>org.apache.karaf.web.core</artifactId>
+                <version>4.4.6</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.karaf.wrapper</groupId>
+                <artifactId>org.apache.karaf.wrapper.core</artifactId>
+                <version>4.4.6</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.servicemix.bundles</groupId>
+                <artifactId>org.apache.servicemix.bundles.cglib</artifactId>
+                <version>3.3.0_1</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.servicemix.bundles</groupId>
+                <artifactId>org.apache.servicemix.bundles.jasypt</artifactId>
+                <version>1.9.3_1</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.servicemix.bundles</groupId>
+                <artifactId>org.apache.servicemix.bundles.jasypt-spring31</artifactId>
+                <version>1.9.3_1</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.servicemix.bundles</groupId>
+                <artifactId>org.apache.servicemix.bundles.javax-inject</artifactId>
+                <version>1_3</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.servicemix.bundles</groupId>
+                <artifactId>org.apache.servicemix.bundles.spring-security-crypto</artifactId>
+                <version>5.3.3.RELEASE_2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.servicemix.specs</groupId>
+                <artifactId>org.apache.servicemix.specs.jaxb-api-2.2</artifactId>
+                <version>2.9.0</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.sling</groupId>
+                <artifactId>org.apache.sling.commons.johnzon</artifactId>
+                <version>1.2.16</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.sshd</groupId>
+                <artifactId>sshd-osgi</artifactId>
+                <version>2.12.1</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.sshd</groupId>
+                <artifactId>sshd-scp</artifactId>
+                <version>2.12.1</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.sshd</groupId>
+                <artifactId>sshd-sftp</artifactId>
+                <version>2.12.1</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apfloat</groupId>
+                <artifactId>apfloat</artifactId>
+                <version>1.10.1</version>
+            </dependency>
+            <dependency>
+                <groupId>org.checkerframework</groupId>
+                <artifactId>checker-qual</artifactId>
+                <version>3.49.1</version>
+            </dependency>
+            <dependency>
+                <groupId>org.codehaus.woodstox</groupId>
+                <artifactId>stax2-api</artifactId>
+                <version>4.2.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.eclipse.jdt</groupId>
+                <artifactId>ecj</artifactId>
+                <version>3.26.0</version>
+            </dependency>
+            <dependency>
+                <groupId>org.eclipse.jetty.alpn</groupId>
+                <artifactId>alpn-api</artifactId>
+                <version>1.1.3.v20160715</version>
+            </dependency>
+            <dependency>
+                <groupId>org.eclipse.jetty.http2</groupId>
+                <artifactId>http2-client</artifactId>
+                <version>9.4.54.v20240208</version>
+            </dependency>
+            <dependency>
+                <groupId>org.eclipse.jetty.http2</groupId>
+                <artifactId>http2-common</artifactId>
+                <version>9.4.54.v20240208</version>
+            </dependency>
+            <dependency>
+                <groupId>org.eclipse.jetty.http2</groupId>
+                <artifactId>http2-hpack</artifactId>
+                <version>9.4.54.v20240208</version>
+            </dependency>
+            <dependency>
+                <groupId>org.eclipse.jetty.http2</groupId>
+                <artifactId>http2-http-client-transport</artifactId>
+                <version>9.4.54.v20240208</version>
+            </dependency>
+            <dependency>
+                <groupId>org.eclipse.jetty.http2</groupId>
+                <artifactId>http2-server</artifactId>
+                <version>9.4.54.v20240208</version>
+            </dependency>
+            <dependency>
+                <groupId>org.eclipse.jetty</groupId>
+                <artifactId>jetty-alpn-client</artifactId>
+                <version>9.4.54.v20240208</version>
+            </dependency>
+            <dependency>
+                <groupId>org.eclipse.jetty</groupId>
+                <artifactId>jetty-alpn-java-client</artifactId>
+                <version>9.4.54.v20240208</version>
+            </dependency>
+            <dependency>
+                <groupId>org.eclipse.jetty</groupId>
+                <artifactId>jetty-alpn-java-server</artifactId>
+                <version>9.4.54.v20240208</version>
+            </dependency>
+            <dependency>
+                <groupId>org.eclipse.jetty</groupId>
+                <artifactId>jetty-alpn-openjdk8-client</artifactId>
+                <version>9.4.54.v20240208</version>
+            </dependency>
+            <dependency>
+                <groupId>org.eclipse.jetty</groupId>
+                <artifactId>jetty-alpn-openjdk8-server</artifactId>
+                <version>9.4.54.v20240208</version>
+            </dependency>
+            <dependency>
+                <groupId>org.eclipse.jetty</groupId>
+                <artifactId>jetty-alpn-server</artifactId>
+                <version>9.4.54.v20240208</version>
+            </dependency>
+            <dependency>
+                <groupId>org.eclipse.jetty</groupId>
+                <artifactId>jetty-client</artifactId>
+                <version>9.4.54.v20240208</version>
+            </dependency>
+            <dependency>
+                <groupId>org.eclipse.jetty</groupId>
+                <artifactId>jetty-continuation</artifactId>
+                <version>9.4.54.v20240208</version>
+            </dependency>
+            <dependency>
+                <groupId>org.eclipse.jetty</groupId>
+                <artifactId>jetty-http</artifactId>
+                <version>9.4.54.v20240208</version>
+            </dependency>
+            <dependency>
+                <groupId>org.eclipse.jetty</groupId>
+                <artifactId>jetty-io</artifactId>
+                <version>9.4.54.v20240208</version>
+            </dependency>
+            <dependency>
+                <groupId>org.eclipse.jetty</groupId>
+                <artifactId>jetty-jaas</artifactId>
+                <version>9.4.54.v20240208</version>
+            </dependency>
+            <dependency>
+                <groupId>org.eclipse.jetty</groupId>
+                <artifactId>jetty-jmx</artifactId>
+                <version>9.4.54.v20240208</version>
+            </dependency>
+            <dependency>
+                <groupId>org.eclipse.jetty</groupId>
+                <artifactId>jetty-openid</artifactId>
+                <version>9.4.54.v20240208</version>
+            </dependency>
+            <dependency>
+                <groupId>org.eclipse.jetty</groupId>
+                <artifactId>jetty-proxy</artifactId>
+                <version>9.4.54.v20240208</version>
+            </dependency>
+            <dependency>
+                <groupId>org.eclipse.jetty</groupId>
+                <artifactId>jetty-rewrite</artifactId>
+                <version>9.4.54.v20240208</version>
+            </dependency>
+            <dependency>
+                <groupId>org.eclipse.jetty</groupId>
+                <artifactId>jetty-security</artifactId>
+                <version>9.4.54.v20240208</version>
+            </dependency>
+            <dependency>
+                <groupId>org.eclipse.jetty</groupId>
+                <artifactId>jetty-server</artifactId>
+                <version>9.4.54.v20240208</version>
+            </dependency>
+            <dependency>
+                <groupId>org.eclipse.jetty</groupId>
+                <artifactId>jetty-servlet</artifactId>
+                <version>9.4.54.v20240208</version>
+            </dependency>
+            <dependency>
+                <groupId>org.eclipse.jetty</groupId>
+                <artifactId>jetty-servlets</artifactId>
+                <version>9.4.54.v20240208</version>
+            </dependency>
+            <dependency>
+                <groupId>org.eclipse.jetty</groupId>
+                <artifactId>jetty-util</artifactId>
+                <version>9.4.54.v20240208</version>
+            </dependency>
+            <dependency>
+                <groupId>org.eclipse.jetty</groupId>
+                <artifactId>jetty-util-ajax</artifactId>
+                <version>9.4.54.v20240208</version>
+            </dependency>
+            <dependency>
+                <groupId>org.eclipse.jetty</groupId>
+                <artifactId>jetty-xml</artifactId>
+                <version>9.4.54.v20240208</version>
+            </dependency>
+            <dependency>
+                <groupId>org.eclipse.jetty.websocket</groupId>
+                <artifactId>javax-websocket-client-impl</artifactId>
+                <version>9.4.54.v20240208</version>
+            </dependency>
+            <dependency>
+                <groupId>org.eclipse.jetty.websocket</groupId>
+                <artifactId>javax-websocket-server-impl</artifactId>
+                <version>9.4.54.v20240208</version>
+            </dependency>
+            <dependency>
+                <groupId>org.eclipse.jetty.websocket</groupId>
+                <artifactId>websocket-api</artifactId>
+                <version>9.4.54.v20240208</version>
+            </dependency>
+            <dependency>
+                <groupId>org.eclipse.jetty.websocket</groupId>
+                <artifactId>websocket-client</artifactId>
+                <version>9.4.54.v20240208</version>
+            </dependency>
+            <dependency>
+                <groupId>org.eclipse.jetty.websocket</groupId>
+                <artifactId>websocket-common</artifactId>
+                <version>9.4.54.v20240208</version>
+            </dependency>
+            <dependency>
+                <groupId>org.eclipse.jetty.websocket</groupId>
+                <artifactId>websocket-server</artifactId>
+                <version>9.4.54.v20240208</version>
+            </dependency>
+            <dependency>
+                <groupId>org.eclipse.jetty.websocket</groupId>
+                <artifactId>websocket-servlet</artifactId>
+                <version>9.4.54.v20240208</version>
+            </dependency>
+            <dependency>
+                <groupId>org.eclipse.platform</groupId>
+                <artifactId>org.eclipse.osgi</artifactId>
+                <version>3.18.0</version>
+            </dependency>
+            <dependency>
+                <groupId>org.fusesource.jansi</groupId>
+                <artifactId>jansi</artifactId>
+                <version>2.4.1</version>
+            </dependency>
+            <dependency>
+                <groupId>org.glassfish.hk2.external</groupId>
+                <artifactId>aopalliance-repackaged</artifactId>
+                <version>2.6.1</version>
+            </dependency>
+            <dependency>
+                <groupId>org.glassfish.hk2.external</groupId>
+                <artifactId>jakarta.inject</artifactId>
+                <version>2.6.1</version>
+            </dependency>
+            <dependency>
+                <groupId>org.glassfish.hk2</groupId>
+                <artifactId>hk2-api</artifactId>
+                <version>2.6.1</version>
+            </dependency>
+            <dependency>
+                <groupId>org.glassfish.hk2</groupId>
+                <artifactId>hk2-locator</artifactId>
+                <version>2.6.1</version>
+            </dependency>
+            <dependency>
+                <groupId>org.glassfish.hk2</groupId>
+                <artifactId>hk2-utils</artifactId>
+                <version>2.6.1</version>
+            </dependency>
+            <dependency>
+                <groupId>org.glassfish.hk2</groupId>
+                <artifactId>osgi-resource-locator</artifactId>
+                <version>1.0.3</version>
+            </dependency>
+            <dependency>
+                <groupId>org.glassfish.jersey.containers</groupId>
+                <artifactId>jersey-container-servlet</artifactId>
+                <version>2.46</version>
+            </dependency>
+            <dependency>
+                <groupId>org.glassfish.jersey.containers</groupId>
+                <artifactId>jersey-container-servlet-core</artifactId>
+                <version>2.46</version>
+            </dependency>
+            <dependency>
+                <groupId>org.glassfish.jersey.core</groupId>
+                <artifactId>jersey-client</artifactId>
+                <version>2.46</version>
+            </dependency>
+            <dependency>
+                <groupId>org.glassfish.jersey.core</groupId>
+                <artifactId>jersey-common</artifactId>
+                <version>2.46</version>
+            </dependency>
+            <dependency>
+                <groupId>org.glassfish.jersey.core</groupId>
+                <artifactId>jersey-server</artifactId>
+                <version>2.46</version>
+            </dependency>
+            <dependency>
+                <groupId>org.glassfish.jersey.ext</groupId>
+                <artifactId>jersey-entity-filtering</artifactId>
+                <version>2.46</version>
+            </dependency>
+            <dependency>
+                <groupId>org.glassfish.jersey.ext</groupId>
+                <artifactId>jersey-proxy-client</artifactId>
+                <version>2.46</version>
+            </dependency>
+            <dependency>
+                <groupId>org.glassfish.jersey.inject</groupId>
+                <artifactId>jersey-hk2</artifactId>
+                <version>2.46</version>
+            </dependency>
+            <dependency>
+                <groupId>org.glassfish.jersey.media</groupId>
+                <artifactId>jersey-media-json-jackson</artifactId>
+                <version>2.46</version>
+            </dependency>
+            <dependency>
+                <groupId>org.glassfish.jersey.media</groupId>
+                <artifactId>jersey-media-sse</artifactId>
+                <version>2.46</version>
+            </dependency>
+            <dependency>
+                <groupId>org.javassist</groupId>
+                <artifactId>javassist</artifactId>
+                <version>3.30.2-GA</version>
+            </dependency>
+            <dependency>
+                <groupId>org.jgrapht</groupId>
+                <artifactId>jgrapht-core</artifactId>
+                <version>1.5.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.jheaps</groupId>
+                <artifactId>jheaps</artifactId>
+                <version>0.14</version>
+            </dependency>
+            <dependency>
+                <groupId>org.jline</groupId>
+                <artifactId>jline</artifactId>
+                <version>3.21.0</version>
+            </dependency>
+            <dependency>
+                <groupId>org.jolokia</groupId>
+                <artifactId>jolokia-osgi</artifactId>
+                <version>1.7.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.keycloak</groupId>
+                <artifactId>keycloak-osgi-adapter</artifactId>
+                <version>18.0.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.lmdbjava</groupId>
+                <artifactId>lmdbjava</artifactId>
+                <version>0.7.0</version>
+            </dependency>
+            <dependency>
+                <groupId>org.lz4</groupId>
+                <artifactId>lz4-java</artifactId>
+                <version>1.8.0</version>
+            </dependency>
+            <dependency>
+                <groupId>org.mariadb.jdbc</groupId>
+                <artifactId>mariadb-java-client</artifactId>
+                <version>3.3.3</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.aaa</groupId>
+                <artifactId>aaa-authn-api</artifactId>
+                <version>0.20.8</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.aaa</groupId>
+                <artifactId>aaa-cert</artifactId>
+                <version>0.20.8</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.aaa</groupId>
+                <artifactId>aaa-cli</artifactId>
+                <version>0.20.8</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.aaa</groupId>
+                <artifactId>aaa-encrypt-service</artifactId>
+                <version>0.20.8</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.aaa</groupId>
+                <artifactId>aaa-encrypt-service-impl</artifactId>
+                <version>0.20.8</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.aaa</groupId>
+                <artifactId>aaa-filterchain</artifactId>
+                <version>0.20.8</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.aaa</groupId>
+                <artifactId>aaa-idm-store-h2</artifactId>
+                <version>0.20.8</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.aaa</groupId>
+                <artifactId>aaa-jetty-auth-log-filter</artifactId>
+                <version>0.20.8</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.aaa</groupId>
+                <artifactId>aaa-password-service-api</artifactId>
+                <version>0.20.8</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.aaa</groupId>
+                <artifactId>aaa-password-service-impl</artifactId>
+                <version>0.20.8</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.aaa</groupId>
+                <artifactId>aaa-shiro</artifactId>
+                <version>0.20.8</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.aaa</groupId>
+                <artifactId>aaa-shiro-api</artifactId>
+                <version>0.20.8</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.aaa</groupId>
+                <artifactId>aaa-tokenauthrealm</artifactId>
+                <version>0.20.8</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.aaa</groupId>
+                <artifactId>repackaged-shiro</artifactId>
+                <version>0.20.8</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.aaa.web</groupId>
+                <artifactId>servlet-api</artifactId>
+                <version>0.20.8</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.aaa.web</groupId>
+                <artifactId>servlet-jersey2</artifactId>
+                <version>0.20.8</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.aaa.web</groupId>
+                <artifactId>web-api</artifactId>
+                <version>0.20.8</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.aaa.web</groupId>
+                <artifactId>web-osgi-impl</artifactId>
+                <version>0.20.8</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>algo-api</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>algo-impl</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>bgp-benchmark-app</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>bgp-bmp-api</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>bgp-bmp-impl</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>bgp-bmp-parser-impl</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>bgp-bmp-spi</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>bgp-cli</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>bgp-concepts</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>bgp-evpn</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>bgp-flowspec</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>bgp-inet</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>bgp-l3vpn</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>bgp-labeled-unicast</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>bgp-linkstate</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>bgp-mvpn</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>bgp-openconfig-api</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>bgp-openconfig-rp-impl</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>bgp-openconfig-rp-spi</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>bgp-openconfig-rp-statement</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>bgp-openconfig-spi</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>bgp-openconfig-state</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>bgp-parser-api</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>bgp-parser-impl</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>bgp-parser-spi</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>bgp-path-selection-mode</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>bgp-peer-acceptor</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>bgp-rib-api</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>bgp-rib-impl</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>bgp-rib-spi</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>bgp-route-target</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>bgp-topology-provider</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>bmp-monitors-config-loader</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>concepts</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>config-loader-impl</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>config-loader-spi</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>data-change-counter</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>graph-api</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>graph-impl</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>pcep-api</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>pcep-auto-bandwidth-extension</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>pcep-base-parser</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>pcep-cli</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>pcep-ietf-p2mp-te-lsp</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>pcep-ietf-stateful</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>pcep-impl</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>pcep-segment-routing</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>pcep-server-api</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>pcep-server-provider</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>pcep-spi</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>pcep-topology-api</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>pcep-topology-provider</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>pcep-topology-spi</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>pcep-tunnel-api</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>pcep-tunnel-provider</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>programming-api</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>programming-impl</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>programming-spi</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>programming-topology-api</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>programming-tunnel-api</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>protocols-config-loader</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>routing-policy-config-loader</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>rsvp-api</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>rsvp-impl</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>rsvp-spi</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>topology-api</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>topology-config-loader</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>topology-segment-routing</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>topology-tunnel-api</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.bgpcep</groupId>
+                <artifactId>util</artifactId>
+                <version>0.22.10</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.controller</groupId>
+                <artifactId>atomix-storage</artifactId>
+                <version>10.0.9</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.controller</groupId>
+                <artifactId>benchmark-api</artifactId>
+                <version>10.0.9</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.controller</groupId>
+                <artifactId>blueprint</artifactId>
+                <version>10.0.9</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.controller</groupId>
+                <artifactId>cds-access-api</artifactId>
+                <version>10.0.9</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.controller</groupId>
+                <artifactId>cds-access-client</artifactId>
+                <version>10.0.9</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.controller</groupId>
+                <artifactId>cds-dom-api</artifactId>
+                <version>10.0.9</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.controller</groupId>
+                <artifactId>cds-mgmt-api</artifactId>
+                <version>10.0.9</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.controller</groupId>
+                <artifactId>dsbenchmark</artifactId>
+                <version>10.0.9</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.controller</groupId>
+                <artifactId>eos-dom-akka</artifactId>
+                <version>10.0.9</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.controller</groupId>
+                <artifactId>ntfbenchmark</artifactId>
+                <version>10.0.9</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.controller</groupId>
+                <artifactId>raft-journal</artifactId>
+                <version>10.0.9</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.controller</groupId>
+                <artifactId>repackaged-akka</artifactId>
+                <version>10.0.9</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.controller</groupId>
+                <artifactId>rpcbenchmark</artifactId>
+                <version>10.0.9</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.controller</groupId>
+                <artifactId>sal-akka-raft</artifactId>
+                <version>10.0.9</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.controller</groupId>
+                <artifactId>sal-akka-segmented-journal</artifactId>
+                <version>10.0.9</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.controller</groupId>
+                <artifactId>sal-cluster-admin-api</artifactId>
+                <version>10.0.9</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.controller</groupId>
+                <artifactId>sal-cluster-admin-impl</artifactId>
+                <version>10.0.9</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.controller</groupId>
+                <artifactId>sal-cluster-admin-karaf-cli</artifactId>
+                <version>10.0.9</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.controller</groupId>
+                <artifactId>sal-clustering-commons</artifactId>
+                <version>10.0.9</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.controller</groupId>
+                <artifactId>sal-common-util</artifactId>
+                <version>10.0.9</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.controller</groupId>
+                <artifactId>sal-distributed-datastore</artifactId>
+                <version>10.0.9</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.controller</groupId>
+                <artifactId>sal-remoterpc-connector</artifactId>
+                <version>10.0.9</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.controller.samples</groupId>
+                <artifactId>clustering-it-karaf-cli</artifactId>
+                <version>10.0.9</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.controller.samples</groupId>
+                <artifactId>clustering-it-model</artifactId>
+                <version>10.0.9</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.controller.samples</groupId>
+                <artifactId>clustering-it-provider</artifactId>
+                <version>10.0.9</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.controller.samples</groupId>
+                <artifactId>sample-toaster</artifactId>
+                <version>10.0.9</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.controller.samples</groupId>
+                <artifactId>sample-toaster-consumer</artifactId>
+                <version>10.0.9</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.controller.samples</groupId>
+                <artifactId>sample-toaster-provider</artifactId>
+                <version>10.0.9</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.daexim</groupId>
+                <artifactId>daexim-akka-infoprovider-impl</artifactId>
+                <version>1.16.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.daexim</groupId>
+                <artifactId>daexim-impl</artifactId>
+                <version>1.16.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.daexim</groupId>
+                <artifactId>daexim-model</artifactId>
+                <version>1.16.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.daexim</groupId>
+                <artifactId>daexim-spi</artifactId>
+                <version>1.16.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.infrautils</groupId>
+                <artifactId>diagstatus-api</artifactId>
+                <version>7.1.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.infrautils</groupId>
+                <artifactId>diagstatus-impl</artifactId>
+                <version>7.1.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.infrautils</groupId>
+                <artifactId>diagstatus-shell</artifactId>
+                <version>7.1.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.infrautils</groupId>
+                <artifactId>diagstatus-web</artifactId>
+                <version>7.1.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.infrautils</groupId>
+                <artifactId>infrautils-util</artifactId>
+                <version>7.1.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.infrautils</groupId>
+                <artifactId>inject</artifactId>
+                <version>7.1.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.infrautils</groupId>
+                <artifactId>ready-api</artifactId>
+                <version>7.1.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.infrautils</groupId>
+                <artifactId>ready-impl</artifactId>
+                <version>7.1.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.jsonrpc.bus</groupId>
+                <artifactId>bus-api</artifactId>
+                <version>1.17.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.jsonrpc.bus</groupId>
+                <artifactId>bus-jsonrpc</artifactId>
+                <version>1.17.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.jsonrpc.bus</groupId>
+                <artifactId>bus-messagelib</artifactId>
+                <version>1.17.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.jsonrpc.bus</groupId>
+                <artifactId>bus-spi</artifactId>
+                <version>1.17.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.jsonrpc.bus</groupId>
+                <artifactId>transport-http</artifactId>
+                <version>1.17.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.jsonrpc.bus</groupId>
+                <artifactId>transport-zmq</artifactId>
+                <version>1.17.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.jsonrpc</groupId>
+                <artifactId>dom-codec</artifactId>
+                <version>1.17.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.jsonrpc</groupId>
+                <artifactId>jsonrpc-api</artifactId>
+                <version>1.17.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.jsonrpc</groupId>
+                <artifactId>jsonrpc-provider-common</artifactId>
+                <version>1.17.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.jsonrpc</groupId>
+                <artifactId>jsonrpc-provider-single</artifactId>
+                <version>1.17.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.jsonrpc.security</groupId>
+                <artifactId>security-aaa</artifactId>
+                <version>1.17.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.jsonrpc.security</groupId>
+                <artifactId>security-api</artifactId>
+                <version>1.17.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.jsonrpc.security</groupId>
+                <artifactId>security-noop</artifactId>
+                <version>1.17.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.jsonrpc.security</groupId>
+                <artifactId>security-service</artifactId>
+                <version>1.17.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.lispflowmapping</groupId>
+                <artifactId>mappingservice.api</artifactId>
+                <version>1.20.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.lispflowmapping</groupId>
+                <artifactId>mappingservice.config</artifactId>
+                <version>1.20.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.lispflowmapping</groupId>
+                <artifactId>mappingservice.dsbackend</artifactId>
+                <version>1.20.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.lispflowmapping</groupId>
+                <artifactId>mappingservice.implementation</artifactId>
+                <version>1.20.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.lispflowmapping</groupId>
+                <artifactId>mappingservice.inmemorydb</artifactId>
+                <version>1.20.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.lispflowmapping</groupId>
+                <artifactId>mappingservice.lisp-proto</artifactId>
+                <version>1.20.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.lispflowmapping</groupId>
+                <artifactId>mappingservice.mapcache</artifactId>
+                <version>1.20.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.lispflowmapping</groupId>
+                <artifactId>mappingservice.shell</artifactId>
+                <version>1.20.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.lispflowmapping</groupId>
+                <artifactId>mappingservice.southbound</artifactId>
+                <version>1.20.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal.binding.model.iana</groupId>
+                <artifactId>iana-crypt-hash</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal.binding.model.iana</groupId>
+                <artifactId>iana-if-type</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal.binding.model.iana</groupId>
+                <artifactId>iana-routing-types</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal.binding.model.iana</groupId>
+                <artifactId>iana-ssh-encryption-algs</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal.binding.model.iana</groupId>
+                <artifactId>iana-ssh-key-exchange-algs</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal.binding.model.iana</groupId>
+                <artifactId>iana-ssh-mac-algs</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal.binding.model.iana</groupId>
+                <artifactId>iana-ssh-public-key-algs</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal.binding.model.iana</groupId>
+                <artifactId>iana-tls-cipher-suite-algs</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal.binding.model.ietf</groupId>
+                <artifactId>rfc6022</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal.binding.model.ietf</groupId>
+                <artifactId>rfc6241</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal.binding.model.ietf</groupId>
+                <artifactId>rfc6243</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal.binding.model.ietf</groupId>
+                <artifactId>rfc6470</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal.binding.model.ietf</groupId>
+                <artifactId>rfc6991-ietf-inet-types</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal.binding.model.ietf</groupId>
+                <artifactId>rfc6991-ietf-yang-types</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal.binding.model.ietf</groupId>
+                <artifactId>rfc7407-ietf-x509-cert-to-name</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal.binding.model.ietf</groupId>
+                <artifactId>rfc7952</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal.binding.model.ietf</groupId>
+                <artifactId>rfc8040-ietf-restconf</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal.binding.model.ietf</groupId>
+                <artifactId>rfc8040-ietf-restconf-monitoring</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal.binding.model.ietf</groupId>
+                <artifactId>rfc8072</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal.binding.model.ietf</groupId>
+                <artifactId>rfc8294-ietf-routing-types</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal.binding.model.ietf</groupId>
+                <artifactId>rfc8341</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal.binding.model.ietf</groupId>
+                <artifactId>rfc8342-ietf-datastores</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal.binding.model.ietf</groupId>
+                <artifactId>rfc8342-ietf-origin</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal.binding.model.ietf</groupId>
+                <artifactId>rfc8343</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal.binding.model.ietf</groupId>
+                <artifactId>rfc8345-ietf-network</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal.binding.model.ietf</groupId>
+                <artifactId>rfc8345-ietf-network-state</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal.binding.model.ietf</groupId>
+                <artifactId>rfc8345-ietf-network-topology</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal.binding.model.ietf</groupId>
+                <artifactId>rfc8345-ietf-network-topology-state</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal.binding.model.ietf</groupId>
+                <artifactId>rfc8525</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal.binding.model.ietf</groupId>
+                <artifactId>rfc8526</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal.binding.model.ietf</groupId>
+                <artifactId>rfc9640</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal.binding.model.ietf</groupId>
+                <artifactId>rfc9641</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal.binding.model.ietf</groupId>
+                <artifactId>rfc9642</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal.binding.model.ietf</groupId>
+                <artifactId>rfc9643-ietf-tcp-client</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal.binding.model.ietf</groupId>
+                <artifactId>rfc9643-ietf-tcp-common</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal.binding.model.ietf</groupId>
+                <artifactId>rfc9643-ietf-tcp-server</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal.binding.model.ietf</groupId>
+                <artifactId>rfc9644-ietf-ssh-client</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal.binding.model.ietf</groupId>
+                <artifactId>rfc9644-ietf-ssh-common</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal.binding.model.ietf</groupId>
+                <artifactId>rfc9644-ietf-ssh-server</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal.binding.model.ietf</groupId>
+                <artifactId>rfc9645-ietf-tls-client</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal.binding.model.ietf</groupId>
+                <artifactId>rfc9645-ietf-tls-common</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal.binding.model.ietf</groupId>
+                <artifactId>rfc9645-ietf-tls-server</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal</groupId>
+                <artifactId>mdsal-binding-api</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal</groupId>
+                <artifactId>mdsal-binding-dom-adapter</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal</groupId>
+                <artifactId>mdsal-binding-spi</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal</groupId>
+                <artifactId>mdsal-binding-util</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal</groupId>
+                <artifactId>mdsal-common-api</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal</groupId>
+                <artifactId>mdsal-dom-api</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal</groupId>
+                <artifactId>mdsal-dom-broker</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal</groupId>
+                <artifactId>mdsal-dom-inmemory-datastore</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal</groupId>
+                <artifactId>mdsal-dom-schema-osgi</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal</groupId>
+                <artifactId>mdsal-dom-spi</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal</groupId>
+                <artifactId>mdsal-eos-binding-adapter</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal</groupId>
+                <artifactId>mdsal-eos-binding-api</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal</groupId>
+                <artifactId>mdsal-eos-common-api</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal</groupId>
+                <artifactId>mdsal-eos-dom-api</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal</groupId>
+                <artifactId>mdsal-eos-dom-simple</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal</groupId>
+                <artifactId>mdsal-replicate-common</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal</groupId>
+                <artifactId>mdsal-replicate-netty</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal</groupId>
+                <artifactId>mdsal-rfc8294-netty</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal</groupId>
+                <artifactId>mdsal-singleton-api</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal</groupId>
+                <artifactId>mdsal-singleton-impl</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal</groupId>
+                <artifactId>mdsal-trace-api</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal</groupId>
+                <artifactId>mdsal-trace-cli</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal</groupId>
+                <artifactId>mdsal-trace-impl</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal</groupId>
+                <artifactId>mdsal-yanglib-api</artifactId>
+                <version>0.19.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal</groupId>
+                <artifactId>mdsal-yanglib-rfc8525</artifactId>
+                <version>0.19.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal.model</groupId>
+                <artifactId>general-entity</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal.model</groupId>
+                <artifactId>ietf-topology</artifactId>
+                <version>2013.10.21.26.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal.model</groupId>
+                <artifactId>ietf-type-util</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal.model</groupId>
+                <artifactId>opendaylight-l2-types</artifactId>
+                <version>2013.08.27.26.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.mdsal.model</groupId>
+                <artifactId>yang-ext</artifactId>
+                <version>2013.09.07.26.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.netconf</groupId>
+                <artifactId>callhome-provider</artifactId>
+                <version>8.0.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.netconf</groupId>
+                <artifactId>keystore-api</artifactId>
+                <version>8.0.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.netconf</groupId>
+                <artifactId>keystore-legacy</artifactId>
+                <version>8.0.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.netconf</groupId>
+                <artifactId>keystore-none</artifactId>
+                <version>8.0.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.netconf</groupId>
+                <artifactId>keystore-plaintext-api</artifactId>
+                <version>8.0.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.netconf</groupId>
+                <artifactId>keystore-plaintext-cli</artifactId>
+                <version>8.0.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.netconf</groupId>
+                <artifactId>keystore-plaintext-localfile</artifactId>
+                <version>8.0.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.netconf.model</groupId>
+                <artifactId>draft-ietf-restconf-server</artifactId>
+                <version>8.0.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.netconf.model</groupId>
+                <artifactId>rfc5277</artifactId>
+                <version>8.0.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.netconf.model</groupId>
+                <artifactId>sal-remote</artifactId>
+                <version>8.0.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.netconf</groupId>
+                <artifactId>netconf-api</artifactId>
+                <version>8.0.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.netconf</groupId>
+                <artifactId>netconf-auth</artifactId>
+                <version>8.0.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.netconf</groupId>
+                <artifactId>netconf-auth-aaa</artifactId>
+                <version>8.0.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.netconf</groupId>
+                <artifactId>netconf-client</artifactId>
+                <version>8.0.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.netconf</groupId>
+                <artifactId>netconf-client-mdsal</artifactId>
+                <version>8.0.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.netconf</groupId>
+                <artifactId>netconf-codec</artifactId>
+                <version>8.0.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.netconf</groupId>
+                <artifactId>netconf-common</artifactId>
+                <version>8.0.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.netconf</groupId>
+                <artifactId>netconf-common-mdsal</artifactId>
+                <version>8.0.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.netconf</groupId>
+                <artifactId>netconf-console</artifactId>
+                <version>8.0.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.netconf</groupId>
+                <artifactId>netconf-dom-api</artifactId>
+                <version>8.0.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.netconf</groupId>
+                <artifactId>netconf-nb</artifactId>
+                <version>8.0.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.netconf</groupId>
+                <artifactId>netconf-netty-util</artifactId>
+                <version>8.0.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.netconf</groupId>
+                <artifactId>netconf-server</artifactId>
+                <version>8.0.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.netconf</groupId>
+                <artifactId>netconf-server-mdsal</artifactId>
+                <version>8.0.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.netconf</groupId>
+                <artifactId>netconf-test-perf</artifactId>
+                <version>8.0.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.netconf</groupId>
+                <artifactId>netconf-topology</artifactId>
+                <version>8.0.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.netconf</groupId>
+                <artifactId>netconf-topology-impl</artifactId>
+                <version>8.0.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.netconf</groupId>
+                <artifactId>netconf-topology-singleton</artifactId>
+                <version>8.0.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.netconf</groupId>
+                <artifactId>odl-device-notification</artifactId>
+                <version>8.0.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.netconf</groupId>
+                <artifactId>restconf-api</artifactId>
+                <version>8.0.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.netconf</groupId>
+                <artifactId>restconf-mdsal-spi</artifactId>
+                <version>8.0.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.netconf</groupId>
+                <artifactId>restconf-nb</artifactId>
+                <version>8.0.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.netconf</groupId>
+                <artifactId>restconf-openapi</artifactId>
+                <version>8.0.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.netconf</groupId>
+                <artifactId>restconf-server</artifactId>
+                <version>8.0.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.netconf</groupId>
+                <artifactId>restconf-server-api</artifactId>
+                <version>8.0.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.netconf</groupId>
+                <artifactId>restconf-server-jaxrs</artifactId>
+                <version>8.0.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.netconf</groupId>
+                <artifactId>restconf-server-mdsal</artifactId>
+                <version>8.0.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.netconf</groupId>
+                <artifactId>restconf-server-spi</artifactId>
+                <version>8.0.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.netconf</groupId>
+                <artifactId>sal-remote-impl</artifactId>
+                <version>8.0.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.netconf</groupId>
+                <artifactId>shaded-exificient</artifactId>
+                <version>8.0.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.netconf</groupId>
+                <artifactId>shaded-sshd</artifactId>
+                <version>8.0.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.netconf</groupId>
+                <artifactId>transport-api</artifactId>
+                <version>8.0.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.netconf</groupId>
+                <artifactId>transport-http</artifactId>
+                <version>8.0.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.netconf</groupId>
+                <artifactId>transport-ssh</artifactId>
+                <version>8.0.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.netconf</groupId>
+                <artifactId>transport-tcp</artifactId>
+                <version>8.0.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.netconf</groupId>
+                <artifactId>transport-tls</artifactId>
+                <version>8.0.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.netconf</groupId>
+                <artifactId>truststore-api</artifactId>
+                <version>8.0.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.netconf</groupId>
+                <artifactId>truststore-none</artifactId>
+                <version>8.0.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.netconf</groupId>
+                <artifactId>yanglib-mdsal-writer</artifactId>
+                <version>8.0.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.odlparent</groupId>
+                <artifactId>bcpkix-framework-ext</artifactId>
+                <version>14.0.8</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.odlparent</groupId>
+                <artifactId>bcprov-framework-ext</artifactId>
+                <version>14.0.8</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.odlparent</groupId>
+                <artifactId>bcutil-framework-ext</artifactId>
+                <version>14.0.8</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.odlparent</groupId>
+                <artifactId>bundles-diag</artifactId>
+                <version>14.0.8</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.odlparent</groupId>
+                <artifactId>karaf.branding</artifactId>
+                <version>14.0.8</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.odlparent</groupId>
+                <artifactId>logging-markers</artifactId>
+                <version>14.0.8</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.openflowplugin.applications</groupId>
+                <artifactId>arbitratorreconciliation-api</artifactId>
+                <version>0.19.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.openflowplugin.applications</groupId>
+                <artifactId>arbitratorreconciliation-impl</artifactId>
+                <version>0.19.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.openflowplugin.applications</groupId>
+                <artifactId>bulk-o-matic</artifactId>
+                <version>0.19.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.openflowplugin.applications</groupId>
+                <artifactId>device-ownership-service</artifactId>
+                <version>0.19.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.openflowplugin.applications</groupId>
+                <artifactId>forwardingrules-manager</artifactId>
+                <version>0.19.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.openflowplugin.applications</groupId>
+                <artifactId>forwardingrules-sync</artifactId>
+                <version>0.19.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.openflowplugin.applications</groupId>
+                <artifactId>lldp-speaker</artifactId>
+                <version>0.19.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.openflowplugin.applications</groupId>
+                <artifactId>of-switch-config-pusher</artifactId>
+                <version>0.19.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.openflowplugin.applications</groupId>
+                <artifactId>reconciliation-framework</artifactId>
+                <version>0.19.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.openflowplugin.applications</groupId>
+                <artifactId>southbound-cli</artifactId>
+                <version>0.19.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.openflowplugin.applications</groupId>
+                <artifactId>table-miss-enforcer</artifactId>
+                <version>0.19.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.openflowplugin.applications</groupId>
+                <artifactId>topology-lldp-discovery</artifactId>
+                <version>0.19.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.openflowplugin.applications</groupId>
+                <artifactId>topology-manager</artifactId>
+                <version>0.19.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.openflowplugin</groupId>
+                <artifactId>drop-test-karaf</artifactId>
+                <version>0.19.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.openflowplugin.libraries</groupId>
+                <artifactId>liblldp</artifactId>
+                <version>0.19.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.openflowplugin.model</groupId>
+                <artifactId>model-flow-base</artifactId>
+                <version>0.19.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.openflowplugin.model</groupId>
+                <artifactId>model-flow-service</artifactId>
+                <version>0.19.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.openflowplugin.model</groupId>
+                <artifactId>model-flow-statistics</artifactId>
+                <version>0.19.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.openflowplugin.model</groupId>
+                <artifactId>model-inventory</artifactId>
+                <version>0.19.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.openflowplugin.model</groupId>
+                <artifactId>model-topology</artifactId>
+                <version>0.19.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.openflowplugin</groupId>
+                <artifactId>openflowjava-extension-eric</artifactId>
+                <version>0.19.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.openflowplugin</groupId>
+                <artifactId>openflowjava-extension-nicira</artifactId>
+                <version>0.19.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.openflowplugin</groupId>
+                <artifactId>openflowjava-extension-nicira-api</artifactId>
+                <version>0.19.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.openflowplugin.openflowjava</groupId>
+                <artifactId>openflowjava-blueprint-config</artifactId>
+                <version>0.19.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.openflowplugin.openflowjava</groupId>
+                <artifactId>openflowjava-util</artifactId>
+                <version>0.19.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.openflowplugin.openflowjava</groupId>
+                <artifactId>openflow-protocol-api</artifactId>
+                <version>0.19.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.openflowplugin.openflowjava</groupId>
+                <artifactId>openflow-protocol-impl</artifactId>
+                <version>0.19.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.openflowplugin.openflowjava</groupId>
+                <artifactId>openflow-protocol-spi</artifactId>
+                <version>0.19.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.openflowplugin</groupId>
+                <artifactId>openflowplugin</artifactId>
+                <version>0.19.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.openflowplugin</groupId>
+                <artifactId>openflowplugin-api</artifactId>
+                <version>0.19.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.openflowplugin</groupId>
+                <artifactId>openflowplugin-blueprint-config</artifactId>
+                <version>0.19.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.openflowplugin</groupId>
+                <artifactId>openflowplugin-common</artifactId>
+                <version>0.19.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.openflowplugin</groupId>
+                <artifactId>openflowplugin-extension-api</artifactId>
+                <version>0.19.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.openflowplugin</groupId>
+                <artifactId>openflowplugin-extension-eric</artifactId>
+                <version>0.19.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.openflowplugin</groupId>
+                <artifactId>openflowplugin-extension-nicira</artifactId>
+                <version>0.19.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.openflowplugin</groupId>
+                <artifactId>openflowplugin-extension-onf</artifactId>
+                <version>0.19.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.openflowplugin</groupId>
+                <artifactId>openflowplugin-impl</artifactId>
+                <version>0.19.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.openflowplugin</groupId>
+                <artifactId>test-common</artifactId>
+                <version>0.19.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.ovsdb</groupId>
+                <artifactId>hwvtepsouthbound-api</artifactId>
+                <version>1.19.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.ovsdb</groupId>
+                <artifactId>hwvtepsouthbound-impl</artifactId>
+                <version>1.19.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.ovsdb</groupId>
+                <artifactId>library</artifactId>
+                <version>1.19.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.ovsdb</groupId>
+                <artifactId>schema.hardwarevtep</artifactId>
+                <version>1.19.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.ovsdb</groupId>
+                <artifactId>schema.openvswitch</artifactId>
+                <version>1.19.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.ovsdb</groupId>
+                <artifactId>southbound-api</artifactId>
+                <version>1.19.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.ovsdb</groupId>
+                <artifactId>southbound-impl</artifactId>
+                <version>1.19.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.ovsdb</groupId>
+                <artifactId>utils.config</artifactId>
+                <version>1.19.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.ovsdb</groupId>
+                <artifactId>utils.hwvtepsouthbound-utils</artifactId>
+                <version>1.19.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.ovsdb</groupId>
+                <artifactId>utils.mdsal-utils</artifactId>
+                <version>1.19.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.ovsdb</groupId>
+                <artifactId>utils.servicehelper</artifactId>
+                <version>1.19.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.ovsdb</groupId>
+                <artifactId>utils.southbound-utils</artifactId>
+                <version>1.19.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.ovsdb</groupId>
+                <artifactId>utils.yang-utils</artifactId>
+                <version>1.19.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.serviceutils</groupId>
+                <artifactId>listener-api</artifactId>
+                <version>0.14.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.serviceutils</groupId>
+                <artifactId>metrics-api</artifactId>
+                <version>0.14.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.serviceutils</groupId>
+                <artifactId>metrics-impl</artifactId>
+                <version>0.14.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.serviceutils</groupId>
+                <artifactId>rpc-api</artifactId>
+                <version>0.14.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.serviceutils</groupId>
+                <artifactId>srm-api</artifactId>
+                <version>0.14.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.serviceutils</groupId>
+                <artifactId>srm-impl</artifactId>
+                <version>0.14.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.serviceutils</groupId>
+                <artifactId>srm-shell</artifactId>
+                <version>0.14.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.serviceutils</groupId>
+                <artifactId>tools-api</artifactId>
+                <version>0.14.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.serviceutils</groupId>
+                <artifactId>upgrade</artifactId>
+                <version>0.14.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.transportpce.models</groupId>
+                <artifactId>openconfig-240119</artifactId>
+                <version>21.2.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.transportpce.models</groupId>
+                <artifactId>openroadm-common-1.2.1</artifactId>
+                <version>21.2.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.transportpce.models</groupId>
+                <artifactId>openroadm-common-13.1.0</artifactId>
+                <version>21.2.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.transportpce.models</groupId>
+                <artifactId>openroadm-common-2.2.1</artifactId>
+                <version>21.2.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.transportpce.models</groupId>
+                <artifactId>openroadm-common-7.1.0</artifactId>
+                <version>21.2.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.transportpce.models</groupId>
+                <artifactId>openroadm-device-1.2.1</artifactId>
+                <version>21.2.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.transportpce.models</groupId>
+                <artifactId>openroadm-device-13.1.0</artifactId>
+                <version>21.2.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.transportpce.models</groupId>
+                <artifactId>openroadm-device-2.2.1</artifactId>
+                <version>21.2.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.transportpce.models</groupId>
+                <artifactId>openroadm-device-7.1.0</artifactId>
+                <version>21.2.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.transportpce.models</groupId>
+                <artifactId>openroadm-network-13.1.0</artifactId>
+                <version>21.2.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.transportpce.models</groupId>
+                <artifactId>openroadm-service-13.1.0</artifactId>
+                <version>21.2.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.transportpce.models</groupId>
+                <artifactId>tapi-2.4.0</artifactId>
+                <version>21.2.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.transportpce</groupId>
+                <artifactId>transportpce-api</artifactId>
+                <version>10.2.3</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.transportpce</groupId>
+                <artifactId>transportpce-common</artifactId>
+                <version>10.2.3</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.transportpce</groupId>
+                <artifactId>transportpce-dmaap-client</artifactId>
+                <version>10.2.3</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.transportpce</groupId>
+                <artifactId>transportpce-inventory</artifactId>
+                <version>10.2.3</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.transportpce</groupId>
+                <artifactId>transportpce-nbinotifications</artifactId>
+                <version>10.2.3</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.transportpce</groupId>
+                <artifactId>transportpce-networkmodel</artifactId>
+                <version>10.2.3</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.transportpce</groupId>
+                <artifactId>transportpce-olm</artifactId>
+                <version>10.2.3</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.transportpce</groupId>
+                <artifactId>transportpce-pce</artifactId>
+                <version>10.2.3</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.transportpce</groupId>
+                <artifactId>transportpce-renderer</artifactId>
+                <version>10.2.3</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.transportpce</groupId>
+                <artifactId>transportpce-servicehandler</artifactId>
+                <version>10.2.3</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.transportpce</groupId>
+                <artifactId>transportpce-tapi</artifactId>
+                <version>10.2.3</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>binding-data-codec-api</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>binding-data-codec-dynamic</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>binding-data-codec-osgi</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>binding-data-codec-spi</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>binding-generator</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>binding-loader</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>binding-model</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>binding-reflect</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>binding-runtime-api</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>binding-runtime-osgi</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>binding-runtime-spi</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>binding-spec</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>codegen-extensions</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>concepts</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>odlext-model-api</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>odlext-parser-support</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>openconfig-model-api</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>openconfig-parser-support</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>rfc6241-model-api</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>rfc6241-parser-support</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>rfc6536-model-api</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>rfc6536-parser-support</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>rfc6643-model-api</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>rfc6643-parser-support</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>rfc7952-model-api</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>rfc7952-parser-support</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>rfc8040-model-api</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>rfc8040-parser-support</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>rfc8528-model-api</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>rfc8528-parser-support</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>rfc8639-model-api</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>rfc8639-parser-support</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>rfc8819-model-api</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>rfc8819-parser-support</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>util</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>yang-common</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>yang-common-netty</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>yang-data-api</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>yang-data-codec-binfmt</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>yang-data-codec-gson</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>yang-data-codec-xml</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>yang-data-impl</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>yang-data-spi</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>yang-data-transform</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>yang-data-tree-api</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>yang-data-tree-ri</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>yang-data-tree-spi</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>yang-data-util</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>yang-ir</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>yang-model-api</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>yang-model-export</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>yang-model-ri</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>yang-model-spi</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>yang-model-util</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>yang-parser-api</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>yang-parser-impl</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>yang-parser-reactor</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>yang-parser-rfc7950</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>yang-parser-spi</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>yang-repo-api</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>yang-repo-fs</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>yang-repo-spi</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>yang-xpath-api</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.opendaylight.yangtools</groupId>
+                <artifactId>yang-xpath-impl</artifactId>
+                <version>14.0.11</version>
+            </dependency>
+            <dependency>
+                <groupId>org.ops4j.pax.jdbc</groupId>
+                <artifactId>pax-jdbc</artifactId>
+                <version>1.5.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.ops4j.pax.jdbc</groupId>
+                <artifactId>pax-jdbc-config</artifactId>
+                <version>1.5.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.ops4j.pax.jdbc</groupId>
+                <artifactId>pax-jdbc-mariadb</artifactId>
+                <version>1.5.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.ops4j.pax.jdbc</groupId>
+                <artifactId>pax-jdbc-pool-common</artifactId>
+                <version>1.5.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.ops4j.pax.jdbc</groupId>
+                <artifactId>pax-jdbc-pool-dbcp2</artifactId>
+                <version>1.5.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.ops4j.pax.logging</groupId>
+                <artifactId>pax-logging-api</artifactId>
+                <version>2.2.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.ops4j.pax.logging</groupId>
+                <artifactId>pax-logging-log4j2</artifactId>
+                <version>2.2.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.ops4j.pax.logging</groupId>
+                <artifactId>pax-logging-logback</artifactId>
+                <version>2.2.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.ops4j.pax.transx</groupId>
+                <artifactId>pax-transx-connector</artifactId>
+                <version>0.5.4</version>
+            </dependency>
+            <dependency>
+                <groupId>org.ops4j.pax.transx</groupId>
+                <artifactId>pax-transx-jdbc</artifactId>
+                <version>0.5.4</version>
+            </dependency>
+            <dependency>
+                <groupId>org.ops4j.pax.transx</groupId>
+                <artifactId>pax-transx-jms</artifactId>
+                <version>0.5.4</version>
+            </dependency>
+            <dependency>
+                <groupId>org.ops4j.pax.transx</groupId>
+                <artifactId>pax-transx-tm-api</artifactId>
+                <version>0.5.4</version>
+            </dependency>
+            <dependency>
+                <groupId>org.ops4j.pax.transx</groupId>
+                <artifactId>pax-transx-tm-atomikos</artifactId>
+                <version>0.5.4</version>
+            </dependency>
+            <dependency>
+                <groupId>org.ops4j.pax.transx</groupId>
+                <artifactId>pax-transx-tm-geronimo</artifactId>
+                <version>0.5.4</version>
+            </dependency>
+            <dependency>
+                <groupId>org.ops4j.pax.transx</groupId>
+                <artifactId>pax-transx-tm-narayana</artifactId>
+                <version>0.5.4</version>
+            </dependency>
+            <dependency>
+                <groupId>org.ops4j.pax.url</groupId>
+                <artifactId>pax-url-aether</artifactId>
+                <version>2.6.14</version>
+            </dependency>
+            <dependency>
+                <groupId>org.ops4j.pax.url</groupId>
+                <artifactId>pax-url-classpath</artifactId>
+                <version>2.6.14</version>
+            </dependency>
+            <dependency>
+                <groupId>org.ops4j.pax.url</groupId>
+                <artifactId>pax-url-obr</artifactId>
+                <version>2.6.14</version>
+            </dependency>
+            <dependency>
+                <groupId>org.ops4j.pax.url</groupId>
+                <artifactId>pax-url-war</artifactId>
+                <version>2.6.14</version>
+            </dependency>
+            <dependency>
+                <groupId>org.ops4j.pax.url</groupId>
+                <artifactId>pax-url-wrap</artifactId>
+                <version>2.6.14</version>
+            </dependency>
+            <dependency>
+                <groupId>org.ops4j.pax.web</groupId>
+                <artifactId>keycloak-common</artifactId>
+                <version>8.0.27</version>
+            </dependency>
+            <dependency>
+                <groupId>org.ops4j.pax.web</groupId>
+                <artifactId>keycloak-osgi-adapter</artifactId>
+                <version>8.0.27</version>
+            </dependency>
+            <dependency>
+                <groupId>org.ops4j.pax.web</groupId>
+                <artifactId>pax-web-api</artifactId>
+                <version>8.0.27</version>
+            </dependency>
+            <dependency>
+                <groupId>org.ops4j.pax.web</groupId>
+                <artifactId>pax-web-compatibility-annotation13</artifactId>
+                <version>8.0.27</version>
+            </dependency>
+            <dependency>
+                <groupId>org.ops4j.pax.web</groupId>
+                <artifactId>pax-web-compatibility-el2</artifactId>
+                <version>8.0.27</version>
+            </dependency>
+            <dependency>
+                <groupId>org.ops4j.pax.web</groupId>
+                <artifactId>pax-web-compatibility-servlet31</artifactId>
+                <version>8.0.27</version>
+            </dependency>
+            <dependency>
+                <groupId>org.ops4j.pax.web</groupId>
+                <artifactId>pax-web-deployer</artifactId>
+                <version>8.0.27</version>
+            </dependency>
+            <dependency>
+                <groupId>org.ops4j.pax.web</groupId>
+                <artifactId>pax-web-extender-war</artifactId>
+                <version>8.0.27</version>
+            </dependency>
+            <dependency>
+                <groupId>org.ops4j.pax.web</groupId>
+                <artifactId>pax-web-extender-whiteboard</artifactId>
+                <version>8.0.27</version>
+            </dependency>
+            <dependency>
+                <groupId>org.ops4j.pax.web</groupId>
+                <artifactId>pax-web-jetty</artifactId>
+                <version>8.0.27</version>
+            </dependency>
+            <dependency>
+                <groupId>org.ops4j.pax.web</groupId>
+                <artifactId>pax-web-jetty-keycloak18</artifactId>
+                <version>8.0.27</version>
+            </dependency>
+            <dependency>
+                <groupId>org.ops4j.pax.web</groupId>
+                <artifactId>pax-web-jetty-keycloak</artifactId>
+                <version>8.0.27</version>
+            </dependency>
+            <dependency>
+                <groupId>org.ops4j.pax.web</groupId>
+                <artifactId>pax-web-jsp</artifactId>
+                <version>8.0.27</version>
+            </dependency>
+            <dependency>
+                <groupId>org.ops4j.pax.web</groupId>
+                <artifactId>pax-web-karaf</artifactId>
+                <version>8.0.27</version>
+            </dependency>
+            <dependency>
+                <groupId>org.ops4j.pax.web</groupId>
+                <artifactId>pax-web-runtime</artifactId>
+                <version>8.0.27</version>
+            </dependency>
+            <dependency>
+                <groupId>org.ops4j.pax.web</groupId>
+                <artifactId>pax-web-spi</artifactId>
+                <version>8.0.27</version>
+            </dependency>
+            <dependency>
+                <groupId>org.ops4j.pax.web</groupId>
+                <artifactId>pax-web-tomcat-common</artifactId>
+                <version>8.0.27</version>
+            </dependency>
+            <dependency>
+                <groupId>org.ops4j.pax.web</groupId>
+                <artifactId>pax-web-websocket</artifactId>
+                <version>8.0.27</version>
+            </dependency>
+            <dependency>
+                <groupId>org.osgi</groupId>
+                <artifactId>org.osgi.service.component</artifactId>
+                <version>1.5.1</version>
+            </dependency>
+            <dependency>
+                <groupId>org.osgi</groupId>
+                <artifactId>org.osgi.service.event</artifactId>
+                <version>1.4.1</version>
+            </dependency>
+            <dependency>
+                <groupId>org.osgi</groupId>
+                <artifactId>org.osgi.service.jdbc</artifactId>
+                <version>1.1.0</version>
+            </dependency>
+            <dependency>
+                <groupId>org.osgi</groupId>
+                <artifactId>org.osgi.util.function</artifactId>
+                <version>1.2.0</version>
+            </dependency>
+            <dependency>
+                <groupId>org.osgi</groupId>
+                <artifactId>org.osgi.util.promise</artifactId>
+                <version>1.3.0</version>
+            </dependency>
+            <dependency>
+                <groupId>org.ow2.asm</groupId>
+                <artifactId>asm</artifactId>
+                <version>9.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.ow2.asm</groupId>
+                <artifactId>asm-analysis</artifactId>
+                <version>9.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.ow2.asm</groupId>
+                <artifactId>asm-commons</artifactId>
+                <version>9.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.ow2.asm</groupId>
+                <artifactId>asm-tree</artifactId>
+                <version>9.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.ow2.asm</groupId>
+                <artifactId>asm-util</artifactId>
+                <version>9.7</version>
+            </dependency>
+            <dependency>
+                <groupId>org.owasp.encoder</groupId>
+                <artifactId>encoder</artifactId>
+                <version>1.2.3</version>
+            </dependency>
+            <dependency>
+                <groupId>org.reactivestreams</groupId>
+                <artifactId>reactive-streams</artifactId>
+                <version>1.0.4</version>
+            </dependency>
+            <dependency>
+                <groupId>org.scala-lang.modules</groupId>
+                <artifactId>scala-java8-compat_2.13</artifactId>
+                <version>1.0.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.scala-lang.modules</groupId>
+                <artifactId>scala-parser-combinators_2.13</artifactId>
+                <version>1.1.2</version>
+            </dependency>
+            <dependency>
+                <groupId>org.scala-lang</groupId>
+                <artifactId>scala-library</artifactId>
+                <version>2.13.16</version>
+            </dependency>
+            <dependency>
+                <groupId>org.scala-lang</groupId>
+                <artifactId>scala-reflect</artifactId>
+                <version>2.13.16</version>
+            </dependency>
+            <dependency>
+                <groupId>org.slf4j</groupId>
+                <artifactId>slf4j-api</artifactId>
+                <version>2.0.12</version>
+            </dependency>
+            <dependency>
+                <groupId>tech.pantheon.triemap</groupId>
+                <artifactId>triemap</artifactId>
+                <version>1.3.2</version>
+            </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>
diff --git a/parents/odlparent/binding-parent/pom.xml b/parents/odlparent/binding-parent/pom.xml
new file mode 100644 (file)
index 0000000..cfb69b6
--- /dev/null
@@ -0,0 +1,1281 @@
+<?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>
+
+    <!-- PLEASE READ !!!!! This file is generated from ccsdk/parent/setup/src/main/template/pom-template.xml
+        Any updates needed should be made to that template and not to the generated
+        pom.xml file -->
+    <parent>
+        <groupId>org.opendaylight.mdsal</groupId>
+        <artifactId>binding-parent</artifactId>
+        <version>14.0.11</version>
+        <relativePath/>
+    </parent>
+
+    <groupId>org.o-ran-sc.oam-controller.parent</groupId>
+    <artifactId>binding-parent</artifactId>
+    <version>3.0.2-SNAPSHOT</version>
+    <packaging>pom</packaging>
+
+    <name>O-RAN-SC :: ${project.groupId} :: ${project.artifactId}</name>
+    <description>Root POM to be used in place of odlparent for CCSDK based projects</description>
+    <url>http://wiki.o-ran-sc.org</url>
+    <organization>
+        <name>O-RAN-SC</name>
+    </organization>
+
+    <issueManagement>
+        <system>JIRA</system>
+        <url>https://jira.o-ran-sc.org/</url>
+    </issueManagement>
+    <distributionManagement>
+        <repository>
+            <id>o-ran-sc-releases</id>
+            <url>${o-ran-sc.nexus.release-url}</url>
+        </repository>
+        <snapshotRepository>
+            <id>o-ran-sc-snapshots</id>
+            <url>${o-ran-sc.nexus.snapshot-url}</url>
+        </snapshotRepository>
+    </distributionManagement>
+
+    <properties>
+        <!-- Sonar properties -->
+        <sonar.scanner.version>3.7.0.1746</sonar.scanner.version>
+        <sonar-jacoco-listeners.version>3.2</sonar-jacoco-listeners.version>
+        <sonar.core.codeCoveragePlugin>jacoco</sonar.core.codeCoveragePlugin>
+        <!-- Default Sonar configuration -->
+        <sonar.coverage.jacoco.xmlReportPaths>${project.reporting.outputDirectory}/jacoco-ut/jacoco.xml,${project.reporting.outputDirectory}/jacoco-it/jacoco.xml</sonar.coverage.jacoco.xmlReportPaths>
+        <!-- Note: This list should match jacoco-maven-plugin's exclusion list below -->
+        <sonar.exclusions>**/gen/**,**/generated-sources/**,**/yang-gen**,**/pax/**</sonar.exclusions>
+
+        <!-- Jacoco properties -->
+        <jacoco.version>0.8.12</jacoco.version>
+
+        <!-- properties from oparent -->
+        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
+        <!-- sitePath may be overridden in the inheriting POM if desired -->
+        <sitePath>/content/sites/site/${project.groupId}/${project.artifactId}/${project.version}</sitePath>
+
+        <!-- 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 -->
+
+        <!-- O-RAN-SC repositories -->
+        <o-ran-sc.nexus.url>https://nexus.o-ran-sc.org</o-ran-sc.nexus.url>
+        <o-ran-sc.nexus.host>nexus.o-ran-sc.org</o-ran-sc.nexus.host>
+        <o-ran-sc.nexus.port>443</o-ran-sc.nexus.port>
+        <o-ran-sc.nexus.protocol>https</o-ran-sc.nexus.protocol>
+        <o-ran-sc.nexus.public-url>https://nexus.o-ran-sc.org/content/groups/public</o-ran-sc.nexus.public-url>
+        <o-ran-sc.nexus.staging-url>https://nexus.o-ran-sc.org/content/groups/staging</o-ran-sc.nexus.staging-url>
+        <o-ran-sc.nexus.release-url>https://nexus.o-ran-sc.org/content/repositories/releases</o-ran-sc.nexus.release-url>
+        <o-ran-sc.nexus.snapshot-url>https://nexus.o-ran-sc.org/content/repositories/snapshots</o-ran-sc.nexus.snapshot-url>
+        <o-ran-sc.nexus.staging.server-id>o-ran-sc-staging</o-ran-sc.nexus.staging.server-id>
+        <o-ran-sc.nexus.staging.profile-id>176c31dfe190a</o-ran-sc.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>21</java.version>
+        <maven-surefire-plugin.version>3.0.0-M8</maven-surefire-plugin.version>
+        <maven-failsafe-plugin.version>3.0.0-M8</maven-failsafe-plugin.version>
+        <bundle.plugin.version>5.1.1</bundle.plugin.version>
+        <maven-compiler-plugin.version>3.10.1</maven-compiler-plugin.version>
+        <features.file>features.xml</features.file>
+        <jmxGeneratorPath>src/main/yang-gen-config</jmxGeneratorPath>
+        <salGeneratorPath>src/main/yang-gen-sal</salGeneratorPath>
+        <checkstyle.plugin.version>3.2.1</checkstyle.plugin.version>
+        <checkstyle.skip>true</checkstyle.skip>
+        <odlparent.spotbugs.enforce>false</odlparent.spotbugs.enforce>
+
+        <!-- logging-analytics versions -->
+        <logging-analytics.version>1.6.9</logging-analytics.version>
+
+        <!-- CCSDK component versions -->
+        <ccsdk.cds.version>(1.5.99999, 1.6.99999-SNAPSHOT]</ccsdk.cds.version>
+        <ccsdk.features.version>(1.5.99999, 1.6.99999-SNAPSHOT]</ccsdk.features.version>
+        <ccsdk.distribution.version>(1.5.99999, 1.6.99999-SNAPSHOT]</ccsdk.distribution.version>
+        <ccsdk.sli.version>(1.6.99999, 1.7.99999-SNAPSHOT]</ccsdk.sli.version>
+        <ccsdk.sli.core.version>${ccsdk.sli.version}</ccsdk.sli.core.version>
+        <ccsdk.sli.adaptors.version>${ccsdk.sli.version}</ccsdk.sli.adaptors.version>
+        <ccsdk.sli.northbound.version>${ccsdk.sli.version}</ccsdk.sli.northbound.version>
+        <ccsdk.sli.plugins.version>${ccsdk.sli.version}</ccsdk.sli.plugins.version>
+        <sdnctl.aai.service.version>${ccsdk.sli.version}</sdnctl.aai.service.version>
+        <sdnctl.dblib.version>${ccsdk.sli.version}</sdnctl.dblib.version>
+        <sdnctl.mdsal.resource.version>${ccsdk.sli.version}</sdnctl.mdsal.resource.version>
+        <sdnctl.slipluginutils.version>${ccsdk.sli.version}</sdnctl.slipluginutils.version>
+
+        <!-- Support libraries used by OpenDaylight -->
+        <odl.mdsal.version>14.0.8</odl.mdsal.version>
+        <odl.mdsal.model.version>14.0.8</odl.mdsal.model.version>
+        <odl.mdsal.generator.version>11.0.9</odl.mdsal.generator.version>
+        <odl.netconf.restconf.version>14.0.11</odl.netconf.restconf.version>
+        <odl.netconf.netconf.version>14.0.11</odl.netconf.netconf.version>
+        <odl.netconf.sal.rest.docgen.version>14.0.11</odl.netconf.sal.rest.docgen.version>
+
+        <!-- Used by aaa, vtn -->
+        <commons.codec.version>1.15</commons.codec.version>
+        <!-- Used by netconf, ovsdb -->
+        <commons.lang3.version>3.17.0</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.8.0</commons.net.version>
+        <!-- Used by neutron -->
+        <eclipse.persistence.version>None</eclipse.persistence.version>
+        <!-- Used by aaa -->
+        <felix.dependencymanager.version>4.4.1</felix.dependencymanager.version>
+        <!-- Used by lacp, netconf, ovsdb, sfc, toolkit; see also vtn -->
+        <gson.version>2.12.1</gson.version>
+        <!-- Used by aaa, dlux, persistence, snmp4sdn, sxp -->
+        <guava.version>33.4.0-jre</guava.version>
+        <!-- Used by aaa, alto, netconf, ovsdb, sfc; see also affinity, defense4all,
+            integration/distribution, snmp4sdn, toolkit, ttp -->
+        <jackson.version>2.17.3</jackson.version>
+        <!-- Used by snmp4sdn, yangtools -->
+        <javassist.version>3.30.2-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>2.46</jersey.version>
+        <!-- Used by sfc -->
+        <jersey.client.version>2.46</jersey.client.version>
+
+        <!-- Used everywhere -->
+        <junit.version>4.13.2</junit.version>
+        <!-- Used by coretutorials, sfc, snmp4sdn, sxp; see also affinity, toolkit -->
+        <logback.version>1.2.11</logback.version>
+        <!-- Used by nic, sfc, sxp, tsdr -->
+        <mockito.version>3.12.4</mockito.version>
+        <!-- Used by bgpcep, netconf, ovsdb, sxp; see also opendove, toolkit -->
+        <netty.version>4.1.119.Final</netty.version>
+        <!-- Used by openflowjava, persistence, sfc, snmp4sdn, sxp; see also affinity, toolkit -->
+        <slf4j.version>2.0.12</slf4j.version>
+        <!-- Used in integration/distribution; see also affinity, snmp4sdn, toolkit, tsdr, ttp -->
+        <spring.version>4.3.25.RELEASE</spring.version>
+
+        <!-- Extra support libraries used by SDN-C -->
+        <jvnet.jaxb2.version>0.6.4</jvnet.jaxb2.version>
+        <antlr.version>4.12.0</antlr.version>
+        <antlr4.version>4.12.0</antlr4.version>
+
+
+        <eelf.maven.plugin.version>1.0.0</eelf.maven.plugin.version>
+
+        <!-- Managed dependency versions -->
+        <apache.httpcomponents.core.version>4.4.12</apache.httpcomponents.core.version>
+        <apache.httpcomponents.client.version>4.5.13</apache.httpcomponents.client.version>
+        <derby.version>10.14.2.0</derby.version>
+        <eelf.version>1.0.0</eelf.version>
+        <grpc.version>1.21.1</grpc.version>
+        <log4j.version>2.17.1</log4j.version>
+        <log4j2.version>2.17.1</log4j2.version>
+        <jetty.version>9.4.54.v20240208</jetty.version>
+        <mariadb.connector.version>2.7.5</mariadb.connector.version>
+        <mariadb4j.version>2.4.0</mariadb4j.version>
+        <testng.version>6.14.3</testng.version>
+        <tomcat-jdbc.version>9.0.52</tomcat-jdbc.version>
+        <skip.karaf.featureTest>true</skip.karaf.featureTest>
+        <dependency-list.file>direct-dependencies.txt</dependency-list.file>
+    </properties>
+
+    <dependencyManagement>
+        <dependencies>
+            <!-- Note: If value in BOM conflicts with value inherited from
+            parent pom, inherited value takes precedence.  This seems more like
+            a bug than a feature, but this is how maven 3.6 works -->
+            <dependency>
+                <groupId>org.o-ran-sc.oam-controller.parent</groupId>
+                <artifactId>dependencies-odl-bom</artifactId>
+                <version>3.0.2-SNAPSHOT</version>
+                <type>pom</type>
+                <scope>import</scope>
+            </dependency>
+            <dependency>
+                <groupId>org.o-ran-sc.oam-controller.parent</groupId>
+                <artifactId>dependencies-bom</artifactId>
+                <version>3.0.2-SNAPSHOT</version>
+                <type>pom</type>
+                <scope>import</scope>
+            </dependency>
+            <dependency>
+                <groupId>org.springframework.boot</groupId>
+                <artifactId>spring-boot-dependencies</artifactId>
+                <version>2.3.8.RELEASE</version>
+                <scope>import</scope>
+                <type>pom</type>
+            </dependency>
+            <dependency>
+                <groupId>org.mariadb.jdbc</groupId>
+                <artifactId>mariadb-java-client</artifactId>
+                <version>${mariadb.connector.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.onap.logging-analytics</groupId>
+                <artifactId>logging-slf4j</artifactId>
+                <version>${logging-analytics.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.onap.logging-analytics</groupId>
+                <artifactId>logging-filter-base</artifactId>
+                <version>${logging-analytics.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.antlr</groupId>
+                <artifactId>antlr4-runtime</artifactId>
+                <version>${antlr.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.antlr</groupId>
+                <artifactId>antlr4</artifactId>
+                <version>${antlr.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>junit</groupId>
+                <artifactId>junit</artifactId>
+                <version>${junit.version}</version>
+                <scope>test</scope>
+            </dependency>
+        </dependencies>
+    </dependencyManagement>
+
+    <repositories>
+        <repository>
+            <id>o-ran-sc-public</id>
+            <url>${o-ran-sc.nexus.public-url}</url>
+            <releases>
+                <enabled>true</enabled>
+                <updatePolicy>never</updatePolicy>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+                <updatePolicy>always</updatePolicy>
+            </snapshots>
+        </repository>
+        <repository>
+            <id>o-ran-sc-staging</id>
+            <url>${o-ran-sc.nexus.staging-url}</url>
+            <releases>
+                <enabled>true</enabled>
+                <updatePolicy>never</updatePolicy>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+                <updatePolicy>always</updatePolicy>
+            </snapshots>
+        </repository>
+        <repository>
+            <id>o-ran-sc-release</id>
+            <name>o-ran-sc-repository-releases</name>
+            <url>${o-ran-sc.nexus.release-url}</url>
+            <releases>
+                <enabled>true</enabled>
+                <updatePolicy>never</updatePolicy>
+            </releases>
+            <snapshots>
+                <enabled>false</enabled>
+            </snapshots>
+        </repository>
+        <repository>
+            <id>o-ran-sc-snapshot</id>
+            <name>o-ran-sc-repository-snapshots</name>
+            <url>${o-ran-sc.nexus.snapshot-url}</url>
+            <releases>
+                <enabled>false</enabled>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+            </snapshots>
+        </repository>
+        <repository>
+            <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>
+        </repository>
+        <repository>
+            <id>opendaylight-snapshot</id>
+            <name>opendaylight-snapshot</name>
+            <url>${opendaylight.nexus.snapshot-url}</url>
+            <releases>
+                <enabled>false</enabled>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+            </snapshots>
+        </repository>
+    </repositories>
+
+    <pluginRepositories>
+        <pluginRepository>
+            <id>o-ran-sc-public</id>
+            <url>${o-ran-sc.nexus.public-url}</url>
+            <releases>
+                <enabled>true</enabled>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+            </snapshots>
+        </pluginRepository>
+        <pluginRepository>
+            <id>o-ran-sc-staging</id>
+            <url>${o-ran-sc.nexus.staging-url}</url>
+            <releases>
+                <enabled>true</enabled>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+            </snapshots>
+        </pluginRepository>
+        <pluginRepository>
+            <id>o-ran-sc-snapshot</id>
+            <url>${o-ran-sc.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>
+    </pluginRepositories>
+
+    <build>
+        <pluginManagement>
+            <plugins>
+                <!-- Plugins from O-RAN-SC version (parent of 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/>
+                        <deployAtEnd>true</deployAtEnd>
+                    </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>org.apache.maven.plugins</groupId>
+                    <artifactId>maven-enforcer-plugin</artifactId>
+                    <version>3.0.0-M2</version>
+                    <executions>
+                        <execution>
+                            <id>enforce-property</id>
+                            <goals>
+                                <goal>enforce</goal>
+                            </goals>
+                            <configuration>
+                                <rules>
+                                    <requireProperty>
+                                        <property>o-ran-sc.nexus.url</property>
+                                        <message>You must set a o-ran-sc.nexus.url property in your
+                                            ~/.m2/settings.xml. See oparent/settings.xml for an example.
+                                        </message>
+                                    </requireProperty>
+                                </rules>
+                                <fail>true</fail>
+                            </configuration>
+                        </execution>
+                        <execution>
+                            <id>enforce-no-snapshots</id>
+                            <goals>
+                                <goal>enforce</goal>
+                            </goals>
+                            <configuration>
+                                <rules>
+                                    <requireReleaseDeps>
+                                        <failWhenParentIsSnapshot>false</failWhenParentIsSnapshot>
+                                        <onlyWhenRelease>true</onlyWhenRelease>
+                                        <level>WARN</level>
+                                    </requireReleaseDeps>
+                                </rules>
+                            </configuration>
+                        </execution>
+                        <execution>
+                            <id>enforce-maven</id>
+                            <goals>
+                                <goal>enforce</goal>
+                            </goals>
+                            <configuration>
+                                <rules>
+                                    <requireJavaVersion>
+                                        <version>8</version>
+                                    </requireJavaVersion>
+                                    <requireMavenVersion>
+                                        <version>[3.5.0,)</version>
+                                    </requireMavenVersion>
+                                </rules>
+                            </configuration>
+                        </execution>
+                        <execution>
+                            <id>enforce-banned-dependencies</id>
+                            <goals>
+                                <goal>enforce</goal>
+                            </goals>
+                            <configuration>
+                                <rules>
+                                    <bannedDependencies>
+                                        <message>Please always use mockito-core instead of mockito-all (see https://bugs.opendaylight.org/show_bug.cgi?id=7662), and spotbugs:annotations instead of findbugs:annotations</message>
+                                        <excludes>
+                                            <exclude>org.mockito:mockito-all</exclude>
+                                            <!-- <exclude>com.google.code.findbugs:annotations</exclude> -->
+                                        </excludes>
+                                    </bannedDependencies>
+                                </rules>
+                                <fail>true</fail>
+                            </configuration>
+                        </execution>
+                    </executions>
+                </plugin>
+                <!-- https://mvnrepository.com/artifact/org.sonarsource.scanner.maven/sonar-maven-plugin -->
+                <plugin>
+                    <groupId>org.sonarsource.scanner.maven</groupId>
+                    <artifactId>sonar-maven-plugin</artifactId>
+                    <version>${sonar.scanner.version}</version>
+                </plugin>
+                <!-- end of plugins from O-RAN-SC version (parent of oparent) -->
+                <!-- Plugins from O-RAN-SC oparent -->
+                <plugin>
+                    <groupId>org.apache.maven.plugins</groupId>
+                    <artifactId>maven-surefire-plugin</artifactId>
+                    <version>${maven-surefire-plugin.version}</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>${maven-failsafe-plugin.version}</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>
+
+                <!-- End of plugins from O-RAN-SC 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.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>
+                <plugin>
+                    <groupId>com.github.ferstl</groupId>
+                    <artifactId>depgraph-maven-plugin</artifactId>
+                    <version>3.3.0</version>
+                    <configuration>
+                        <graphFormat>text</graphFormat>
+                        <outputFileName>${dependency-list.file}</outputFileName>
+                        <outputDirectory>${project.basedir}</outputDirectory>
+                        <transitiveExcludes>*</transitiveExcludes>
+                        <showVersions>true</showVersions>
+                        <showGroupIds>true</showGroupIds>
+                    </configuration>
+                </plugin>
+                <plugin>
+                    <groupId>de.jacks-it-lab</groupId>
+                    <artifactId>frontend-maven-plugin</artifactId>
+                    <version>1.7.2</version>
+                </plugin>
+                <plugin>
+                    <groupId>com.github.alexcojocaru</groupId>
+                    <artifactId>elasticsearch-maven-plugin</artifactId>
+                    <version>6.16</version>
+                    <configuration>
+                        <version>7.1.1</version>
+                    </configuration>
+                </plugin>
+                <plugin>
+                    <groupId>org.apache.maven.plugins</groupId>
+                    <artifactId>maven-javadoc-plugin</artifactId>
+                    <version>3.2.0</version>
+                    <configuration>
+                        <failOnError>false</failOnError>
+                    </configuration>
+                </plugin>
+                <plugin>
+                    <groupId>com.github.spotbugs</groupId>
+                    <artifactId>spotbugs-maven-plugin</artifactId>
+                    <version>3.1.12.2</version>
+                    <executions>
+                        <execution>
+                            <id>analyze-compile</id>
+                            <phase>compile</phase>
+                            <goals>
+                                <goal>check</goal>
+                            </goals>
+                            <configuration>
+                                <plugins>
+                                    <plugin>
+                                        <groupId>jp.skypencil.findbugs.slf4j</groupId>
+                                        <artifactId>bug-pattern</artifactId>
+                                        <version>1.5.0</version>
+                                    </plugin>
+                                </plugins>
+                                <effort>Max</effort>
+                                <threshold>Low</threshold>
+                                <failOnError>false</failOnError>
+                                <skip>true</skip>
+                                <excludeFilterFile>spotbugs-exclude.xml</excludeFilterFile>
+                                <xmlOutput>true</xmlOutput>
+                                <findbugsXmlOutputDirectory>/home/jack/onap/onap-sdnr/features/sdnr/wt-aluminium-sr0-2/target/wt/common/target-ide/spotbugs</findbugsXmlOutputDirectory>
+                            </configuration>
+                        </execution>
+                    </executions>
+                    <dependencies>
+                        <dependency>
+                            <groupId>com.github.spotbugs</groupId>
+                            <artifactId>spotbugs</artifactId>
+                            <version>3.1.12</version>
+                            <scope>compile</scope>
+                        </dependency>
+                        <dependency>
+                            <groupId>org.opendaylight.odlparent</groupId>
+                            <artifactId>spotbugs</artifactId>
+                            <version>7.0.5</version>
+                            <scope>compile</scope>
+                        </dependency>
+                        <dependency>
+                            <groupId>org.slf4j</groupId>
+                            <artifactId>slf4j-simple</artifactId>
+                            <version>1.8.0-beta2</version>
+                            <scope>compile</scope>
+                        </dependency>
+                    </dependencies>
+                    <configuration>
+                        <plugins>
+                            <plugin>
+                                <groupId>jp.skypencil.findbugs.slf4j</groupId>
+                                <artifactId>bug-pattern</artifactId>
+                                <version>1.5.0</version>
+                            </plugin>
+                        </plugins>
+                        <effort>Max</effort>
+                        <threshold>Low</threshold>
+                        <failOnError>false</failOnError>
+                        <skip>true</skip>
+                        <excludeFilterFile>spotbugs-exclude.xml</excludeFilterFile>
+                        <xmlOutput>true</xmlOutput>
+                        <findbugsXmlOutputDirectory>/home/jack/onap/onap-sdnr/features/sdnr/wt-aluminium-sr0-2/target/wt/common/target-ide/spotbugs</findbugsXmlOutputDirectory>
+                    </configuration>
+                </plugin>
+                <plugin>
+                    <groupId>org.apache.maven.plugins</groupId>
+                    <artifactId>maven-checkstyle-plugin</artifactId>
+                    <version>${checkstyle.plugin.version}</version>
+                    <dependencies>
+                        <dependency>
+                            <groupId>org.onap.oparent</groupId>
+                            <artifactId>checkstyle</artifactId>
+                            <version>1.2.2</version>
+                        </dependency>
+                    </dependencies>
+                    <executions>
+                        <execution>
+                            <phase>process-sources</phase>
+                            <goals>
+                                <goal>check</goal>
+                            </goals>
+                            <configuration>
+                                <failOnViolation>false</failOnViolation>
+                                <skip>true</skip>
+                            </configuration>
+                        </execution>
+                        <execution>
+                            <id>check-license</id>
+                            <goals>
+                                <goal>check</goal>
+                            </goals>
+                            <phase>process-sources</phase>
+                            <configuration>
+                                <configLocation>onap-checkstyle/check-license.xml</configLocation>
+                                <includeResources>false</includeResources>
+                                <includeTestSourceDirectory>true</includeTestSourceDirectory>
+                                <includeTestResources>false</includeTestResources>
+                                <sourceDirectories>
+                                    <directory>${project.build.sourceDirectory}</directory>
+                                </sourceDirectories>
+                                <excludes>
+                                </excludes>
+                                <consoleOutput>true</consoleOutput>
+                                <failOnViolation>false</failOnViolation>
+                            </configuration>
+                        </execution>
+                        <execution>
+                            <id>onap-java-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 -->
+                                <sourceDirectories>
+                                    <directory>${project.build.sourceDirectory}/src/main/java</directory>
+                                </sourceDirectories>
+                                <includeResources>true</includeResources>
+                                <includeTestSourceDirectory>true</includeTestSourceDirectory>
+                                <includeTestResources>true</includeTestResources>
+                                <excludes>
+                                </excludes>
+                                <consoleOutput>true</consoleOutput>
+                                <failOnViolation>false</failOnViolation>
+                            </configuration>
+                        </execution>
+                    </executions>
+                </plugin>
+                <plugin>
+                    <groupId>org.gaul</groupId>
+                    <artifactId>modernizer-maven-plugin</artifactId>
+                    <version>2.1.0</version>
+                    <executions>
+                        <execution>
+                            <id>modernizer</id>
+                            <phase>verify</phase>
+                            <goals>
+                                <goal>modernizer</goal>
+                            </goals>
+                            <configuration>
+                                <failOnViolations>false</failOnViolations>
+                                <skip>true</skip>
+                            </configuration>
+                        </execution>
+                    </executions>
+                    <configuration>
+                        <failOnViolations>false</failOnViolations>
+                        <skip>true</skip>
+                    </configuration>
+                </plugin>
+                <!--
+                <plugin>
+                    <groupId>org.apache.karaf.tooling</groupId>
+                    <artifactId>karaf-maven-plugin</artifactId>
+                    <configuration>
+                        <useVersionRange>true</useVersionRange>
+                        <includeTransitiveVersionRanges>true</includeTransitiveVersionRanges>
+                    </configuration>
+                </plugin>
+            -->
+            </plugins>
+        </pluginManagement>
+        <plugins>
+            <!-- Plugins from oparent version (parent of oparent) -->
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-deploy-plugin</artifactId>
+            </plugin>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-site-plugin</artifactId>
+                <!--
+                <configuration>
+                    <reportPlugins>
+                        <reportPlugin>
+                            <groupId>org.apache.maven.plugins</groupId>
+                            <artifactId>maven-checkstyle-plugin</artifactId>
+                            <version>${checkstyle.plugin.version}</version>
+                        </reportPlugin>
+                    </reportPlugins>
+                </configuration>
+                -->
+            </plugin>
+            <!-- end of plugins from oparent version (parent of oparent) -->
+
+            <!-- Plugins from oparent -->
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <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>
+                <version>${jacoco.version}</version>
+                <executions>
+                    <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>
+                    <execution>
+                        <id>default-prepare-agent</id>
+                        <goals>
+                            <goal>prepare-agent</goal>
+                        </goals>
+                    </execution>
+                    <execution>
+                        <id>default-report</id>
+                        <phase>prepare-package</phase>
+                        <goals>
+                            <goal>report</goal>
+                        </goals>
+                    </execution>
+                    <execution>
+                        <id>default-check</id>
+                        <goals>
+                            <goal>check</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <rule>
+                                    <element>PACKAGE</element>
+                                    <limits>
+                                        <limit>
+                                            <counter>COMPLEXITY</counter>
+                                            <value>COVEREDRATIO</value>
+                                            <minimum>0.0</minimum>
+                                        </limit>
+                                    </limits>
+                                </rule>
+                            </rules>
+                        </configuration>
+                    </execution>
+                </executions>
+            </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 oparent -->
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-javadoc-plugin</artifactId>
+                <executions>
+                    <execution>
+                        <id>attach-javadocs</id>
+                        <goals>
+                            <goal>jar</goal>
+                        </goals>
+                        <configuration>
+                            <additionalparam>-Xdoclint:none</additionalparam>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+            <plugin>
+                <artifactId>maven-enforcer-plugin</artifactId>
+                <version>3.0.0-M2</version>
+                <executions>
+                    <execution>
+                        <id>enforce-property</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <requireProperty>
+                                    <property>o-ran-sc.nexus.url</property>
+                                    <message>You must set a o-ran-sc.nexus.url property in your
+                                        ~/.m2/settings.xml. See oparent/settings.xml for an example.
+                                    </message>
+                                </requireProperty>
+                            </rules>
+                            <fail>true</fail>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>enforce-no-snapshots</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <requireReleaseDeps>
+                                    <failWhenParentIsSnapshot>false</failWhenParentIsSnapshot>
+                                    <onlyWhenRelease>true</onlyWhenRelease>
+                                    <level>WARN</level>
+                                </requireReleaseDeps>
+                            </rules>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>enforce-maven</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <requireJavaVersion>
+                                    <version>1.8.0</version>
+                                </requireJavaVersion>
+                                <requireMavenVersion>
+                                    <version>[3.5.0,)</version>
+                                </requireMavenVersion>
+                            </rules>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>enforce-banned-dependencies</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <bannedDependencies>
+                                    <message>Please always use mockito-core instead of mockito-all (see https://bugs.opendaylight.org/show_bug.cgi?id=7662), and spotbugs:annotations instead of findbugs:annotations</message>
+                                    <excludes>
+                                        <exclude>org.mockito:mockito-all</exclude>
+                                        <!-- <exclude>com.google.code.findbugs:annotations</exclude> -->
+                                    </excludes>
+                                </bannedDependencies>
+                            </rules>
+                            <fail>true</fail>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+            <plugin>
+                <groupId>pl.project13.maven</groupId>
+                <artifactId>git-commit-id-plugin</artifactId>
+                <version>4.0.0</version>
+                <configuration>
+                    <commitIdGenerationMode>full</commitIdGenerationMode>
+                    <includeOnlyProperties>
+                        <includeOnlyProperty>^git.build.(time|version)$</includeOnlyProperty>
+                        <includeOnlyProperty>^git.commit.id.(abbrev|full)$</includeOnlyProperty>
+                    </includeOnlyProperties>
+                </configuration>
+            </plugin>
+        </plugins>
+    </build>
+
+    <reporting>
+        <plugins>
+            <plugin>
+                <artifactId>maven-javadoc-plugin</artifactId>
+                <configuration>
+                    <failOnError>false</failOnError>
+                    <additionalparam>-Xdoclint:none</additionalparam>
+                </configuration>
+            </plugin>
+        </plugins>
+    </reporting>
+
+    <profiles>
+        <!-- Profiles from O-RAN-SC 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>
+                                        <groupId>ant</groupId>
+                                        <artifactId>ant</artifactId>
+                                    </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>
+                        <groupId>org.codehaus.mojo</groupId>
+                        <artifactId>exec-maven-plugin</artifactId>
+                        <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>
+        <profile>
+            <id>sonar-jacoco-aggregate</id>
+            <activation>
+                <property>
+                    <name>onap.jacoco.aggregateFile</name>
+                </property>
+            </activation>
+            <build>
+                <plugins>
+                    <plugin>
+                        <groupId>org.jacoco</groupId>
+                        <artifactId>jacoco-maven-plugin</artifactId>
+                        <executions>
+                            <execution>
+                                <id>merge</id>
+                                <goals>
+                                    <goal>merge</goal>
+                                </goals>
+                                <phase>generate-resources</phase>
+                                <configuration>
+                                    <destFile>${onap.jacoco.aggregateFile}</destFile>
+                                    <fileSets>
+                                        <fileSet>
+                                            <directory>${project.basedir}</directory>
+                                            <includes>
+                                                <include>**/target/code-coverage/*.exec</include>
+                                            </includes>
+                                        </fileSet>
+                                    </fileSets>
+                                </configuration>
+                            </execution>
+                        </executions>
+                    </plugin>
+                </plugins>
+            </build>
+        </profile>
+        <!-- End of profiles from O-RAN-SC oparent -->
+
+       
+    </profiles>
+</project>
diff --git a/parents/odlparent/bundle-parent/pom.xml b/parents/odlparent/bundle-parent/pom.xml
new file mode 100644 (file)
index 0000000..700c00e
--- /dev/null
@@ -0,0 +1,1281 @@
+<?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>
+
+    <!-- PLEASE READ !!!!! This file is generated from ccsdk/parent/setup/src/main/template/pom-template.xml
+        Any updates needed should be made to that template and not to the generated
+        pom.xml file -->
+    <parent>
+        <groupId>org.opendaylight.odlparent</groupId>
+        <artifactId>bundle-parent</artifactId>
+        <version>14.0.8</version>
+        <relativePath/>
+    </parent>
+
+    <groupId>org.o-ran-sc.oam-controller.parent</groupId>
+    <artifactId>bundle-parent</artifactId>
+    <version>3.0.2-SNAPSHOT</version>
+    <packaging>pom</packaging>
+
+    <name>O-RAN-SC :: ${project.groupId} :: ${project.artifactId}</name>
+    <description>Root POM to be used in place of odlparent for CCSDK based projects</description>
+    <url>http://wiki.o-ran-sc.org</url>
+    <organization>
+        <name>O-RAN-SC</name>
+    </organization>
+
+    <issueManagement>
+        <system>JIRA</system>
+        <url>https://jira.o-ran-sc.org/</url>
+    </issueManagement>
+    <distributionManagement>
+        <repository>
+            <id>o-ran-sc-releases</id>
+            <url>${o-ran-sc.nexus.release-url}</url>
+        </repository>
+        <snapshotRepository>
+            <id>o-ran-sc-snapshots</id>
+            <url>${o-ran-sc.nexus.snapshot-url}</url>
+        </snapshotRepository>
+    </distributionManagement>
+
+    <properties>
+        <!-- Sonar properties -->
+        <sonar.scanner.version>3.7.0.1746</sonar.scanner.version>
+        <sonar-jacoco-listeners.version>3.2</sonar-jacoco-listeners.version>
+        <sonar.core.codeCoveragePlugin>jacoco</sonar.core.codeCoveragePlugin>
+        <!-- Default Sonar configuration -->
+        <sonar.coverage.jacoco.xmlReportPaths>${project.reporting.outputDirectory}/jacoco-ut/jacoco.xml,${project.reporting.outputDirectory}/jacoco-it/jacoco.xml</sonar.coverage.jacoco.xmlReportPaths>
+        <!-- Note: This list should match jacoco-maven-plugin's exclusion list below -->
+        <sonar.exclusions>**/gen/**,**/generated-sources/**,**/yang-gen**,**/pax/**</sonar.exclusions>
+
+        <!-- Jacoco properties -->
+        <jacoco.version>0.8.12</jacoco.version>
+
+        <!-- properties from oparent -->
+        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
+        <!-- sitePath may be overridden in the inheriting POM if desired -->
+        <sitePath>/content/sites/site/${project.groupId}/${project.artifactId}/${project.version}</sitePath>
+
+        <!-- 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 -->
+
+        <!-- O-RAN-SC repositories -->
+        <o-ran-sc.nexus.url>https://nexus.o-ran-sc.org</o-ran-sc.nexus.url>
+        <o-ran-sc.nexus.host>nexus.o-ran-sc.org</o-ran-sc.nexus.host>
+        <o-ran-sc.nexus.port>443</o-ran-sc.nexus.port>
+        <o-ran-sc.nexus.protocol>https</o-ran-sc.nexus.protocol>
+        <o-ran-sc.nexus.public-url>https://nexus.o-ran-sc.org/content/groups/public</o-ran-sc.nexus.public-url>
+        <o-ran-sc.nexus.staging-url>https://nexus.o-ran-sc.org/content/groups/staging</o-ran-sc.nexus.staging-url>
+        <o-ran-sc.nexus.release-url>https://nexus.o-ran-sc.org/content/repositories/releases</o-ran-sc.nexus.release-url>
+        <o-ran-sc.nexus.snapshot-url>https://nexus.o-ran-sc.org/content/repositories/snapshots</o-ran-sc.nexus.snapshot-url>
+        <o-ran-sc.nexus.staging.server-id>o-ran-sc-staging</o-ran-sc.nexus.staging.server-id>
+        <o-ran-sc.nexus.staging.profile-id>176c31dfe190a</o-ran-sc.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>21</java.version>
+        <maven-surefire-plugin.version>3.0.0-M8</maven-surefire-plugin.version>
+        <maven-failsafe-plugin.version>3.0.0-M8</maven-failsafe-plugin.version>
+        <bundle.plugin.version>5.1.1</bundle.plugin.version>
+        <maven-compiler-plugin.version>3.10.1</maven-compiler-plugin.version>
+        <features.file>features.xml</features.file>
+        <jmxGeneratorPath>src/main/yang-gen-config</jmxGeneratorPath>
+        <salGeneratorPath>src/main/yang-gen-sal</salGeneratorPath>
+        <checkstyle.plugin.version>3.2.1</checkstyle.plugin.version>
+        <checkstyle.skip>true</checkstyle.skip>
+        <odlparent.spotbugs.enforce>false</odlparent.spotbugs.enforce>
+
+        <!-- logging-analytics versions -->
+        <logging-analytics.version>1.6.9</logging-analytics.version>
+
+        <!-- CCSDK component versions -->
+        <ccsdk.cds.version>(1.5.99999, 1.6.99999-SNAPSHOT]</ccsdk.cds.version>
+        <ccsdk.features.version>(1.5.99999, 1.6.99999-SNAPSHOT]</ccsdk.features.version>
+        <ccsdk.distribution.version>(1.5.99999, 1.6.99999-SNAPSHOT]</ccsdk.distribution.version>
+        <ccsdk.sli.version>(1.6.99999, 1.7.99999-SNAPSHOT]</ccsdk.sli.version>
+        <ccsdk.sli.core.version>${ccsdk.sli.version}</ccsdk.sli.core.version>
+        <ccsdk.sli.adaptors.version>${ccsdk.sli.version}</ccsdk.sli.adaptors.version>
+        <ccsdk.sli.northbound.version>${ccsdk.sli.version}</ccsdk.sli.northbound.version>
+        <ccsdk.sli.plugins.version>${ccsdk.sli.version}</ccsdk.sli.plugins.version>
+        <sdnctl.aai.service.version>${ccsdk.sli.version}</sdnctl.aai.service.version>
+        <sdnctl.dblib.version>${ccsdk.sli.version}</sdnctl.dblib.version>
+        <sdnctl.mdsal.resource.version>${ccsdk.sli.version}</sdnctl.mdsal.resource.version>
+        <sdnctl.slipluginutils.version>${ccsdk.sli.version}</sdnctl.slipluginutils.version>
+
+        <!-- Support libraries used by OpenDaylight -->
+        <odl.mdsal.version>14.0.8</odl.mdsal.version>
+        <odl.mdsal.model.version>14.0.8</odl.mdsal.model.version>
+        <odl.mdsal.generator.version>11.0.9</odl.mdsal.generator.version>
+        <odl.netconf.restconf.version>14.0.11</odl.netconf.restconf.version>
+        <odl.netconf.netconf.version>14.0.11</odl.netconf.netconf.version>
+        <odl.netconf.sal.rest.docgen.version>14.0.11</odl.netconf.sal.rest.docgen.version>
+
+        <!-- Used by aaa, vtn -->
+        <commons.codec.version>1.15</commons.codec.version>
+        <!-- Used by netconf, ovsdb -->
+        <commons.lang3.version>3.17.0</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.8.0</commons.net.version>
+        <!-- Used by neutron -->
+        <eclipse.persistence.version>None</eclipse.persistence.version>
+        <!-- Used by aaa -->
+        <felix.dependencymanager.version>4.4.1</felix.dependencymanager.version>
+        <!-- Used by lacp, netconf, ovsdb, sfc, toolkit; see also vtn -->
+        <gson.version>2.12.1</gson.version>
+        <!-- Used by aaa, dlux, persistence, snmp4sdn, sxp -->
+        <guava.version>33.4.0-jre</guava.version>
+        <!-- Used by aaa, alto, netconf, ovsdb, sfc; see also affinity, defense4all,
+            integration/distribution, snmp4sdn, toolkit, ttp -->
+        <jackson.version>2.17.3</jackson.version>
+        <!-- Used by snmp4sdn, yangtools -->
+        <javassist.version>3.30.2-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>2.46</jersey.version>
+        <!-- Used by sfc -->
+        <jersey.client.version>2.46</jersey.client.version>
+
+        <!-- Used everywhere -->
+        <junit.version>4.13.2</junit.version>
+        <!-- Used by coretutorials, sfc, snmp4sdn, sxp; see also affinity, toolkit -->
+        <logback.version>1.2.11</logback.version>
+        <!-- Used by nic, sfc, sxp, tsdr -->
+        <mockito.version>3.12.4</mockito.version>
+        <!-- Used by bgpcep, netconf, ovsdb, sxp; see also opendove, toolkit -->
+        <netty.version>4.1.119.Final</netty.version>
+        <!-- Used by openflowjava, persistence, sfc, snmp4sdn, sxp; see also affinity, toolkit -->
+        <slf4j.version>2.0.12</slf4j.version>
+        <!-- Used in integration/distribution; see also affinity, snmp4sdn, toolkit, tsdr, ttp -->
+        <spring.version>4.3.25.RELEASE</spring.version>
+
+        <!-- Extra support libraries used by SDN-C -->
+        <jvnet.jaxb2.version>0.6.4</jvnet.jaxb2.version>
+        <antlr.version>4.12.0</antlr.version>
+        <antlr4.version>4.12.0</antlr4.version>
+
+
+        <eelf.maven.plugin.version>1.0.0</eelf.maven.plugin.version>
+
+        <!-- Managed dependency versions -->
+        <apache.httpcomponents.core.version>4.4.12</apache.httpcomponents.core.version>
+        <apache.httpcomponents.client.version>4.5.13</apache.httpcomponents.client.version>
+        <derby.version>10.14.2.0</derby.version>
+        <eelf.version>1.0.0</eelf.version>
+        <grpc.version>1.21.1</grpc.version>
+        <log4j.version>2.17.1</log4j.version>
+        <log4j2.version>2.17.1</log4j2.version>
+        <jetty.version>9.4.54.v20240208</jetty.version>
+        <mariadb.connector.version>2.7.5</mariadb.connector.version>
+        <mariadb4j.version>2.4.0</mariadb4j.version>
+        <testng.version>6.14.3</testng.version>
+        <tomcat-jdbc.version>9.0.52</tomcat-jdbc.version>
+        <skip.karaf.featureTest>true</skip.karaf.featureTest>
+        <dependency-list.file>direct-dependencies.txt</dependency-list.file>
+    </properties>
+
+    <dependencyManagement>
+        <dependencies>
+            <!-- Note: If value in BOM conflicts with value inherited from
+            parent pom, inherited value takes precedence.  This seems more like
+            a bug than a feature, but this is how maven 3.6 works -->
+            <dependency>
+                <groupId>org.o-ran-sc.oam-controller.parent</groupId>
+                <artifactId>dependencies-odl-bom</artifactId>
+                <version>3.0.2-SNAPSHOT</version>
+                <type>pom</type>
+                <scope>import</scope>
+            </dependency>
+            <dependency>
+                <groupId>org.o-ran-sc.oam-controller.parent</groupId>
+                <artifactId>dependencies-bom</artifactId>
+                <version>3.0.2-SNAPSHOT</version>
+                <type>pom</type>
+                <scope>import</scope>
+            </dependency>
+            <dependency>
+                <groupId>org.springframework.boot</groupId>
+                <artifactId>spring-boot-dependencies</artifactId>
+                <version>2.3.8.RELEASE</version>
+                <scope>import</scope>
+                <type>pom</type>
+            </dependency>
+            <dependency>
+                <groupId>org.mariadb.jdbc</groupId>
+                <artifactId>mariadb-java-client</artifactId>
+                <version>${mariadb.connector.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.onap.logging-analytics</groupId>
+                <artifactId>logging-slf4j</artifactId>
+                <version>${logging-analytics.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.onap.logging-analytics</groupId>
+                <artifactId>logging-filter-base</artifactId>
+                <version>${logging-analytics.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.antlr</groupId>
+                <artifactId>antlr4-runtime</artifactId>
+                <version>${antlr.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.antlr</groupId>
+                <artifactId>antlr4</artifactId>
+                <version>${antlr.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>junit</groupId>
+                <artifactId>junit</artifactId>
+                <version>${junit.version}</version>
+                <scope>test</scope>
+            </dependency>
+        </dependencies>
+    </dependencyManagement>
+
+    <repositories>
+        <repository>
+            <id>o-ran-sc-public</id>
+            <url>${o-ran-sc.nexus.public-url}</url>
+            <releases>
+                <enabled>true</enabled>
+                <updatePolicy>never</updatePolicy>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+                <updatePolicy>always</updatePolicy>
+            </snapshots>
+        </repository>
+        <repository>
+            <id>o-ran-sc-staging</id>
+            <url>${o-ran-sc.nexus.staging-url}</url>
+            <releases>
+                <enabled>true</enabled>
+                <updatePolicy>never</updatePolicy>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+                <updatePolicy>always</updatePolicy>
+            </snapshots>
+        </repository>
+        <repository>
+            <id>o-ran-sc-release</id>
+            <name>o-ran-sc-repository-releases</name>
+            <url>${o-ran-sc.nexus.release-url}</url>
+            <releases>
+                <enabled>true</enabled>
+                <updatePolicy>never</updatePolicy>
+            </releases>
+            <snapshots>
+                <enabled>false</enabled>
+            </snapshots>
+        </repository>
+        <repository>
+            <id>o-ran-sc-snapshot</id>
+            <name>o-ran-sc-repository-snapshots</name>
+            <url>${o-ran-sc.nexus.snapshot-url}</url>
+            <releases>
+                <enabled>false</enabled>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+            </snapshots>
+        </repository>
+        <repository>
+            <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>
+        </repository>
+        <repository>
+            <id>opendaylight-snapshot</id>
+            <name>opendaylight-snapshot</name>
+            <url>${opendaylight.nexus.snapshot-url}</url>
+            <releases>
+                <enabled>false</enabled>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+            </snapshots>
+        </repository>
+    </repositories>
+
+    <pluginRepositories>
+        <pluginRepository>
+            <id>o-ran-sc-public</id>
+            <url>${o-ran-sc.nexus.public-url}</url>
+            <releases>
+                <enabled>true</enabled>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+            </snapshots>
+        </pluginRepository>
+        <pluginRepository>
+            <id>o-ran-sc-staging</id>
+            <url>${o-ran-sc.nexus.staging-url}</url>
+            <releases>
+                <enabled>true</enabled>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+            </snapshots>
+        </pluginRepository>
+        <pluginRepository>
+            <id>o-ran-sc-snapshot</id>
+            <url>${o-ran-sc.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>
+    </pluginRepositories>
+
+    <build>
+        <pluginManagement>
+            <plugins>
+                <!-- Plugins from O-RAN-SC version (parent of 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/>
+                        <deployAtEnd>true</deployAtEnd>
+                    </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>org.apache.maven.plugins</groupId>
+                    <artifactId>maven-enforcer-plugin</artifactId>
+                    <version>3.0.0-M2</version>
+                    <executions>
+                        <execution>
+                            <id>enforce-property</id>
+                            <goals>
+                                <goal>enforce</goal>
+                            </goals>
+                            <configuration>
+                                <rules>
+                                    <requireProperty>
+                                        <property>o-ran-sc.nexus.url</property>
+                                        <message>You must set a o-ran-sc.nexus.url property in your
+                                            ~/.m2/settings.xml. See oparent/settings.xml for an example.
+                                        </message>
+                                    </requireProperty>
+                                </rules>
+                                <fail>true</fail>
+                            </configuration>
+                        </execution>
+                        <execution>
+                            <id>enforce-no-snapshots</id>
+                            <goals>
+                                <goal>enforce</goal>
+                            </goals>
+                            <configuration>
+                                <rules>
+                                    <requireReleaseDeps>
+                                        <failWhenParentIsSnapshot>false</failWhenParentIsSnapshot>
+                                        <onlyWhenRelease>true</onlyWhenRelease>
+                                        <level>WARN</level>
+                                    </requireReleaseDeps>
+                                </rules>
+                            </configuration>
+                        </execution>
+                        <execution>
+                            <id>enforce-maven</id>
+                            <goals>
+                                <goal>enforce</goal>
+                            </goals>
+                            <configuration>
+                                <rules>
+                                    <requireJavaVersion>
+                                        <version>8</version>
+                                    </requireJavaVersion>
+                                    <requireMavenVersion>
+                                        <version>[3.5.0,)</version>
+                                    </requireMavenVersion>
+                                </rules>
+                            </configuration>
+                        </execution>
+                        <execution>
+                            <id>enforce-banned-dependencies</id>
+                            <goals>
+                                <goal>enforce</goal>
+                            </goals>
+                            <configuration>
+                                <rules>
+                                    <bannedDependencies>
+                                        <message>Please always use mockito-core instead of mockito-all (see https://bugs.opendaylight.org/show_bug.cgi?id=7662), and spotbugs:annotations instead of findbugs:annotations</message>
+                                        <excludes>
+                                            <exclude>org.mockito:mockito-all</exclude>
+                                            <!-- <exclude>com.google.code.findbugs:annotations</exclude> -->
+                                        </excludes>
+                                    </bannedDependencies>
+                                </rules>
+                                <fail>true</fail>
+                            </configuration>
+                        </execution>
+                    </executions>
+                </plugin>
+                <!-- https://mvnrepository.com/artifact/org.sonarsource.scanner.maven/sonar-maven-plugin -->
+                <plugin>
+                    <groupId>org.sonarsource.scanner.maven</groupId>
+                    <artifactId>sonar-maven-plugin</artifactId>
+                    <version>${sonar.scanner.version}</version>
+                </plugin>
+                <!-- end of plugins from O-RAN-SC version (parent of oparent) -->
+                <!-- Plugins from O-RAN-SC oparent -->
+                <plugin>
+                    <groupId>org.apache.maven.plugins</groupId>
+                    <artifactId>maven-surefire-plugin</artifactId>
+                    <version>${maven-surefire-plugin.version}</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>${maven-failsafe-plugin.version}</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>
+
+                <!-- End of plugins from O-RAN-SC 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.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>
+                <plugin>
+                    <groupId>com.github.ferstl</groupId>
+                    <artifactId>depgraph-maven-plugin</artifactId>
+                    <version>3.3.0</version>
+                    <configuration>
+                        <graphFormat>text</graphFormat>
+                        <outputFileName>${dependency-list.file}</outputFileName>
+                        <outputDirectory>${project.basedir}</outputDirectory>
+                        <transitiveExcludes>*</transitiveExcludes>
+                        <showVersions>true</showVersions>
+                        <showGroupIds>true</showGroupIds>
+                    </configuration>
+                </plugin>
+                <plugin>
+                    <groupId>de.jacks-it-lab</groupId>
+                    <artifactId>frontend-maven-plugin</artifactId>
+                    <version>1.7.2</version>
+                </plugin>
+                <plugin>
+                    <groupId>com.github.alexcojocaru</groupId>
+                    <artifactId>elasticsearch-maven-plugin</artifactId>
+                    <version>6.16</version>
+                    <configuration>
+                        <version>7.1.1</version>
+                    </configuration>
+                </plugin>
+                <plugin>
+                    <groupId>org.apache.maven.plugins</groupId>
+                    <artifactId>maven-javadoc-plugin</artifactId>
+                    <version>3.2.0</version>
+                    <configuration>
+                        <failOnError>false</failOnError>
+                    </configuration>
+                </plugin>
+                <plugin>
+                    <groupId>com.github.spotbugs</groupId>
+                    <artifactId>spotbugs-maven-plugin</artifactId>
+                    <version>3.1.12.2</version>
+                    <executions>
+                        <execution>
+                            <id>analyze-compile</id>
+                            <phase>compile</phase>
+                            <goals>
+                                <goal>check</goal>
+                            </goals>
+                            <configuration>
+                                <plugins>
+                                    <plugin>
+                                        <groupId>jp.skypencil.findbugs.slf4j</groupId>
+                                        <artifactId>bug-pattern</artifactId>
+                                        <version>1.5.0</version>
+                                    </plugin>
+                                </plugins>
+                                <effort>Max</effort>
+                                <threshold>Low</threshold>
+                                <failOnError>false</failOnError>
+                                <skip>true</skip>
+                                <excludeFilterFile>spotbugs-exclude.xml</excludeFilterFile>
+                                <xmlOutput>true</xmlOutput>
+                                <findbugsXmlOutputDirectory>/home/jack/onap/onap-sdnr/features/sdnr/wt-aluminium-sr0-2/target/wt/common/target-ide/spotbugs</findbugsXmlOutputDirectory>
+                            </configuration>
+                        </execution>
+                    </executions>
+                    <dependencies>
+                        <dependency>
+                            <groupId>com.github.spotbugs</groupId>
+                            <artifactId>spotbugs</artifactId>
+                            <version>3.1.12</version>
+                            <scope>compile</scope>
+                        </dependency>
+                        <dependency>
+                            <groupId>org.opendaylight.odlparent</groupId>
+                            <artifactId>spotbugs</artifactId>
+                            <version>7.0.5</version>
+                            <scope>compile</scope>
+                        </dependency>
+                        <dependency>
+                            <groupId>org.slf4j</groupId>
+                            <artifactId>slf4j-simple</artifactId>
+                            <version>1.8.0-beta2</version>
+                            <scope>compile</scope>
+                        </dependency>
+                    </dependencies>
+                    <configuration>
+                        <plugins>
+                            <plugin>
+                                <groupId>jp.skypencil.findbugs.slf4j</groupId>
+                                <artifactId>bug-pattern</artifactId>
+                                <version>1.5.0</version>
+                            </plugin>
+                        </plugins>
+                        <effort>Max</effort>
+                        <threshold>Low</threshold>
+                        <failOnError>false</failOnError>
+                        <skip>true</skip>
+                        <excludeFilterFile>spotbugs-exclude.xml</excludeFilterFile>
+                        <xmlOutput>true</xmlOutput>
+                        <findbugsXmlOutputDirectory>/home/jack/onap/onap-sdnr/features/sdnr/wt-aluminium-sr0-2/target/wt/common/target-ide/spotbugs</findbugsXmlOutputDirectory>
+                    </configuration>
+                </plugin>
+                <plugin>
+                    <groupId>org.apache.maven.plugins</groupId>
+                    <artifactId>maven-checkstyle-plugin</artifactId>
+                    <version>${checkstyle.plugin.version}</version>
+                    <dependencies>
+                        <dependency>
+                            <groupId>org.onap.oparent</groupId>
+                            <artifactId>checkstyle</artifactId>
+                            <version>1.2.2</version>
+                        </dependency>
+                    </dependencies>
+                    <executions>
+                        <execution>
+                            <phase>process-sources</phase>
+                            <goals>
+                                <goal>check</goal>
+                            </goals>
+                            <configuration>
+                                <failOnViolation>false</failOnViolation>
+                                <skip>true</skip>
+                            </configuration>
+                        </execution>
+                        <execution>
+                            <id>check-license</id>
+                            <goals>
+                                <goal>check</goal>
+                            </goals>
+                            <phase>process-sources</phase>
+                            <configuration>
+                                <configLocation>onap-checkstyle/check-license.xml</configLocation>
+                                <includeResources>false</includeResources>
+                                <includeTestSourceDirectory>true</includeTestSourceDirectory>
+                                <includeTestResources>false</includeTestResources>
+                                <sourceDirectories>
+                                    <directory>${project.build.sourceDirectory}</directory>
+                                </sourceDirectories>
+                                <excludes>
+                                </excludes>
+                                <consoleOutput>true</consoleOutput>
+                                <failOnViolation>false</failOnViolation>
+                            </configuration>
+                        </execution>
+                        <execution>
+                            <id>onap-java-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 -->
+                                <sourceDirectories>
+                                    <directory>${project.build.sourceDirectory}/src/main/java</directory>
+                                </sourceDirectories>
+                                <includeResources>true</includeResources>
+                                <includeTestSourceDirectory>true</includeTestSourceDirectory>
+                                <includeTestResources>true</includeTestResources>
+                                <excludes>
+                                </excludes>
+                                <consoleOutput>true</consoleOutput>
+                                <failOnViolation>false</failOnViolation>
+                            </configuration>
+                        </execution>
+                    </executions>
+                </plugin>
+                <plugin>
+                    <groupId>org.gaul</groupId>
+                    <artifactId>modernizer-maven-plugin</artifactId>
+                    <version>2.1.0</version>
+                    <executions>
+                        <execution>
+                            <id>modernizer</id>
+                            <phase>verify</phase>
+                            <goals>
+                                <goal>modernizer</goal>
+                            </goals>
+                            <configuration>
+                                <failOnViolations>false</failOnViolations>
+                                <skip>true</skip>
+                            </configuration>
+                        </execution>
+                    </executions>
+                    <configuration>
+                        <failOnViolations>false</failOnViolations>
+                        <skip>true</skip>
+                    </configuration>
+                </plugin>
+                <!--
+                <plugin>
+                    <groupId>org.apache.karaf.tooling</groupId>
+                    <artifactId>karaf-maven-plugin</artifactId>
+                    <configuration>
+                        <useVersionRange>true</useVersionRange>
+                        <includeTransitiveVersionRanges>true</includeTransitiveVersionRanges>
+                    </configuration>
+                </plugin>
+            -->
+            </plugins>
+        </pluginManagement>
+        <plugins>
+            <!-- Plugins from oparent version (parent of oparent) -->
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-deploy-plugin</artifactId>
+            </plugin>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-site-plugin</artifactId>
+                <!--
+                <configuration>
+                    <reportPlugins>
+                        <reportPlugin>
+                            <groupId>org.apache.maven.plugins</groupId>
+                            <artifactId>maven-checkstyle-plugin</artifactId>
+                            <version>${checkstyle.plugin.version}</version>
+                        </reportPlugin>
+                    </reportPlugins>
+                </configuration>
+                -->
+            </plugin>
+            <!-- end of plugins from oparent version (parent of oparent) -->
+
+            <!-- Plugins from oparent -->
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <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>
+                <version>${jacoco.version}</version>
+                <executions>
+                    <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>
+                    <execution>
+                        <id>default-prepare-agent</id>
+                        <goals>
+                            <goal>prepare-agent</goal>
+                        </goals>
+                    </execution>
+                    <execution>
+                        <id>default-report</id>
+                        <phase>prepare-package</phase>
+                        <goals>
+                            <goal>report</goal>
+                        </goals>
+                    </execution>
+                    <execution>
+                        <id>default-check</id>
+                        <goals>
+                            <goal>check</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <rule>
+                                    <element>PACKAGE</element>
+                                    <limits>
+                                        <limit>
+                                            <counter>COMPLEXITY</counter>
+                                            <value>COVEREDRATIO</value>
+                                            <minimum>0.0</minimum>
+                                        </limit>
+                                    </limits>
+                                </rule>
+                            </rules>
+                        </configuration>
+                    </execution>
+                </executions>
+            </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 oparent -->
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-javadoc-plugin</artifactId>
+                <executions>
+                    <execution>
+                        <id>attach-javadocs</id>
+                        <goals>
+                            <goal>jar</goal>
+                        </goals>
+                        <configuration>
+                            <additionalparam>-Xdoclint:none</additionalparam>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+            <plugin>
+                <artifactId>maven-enforcer-plugin</artifactId>
+                <version>3.0.0-M2</version>
+                <executions>
+                    <execution>
+                        <id>enforce-property</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <requireProperty>
+                                    <property>o-ran-sc.nexus.url</property>
+                                    <message>You must set a o-ran-sc.nexus.url property in your
+                                        ~/.m2/settings.xml. See oparent/settings.xml for an example.
+                                    </message>
+                                </requireProperty>
+                            </rules>
+                            <fail>true</fail>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>enforce-no-snapshots</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <requireReleaseDeps>
+                                    <failWhenParentIsSnapshot>false</failWhenParentIsSnapshot>
+                                    <onlyWhenRelease>true</onlyWhenRelease>
+                                    <level>WARN</level>
+                                </requireReleaseDeps>
+                            </rules>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>enforce-maven</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <requireJavaVersion>
+                                    <version>1.8.0</version>
+                                </requireJavaVersion>
+                                <requireMavenVersion>
+                                    <version>[3.5.0,)</version>
+                                </requireMavenVersion>
+                            </rules>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>enforce-banned-dependencies</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <bannedDependencies>
+                                    <message>Please always use mockito-core instead of mockito-all (see https://bugs.opendaylight.org/show_bug.cgi?id=7662), and spotbugs:annotations instead of findbugs:annotations</message>
+                                    <excludes>
+                                        <exclude>org.mockito:mockito-all</exclude>
+                                        <!-- <exclude>com.google.code.findbugs:annotations</exclude> -->
+                                    </excludes>
+                                </bannedDependencies>
+                            </rules>
+                            <fail>true</fail>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+            <plugin>
+                <groupId>pl.project13.maven</groupId>
+                <artifactId>git-commit-id-plugin</artifactId>
+                <version>4.0.0</version>
+                <configuration>
+                    <commitIdGenerationMode>full</commitIdGenerationMode>
+                    <includeOnlyProperties>
+                        <includeOnlyProperty>^git.build.(time|version)$</includeOnlyProperty>
+                        <includeOnlyProperty>^git.commit.id.(abbrev|full)$</includeOnlyProperty>
+                    </includeOnlyProperties>
+                </configuration>
+            </plugin>
+        </plugins>
+    </build>
+
+    <reporting>
+        <plugins>
+            <plugin>
+                <artifactId>maven-javadoc-plugin</artifactId>
+                <configuration>
+                    <failOnError>false</failOnError>
+                    <additionalparam>-Xdoclint:none</additionalparam>
+                </configuration>
+            </plugin>
+        </plugins>
+    </reporting>
+
+    <profiles>
+        <!-- Profiles from O-RAN-SC 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>
+                                        <groupId>ant</groupId>
+                                        <artifactId>ant</artifactId>
+                                    </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>
+                        <groupId>org.codehaus.mojo</groupId>
+                        <artifactId>exec-maven-plugin</artifactId>
+                        <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>
+        <profile>
+            <id>sonar-jacoco-aggregate</id>
+            <activation>
+                <property>
+                    <name>onap.jacoco.aggregateFile</name>
+                </property>
+            </activation>
+            <build>
+                <plugins>
+                    <plugin>
+                        <groupId>org.jacoco</groupId>
+                        <artifactId>jacoco-maven-plugin</artifactId>
+                        <executions>
+                            <execution>
+                                <id>merge</id>
+                                <goals>
+                                    <goal>merge</goal>
+                                </goals>
+                                <phase>generate-resources</phase>
+                                <configuration>
+                                    <destFile>${onap.jacoco.aggregateFile}</destFile>
+                                    <fileSets>
+                                        <fileSet>
+                                            <directory>${project.basedir}</directory>
+                                            <includes>
+                                                <include>**/target/code-coverage/*.exec</include>
+                                            </includes>
+                                        </fileSet>
+                                    </fileSets>
+                                </configuration>
+                            </execution>
+                        </executions>
+                    </plugin>
+                </plugins>
+            </build>
+        </profile>
+        <!-- End of profiles from O-RAN-SC oparent -->
+
+       
+    </profiles>
+</project>
diff --git a/parents/odlparent/client-parent/pom.xml b/parents/odlparent/client-parent/pom.xml
new file mode 100644 (file)
index 0000000..e127e41
--- /dev/null
@@ -0,0 +1,582 @@
+<?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>
+
+    <groupId>org.o-ran-sc.oam-controller.parent</groupId>
+    <artifactId>client-parent</artifactId>
+    <version>3.0.2-SNAPSHOT</version>
+    <packaging>pom</packaging>
+
+    <name>O-RAN-SC :: ${project.groupId} :: ${project.artifactId}</name>
+    <description>Root POM to be used for yang2swagger generation in CCSDK based projects</description>
+    <url>http://wiki.onap.org</url>
+    <organization>
+        <name>O-RAN-SC</name>
+    </organization>
+
+    <issueManagement>
+        <system>JIRA</system>
+        <url>https://jira.onap.org/</url>
+    </issueManagement>
+    <distributionManagement>
+        <repository>
+            <id>o-ran-sc-releases</id>
+            <url>https://nexus.o-ran-sc.org/content/repositories/releases</url>
+        </repository>
+        <snapshotRepository>
+            <id>o-ran-sc-snapshots</id>
+            <url>https://nexus.o-ran-sc.org/content/repositories/snapshots</url>
+        </snapshotRepository>
+    </distributionManagement>
+
+    <properties>
+
+        <!-- properties from oparent -->
+        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
+        <o-ran-sc.nexus.url>https://nexus.o-ran-sc.org</o-ran-sc.nexus.url>
+        <!-- sitePath may be overridden in the inheriting POM if desired -->
+        <sitePath>/content/sites/site/${project.groupId}/${project.artifactId}/${project.version}</sitePath>
+
+        <!-- O-RAN-SC repositories -->
+        <o-ran-sc.nexus.host>nexus.o-ran-sc.org</o-ran-sc.nexus.host>
+        <o-ran-sc.nexus.port>443</o-ran-sc.nexus.port>
+        <o-ran-sc.nexus.protocol>https</o-ran-sc.nexus.protocol>
+        <o-ran-sc.nexus.public-url>https://nexus.o-ran-sc.org/content/groups/public</o-ran-sc.nexus.public-url>
+        <o-ran-sc.nexus.staging-url>https://nexus.o-ran-sc.org/content/groups/staging</o-ran-sc.nexus.staging-url>
+        <o-ran-sc.nexus.release-url>https://nexus.o-ran-sc.org/content/repositories/releases</o-ran-sc.nexus.release-url>
+        <o-ran-sc.nexus.snapshot-url>https://nexus.o-ran-sc.org/content/repositories/snapshots</o-ran-sc.nexus.snapshot-url>
+        <o-ran-sc.nexus.staging.server-id>o-ran-sc-staging</o-ran-sc.nexus.staging.server-id>
+        <o-ran-sc.nexus.staging.profile-id>176c31dfe190a</o-ran-sc.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>
+
+        <java.version>11</java.version>
+        <maven-surefire-plugin.version>3.0.0-M5</maven-surefire-plugin.version>
+        <maven-failsafe-plugin.version>3.0.0-M5</maven-failsafe-plugin.version>
+        <maven-compiler-plugin.version>3.8.1</maven-compiler-plugin.version>
+
+        <checkstyle.skip>true</checkstyle.skip>
+
+        <org.json.version>20170516</org.json.version>
+        <jackson.version>2.11.0</jackson.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.13</junit.version>
+        <mockito.version>2.8.9</mockito.version>
+        <lombok.version>1.18.0</lombok.version>
+        <openpojo.version>0.8.10</openpojo.version>
+        <spring.version>4.3.7.RELEASE</spring.version>
+        <javax.validation.version>1.1.0.Final</javax.validation.version>
+        <swagger.version>1.5.21</swagger.version>
+        <yangtools.version>1.2.3</yangtools.version>
+        <yang2swagger.version>1.1.12</yang2swagger.version>
+
+        <!-- O-RAN-SC repositories -->
+        <o-ran-sc.nexus.host>nexus.o-ran-sc.org</o-ran-sc.nexus.host>
+        <o-ran-sc.nexus.port>443</o-ran-sc.nexus.port>
+        <o-ran-sc.nexus.protocol>https</o-ran-sc.nexus.protocol>
+        <o-ran-sc.nexus.public-url>https://nexus.o-ran-sc.org/content/groups/public</o-ran-sc.nexus.public-url>
+        <o-ran-sc.nexus.staging-url>https://nexus.o-ran-sc.org/content/groups/staging</o-ran-sc.nexus.staging-url>
+        <o-ran-sc.nexus.release-url>https://nexus.o-ran-sc.org/content/repositories/releases</o-ran-sc.nexus.release-url>
+        <o-ran-sc.nexus.snapshot-url>https://nexus.o-ran-sc.org/content/repositories/snapshots</o-ran-sc.nexus.snapshot-url>
+        <o-ran-sc.nexus.staging.server-id>o-ran-sc-staging</o-ran-sc.nexus.staging.server-id>
+        <o-ran-sc.nexus.staging.profile-id>176c31dfe190a</o-ran-sc.nexus.staging.profile-id>
+
+        <!-- Default api name for client -->
+        <api.name>client</api.name>
+
+    </properties>
+
+    <dependencies>
+        <dependency>
+            <groupId>org.mockito</groupId>
+            <artifactId>mockito-core</artifactId>
+            <version>${mockito.version}</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.projectlombok</groupId>
+            <artifactId>lombok</artifactId>
+            <version>${lombok.version}</version>
+            <scope>provided</scope>
+        </dependency>
+        <dependency>
+            <groupId>com.openpojo</groupId>
+            <artifactId>openpojo</artifactId>
+            <version>${openpojo.version}</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>junit</groupId>
+            <artifactId>junit</artifactId>
+            <version>${junit.version}</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.json</groupId>
+            <artifactId>json</artifactId>
+            <version>${org.json.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>com.fasterxml.jackson.jaxrs</groupId>
+            <artifactId>jackson-jaxrs-base</artifactId>
+            <version>${jackson.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>com.fasterxml.jackson.jaxrs</groupId>
+            <artifactId>jackson-jaxrs-json-provider</artifactId>
+            <version>${jackson.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>com.fasterxml.jackson.datatype</groupId>
+            <artifactId>jackson-datatype-jsr310</artifactId>
+            <version>${jackson.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>com.fasterxml.jackson.dataformat</groupId>
+            <artifactId>jackson-dataformat-xml</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.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>com.fasterxml.jackson.core</groupId>
+            <artifactId>jackson-annotations</artifactId>
+            <version>${jackson.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>com.fasterxml.jackson.module</groupId>
+            <artifactId>jackson-module-jaxb-annotations</artifactId>
+            <version>${jackson.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.springframework</groupId>
+            <artifactId>spring-web</artifactId>
+            <version>${spring.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>io.swagger</groupId>
+            <artifactId>swagger-annotations</artifactId>
+            <version>${swagger.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>javax.validation</groupId>
+            <artifactId>validation-api</artifactId>
+            <version>${javax.validation.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>io.swagger</groupId>
+            <artifactId>swagger-jaxrs</artifactId>
+            <version>${swagger.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>io.swagger</groupId>
+            <artifactId>swagger-models</artifactId>
+            <version>${swagger.version}</version>
+        </dependency>
+    </dependencies>
+
+    <repositories>
+        <repository>
+            <id>onap-public</id>
+            <url>https://nexus.o-ran-sc.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.o-ran-sc.org/content/groups/staging</url>
+            <releases>
+                <enabled>true</enabled>
+                <updatePolicy>never</updatePolicy>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+                <updatePolicy>always</updatePolicy>
+            </snapshots>
+        </repository>
+        <repository>
+            <id>o-ran-sc-release</id>
+            <name>o-ran-sc-repository-releases</name>
+            <url>https://nexus.o-ran-sc.org/content/repositories/releases</url>
+            <releases>
+                <enabled>true</enabled>
+                <updatePolicy>never</updatePolicy>
+            </releases>
+            <snapshots>
+                <enabled>false</enabled>
+            </snapshots>
+        </repository>
+        <repository>
+            <id>o-ran-sc-snapshot</id>
+            <name>o-ran-sc-repository-snapshots</name>
+            <url>https://nexus.o-ran-sc.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>
+        <repository>
+            <snapshots>
+                <enabled>false</enabled>
+            </snapshots>
+            <id>onap-bintray</id>
+            <name>onap-bintray</name>
+            <url>https://nexus.o-ran-sc.org/content/repositories/bintray/</url>
+        </repository>
+    </repositories>
+    <pluginRepositories>
+        <pluginRepository>
+            <id>onap-public</id>
+            <url>${o-ran-sc.nexus.public-url}</url>
+            <releases>
+                <enabled>true</enabled>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+            </snapshots>
+        </pluginRepository>
+        <pluginRepository>
+            <id>onap-staging</id>
+            <url>${o-ran-sc.nexus.staging-url}</url>
+            <releases>
+                <enabled>true</enabled>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+            </snapshots>
+        </pluginRepository>
+        <pluginRepository>
+            <id>onap-snapshot</id>
+            <url>${o-ran-sc.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>
+
+        <pluginRepository>
+            <id>onap-bintray</id>
+            <name>onap-bintray</name>
+            <url>https://nexus.o-ran-sc.org/content/repositories/bintray/</url>
+        </pluginRepository>
+    </pluginRepositories>
+
+    <build>
+        <pluginManagement>
+            <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>
+                <plugin>
+                    <groupId>org.apache.maven.plugins</groupId>
+                    <artifactId>maven-compiler-plugin</artifactId>
+                    <version>${maven-compiler-plugin.version}</version>
+                    <configuration>
+                        <release>${java.version}</release>
+                        <!--explicitly remove source and target-->
+                        <source combine.self="override"/>
+                        <target combine.self="override"/>
+                    </configuration>
+                </plugin>
+                <plugin>
+                    <groupId>org.apache.maven.plugins</groupId>
+                    <artifactId>maven-surefire-plugin</artifactId>
+                    <version>${maven-surefire-plugin.version}</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>${maven-failsafe-plugin.version}</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-source-plugin</artifactId>
+                    <version>3.0.1</version>
+                    <executions>
+                        <execution>
+                            <id>install-sources</id>
+                            <goals>
+                                <goal>jar</goal>
+                            </goals>
+                        </execution>
+                        <execution>
+                            <id>deploy-sources</id>
+                            <phase>deploy</phase>
+                            <goals>
+                                <goal>jar</goal>
+                            </goals>
+                        </execution>
+                    </executions>
+                </plugin>
+                <plugin>
+                    <groupId>org.apache.maven.plugins</groupId>
+                    <artifactId>maven-dependency-plugin</artifactId>
+                    <version>2.10</version>
+                    <configuration>
+                        <outputDirectory>${project.build.directory}/dependency</outputDirectory>
+                        <includes>**\/*.yang</includes>
+                    </configuration>
+                    <executions>
+                        <execution>
+                            <id>unpack-shared-resources</id>
+                            <goals>
+                                <goal>unpack-dependencies</goal>
+                            </goals>
+                            <phase>initialize</phase>
+                        </execution>
+                    </executions>
+                </plugin>
+                <plugin>
+                    <artifactId>maven-antrun-plugin</artifactId>
+                    <version>1.8</version>
+                    <executions>
+                        <execution>
+                            <phase>initialize</phase>
+                            <goals>
+                                <goal>run</goal>
+                            </goals>
+                        </execution>
+                    </executions>
+                    <configuration>
+                        <tasks>
+                            <!-- flatten out structure -->
+                            <move todir="${project.build.directory}/dependency" failonerror="false">
+                                <fileset dir="${project.build.directory}/dependency"/>
+                                <mapper type="flatten"/>
+                            </move>
+                            <!-- move to yang folder -->
+                            <copy todir="${project.build.directory}/yang" failonerror="false">
+                                <fileset dir="${project.build.directory}/dependency" includes="**/*.yang"/>
+                                <mapper type="flatten"/>
+                            </copy>
+                            <!-- add in hard coded items from src/main/yang -->
+                            <copy todir="${project.build.directory}/yang" failonerror="false">
+                                <fileset dir="${project.basedir}/src/main/yang" includes="**/*.yang"/>
+                                <mapper type="flatten"/>
+                            </copy>
+                        </tasks>
+                    </configuration>
+                </plugin>
+                <plugin>
+                    <groupId>org.opendaylight.yangtools</groupId>
+                    <artifactId>yang-maven-plugin</artifactId>
+                    <version>${yangtools.version}</version>
+                    <dependencies>
+                        <dependency>
+                            <groupId>com.mrv.yangtools</groupId>
+                            <artifactId>swagger-maven-plugin</artifactId>
+                            <version>${yang2swagger.version}</version>
+                        </dependency>
+                        <dependency>
+                            <groupId>com.fasterxml.jackson.core</groupId>
+                            <artifactId>jackson-core</artifactId>
+                            <version>${jackson.version}</version>
+                        </dependency>
+                    </dependencies>
+                    <executions>
+                        <execution>
+                            <id>binding</id>
+                            <goals>
+                                <goal>generate-sources</goal>
+                            </goals>
+                            <configuration>
+                                <codeGenerators>
+                                    <generator>
+                                        <codeGeneratorClass>com.mrv.yangtools.maven.gen.swagger.MavenSwaggerGenerator</codeGeneratorClass>
+                                        <outputBaseDir>${project.build.directory}/generated-sources/swagger-maven-api-gen</outputBaseDir>
+                                        <resourceBaseDir>${project.build.directory}/yang</resourceBaseDir>
+                                        <additionalConfiguration>
+                                            <api-version>${project.version}</api-version>
+                                            <base-module>${api.name}</base-module>
+                                            <swagger-format>yaml</swagger-format>
+                                            <path-format>odl</path-format>
+                                        </additionalConfiguration>
+                                    </generator>
+                                </codeGenerators>
+                                <inspectDependencies>false</inspectDependencies>
+                                <yangFilesRootDir>${project.build.directory}/yang</yangFilesRootDir>
+                            </configuration>
+                        </execution>
+                    </executions>
+                </plugin>
+                <plugin>
+                    <groupId>io.swagger</groupId>
+                    <artifactId>swagger-codegen-maven-plugin</artifactId>
+                    <version>2.2.3</version>
+                    <dependencies>
+                        <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.version}</version>
+                        </dependency>
+                        <dependency>
+                            <groupId>com.fasterxml.jackson.core</groupId>
+                            <artifactId>jackson-annotations</artifactId>
+                            <version>${jackson.version}</version>
+                        </dependency>
+                        <dependency>
+                            <groupId>com.fasterxml.jackson.module</groupId>
+                            <artifactId>jackson-module-jaxb-annotations</artifactId>
+                            <version>${jackson.version}</version>
+                        </dependency>
+                        <dependency>
+                            <groupId>com.fasterxml.jackson.jaxrs</groupId>
+                            <artifactId>jackson-jaxrs-base</artifactId>
+                            <version>${jackson.version}</version>
+                        </dependency>
+                        <dependency>
+                            <groupId>com.fasterxml.jackson.jaxrs</groupId>
+                            <artifactId>jackson-jaxrs-json-provider</artifactId>
+                            <version>${jackson.version}</version>
+                        </dependency>
+                    </dependencies>
+                    <executions>
+                        <execution>
+                            <goals>
+                                <goal>generate</goal>
+                            </goals>
+                            <configuration>
+                                <inputSpec>${project.build.directory}/generated-sources/swagger-maven-api-gen/${api.name}.yaml</inputSpec>
+                                <language>spring</language>
+                            </configuration>
+                        </execution>
+                    </executions>
+                </plugin>
+
+            </plugins>
+
+        </pluginManagement>
+        <plugins>
+            <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>
+</project>
diff --git a/parents/odlparent/feature-repo-parent/pom.xml b/parents/odlparent/feature-repo-parent/pom.xml
new file mode 100644 (file)
index 0000000..a74106e
--- /dev/null
@@ -0,0 +1,1281 @@
+<?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>
+
+    <!-- PLEASE READ !!!!! This file is generated from ccsdk/parent/setup/src/main/template/pom-template.xml
+        Any updates needed should be made to that template and not to the generated
+        pom.xml file -->
+    <parent>
+        <groupId>org.opendaylight.odlparent</groupId>
+        <artifactId>feature-repo-parent</artifactId>
+        <version>14.0.8</version>
+        <relativePath/>
+    </parent>
+
+    <groupId>org.o-ran-sc.oam-controller.parent</groupId>
+    <artifactId>feature-repo-parent</artifactId>
+    <version>3.0.2-SNAPSHOT</version>
+    <packaging>pom</packaging>
+
+    <name>O-RAN-SC :: ${project.groupId} :: ${project.artifactId}</name>
+    <description>Root POM to be used in place of odlparent for CCSDK based projects</description>
+    <url>http://wiki.o-ran-sc.org</url>
+    <organization>
+        <name>O-RAN-SC</name>
+    </organization>
+
+    <issueManagement>
+        <system>JIRA</system>
+        <url>https://jira.o-ran-sc.org/</url>
+    </issueManagement>
+    <distributionManagement>
+        <repository>
+            <id>o-ran-sc-releases</id>
+            <url>${o-ran-sc.nexus.release-url}</url>
+        </repository>
+        <snapshotRepository>
+            <id>o-ran-sc-snapshots</id>
+            <url>${o-ran-sc.nexus.snapshot-url}</url>
+        </snapshotRepository>
+    </distributionManagement>
+
+    <properties>
+        <!-- Sonar properties -->
+        <sonar.scanner.version>3.7.0.1746</sonar.scanner.version>
+        <sonar-jacoco-listeners.version>3.2</sonar-jacoco-listeners.version>
+        <sonar.core.codeCoveragePlugin>jacoco</sonar.core.codeCoveragePlugin>
+        <!-- Default Sonar configuration -->
+        <sonar.coverage.jacoco.xmlReportPaths>${project.reporting.outputDirectory}/jacoco-ut/jacoco.xml,${project.reporting.outputDirectory}/jacoco-it/jacoco.xml</sonar.coverage.jacoco.xmlReportPaths>
+        <!-- Note: This list should match jacoco-maven-plugin's exclusion list below -->
+        <sonar.exclusions>**/gen/**,**/generated-sources/**,**/yang-gen**,**/pax/**</sonar.exclusions>
+
+        <!-- Jacoco properties -->
+        <jacoco.version>0.8.12</jacoco.version>
+
+        <!-- properties from oparent -->
+        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
+        <!-- sitePath may be overridden in the inheriting POM if desired -->
+        <sitePath>/content/sites/site/${project.groupId}/${project.artifactId}/${project.version}</sitePath>
+
+        <!-- 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 -->
+
+        <!-- O-RAN-SC repositories -->
+        <o-ran-sc.nexus.url>https://nexus.o-ran-sc.org</o-ran-sc.nexus.url>
+        <o-ran-sc.nexus.host>nexus.o-ran-sc.org</o-ran-sc.nexus.host>
+        <o-ran-sc.nexus.port>443</o-ran-sc.nexus.port>
+        <o-ran-sc.nexus.protocol>https</o-ran-sc.nexus.protocol>
+        <o-ran-sc.nexus.public-url>https://nexus.o-ran-sc.org/content/groups/public</o-ran-sc.nexus.public-url>
+        <o-ran-sc.nexus.staging-url>https://nexus.o-ran-sc.org/content/groups/staging</o-ran-sc.nexus.staging-url>
+        <o-ran-sc.nexus.release-url>https://nexus.o-ran-sc.org/content/repositories/releases</o-ran-sc.nexus.release-url>
+        <o-ran-sc.nexus.snapshot-url>https://nexus.o-ran-sc.org/content/repositories/snapshots</o-ran-sc.nexus.snapshot-url>
+        <o-ran-sc.nexus.staging.server-id>o-ran-sc-staging</o-ran-sc.nexus.staging.server-id>
+        <o-ran-sc.nexus.staging.profile-id>176c31dfe190a</o-ran-sc.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>21</java.version>
+        <maven-surefire-plugin.version>3.0.0-M8</maven-surefire-plugin.version>
+        <maven-failsafe-plugin.version>3.0.0-M8</maven-failsafe-plugin.version>
+        <bundle.plugin.version>5.1.1</bundle.plugin.version>
+        <maven-compiler-plugin.version>3.10.1</maven-compiler-plugin.version>
+        <features.file>features.xml</features.file>
+        <jmxGeneratorPath>src/main/yang-gen-config</jmxGeneratorPath>
+        <salGeneratorPath>src/main/yang-gen-sal</salGeneratorPath>
+        <checkstyle.plugin.version>3.2.1</checkstyle.plugin.version>
+        <checkstyle.skip>true</checkstyle.skip>
+        <odlparent.spotbugs.enforce>false</odlparent.spotbugs.enforce>
+
+        <!-- logging-analytics versions -->
+        <logging-analytics.version>1.6.9</logging-analytics.version>
+
+        <!-- CCSDK component versions -->
+        <ccsdk.cds.version>(1.5.99999, 1.6.99999-SNAPSHOT]</ccsdk.cds.version>
+        <ccsdk.features.version>(1.5.99999, 1.6.99999-SNAPSHOT]</ccsdk.features.version>
+        <ccsdk.distribution.version>(1.5.99999, 1.6.99999-SNAPSHOT]</ccsdk.distribution.version>
+        <ccsdk.sli.version>(1.6.99999, 1.7.99999-SNAPSHOT]</ccsdk.sli.version>
+        <ccsdk.sli.core.version>${ccsdk.sli.version}</ccsdk.sli.core.version>
+        <ccsdk.sli.adaptors.version>${ccsdk.sli.version}</ccsdk.sli.adaptors.version>
+        <ccsdk.sli.northbound.version>${ccsdk.sli.version}</ccsdk.sli.northbound.version>
+        <ccsdk.sli.plugins.version>${ccsdk.sli.version}</ccsdk.sli.plugins.version>
+        <sdnctl.aai.service.version>${ccsdk.sli.version}</sdnctl.aai.service.version>
+        <sdnctl.dblib.version>${ccsdk.sli.version}</sdnctl.dblib.version>
+        <sdnctl.mdsal.resource.version>${ccsdk.sli.version}</sdnctl.mdsal.resource.version>
+        <sdnctl.slipluginutils.version>${ccsdk.sli.version}</sdnctl.slipluginutils.version>
+
+        <!-- Support libraries used by OpenDaylight -->
+        <odl.mdsal.version>14.0.8</odl.mdsal.version>
+        <odl.mdsal.model.version>14.0.8</odl.mdsal.model.version>
+        <odl.mdsal.generator.version>11.0.9</odl.mdsal.generator.version>
+        <odl.netconf.restconf.version>14.0.11</odl.netconf.restconf.version>
+        <odl.netconf.netconf.version>14.0.11</odl.netconf.netconf.version>
+        <odl.netconf.sal.rest.docgen.version>14.0.11</odl.netconf.sal.rest.docgen.version>
+
+        <!-- Used by aaa, vtn -->
+        <commons.codec.version>1.15</commons.codec.version>
+        <!-- Used by netconf, ovsdb -->
+        <commons.lang3.version>3.17.0</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.8.0</commons.net.version>
+        <!-- Used by neutron -->
+        <eclipse.persistence.version>None</eclipse.persistence.version>
+        <!-- Used by aaa -->
+        <felix.dependencymanager.version>4.4.1</felix.dependencymanager.version>
+        <!-- Used by lacp, netconf, ovsdb, sfc, toolkit; see also vtn -->
+        <gson.version>2.12.1</gson.version>
+        <!-- Used by aaa, dlux, persistence, snmp4sdn, sxp -->
+        <guava.version>33.4.0-jre</guava.version>
+        <!-- Used by aaa, alto, netconf, ovsdb, sfc; see also affinity, defense4all,
+            integration/distribution, snmp4sdn, toolkit, ttp -->
+        <jackson.version>2.17.3</jackson.version>
+        <!-- Used by snmp4sdn, yangtools -->
+        <javassist.version>3.30.2-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>2.46</jersey.version>
+        <!-- Used by sfc -->
+        <jersey.client.version>2.46</jersey.client.version>
+
+        <!-- Used everywhere -->
+        <junit.version>4.13.2</junit.version>
+        <!-- Used by coretutorials, sfc, snmp4sdn, sxp; see also affinity, toolkit -->
+        <logback.version>1.2.11</logback.version>
+        <!-- Used by nic, sfc, sxp, tsdr -->
+        <mockito.version>3.12.4</mockito.version>
+        <!-- Used by bgpcep, netconf, ovsdb, sxp; see also opendove, toolkit -->
+        <netty.version>4.1.119.Final</netty.version>
+        <!-- Used by openflowjava, persistence, sfc, snmp4sdn, sxp; see also affinity, toolkit -->
+        <slf4j.version>2.0.12</slf4j.version>
+        <!-- Used in integration/distribution; see also affinity, snmp4sdn, toolkit, tsdr, ttp -->
+        <spring.version>4.3.25.RELEASE</spring.version>
+
+        <!-- Extra support libraries used by SDN-C -->
+        <jvnet.jaxb2.version>0.6.4</jvnet.jaxb2.version>
+        <antlr.version>4.12.0</antlr.version>
+        <antlr4.version>4.12.0</antlr4.version>
+
+
+        <eelf.maven.plugin.version>1.0.0</eelf.maven.plugin.version>
+
+        <!-- Managed dependency versions -->
+        <apache.httpcomponents.core.version>4.4.12</apache.httpcomponents.core.version>
+        <apache.httpcomponents.client.version>4.5.13</apache.httpcomponents.client.version>
+        <derby.version>10.14.2.0</derby.version>
+        <eelf.version>1.0.0</eelf.version>
+        <grpc.version>1.21.1</grpc.version>
+        <log4j.version>2.17.1</log4j.version>
+        <log4j2.version>2.17.1</log4j2.version>
+        <jetty.version>9.4.54.v20240208</jetty.version>
+        <mariadb.connector.version>2.7.5</mariadb.connector.version>
+        <mariadb4j.version>2.4.0</mariadb4j.version>
+        <testng.version>6.14.3</testng.version>
+        <tomcat-jdbc.version>9.0.52</tomcat-jdbc.version>
+        <skip.karaf.featureTest>true</skip.karaf.featureTest>
+        <dependency-list.file>direct-dependencies.txt</dependency-list.file>
+    </properties>
+
+    <dependencyManagement>
+        <dependencies>
+            <!-- Note: If value in BOM conflicts with value inherited from
+            parent pom, inherited value takes precedence.  This seems more like
+            a bug than a feature, but this is how maven 3.6 works -->
+            <dependency>
+                <groupId>org.o-ran-sc.oam-controller.parent</groupId>
+                <artifactId>dependencies-odl-bom</artifactId>
+                <version>3.0.2-SNAPSHOT</version>
+                <type>pom</type>
+                <scope>import</scope>
+            </dependency>
+            <dependency>
+                <groupId>org.o-ran-sc.oam-controller.parent</groupId>
+                <artifactId>dependencies-bom</artifactId>
+                <version>3.0.2-SNAPSHOT</version>
+                <type>pom</type>
+                <scope>import</scope>
+            </dependency>
+            <dependency>
+                <groupId>org.springframework.boot</groupId>
+                <artifactId>spring-boot-dependencies</artifactId>
+                <version>2.3.8.RELEASE</version>
+                <scope>import</scope>
+                <type>pom</type>
+            </dependency>
+            <dependency>
+                <groupId>org.mariadb.jdbc</groupId>
+                <artifactId>mariadb-java-client</artifactId>
+                <version>${mariadb.connector.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.onap.logging-analytics</groupId>
+                <artifactId>logging-slf4j</artifactId>
+                <version>${logging-analytics.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.onap.logging-analytics</groupId>
+                <artifactId>logging-filter-base</artifactId>
+                <version>${logging-analytics.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.antlr</groupId>
+                <artifactId>antlr4-runtime</artifactId>
+                <version>${antlr.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.antlr</groupId>
+                <artifactId>antlr4</artifactId>
+                <version>${antlr.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>junit</groupId>
+                <artifactId>junit</artifactId>
+                <version>${junit.version}</version>
+                <scope>test</scope>
+            </dependency>
+        </dependencies>
+    </dependencyManagement>
+
+    <repositories>
+        <repository>
+            <id>o-ran-sc-public</id>
+            <url>${o-ran-sc.nexus.public-url}</url>
+            <releases>
+                <enabled>true</enabled>
+                <updatePolicy>never</updatePolicy>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+                <updatePolicy>always</updatePolicy>
+            </snapshots>
+        </repository>
+        <repository>
+            <id>o-ran-sc-staging</id>
+            <url>${o-ran-sc.nexus.staging-url}</url>
+            <releases>
+                <enabled>true</enabled>
+                <updatePolicy>never</updatePolicy>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+                <updatePolicy>always</updatePolicy>
+            </snapshots>
+        </repository>
+        <repository>
+            <id>o-ran-sc-release</id>
+            <name>o-ran-sc-repository-releases</name>
+            <url>${o-ran-sc.nexus.release-url}</url>
+            <releases>
+                <enabled>true</enabled>
+                <updatePolicy>never</updatePolicy>
+            </releases>
+            <snapshots>
+                <enabled>false</enabled>
+            </snapshots>
+        </repository>
+        <repository>
+            <id>o-ran-sc-snapshot</id>
+            <name>o-ran-sc-repository-snapshots</name>
+            <url>${o-ran-sc.nexus.snapshot-url}</url>
+            <releases>
+                <enabled>false</enabled>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+            </snapshots>
+        </repository>
+        <repository>
+            <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>
+        </repository>
+        <repository>
+            <id>opendaylight-snapshot</id>
+            <name>opendaylight-snapshot</name>
+            <url>${opendaylight.nexus.snapshot-url}</url>
+            <releases>
+                <enabled>false</enabled>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+            </snapshots>
+        </repository>
+    </repositories>
+
+    <pluginRepositories>
+        <pluginRepository>
+            <id>o-ran-sc-public</id>
+            <url>${o-ran-sc.nexus.public-url}</url>
+            <releases>
+                <enabled>true</enabled>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+            </snapshots>
+        </pluginRepository>
+        <pluginRepository>
+            <id>o-ran-sc-staging</id>
+            <url>${o-ran-sc.nexus.staging-url}</url>
+            <releases>
+                <enabled>true</enabled>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+            </snapshots>
+        </pluginRepository>
+        <pluginRepository>
+            <id>o-ran-sc-snapshot</id>
+            <url>${o-ran-sc.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>
+    </pluginRepositories>
+
+    <build>
+        <pluginManagement>
+            <plugins>
+                <!-- Plugins from O-RAN-SC version (parent of 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/>
+                        <deployAtEnd>true</deployAtEnd>
+                    </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>org.apache.maven.plugins</groupId>
+                    <artifactId>maven-enforcer-plugin</artifactId>
+                    <version>3.0.0-M2</version>
+                    <executions>
+                        <execution>
+                            <id>enforce-property</id>
+                            <goals>
+                                <goal>enforce</goal>
+                            </goals>
+                            <configuration>
+                                <rules>
+                                    <requireProperty>
+                                        <property>o-ran-sc.nexus.url</property>
+                                        <message>You must set a o-ran-sc.nexus.url property in your
+                                            ~/.m2/settings.xml. See oparent/settings.xml for an example.
+                                        </message>
+                                    </requireProperty>
+                                </rules>
+                                <fail>true</fail>
+                            </configuration>
+                        </execution>
+                        <execution>
+                            <id>enforce-no-snapshots</id>
+                            <goals>
+                                <goal>enforce</goal>
+                            </goals>
+                            <configuration>
+                                <rules>
+                                    <requireReleaseDeps>
+                                        <failWhenParentIsSnapshot>false</failWhenParentIsSnapshot>
+                                        <onlyWhenRelease>true</onlyWhenRelease>
+                                        <level>WARN</level>
+                                    </requireReleaseDeps>
+                                </rules>
+                            </configuration>
+                        </execution>
+                        <execution>
+                            <id>enforce-maven</id>
+                            <goals>
+                                <goal>enforce</goal>
+                            </goals>
+                            <configuration>
+                                <rules>
+                                    <requireJavaVersion>
+                                        <version>8</version>
+                                    </requireJavaVersion>
+                                    <requireMavenVersion>
+                                        <version>[3.5.0,)</version>
+                                    </requireMavenVersion>
+                                </rules>
+                            </configuration>
+                        </execution>
+                        <execution>
+                            <id>enforce-banned-dependencies</id>
+                            <goals>
+                                <goal>enforce</goal>
+                            </goals>
+                            <configuration>
+                                <rules>
+                                    <bannedDependencies>
+                                        <message>Please always use mockito-core instead of mockito-all (see https://bugs.opendaylight.org/show_bug.cgi?id=7662), and spotbugs:annotations instead of findbugs:annotations</message>
+                                        <excludes>
+                                            <exclude>org.mockito:mockito-all</exclude>
+                                            <!-- <exclude>com.google.code.findbugs:annotations</exclude> -->
+                                        </excludes>
+                                    </bannedDependencies>
+                                </rules>
+                                <fail>true</fail>
+                            </configuration>
+                        </execution>
+                    </executions>
+                </plugin>
+                <!-- https://mvnrepository.com/artifact/org.sonarsource.scanner.maven/sonar-maven-plugin -->
+                <plugin>
+                    <groupId>org.sonarsource.scanner.maven</groupId>
+                    <artifactId>sonar-maven-plugin</artifactId>
+                    <version>${sonar.scanner.version}</version>
+                </plugin>
+                <!-- end of plugins from O-RAN-SC version (parent of oparent) -->
+                <!-- Plugins from O-RAN-SC oparent -->
+                <plugin>
+                    <groupId>org.apache.maven.plugins</groupId>
+                    <artifactId>maven-surefire-plugin</artifactId>
+                    <version>${maven-surefire-plugin.version}</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>${maven-failsafe-plugin.version}</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>
+
+                <!-- End of plugins from O-RAN-SC 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.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>
+                <plugin>
+                    <groupId>com.github.ferstl</groupId>
+                    <artifactId>depgraph-maven-plugin</artifactId>
+                    <version>3.3.0</version>
+                    <configuration>
+                        <graphFormat>text</graphFormat>
+                        <outputFileName>${dependency-list.file}</outputFileName>
+                        <outputDirectory>${project.basedir}</outputDirectory>
+                        <transitiveExcludes>*</transitiveExcludes>
+                        <showVersions>true</showVersions>
+                        <showGroupIds>true</showGroupIds>
+                    </configuration>
+                </plugin>
+                <plugin>
+                    <groupId>de.jacks-it-lab</groupId>
+                    <artifactId>frontend-maven-plugin</artifactId>
+                    <version>1.7.2</version>
+                </plugin>
+                <plugin>
+                    <groupId>com.github.alexcojocaru</groupId>
+                    <artifactId>elasticsearch-maven-plugin</artifactId>
+                    <version>6.16</version>
+                    <configuration>
+                        <version>7.1.1</version>
+                    </configuration>
+                </plugin>
+                <plugin>
+                    <groupId>org.apache.maven.plugins</groupId>
+                    <artifactId>maven-javadoc-plugin</artifactId>
+                    <version>3.2.0</version>
+                    <configuration>
+                        <failOnError>false</failOnError>
+                    </configuration>
+                </plugin>
+                <plugin>
+                    <groupId>com.github.spotbugs</groupId>
+                    <artifactId>spotbugs-maven-plugin</artifactId>
+                    <version>3.1.12.2</version>
+                    <executions>
+                        <execution>
+                            <id>analyze-compile</id>
+                            <phase>compile</phase>
+                            <goals>
+                                <goal>check</goal>
+                            </goals>
+                            <configuration>
+                                <plugins>
+                                    <plugin>
+                                        <groupId>jp.skypencil.findbugs.slf4j</groupId>
+                                        <artifactId>bug-pattern</artifactId>
+                                        <version>1.5.0</version>
+                                    </plugin>
+                                </plugins>
+                                <effort>Max</effort>
+                                <threshold>Low</threshold>
+                                <failOnError>false</failOnError>
+                                <skip>true</skip>
+                                <excludeFilterFile>spotbugs-exclude.xml</excludeFilterFile>
+                                <xmlOutput>true</xmlOutput>
+                                <findbugsXmlOutputDirectory>/home/jack/onap/onap-sdnr/features/sdnr/wt-aluminium-sr0-2/target/wt/common/target-ide/spotbugs</findbugsXmlOutputDirectory>
+                            </configuration>
+                        </execution>
+                    </executions>
+                    <dependencies>
+                        <dependency>
+                            <groupId>com.github.spotbugs</groupId>
+                            <artifactId>spotbugs</artifactId>
+                            <version>3.1.12</version>
+                            <scope>compile</scope>
+                        </dependency>
+                        <dependency>
+                            <groupId>org.opendaylight.odlparent</groupId>
+                            <artifactId>spotbugs</artifactId>
+                            <version>7.0.5</version>
+                            <scope>compile</scope>
+                        </dependency>
+                        <dependency>
+                            <groupId>org.slf4j</groupId>
+                            <artifactId>slf4j-simple</artifactId>
+                            <version>1.8.0-beta2</version>
+                            <scope>compile</scope>
+                        </dependency>
+                    </dependencies>
+                    <configuration>
+                        <plugins>
+                            <plugin>
+                                <groupId>jp.skypencil.findbugs.slf4j</groupId>
+                                <artifactId>bug-pattern</artifactId>
+                                <version>1.5.0</version>
+                            </plugin>
+                        </plugins>
+                        <effort>Max</effort>
+                        <threshold>Low</threshold>
+                        <failOnError>false</failOnError>
+                        <skip>true</skip>
+                        <excludeFilterFile>spotbugs-exclude.xml</excludeFilterFile>
+                        <xmlOutput>true</xmlOutput>
+                        <findbugsXmlOutputDirectory>/home/jack/onap/onap-sdnr/features/sdnr/wt-aluminium-sr0-2/target/wt/common/target-ide/spotbugs</findbugsXmlOutputDirectory>
+                    </configuration>
+                </plugin>
+                <plugin>
+                    <groupId>org.apache.maven.plugins</groupId>
+                    <artifactId>maven-checkstyle-plugin</artifactId>
+                    <version>${checkstyle.plugin.version}</version>
+                    <dependencies>
+                        <dependency>
+                            <groupId>org.onap.oparent</groupId>
+                            <artifactId>checkstyle</artifactId>
+                            <version>1.2.2</version>
+                        </dependency>
+                    </dependencies>
+                    <executions>
+                        <execution>
+                            <phase>process-sources</phase>
+                            <goals>
+                                <goal>check</goal>
+                            </goals>
+                            <configuration>
+                                <failOnViolation>false</failOnViolation>
+                                <skip>true</skip>
+                            </configuration>
+                        </execution>
+                        <execution>
+                            <id>check-license</id>
+                            <goals>
+                                <goal>check</goal>
+                            </goals>
+                            <phase>process-sources</phase>
+                            <configuration>
+                                <configLocation>onap-checkstyle/check-license.xml</configLocation>
+                                <includeResources>false</includeResources>
+                                <includeTestSourceDirectory>true</includeTestSourceDirectory>
+                                <includeTestResources>false</includeTestResources>
+                                <sourceDirectories>
+                                    <directory>${project.build.sourceDirectory}</directory>
+                                </sourceDirectories>
+                                <excludes>
+                                </excludes>
+                                <consoleOutput>true</consoleOutput>
+                                <failOnViolation>false</failOnViolation>
+                            </configuration>
+                        </execution>
+                        <execution>
+                            <id>onap-java-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 -->
+                                <sourceDirectories>
+                                    <directory>${project.build.sourceDirectory}/src/main/java</directory>
+                                </sourceDirectories>
+                                <includeResources>true</includeResources>
+                                <includeTestSourceDirectory>true</includeTestSourceDirectory>
+                                <includeTestResources>true</includeTestResources>
+                                <excludes>
+                                </excludes>
+                                <consoleOutput>true</consoleOutput>
+                                <failOnViolation>false</failOnViolation>
+                            </configuration>
+                        </execution>
+                    </executions>
+                </plugin>
+                <plugin>
+                    <groupId>org.gaul</groupId>
+                    <artifactId>modernizer-maven-plugin</artifactId>
+                    <version>2.1.0</version>
+                    <executions>
+                        <execution>
+                            <id>modernizer</id>
+                            <phase>verify</phase>
+                            <goals>
+                                <goal>modernizer</goal>
+                            </goals>
+                            <configuration>
+                                <failOnViolations>false</failOnViolations>
+                                <skip>true</skip>
+                            </configuration>
+                        </execution>
+                    </executions>
+                    <configuration>
+                        <failOnViolations>false</failOnViolations>
+                        <skip>true</skip>
+                    </configuration>
+                </plugin>
+                <!--
+                <plugin>
+                    <groupId>org.apache.karaf.tooling</groupId>
+                    <artifactId>karaf-maven-plugin</artifactId>
+                    <configuration>
+                        <useVersionRange>true</useVersionRange>
+                        <includeTransitiveVersionRanges>true</includeTransitiveVersionRanges>
+                    </configuration>
+                </plugin>
+            -->
+            </plugins>
+        </pluginManagement>
+        <plugins>
+            <!-- Plugins from oparent version (parent of oparent) -->
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-deploy-plugin</artifactId>
+            </plugin>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-site-plugin</artifactId>
+                <!--
+                <configuration>
+                    <reportPlugins>
+                        <reportPlugin>
+                            <groupId>org.apache.maven.plugins</groupId>
+                            <artifactId>maven-checkstyle-plugin</artifactId>
+                            <version>${checkstyle.plugin.version}</version>
+                        </reportPlugin>
+                    </reportPlugins>
+                </configuration>
+                -->
+            </plugin>
+            <!-- end of plugins from oparent version (parent of oparent) -->
+
+            <!-- Plugins from oparent -->
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <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>
+                <version>${jacoco.version}</version>
+                <executions>
+                    <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>
+                    <execution>
+                        <id>default-prepare-agent</id>
+                        <goals>
+                            <goal>prepare-agent</goal>
+                        </goals>
+                    </execution>
+                    <execution>
+                        <id>default-report</id>
+                        <phase>prepare-package</phase>
+                        <goals>
+                            <goal>report</goal>
+                        </goals>
+                    </execution>
+                    <execution>
+                        <id>default-check</id>
+                        <goals>
+                            <goal>check</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <rule>
+                                    <element>PACKAGE</element>
+                                    <limits>
+                                        <limit>
+                                            <counter>COMPLEXITY</counter>
+                                            <value>COVEREDRATIO</value>
+                                            <minimum>0.0</minimum>
+                                        </limit>
+                                    </limits>
+                                </rule>
+                            </rules>
+                        </configuration>
+                    </execution>
+                </executions>
+            </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 oparent -->
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-javadoc-plugin</artifactId>
+                <executions>
+                    <execution>
+                        <id>attach-javadocs</id>
+                        <goals>
+                            <goal>jar</goal>
+                        </goals>
+                        <configuration>
+                            <additionalparam>-Xdoclint:none</additionalparam>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+            <plugin>
+                <artifactId>maven-enforcer-plugin</artifactId>
+                <version>3.0.0-M2</version>
+                <executions>
+                    <execution>
+                        <id>enforce-property</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <requireProperty>
+                                    <property>o-ran-sc.nexus.url</property>
+                                    <message>You must set a o-ran-sc.nexus.url property in your
+                                        ~/.m2/settings.xml. See oparent/settings.xml for an example.
+                                    </message>
+                                </requireProperty>
+                            </rules>
+                            <fail>true</fail>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>enforce-no-snapshots</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <requireReleaseDeps>
+                                    <failWhenParentIsSnapshot>false</failWhenParentIsSnapshot>
+                                    <onlyWhenRelease>true</onlyWhenRelease>
+                                    <level>WARN</level>
+                                </requireReleaseDeps>
+                            </rules>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>enforce-maven</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <requireJavaVersion>
+                                    <version>1.8.0</version>
+                                </requireJavaVersion>
+                                <requireMavenVersion>
+                                    <version>[3.5.0,)</version>
+                                </requireMavenVersion>
+                            </rules>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>enforce-banned-dependencies</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <bannedDependencies>
+                                    <message>Please always use mockito-core instead of mockito-all (see https://bugs.opendaylight.org/show_bug.cgi?id=7662), and spotbugs:annotations instead of findbugs:annotations</message>
+                                    <excludes>
+                                        <exclude>org.mockito:mockito-all</exclude>
+                                        <!-- <exclude>com.google.code.findbugs:annotations</exclude> -->
+                                    </excludes>
+                                </bannedDependencies>
+                            </rules>
+                            <fail>true</fail>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+            <plugin>
+                <groupId>pl.project13.maven</groupId>
+                <artifactId>git-commit-id-plugin</artifactId>
+                <version>4.0.0</version>
+                <configuration>
+                    <commitIdGenerationMode>full</commitIdGenerationMode>
+                    <includeOnlyProperties>
+                        <includeOnlyProperty>^git.build.(time|version)$</includeOnlyProperty>
+                        <includeOnlyProperty>^git.commit.id.(abbrev|full)$</includeOnlyProperty>
+                    </includeOnlyProperties>
+                </configuration>
+            </plugin>
+        </plugins>
+    </build>
+
+    <reporting>
+        <plugins>
+            <plugin>
+                <artifactId>maven-javadoc-plugin</artifactId>
+                <configuration>
+                    <failOnError>false</failOnError>
+                    <additionalparam>-Xdoclint:none</additionalparam>
+                </configuration>
+            </plugin>
+        </plugins>
+    </reporting>
+
+    <profiles>
+        <!-- Profiles from O-RAN-SC 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>
+                                        <groupId>ant</groupId>
+                                        <artifactId>ant</artifactId>
+                                    </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>
+                        <groupId>org.codehaus.mojo</groupId>
+                        <artifactId>exec-maven-plugin</artifactId>
+                        <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>
+        <profile>
+            <id>sonar-jacoco-aggregate</id>
+            <activation>
+                <property>
+                    <name>onap.jacoco.aggregateFile</name>
+                </property>
+            </activation>
+            <build>
+                <plugins>
+                    <plugin>
+                        <groupId>org.jacoco</groupId>
+                        <artifactId>jacoco-maven-plugin</artifactId>
+                        <executions>
+                            <execution>
+                                <id>merge</id>
+                                <goals>
+                                    <goal>merge</goal>
+                                </goals>
+                                <phase>generate-resources</phase>
+                                <configuration>
+                                    <destFile>${onap.jacoco.aggregateFile}</destFile>
+                                    <fileSets>
+                                        <fileSet>
+                                            <directory>${project.basedir}</directory>
+                                            <includes>
+                                                <include>**/target/code-coverage/*.exec</include>
+                                            </includes>
+                                        </fileSet>
+                                    </fileSets>
+                                </configuration>
+                            </execution>
+                        </executions>
+                    </plugin>
+                </plugins>
+            </build>
+        </profile>
+        <!-- End of profiles from O-RAN-SC oparent -->
+
+       
+    </profiles>
+</project>
diff --git a/parents/odlparent/karaf4-parent/pom.xml b/parents/odlparent/karaf4-parent/pom.xml
new file mode 100644 (file)
index 0000000..56c76cd
--- /dev/null
@@ -0,0 +1,1281 @@
+<?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>
+
+    <!-- PLEASE READ !!!!! This file is generated from ccsdk/parent/setup/src/main/template/pom-template.xml
+        Any updates needed should be made to that template and not to the generated
+        pom.xml file -->
+    <parent>
+        <groupId>org.opendaylight.odlparent</groupId>
+        <artifactId>karaf4-parent</artifactId>
+        <version>14.0.8</version>
+        <relativePath/>
+    </parent>
+
+    <groupId>org.o-ran-sc.oam-controller.parent</groupId>
+    <artifactId>karaf4-parent</artifactId>
+    <version>3.0.2-SNAPSHOT</version>
+    <packaging>pom</packaging>
+
+    <name>O-RAN-SC :: ${project.groupId} :: ${project.artifactId}</name>
+    <description>Root POM to be used in place of odlparent for CCSDK based projects</description>
+    <url>http://wiki.o-ran-sc.org</url>
+    <organization>
+        <name>O-RAN-SC</name>
+    </organization>
+
+    <issueManagement>
+        <system>JIRA</system>
+        <url>https://jira.o-ran-sc.org/</url>
+    </issueManagement>
+    <distributionManagement>
+        <repository>
+            <id>o-ran-sc-releases</id>
+            <url>${o-ran-sc.nexus.release-url}</url>
+        </repository>
+        <snapshotRepository>
+            <id>o-ran-sc-snapshots</id>
+            <url>${o-ran-sc.nexus.snapshot-url}</url>
+        </snapshotRepository>
+    </distributionManagement>
+
+    <properties>
+        <!-- Sonar properties -->
+        <sonar.scanner.version>3.7.0.1746</sonar.scanner.version>
+        <sonar-jacoco-listeners.version>3.2</sonar-jacoco-listeners.version>
+        <sonar.core.codeCoveragePlugin>jacoco</sonar.core.codeCoveragePlugin>
+        <!-- Default Sonar configuration -->
+        <sonar.coverage.jacoco.xmlReportPaths>${project.reporting.outputDirectory}/jacoco-ut/jacoco.xml,${project.reporting.outputDirectory}/jacoco-it/jacoco.xml</sonar.coverage.jacoco.xmlReportPaths>
+        <!-- Note: This list should match jacoco-maven-plugin's exclusion list below -->
+        <sonar.exclusions>**/gen/**,**/generated-sources/**,**/yang-gen**,**/pax/**</sonar.exclusions>
+
+        <!-- Jacoco properties -->
+        <jacoco.version>0.8.12</jacoco.version>
+
+        <!-- properties from oparent -->
+        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
+        <!-- sitePath may be overridden in the inheriting POM if desired -->
+        <sitePath>/content/sites/site/${project.groupId}/${project.artifactId}/${project.version}</sitePath>
+
+        <!-- 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 -->
+
+        <!-- O-RAN-SC repositories -->
+        <o-ran-sc.nexus.url>https://nexus.o-ran-sc.org</o-ran-sc.nexus.url>
+        <o-ran-sc.nexus.host>nexus.o-ran-sc.org</o-ran-sc.nexus.host>
+        <o-ran-sc.nexus.port>443</o-ran-sc.nexus.port>
+        <o-ran-sc.nexus.protocol>https</o-ran-sc.nexus.protocol>
+        <o-ran-sc.nexus.public-url>https://nexus.o-ran-sc.org/content/groups/public</o-ran-sc.nexus.public-url>
+        <o-ran-sc.nexus.staging-url>https://nexus.o-ran-sc.org/content/groups/staging</o-ran-sc.nexus.staging-url>
+        <o-ran-sc.nexus.release-url>https://nexus.o-ran-sc.org/content/repositories/releases</o-ran-sc.nexus.release-url>
+        <o-ran-sc.nexus.snapshot-url>https://nexus.o-ran-sc.org/content/repositories/snapshots</o-ran-sc.nexus.snapshot-url>
+        <o-ran-sc.nexus.staging.server-id>o-ran-sc-staging</o-ran-sc.nexus.staging.server-id>
+        <o-ran-sc.nexus.staging.profile-id>176c31dfe190a</o-ran-sc.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>21</java.version>
+        <maven-surefire-plugin.version>3.0.0-M8</maven-surefire-plugin.version>
+        <maven-failsafe-plugin.version>3.0.0-M8</maven-failsafe-plugin.version>
+        <bundle.plugin.version>5.1.1</bundle.plugin.version>
+        <maven-compiler-plugin.version>3.10.1</maven-compiler-plugin.version>
+        <features.file>features.xml</features.file>
+        <jmxGeneratorPath>src/main/yang-gen-config</jmxGeneratorPath>
+        <salGeneratorPath>src/main/yang-gen-sal</salGeneratorPath>
+        <checkstyle.plugin.version>3.2.1</checkstyle.plugin.version>
+        <checkstyle.skip>true</checkstyle.skip>
+        <odlparent.spotbugs.enforce>false</odlparent.spotbugs.enforce>
+
+        <!-- logging-analytics versions -->
+        <logging-analytics.version>1.6.9</logging-analytics.version>
+
+        <!-- CCSDK component versions -->
+        <ccsdk.cds.version>(1.5.99999, 1.6.99999-SNAPSHOT]</ccsdk.cds.version>
+        <ccsdk.features.version>(1.5.99999, 1.6.99999-SNAPSHOT]</ccsdk.features.version>
+        <ccsdk.distribution.version>(1.5.99999, 1.6.99999-SNAPSHOT]</ccsdk.distribution.version>
+        <ccsdk.sli.version>(1.6.99999, 1.7.99999-SNAPSHOT]</ccsdk.sli.version>
+        <ccsdk.sli.core.version>${ccsdk.sli.version}</ccsdk.sli.core.version>
+        <ccsdk.sli.adaptors.version>${ccsdk.sli.version}</ccsdk.sli.adaptors.version>
+        <ccsdk.sli.northbound.version>${ccsdk.sli.version}</ccsdk.sli.northbound.version>
+        <ccsdk.sli.plugins.version>${ccsdk.sli.version}</ccsdk.sli.plugins.version>
+        <sdnctl.aai.service.version>${ccsdk.sli.version}</sdnctl.aai.service.version>
+        <sdnctl.dblib.version>${ccsdk.sli.version}</sdnctl.dblib.version>
+        <sdnctl.mdsal.resource.version>${ccsdk.sli.version}</sdnctl.mdsal.resource.version>
+        <sdnctl.slipluginutils.version>${ccsdk.sli.version}</sdnctl.slipluginutils.version>
+
+        <!-- Support libraries used by OpenDaylight -->
+        <odl.mdsal.version>14.0.8</odl.mdsal.version>
+        <odl.mdsal.model.version>14.0.8</odl.mdsal.model.version>
+        <odl.mdsal.generator.version>11.0.9</odl.mdsal.generator.version>
+        <odl.netconf.restconf.version>14.0.11</odl.netconf.restconf.version>
+        <odl.netconf.netconf.version>14.0.11</odl.netconf.netconf.version>
+        <odl.netconf.sal.rest.docgen.version>14.0.11</odl.netconf.sal.rest.docgen.version>
+
+        <!-- Used by aaa, vtn -->
+        <commons.codec.version>1.15</commons.codec.version>
+        <!-- Used by netconf, ovsdb -->
+        <commons.lang3.version>3.17.0</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.8.0</commons.net.version>
+        <!-- Used by neutron -->
+        <eclipse.persistence.version>None</eclipse.persistence.version>
+        <!-- Used by aaa -->
+        <felix.dependencymanager.version>4.4.1</felix.dependencymanager.version>
+        <!-- Used by lacp, netconf, ovsdb, sfc, toolkit; see also vtn -->
+        <gson.version>2.12.1</gson.version>
+        <!-- Used by aaa, dlux, persistence, snmp4sdn, sxp -->
+        <guava.version>33.4.0-jre</guava.version>
+        <!-- Used by aaa, alto, netconf, ovsdb, sfc; see also affinity, defense4all,
+            integration/distribution, snmp4sdn, toolkit, ttp -->
+        <jackson.version>2.17.3</jackson.version>
+        <!-- Used by snmp4sdn, yangtools -->
+        <javassist.version>3.30.2-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>2.46</jersey.version>
+        <!-- Used by sfc -->
+        <jersey.client.version>2.46</jersey.client.version>
+
+        <!-- Used everywhere -->
+        <junit.version>4.13.2</junit.version>
+        <!-- Used by coretutorials, sfc, snmp4sdn, sxp; see also affinity, toolkit -->
+        <logback.version>1.2.11</logback.version>
+        <!-- Used by nic, sfc, sxp, tsdr -->
+        <mockito.version>3.12.4</mockito.version>
+        <!-- Used by bgpcep, netconf, ovsdb, sxp; see also opendove, toolkit -->
+        <netty.version>4.1.119.Final</netty.version>
+        <!-- Used by openflowjava, persistence, sfc, snmp4sdn, sxp; see also affinity, toolkit -->
+        <slf4j.version>2.0.12</slf4j.version>
+        <!-- Used in integration/distribution; see also affinity, snmp4sdn, toolkit, tsdr, ttp -->
+        <spring.version>4.3.25.RELEASE</spring.version>
+
+        <!-- Extra support libraries used by SDN-C -->
+        <jvnet.jaxb2.version>0.6.4</jvnet.jaxb2.version>
+        <antlr.version>4.12.0</antlr.version>
+        <antlr4.version>4.12.0</antlr4.version>
+
+
+        <eelf.maven.plugin.version>1.0.0</eelf.maven.plugin.version>
+
+        <!-- Managed dependency versions -->
+        <apache.httpcomponents.core.version>4.4.12</apache.httpcomponents.core.version>
+        <apache.httpcomponents.client.version>4.5.13</apache.httpcomponents.client.version>
+        <derby.version>10.14.2.0</derby.version>
+        <eelf.version>1.0.0</eelf.version>
+        <grpc.version>1.21.1</grpc.version>
+        <log4j.version>2.17.1</log4j.version>
+        <log4j2.version>2.17.1</log4j2.version>
+        <jetty.version>9.4.54.v20240208</jetty.version>
+        <mariadb.connector.version>2.7.5</mariadb.connector.version>
+        <mariadb4j.version>2.4.0</mariadb4j.version>
+        <testng.version>6.14.3</testng.version>
+        <tomcat-jdbc.version>9.0.52</tomcat-jdbc.version>
+        <skip.karaf.featureTest>true</skip.karaf.featureTest>
+        <dependency-list.file>direct-dependencies.txt</dependency-list.file>
+    </properties>
+
+    <dependencyManagement>
+        <dependencies>
+            <!-- Note: If value in BOM conflicts with value inherited from
+            parent pom, inherited value takes precedence.  This seems more like
+            a bug than a feature, but this is how maven 3.6 works -->
+            <dependency>
+                <groupId>org.o-ran-sc.oam-controller.parent</groupId>
+                <artifactId>dependencies-odl-bom</artifactId>
+                <version>3.0.2-SNAPSHOT</version>
+                <type>pom</type>
+                <scope>import</scope>
+            </dependency>
+            <dependency>
+                <groupId>org.o-ran-sc.oam-controller.parent</groupId>
+                <artifactId>dependencies-bom</artifactId>
+                <version>3.0.2-SNAPSHOT</version>
+                <type>pom</type>
+                <scope>import</scope>
+            </dependency>
+            <dependency>
+                <groupId>org.springframework.boot</groupId>
+                <artifactId>spring-boot-dependencies</artifactId>
+                <version>2.3.8.RELEASE</version>
+                <scope>import</scope>
+                <type>pom</type>
+            </dependency>
+            <dependency>
+                <groupId>org.mariadb.jdbc</groupId>
+                <artifactId>mariadb-java-client</artifactId>
+                <version>${mariadb.connector.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.onap.logging-analytics</groupId>
+                <artifactId>logging-slf4j</artifactId>
+                <version>${logging-analytics.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.onap.logging-analytics</groupId>
+                <artifactId>logging-filter-base</artifactId>
+                <version>${logging-analytics.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.antlr</groupId>
+                <artifactId>antlr4-runtime</artifactId>
+                <version>${antlr.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.antlr</groupId>
+                <artifactId>antlr4</artifactId>
+                <version>${antlr.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>junit</groupId>
+                <artifactId>junit</artifactId>
+                <version>${junit.version}</version>
+                <scope>test</scope>
+            </dependency>
+        </dependencies>
+    </dependencyManagement>
+
+    <repositories>
+        <repository>
+            <id>o-ran-sc-public</id>
+            <url>${o-ran-sc.nexus.public-url}</url>
+            <releases>
+                <enabled>true</enabled>
+                <updatePolicy>never</updatePolicy>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+                <updatePolicy>always</updatePolicy>
+            </snapshots>
+        </repository>
+        <repository>
+            <id>o-ran-sc-staging</id>
+            <url>${o-ran-sc.nexus.staging-url}</url>
+            <releases>
+                <enabled>true</enabled>
+                <updatePolicy>never</updatePolicy>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+                <updatePolicy>always</updatePolicy>
+            </snapshots>
+        </repository>
+        <repository>
+            <id>o-ran-sc-release</id>
+            <name>o-ran-sc-repository-releases</name>
+            <url>${o-ran-sc.nexus.release-url}</url>
+            <releases>
+                <enabled>true</enabled>
+                <updatePolicy>never</updatePolicy>
+            </releases>
+            <snapshots>
+                <enabled>false</enabled>
+            </snapshots>
+        </repository>
+        <repository>
+            <id>o-ran-sc-snapshot</id>
+            <name>o-ran-sc-repository-snapshots</name>
+            <url>${o-ran-sc.nexus.snapshot-url}</url>
+            <releases>
+                <enabled>false</enabled>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+            </snapshots>
+        </repository>
+        <repository>
+            <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>
+        </repository>
+        <repository>
+            <id>opendaylight-snapshot</id>
+            <name>opendaylight-snapshot</name>
+            <url>${opendaylight.nexus.snapshot-url}</url>
+            <releases>
+                <enabled>false</enabled>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+            </snapshots>
+        </repository>
+    </repositories>
+
+    <pluginRepositories>
+        <pluginRepository>
+            <id>o-ran-sc-public</id>
+            <url>${o-ran-sc.nexus.public-url}</url>
+            <releases>
+                <enabled>true</enabled>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+            </snapshots>
+        </pluginRepository>
+        <pluginRepository>
+            <id>o-ran-sc-staging</id>
+            <url>${o-ran-sc.nexus.staging-url}</url>
+            <releases>
+                <enabled>true</enabled>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+            </snapshots>
+        </pluginRepository>
+        <pluginRepository>
+            <id>o-ran-sc-snapshot</id>
+            <url>${o-ran-sc.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>
+    </pluginRepositories>
+
+    <build>
+        <pluginManagement>
+            <plugins>
+                <!-- Plugins from O-RAN-SC version (parent of 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/>
+                        <deployAtEnd>true</deployAtEnd>
+                    </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>org.apache.maven.plugins</groupId>
+                    <artifactId>maven-enforcer-plugin</artifactId>
+                    <version>3.0.0-M2</version>
+                    <executions>
+                        <execution>
+                            <id>enforce-property</id>
+                            <goals>
+                                <goal>enforce</goal>
+                            </goals>
+                            <configuration>
+                                <rules>
+                                    <requireProperty>
+                                        <property>o-ran-sc.nexus.url</property>
+                                        <message>You must set a o-ran-sc.nexus.url property in your
+                                            ~/.m2/settings.xml. See oparent/settings.xml for an example.
+                                        </message>
+                                    </requireProperty>
+                                </rules>
+                                <fail>true</fail>
+                            </configuration>
+                        </execution>
+                        <execution>
+                            <id>enforce-no-snapshots</id>
+                            <goals>
+                                <goal>enforce</goal>
+                            </goals>
+                            <configuration>
+                                <rules>
+                                    <requireReleaseDeps>
+                                        <failWhenParentIsSnapshot>false</failWhenParentIsSnapshot>
+                                        <onlyWhenRelease>true</onlyWhenRelease>
+                                        <level>WARN</level>
+                                    </requireReleaseDeps>
+                                </rules>
+                            </configuration>
+                        </execution>
+                        <execution>
+                            <id>enforce-maven</id>
+                            <goals>
+                                <goal>enforce</goal>
+                            </goals>
+                            <configuration>
+                                <rules>
+                                    <requireJavaVersion>
+                                        <version>8</version>
+                                    </requireJavaVersion>
+                                    <requireMavenVersion>
+                                        <version>[3.5.0,)</version>
+                                    </requireMavenVersion>
+                                </rules>
+                            </configuration>
+                        </execution>
+                        <execution>
+                            <id>enforce-banned-dependencies</id>
+                            <goals>
+                                <goal>enforce</goal>
+                            </goals>
+                            <configuration>
+                                <rules>
+                                    <bannedDependencies>
+                                        <message>Please always use mockito-core instead of mockito-all (see https://bugs.opendaylight.org/show_bug.cgi?id=7662), and spotbugs:annotations instead of findbugs:annotations</message>
+                                        <excludes>
+                                            <exclude>org.mockito:mockito-all</exclude>
+                                            <!-- <exclude>com.google.code.findbugs:annotations</exclude> -->
+                                        </excludes>
+                                    </bannedDependencies>
+                                </rules>
+                                <fail>true</fail>
+                            </configuration>
+                        </execution>
+                    </executions>
+                </plugin>
+                <!-- https://mvnrepository.com/artifact/org.sonarsource.scanner.maven/sonar-maven-plugin -->
+                <plugin>
+                    <groupId>org.sonarsource.scanner.maven</groupId>
+                    <artifactId>sonar-maven-plugin</artifactId>
+                    <version>${sonar.scanner.version}</version>
+                </plugin>
+                <!-- end of plugins from O-RAN-SC version (parent of oparent) -->
+                <!-- Plugins from O-RAN-SC oparent -->
+                <plugin>
+                    <groupId>org.apache.maven.plugins</groupId>
+                    <artifactId>maven-surefire-plugin</artifactId>
+                    <version>${maven-surefire-plugin.version}</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>${maven-failsafe-plugin.version}</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>
+
+                <!-- End of plugins from O-RAN-SC 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.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>
+                <plugin>
+                    <groupId>com.github.ferstl</groupId>
+                    <artifactId>depgraph-maven-plugin</artifactId>
+                    <version>3.3.0</version>
+                    <configuration>
+                        <graphFormat>text</graphFormat>
+                        <outputFileName>${dependency-list.file}</outputFileName>
+                        <outputDirectory>${project.basedir}</outputDirectory>
+                        <transitiveExcludes>*</transitiveExcludes>
+                        <showVersions>true</showVersions>
+                        <showGroupIds>true</showGroupIds>
+                    </configuration>
+                </plugin>
+                <plugin>
+                    <groupId>de.jacks-it-lab</groupId>
+                    <artifactId>frontend-maven-plugin</artifactId>
+                    <version>1.7.2</version>
+                </plugin>
+                <plugin>
+                    <groupId>com.github.alexcojocaru</groupId>
+                    <artifactId>elasticsearch-maven-plugin</artifactId>
+                    <version>6.16</version>
+                    <configuration>
+                        <version>7.1.1</version>
+                    </configuration>
+                </plugin>
+                <plugin>
+                    <groupId>org.apache.maven.plugins</groupId>
+                    <artifactId>maven-javadoc-plugin</artifactId>
+                    <version>3.2.0</version>
+                    <configuration>
+                        <failOnError>false</failOnError>
+                    </configuration>
+                </plugin>
+                <plugin>
+                    <groupId>com.github.spotbugs</groupId>
+                    <artifactId>spotbugs-maven-plugin</artifactId>
+                    <version>3.1.12.2</version>
+                    <executions>
+                        <execution>
+                            <id>analyze-compile</id>
+                            <phase>compile</phase>
+                            <goals>
+                                <goal>check</goal>
+                            </goals>
+                            <configuration>
+                                <plugins>
+                                    <plugin>
+                                        <groupId>jp.skypencil.findbugs.slf4j</groupId>
+                                        <artifactId>bug-pattern</artifactId>
+                                        <version>1.5.0</version>
+                                    </plugin>
+                                </plugins>
+                                <effort>Max</effort>
+                                <threshold>Low</threshold>
+                                <failOnError>false</failOnError>
+                                <skip>true</skip>
+                                <excludeFilterFile>spotbugs-exclude.xml</excludeFilterFile>
+                                <xmlOutput>true</xmlOutput>
+                                <findbugsXmlOutputDirectory>/home/jack/onap/onap-sdnr/features/sdnr/wt-aluminium-sr0-2/target/wt/common/target-ide/spotbugs</findbugsXmlOutputDirectory>
+                            </configuration>
+                        </execution>
+                    </executions>
+                    <dependencies>
+                        <dependency>
+                            <groupId>com.github.spotbugs</groupId>
+                            <artifactId>spotbugs</artifactId>
+                            <version>3.1.12</version>
+                            <scope>compile</scope>
+                        </dependency>
+                        <dependency>
+                            <groupId>org.opendaylight.odlparent</groupId>
+                            <artifactId>spotbugs</artifactId>
+                            <version>7.0.5</version>
+                            <scope>compile</scope>
+                        </dependency>
+                        <dependency>
+                            <groupId>org.slf4j</groupId>
+                            <artifactId>slf4j-simple</artifactId>
+                            <version>1.8.0-beta2</version>
+                            <scope>compile</scope>
+                        </dependency>
+                    </dependencies>
+                    <configuration>
+                        <plugins>
+                            <plugin>
+                                <groupId>jp.skypencil.findbugs.slf4j</groupId>
+                                <artifactId>bug-pattern</artifactId>
+                                <version>1.5.0</version>
+                            </plugin>
+                        </plugins>
+                        <effort>Max</effort>
+                        <threshold>Low</threshold>
+                        <failOnError>false</failOnError>
+                        <skip>true</skip>
+                        <excludeFilterFile>spotbugs-exclude.xml</excludeFilterFile>
+                        <xmlOutput>true</xmlOutput>
+                        <findbugsXmlOutputDirectory>/home/jack/onap/onap-sdnr/features/sdnr/wt-aluminium-sr0-2/target/wt/common/target-ide/spotbugs</findbugsXmlOutputDirectory>
+                    </configuration>
+                </plugin>
+                <plugin>
+                    <groupId>org.apache.maven.plugins</groupId>
+                    <artifactId>maven-checkstyle-plugin</artifactId>
+                    <version>${checkstyle.plugin.version}</version>
+                    <dependencies>
+                        <dependency>
+                            <groupId>org.onap.oparent</groupId>
+                            <artifactId>checkstyle</artifactId>
+                            <version>1.2.2</version>
+                        </dependency>
+                    </dependencies>
+                    <executions>
+                        <execution>
+                            <phase>process-sources</phase>
+                            <goals>
+                                <goal>check</goal>
+                            </goals>
+                            <configuration>
+                                <failOnViolation>false</failOnViolation>
+                                <skip>true</skip>
+                            </configuration>
+                        </execution>
+                        <execution>
+                            <id>check-license</id>
+                            <goals>
+                                <goal>check</goal>
+                            </goals>
+                            <phase>process-sources</phase>
+                            <configuration>
+                                <configLocation>onap-checkstyle/check-license.xml</configLocation>
+                                <includeResources>false</includeResources>
+                                <includeTestSourceDirectory>true</includeTestSourceDirectory>
+                                <includeTestResources>false</includeTestResources>
+                                <sourceDirectories>
+                                    <directory>${project.build.sourceDirectory}</directory>
+                                </sourceDirectories>
+                                <excludes>
+                                </excludes>
+                                <consoleOutput>true</consoleOutput>
+                                <failOnViolation>false</failOnViolation>
+                            </configuration>
+                        </execution>
+                        <execution>
+                            <id>onap-java-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 -->
+                                <sourceDirectories>
+                                    <directory>${project.build.sourceDirectory}/src/main/java</directory>
+                                </sourceDirectories>
+                                <includeResources>true</includeResources>
+                                <includeTestSourceDirectory>true</includeTestSourceDirectory>
+                                <includeTestResources>true</includeTestResources>
+                                <excludes>
+                                </excludes>
+                                <consoleOutput>true</consoleOutput>
+                                <failOnViolation>false</failOnViolation>
+                            </configuration>
+                        </execution>
+                    </executions>
+                </plugin>
+                <plugin>
+                    <groupId>org.gaul</groupId>
+                    <artifactId>modernizer-maven-plugin</artifactId>
+                    <version>2.1.0</version>
+                    <executions>
+                        <execution>
+                            <id>modernizer</id>
+                            <phase>verify</phase>
+                            <goals>
+                                <goal>modernizer</goal>
+                            </goals>
+                            <configuration>
+                                <failOnViolations>false</failOnViolations>
+                                <skip>true</skip>
+                            </configuration>
+                        </execution>
+                    </executions>
+                    <configuration>
+                        <failOnViolations>false</failOnViolations>
+                        <skip>true</skip>
+                    </configuration>
+                </plugin>
+                <!--
+                <plugin>
+                    <groupId>org.apache.karaf.tooling</groupId>
+                    <artifactId>karaf-maven-plugin</artifactId>
+                    <configuration>
+                        <useVersionRange>true</useVersionRange>
+                        <includeTransitiveVersionRanges>true</includeTransitiveVersionRanges>
+                    </configuration>
+                </plugin>
+            -->
+            </plugins>
+        </pluginManagement>
+        <plugins>
+            <!-- Plugins from oparent version (parent of oparent) -->
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-deploy-plugin</artifactId>
+            </plugin>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-site-plugin</artifactId>
+                <!--
+                <configuration>
+                    <reportPlugins>
+                        <reportPlugin>
+                            <groupId>org.apache.maven.plugins</groupId>
+                            <artifactId>maven-checkstyle-plugin</artifactId>
+                            <version>${checkstyle.plugin.version}</version>
+                        </reportPlugin>
+                    </reportPlugins>
+                </configuration>
+                -->
+            </plugin>
+            <!-- end of plugins from oparent version (parent of oparent) -->
+
+            <!-- Plugins from oparent -->
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <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>
+                <version>${jacoco.version}</version>
+                <executions>
+                    <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>
+                    <execution>
+                        <id>default-prepare-agent</id>
+                        <goals>
+                            <goal>prepare-agent</goal>
+                        </goals>
+                    </execution>
+                    <execution>
+                        <id>default-report</id>
+                        <phase>prepare-package</phase>
+                        <goals>
+                            <goal>report</goal>
+                        </goals>
+                    </execution>
+                    <execution>
+                        <id>default-check</id>
+                        <goals>
+                            <goal>check</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <rule>
+                                    <element>PACKAGE</element>
+                                    <limits>
+                                        <limit>
+                                            <counter>COMPLEXITY</counter>
+                                            <value>COVEREDRATIO</value>
+                                            <minimum>0.0</minimum>
+                                        </limit>
+                                    </limits>
+                                </rule>
+                            </rules>
+                        </configuration>
+                    </execution>
+                </executions>
+            </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 oparent -->
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-javadoc-plugin</artifactId>
+                <executions>
+                    <execution>
+                        <id>attach-javadocs</id>
+                        <goals>
+                            <goal>jar</goal>
+                        </goals>
+                        <configuration>
+                            <additionalparam>-Xdoclint:none</additionalparam>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+            <plugin>
+                <artifactId>maven-enforcer-plugin</artifactId>
+                <version>3.0.0-M2</version>
+                <executions>
+                    <execution>
+                        <id>enforce-property</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <requireProperty>
+                                    <property>o-ran-sc.nexus.url</property>
+                                    <message>You must set a o-ran-sc.nexus.url property in your
+                                        ~/.m2/settings.xml. See oparent/settings.xml for an example.
+                                    </message>
+                                </requireProperty>
+                            </rules>
+                            <fail>true</fail>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>enforce-no-snapshots</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <requireReleaseDeps>
+                                    <failWhenParentIsSnapshot>false</failWhenParentIsSnapshot>
+                                    <onlyWhenRelease>true</onlyWhenRelease>
+                                    <level>WARN</level>
+                                </requireReleaseDeps>
+                            </rules>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>enforce-maven</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <requireJavaVersion>
+                                    <version>1.8.0</version>
+                                </requireJavaVersion>
+                                <requireMavenVersion>
+                                    <version>[3.5.0,)</version>
+                                </requireMavenVersion>
+                            </rules>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>enforce-banned-dependencies</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <bannedDependencies>
+                                    <message>Please always use mockito-core instead of mockito-all (see https://bugs.opendaylight.org/show_bug.cgi?id=7662), and spotbugs:annotations instead of findbugs:annotations</message>
+                                    <excludes>
+                                        <exclude>org.mockito:mockito-all</exclude>
+                                        <!-- <exclude>com.google.code.findbugs:annotations</exclude> -->
+                                    </excludes>
+                                </bannedDependencies>
+                            </rules>
+                            <fail>true</fail>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+            <plugin>
+                <groupId>pl.project13.maven</groupId>
+                <artifactId>git-commit-id-plugin</artifactId>
+                <version>4.0.0</version>
+                <configuration>
+                    <commitIdGenerationMode>full</commitIdGenerationMode>
+                    <includeOnlyProperties>
+                        <includeOnlyProperty>^git.build.(time|version)$</includeOnlyProperty>
+                        <includeOnlyProperty>^git.commit.id.(abbrev|full)$</includeOnlyProperty>
+                    </includeOnlyProperties>
+                </configuration>
+            </plugin>
+        </plugins>
+    </build>
+
+    <reporting>
+        <plugins>
+            <plugin>
+                <artifactId>maven-javadoc-plugin</artifactId>
+                <configuration>
+                    <failOnError>false</failOnError>
+                    <additionalparam>-Xdoclint:none</additionalparam>
+                </configuration>
+            </plugin>
+        </plugins>
+    </reporting>
+
+    <profiles>
+        <!-- Profiles from O-RAN-SC 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>
+                                        <groupId>ant</groupId>
+                                        <artifactId>ant</artifactId>
+                                    </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>
+                        <groupId>org.codehaus.mojo</groupId>
+                        <artifactId>exec-maven-plugin</artifactId>
+                        <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>
+        <profile>
+            <id>sonar-jacoco-aggregate</id>
+            <activation>
+                <property>
+                    <name>onap.jacoco.aggregateFile</name>
+                </property>
+            </activation>
+            <build>
+                <plugins>
+                    <plugin>
+                        <groupId>org.jacoco</groupId>
+                        <artifactId>jacoco-maven-plugin</artifactId>
+                        <executions>
+                            <execution>
+                                <id>merge</id>
+                                <goals>
+                                    <goal>merge</goal>
+                                </goals>
+                                <phase>generate-resources</phase>
+                                <configuration>
+                                    <destFile>${onap.jacoco.aggregateFile}</destFile>
+                                    <fileSets>
+                                        <fileSet>
+                                            <directory>${project.basedir}</directory>
+                                            <includes>
+                                                <include>**/target/code-coverage/*.exec</include>
+                                            </includes>
+                                        </fileSet>
+                                    </fileSets>
+                                </configuration>
+                            </execution>
+                        </executions>
+                    </plugin>
+                </plugins>
+            </build>
+        </profile>
+        <!-- End of profiles from O-RAN-SC oparent -->
+
+       
+    </profiles>
+</project>
diff --git a/parents/odlparent/mdsal-it-parent/pom.xml b/parents/odlparent/mdsal-it-parent/pom.xml
new file mode 100644 (file)
index 0000000..6eaf742
--- /dev/null
@@ -0,0 +1,1281 @@
+<?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>
+
+    <!-- PLEASE READ !!!!! This file is generated from ccsdk/parent/setup/src/main/template/pom-template.xml
+        Any updates needed should be made to that template and not to the generated
+        pom.xml file -->
+    <parent>
+        <groupId>org.opendaylight.controller</groupId>
+        <artifactId>mdsal-it-parent</artifactId>
+        <version>10.0.9</version>
+        <relativePath/>
+    </parent>
+
+    <groupId>org.o-ran-sc.oam-controller.parent</groupId>
+    <artifactId>mdsal-it-parent</artifactId>
+    <version>3.0.2-SNAPSHOT</version>
+    <packaging>pom</packaging>
+
+    <name>O-RAN-SC :: ${project.groupId} :: ${project.artifactId}</name>
+    <description>Root POM to be used in place of odlparent for CCSDK based projects</description>
+    <url>http://wiki.o-ran-sc.org</url>
+    <organization>
+        <name>O-RAN-SC</name>
+    </organization>
+
+    <issueManagement>
+        <system>JIRA</system>
+        <url>https://jira.o-ran-sc.org/</url>
+    </issueManagement>
+    <distributionManagement>
+        <repository>
+            <id>o-ran-sc-releases</id>
+            <url>${o-ran-sc.nexus.release-url}</url>
+        </repository>
+        <snapshotRepository>
+            <id>o-ran-sc-snapshots</id>
+            <url>${o-ran-sc.nexus.snapshot-url}</url>
+        </snapshotRepository>
+    </distributionManagement>
+
+    <properties>
+        <!-- Sonar properties -->
+        <sonar.scanner.version>3.7.0.1746</sonar.scanner.version>
+        <sonar-jacoco-listeners.version>3.2</sonar-jacoco-listeners.version>
+        <sonar.core.codeCoveragePlugin>jacoco</sonar.core.codeCoveragePlugin>
+        <!-- Default Sonar configuration -->
+        <sonar.coverage.jacoco.xmlReportPaths>${project.reporting.outputDirectory}/jacoco-ut/jacoco.xml,${project.reporting.outputDirectory}/jacoco-it/jacoco.xml</sonar.coverage.jacoco.xmlReportPaths>
+        <!-- Note: This list should match jacoco-maven-plugin's exclusion list below -->
+        <sonar.exclusions>**/gen/**,**/generated-sources/**,**/yang-gen**,**/pax/**</sonar.exclusions>
+
+        <!-- Jacoco properties -->
+        <jacoco.version>0.8.12</jacoco.version>
+
+        <!-- properties from oparent -->
+        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
+        <!-- sitePath may be overridden in the inheriting POM if desired -->
+        <sitePath>/content/sites/site/${project.groupId}/${project.artifactId}/${project.version}</sitePath>
+
+        <!-- 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 -->
+
+        <!-- O-RAN-SC repositories -->
+        <o-ran-sc.nexus.url>https://nexus.o-ran-sc.org</o-ran-sc.nexus.url>
+        <o-ran-sc.nexus.host>nexus.o-ran-sc.org</o-ran-sc.nexus.host>
+        <o-ran-sc.nexus.port>443</o-ran-sc.nexus.port>
+        <o-ran-sc.nexus.protocol>https</o-ran-sc.nexus.protocol>
+        <o-ran-sc.nexus.public-url>https://nexus.o-ran-sc.org/content/groups/public</o-ran-sc.nexus.public-url>
+        <o-ran-sc.nexus.staging-url>https://nexus.o-ran-sc.org/content/groups/staging</o-ran-sc.nexus.staging-url>
+        <o-ran-sc.nexus.release-url>https://nexus.o-ran-sc.org/content/repositories/releases</o-ran-sc.nexus.release-url>
+        <o-ran-sc.nexus.snapshot-url>https://nexus.o-ran-sc.org/content/repositories/snapshots</o-ran-sc.nexus.snapshot-url>
+        <o-ran-sc.nexus.staging.server-id>o-ran-sc-staging</o-ran-sc.nexus.staging.server-id>
+        <o-ran-sc.nexus.staging.profile-id>176c31dfe190a</o-ran-sc.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>21</java.version>
+        <maven-surefire-plugin.version>3.0.0-M8</maven-surefire-plugin.version>
+        <maven-failsafe-plugin.version>3.0.0-M8</maven-failsafe-plugin.version>
+        <bundle.plugin.version>5.1.1</bundle.plugin.version>
+        <maven-compiler-plugin.version>3.10.1</maven-compiler-plugin.version>
+        <features.file>features.xml</features.file>
+        <jmxGeneratorPath>src/main/yang-gen-config</jmxGeneratorPath>
+        <salGeneratorPath>src/main/yang-gen-sal</salGeneratorPath>
+        <checkstyle.plugin.version>3.2.1</checkstyle.plugin.version>
+        <checkstyle.skip>true</checkstyle.skip>
+        <odlparent.spotbugs.enforce>false</odlparent.spotbugs.enforce>
+
+        <!-- logging-analytics versions -->
+        <logging-analytics.version>1.6.9</logging-analytics.version>
+
+        <!-- CCSDK component versions -->
+        <ccsdk.cds.version>(1.5.99999, 1.6.99999-SNAPSHOT]</ccsdk.cds.version>
+        <ccsdk.features.version>(1.5.99999, 1.6.99999-SNAPSHOT]</ccsdk.features.version>
+        <ccsdk.distribution.version>(1.5.99999, 1.6.99999-SNAPSHOT]</ccsdk.distribution.version>
+        <ccsdk.sli.version>(1.6.99999, 1.7.99999-SNAPSHOT]</ccsdk.sli.version>
+        <ccsdk.sli.core.version>${ccsdk.sli.version}</ccsdk.sli.core.version>
+        <ccsdk.sli.adaptors.version>${ccsdk.sli.version}</ccsdk.sli.adaptors.version>
+        <ccsdk.sli.northbound.version>${ccsdk.sli.version}</ccsdk.sli.northbound.version>
+        <ccsdk.sli.plugins.version>${ccsdk.sli.version}</ccsdk.sli.plugins.version>
+        <sdnctl.aai.service.version>${ccsdk.sli.version}</sdnctl.aai.service.version>
+        <sdnctl.dblib.version>${ccsdk.sli.version}</sdnctl.dblib.version>
+        <sdnctl.mdsal.resource.version>${ccsdk.sli.version}</sdnctl.mdsal.resource.version>
+        <sdnctl.slipluginutils.version>${ccsdk.sli.version}</sdnctl.slipluginutils.version>
+
+        <!-- Support libraries used by OpenDaylight -->
+        <odl.mdsal.version>14.0.8</odl.mdsal.version>
+        <odl.mdsal.model.version>14.0.8</odl.mdsal.model.version>
+        <odl.mdsal.generator.version>11.0.9</odl.mdsal.generator.version>
+        <odl.netconf.restconf.version>14.0.11</odl.netconf.restconf.version>
+        <odl.netconf.netconf.version>14.0.11</odl.netconf.netconf.version>
+        <odl.netconf.sal.rest.docgen.version>14.0.11</odl.netconf.sal.rest.docgen.version>
+
+        <!-- Used by aaa, vtn -->
+        <commons.codec.version>1.15</commons.codec.version>
+        <!-- Used by netconf, ovsdb -->
+        <commons.lang3.version>3.17.0</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.8.0</commons.net.version>
+        <!-- Used by neutron -->
+        <eclipse.persistence.version>None</eclipse.persistence.version>
+        <!-- Used by aaa -->
+        <felix.dependencymanager.version>4.4.1</felix.dependencymanager.version>
+        <!-- Used by lacp, netconf, ovsdb, sfc, toolkit; see also vtn -->
+        <gson.version>2.12.1</gson.version>
+        <!-- Used by aaa, dlux, persistence, snmp4sdn, sxp -->
+        <guava.version>33.4.0-jre</guava.version>
+        <!-- Used by aaa, alto, netconf, ovsdb, sfc; see also affinity, defense4all,
+            integration/distribution, snmp4sdn, toolkit, ttp -->
+        <jackson.version>2.17.3</jackson.version>
+        <!-- Used by snmp4sdn, yangtools -->
+        <javassist.version>3.30.2-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>2.46</jersey.version>
+        <!-- Used by sfc -->
+        <jersey.client.version>2.46</jersey.client.version>
+
+        <!-- Used everywhere -->
+        <junit.version>4.13.2</junit.version>
+        <!-- Used by coretutorials, sfc, snmp4sdn, sxp; see also affinity, toolkit -->
+        <logback.version>1.2.11</logback.version>
+        <!-- Used by nic, sfc, sxp, tsdr -->
+        <mockito.version>3.12.4</mockito.version>
+        <!-- Used by bgpcep, netconf, ovsdb, sxp; see also opendove, toolkit -->
+        <netty.version>4.1.119.Final</netty.version>
+        <!-- Used by openflowjava, persistence, sfc, snmp4sdn, sxp; see also affinity, toolkit -->
+        <slf4j.version>2.0.12</slf4j.version>
+        <!-- Used in integration/distribution; see also affinity, snmp4sdn, toolkit, tsdr, ttp -->
+        <spring.version>4.3.25.RELEASE</spring.version>
+
+        <!-- Extra support libraries used by SDN-C -->
+        <jvnet.jaxb2.version>0.6.4</jvnet.jaxb2.version>
+        <antlr.version>4.12.0</antlr.version>
+        <antlr4.version>4.12.0</antlr4.version>
+
+
+        <eelf.maven.plugin.version>1.0.0</eelf.maven.plugin.version>
+
+        <!-- Managed dependency versions -->
+        <apache.httpcomponents.core.version>4.4.12</apache.httpcomponents.core.version>
+        <apache.httpcomponents.client.version>4.5.13</apache.httpcomponents.client.version>
+        <derby.version>10.14.2.0</derby.version>
+        <eelf.version>1.0.0</eelf.version>
+        <grpc.version>1.21.1</grpc.version>
+        <log4j.version>2.17.1</log4j.version>
+        <log4j2.version>2.17.1</log4j2.version>
+        <jetty.version>9.4.54.v20240208</jetty.version>
+        <mariadb.connector.version>2.7.5</mariadb.connector.version>
+        <mariadb4j.version>2.4.0</mariadb4j.version>
+        <testng.version>6.14.3</testng.version>
+        <tomcat-jdbc.version>9.0.52</tomcat-jdbc.version>
+        <skip.karaf.featureTest>true</skip.karaf.featureTest>
+        <dependency-list.file>direct-dependencies.txt</dependency-list.file>
+    </properties>
+
+    <dependencyManagement>
+        <dependencies>
+            <!-- Note: If value in BOM conflicts with value inherited from
+            parent pom, inherited value takes precedence.  This seems more like
+            a bug than a feature, but this is how maven 3.6 works -->
+            <dependency>
+                <groupId>org.o-ran-sc.oam-controller.parent</groupId>
+                <artifactId>dependencies-odl-bom</artifactId>
+                <version>3.0.2-SNAPSHOT</version>
+                <type>pom</type>
+                <scope>import</scope>
+            </dependency>
+            <dependency>
+                <groupId>org.o-ran-sc.oam-controller.parent</groupId>
+                <artifactId>dependencies-bom</artifactId>
+                <version>3.0.2-SNAPSHOT</version>
+                <type>pom</type>
+                <scope>import</scope>
+            </dependency>
+            <dependency>
+                <groupId>org.springframework.boot</groupId>
+                <artifactId>spring-boot-dependencies</artifactId>
+                <version>2.3.8.RELEASE</version>
+                <scope>import</scope>
+                <type>pom</type>
+            </dependency>
+            <dependency>
+                <groupId>org.mariadb.jdbc</groupId>
+                <artifactId>mariadb-java-client</artifactId>
+                <version>${mariadb.connector.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.onap.logging-analytics</groupId>
+                <artifactId>logging-slf4j</artifactId>
+                <version>${logging-analytics.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.onap.logging-analytics</groupId>
+                <artifactId>logging-filter-base</artifactId>
+                <version>${logging-analytics.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.antlr</groupId>
+                <artifactId>antlr4-runtime</artifactId>
+                <version>${antlr.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.antlr</groupId>
+                <artifactId>antlr4</artifactId>
+                <version>${antlr.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>junit</groupId>
+                <artifactId>junit</artifactId>
+                <version>${junit.version}</version>
+                <scope>test</scope>
+            </dependency>
+        </dependencies>
+    </dependencyManagement>
+
+    <repositories>
+        <repository>
+            <id>o-ran-sc-public</id>
+            <url>${o-ran-sc.nexus.public-url}</url>
+            <releases>
+                <enabled>true</enabled>
+                <updatePolicy>never</updatePolicy>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+                <updatePolicy>always</updatePolicy>
+            </snapshots>
+        </repository>
+        <repository>
+            <id>o-ran-sc-staging</id>
+            <url>${o-ran-sc.nexus.staging-url}</url>
+            <releases>
+                <enabled>true</enabled>
+                <updatePolicy>never</updatePolicy>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+                <updatePolicy>always</updatePolicy>
+            </snapshots>
+        </repository>
+        <repository>
+            <id>o-ran-sc-release</id>
+            <name>o-ran-sc-repository-releases</name>
+            <url>${o-ran-sc.nexus.release-url}</url>
+            <releases>
+                <enabled>true</enabled>
+                <updatePolicy>never</updatePolicy>
+            </releases>
+            <snapshots>
+                <enabled>false</enabled>
+            </snapshots>
+        </repository>
+        <repository>
+            <id>o-ran-sc-snapshot</id>
+            <name>o-ran-sc-repository-snapshots</name>
+            <url>${o-ran-sc.nexus.snapshot-url}</url>
+            <releases>
+                <enabled>false</enabled>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+            </snapshots>
+        </repository>
+        <repository>
+            <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>
+        </repository>
+        <repository>
+            <id>opendaylight-snapshot</id>
+            <name>opendaylight-snapshot</name>
+            <url>${opendaylight.nexus.snapshot-url}</url>
+            <releases>
+                <enabled>false</enabled>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+            </snapshots>
+        </repository>
+    </repositories>
+
+    <pluginRepositories>
+        <pluginRepository>
+            <id>o-ran-sc-public</id>
+            <url>${o-ran-sc.nexus.public-url}</url>
+            <releases>
+                <enabled>true</enabled>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+            </snapshots>
+        </pluginRepository>
+        <pluginRepository>
+            <id>o-ran-sc-staging</id>
+            <url>${o-ran-sc.nexus.staging-url}</url>
+            <releases>
+                <enabled>true</enabled>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+            </snapshots>
+        </pluginRepository>
+        <pluginRepository>
+            <id>o-ran-sc-snapshot</id>
+            <url>${o-ran-sc.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>
+    </pluginRepositories>
+
+    <build>
+        <pluginManagement>
+            <plugins>
+                <!-- Plugins from O-RAN-SC version (parent of 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/>
+                        <deployAtEnd>true</deployAtEnd>
+                    </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>org.apache.maven.plugins</groupId>
+                    <artifactId>maven-enforcer-plugin</artifactId>
+                    <version>3.0.0-M2</version>
+                    <executions>
+                        <execution>
+                            <id>enforce-property</id>
+                            <goals>
+                                <goal>enforce</goal>
+                            </goals>
+                            <configuration>
+                                <rules>
+                                    <requireProperty>
+                                        <property>o-ran-sc.nexus.url</property>
+                                        <message>You must set a o-ran-sc.nexus.url property in your
+                                            ~/.m2/settings.xml. See oparent/settings.xml for an example.
+                                        </message>
+                                    </requireProperty>
+                                </rules>
+                                <fail>true</fail>
+                            </configuration>
+                        </execution>
+                        <execution>
+                            <id>enforce-no-snapshots</id>
+                            <goals>
+                                <goal>enforce</goal>
+                            </goals>
+                            <configuration>
+                                <rules>
+                                    <requireReleaseDeps>
+                                        <failWhenParentIsSnapshot>false</failWhenParentIsSnapshot>
+                                        <onlyWhenRelease>true</onlyWhenRelease>
+                                        <level>WARN</level>
+                                    </requireReleaseDeps>
+                                </rules>
+                            </configuration>
+                        </execution>
+                        <execution>
+                            <id>enforce-maven</id>
+                            <goals>
+                                <goal>enforce</goal>
+                            </goals>
+                            <configuration>
+                                <rules>
+                                    <requireJavaVersion>
+                                        <version>8</version>
+                                    </requireJavaVersion>
+                                    <requireMavenVersion>
+                                        <version>[3.5.0,)</version>
+                                    </requireMavenVersion>
+                                </rules>
+                            </configuration>
+                        </execution>
+                        <execution>
+                            <id>enforce-banned-dependencies</id>
+                            <goals>
+                                <goal>enforce</goal>
+                            </goals>
+                            <configuration>
+                                <rules>
+                                    <bannedDependencies>
+                                        <message>Please always use mockito-core instead of mockito-all (see https://bugs.opendaylight.org/show_bug.cgi?id=7662), and spotbugs:annotations instead of findbugs:annotations</message>
+                                        <excludes>
+                                            <exclude>org.mockito:mockito-all</exclude>
+                                            <!-- <exclude>com.google.code.findbugs:annotations</exclude> -->
+                                        </excludes>
+                                    </bannedDependencies>
+                                </rules>
+                                <fail>true</fail>
+                            </configuration>
+                        </execution>
+                    </executions>
+                </plugin>
+                <!-- https://mvnrepository.com/artifact/org.sonarsource.scanner.maven/sonar-maven-plugin -->
+                <plugin>
+                    <groupId>org.sonarsource.scanner.maven</groupId>
+                    <artifactId>sonar-maven-plugin</artifactId>
+                    <version>${sonar.scanner.version}</version>
+                </plugin>
+                <!-- end of plugins from O-RAN-SC version (parent of oparent) -->
+                <!-- Plugins from O-RAN-SC oparent -->
+                <plugin>
+                    <groupId>org.apache.maven.plugins</groupId>
+                    <artifactId>maven-surefire-plugin</artifactId>
+                    <version>${maven-surefire-plugin.version}</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>${maven-failsafe-plugin.version}</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>
+
+                <!-- End of plugins from O-RAN-SC 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.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>
+                <plugin>
+                    <groupId>com.github.ferstl</groupId>
+                    <artifactId>depgraph-maven-plugin</artifactId>
+                    <version>3.3.0</version>
+                    <configuration>
+                        <graphFormat>text</graphFormat>
+                        <outputFileName>${dependency-list.file}</outputFileName>
+                        <outputDirectory>${project.basedir}</outputDirectory>
+                        <transitiveExcludes>*</transitiveExcludes>
+                        <showVersions>true</showVersions>
+                        <showGroupIds>true</showGroupIds>
+                    </configuration>
+                </plugin>
+                <plugin>
+                    <groupId>de.jacks-it-lab</groupId>
+                    <artifactId>frontend-maven-plugin</artifactId>
+                    <version>1.7.2</version>
+                </plugin>
+                <plugin>
+                    <groupId>com.github.alexcojocaru</groupId>
+                    <artifactId>elasticsearch-maven-plugin</artifactId>
+                    <version>6.16</version>
+                    <configuration>
+                        <version>7.1.1</version>
+                    </configuration>
+                </plugin>
+                <plugin>
+                    <groupId>org.apache.maven.plugins</groupId>
+                    <artifactId>maven-javadoc-plugin</artifactId>
+                    <version>3.2.0</version>
+                    <configuration>
+                        <failOnError>false</failOnError>
+                    </configuration>
+                </plugin>
+                <plugin>
+                    <groupId>com.github.spotbugs</groupId>
+                    <artifactId>spotbugs-maven-plugin</artifactId>
+                    <version>3.1.12.2</version>
+                    <executions>
+                        <execution>
+                            <id>analyze-compile</id>
+                            <phase>compile</phase>
+                            <goals>
+                                <goal>check</goal>
+                            </goals>
+                            <configuration>
+                                <plugins>
+                                    <plugin>
+                                        <groupId>jp.skypencil.findbugs.slf4j</groupId>
+                                        <artifactId>bug-pattern</artifactId>
+                                        <version>1.5.0</version>
+                                    </plugin>
+                                </plugins>
+                                <effort>Max</effort>
+                                <threshold>Low</threshold>
+                                <failOnError>false</failOnError>
+                                <skip>true</skip>
+                                <excludeFilterFile>spotbugs-exclude.xml</excludeFilterFile>
+                                <xmlOutput>true</xmlOutput>
+                                <findbugsXmlOutputDirectory>/home/jack/onap/onap-sdnr/features/sdnr/wt-aluminium-sr0-2/target/wt/common/target-ide/spotbugs</findbugsXmlOutputDirectory>
+                            </configuration>
+                        </execution>
+                    </executions>
+                    <dependencies>
+                        <dependency>
+                            <groupId>com.github.spotbugs</groupId>
+                            <artifactId>spotbugs</artifactId>
+                            <version>3.1.12</version>
+                            <scope>compile</scope>
+                        </dependency>
+                        <dependency>
+                            <groupId>org.opendaylight.odlparent</groupId>
+                            <artifactId>spotbugs</artifactId>
+                            <version>7.0.5</version>
+                            <scope>compile</scope>
+                        </dependency>
+                        <dependency>
+                            <groupId>org.slf4j</groupId>
+                            <artifactId>slf4j-simple</artifactId>
+                            <version>1.8.0-beta2</version>
+                            <scope>compile</scope>
+                        </dependency>
+                    </dependencies>
+                    <configuration>
+                        <plugins>
+                            <plugin>
+                                <groupId>jp.skypencil.findbugs.slf4j</groupId>
+                                <artifactId>bug-pattern</artifactId>
+                                <version>1.5.0</version>
+                            </plugin>
+                        </plugins>
+                        <effort>Max</effort>
+                        <threshold>Low</threshold>
+                        <failOnError>false</failOnError>
+                        <skip>true</skip>
+                        <excludeFilterFile>spotbugs-exclude.xml</excludeFilterFile>
+                        <xmlOutput>true</xmlOutput>
+                        <findbugsXmlOutputDirectory>/home/jack/onap/onap-sdnr/features/sdnr/wt-aluminium-sr0-2/target/wt/common/target-ide/spotbugs</findbugsXmlOutputDirectory>
+                    </configuration>
+                </plugin>
+                <plugin>
+                    <groupId>org.apache.maven.plugins</groupId>
+                    <artifactId>maven-checkstyle-plugin</artifactId>
+                    <version>${checkstyle.plugin.version}</version>
+                    <dependencies>
+                        <dependency>
+                            <groupId>org.onap.oparent</groupId>
+                            <artifactId>checkstyle</artifactId>
+                            <version>1.2.2</version>
+                        </dependency>
+                    </dependencies>
+                    <executions>
+                        <execution>
+                            <phase>process-sources</phase>
+                            <goals>
+                                <goal>check</goal>
+                            </goals>
+                            <configuration>
+                                <failOnViolation>false</failOnViolation>
+                                <skip>true</skip>
+                            </configuration>
+                        </execution>
+                        <execution>
+                            <id>check-license</id>
+                            <goals>
+                                <goal>check</goal>
+                            </goals>
+                            <phase>process-sources</phase>
+                            <configuration>
+                                <configLocation>onap-checkstyle/check-license.xml</configLocation>
+                                <includeResources>false</includeResources>
+                                <includeTestSourceDirectory>true</includeTestSourceDirectory>
+                                <includeTestResources>false</includeTestResources>
+                                <sourceDirectories>
+                                    <directory>${project.build.sourceDirectory}</directory>
+                                </sourceDirectories>
+                                <excludes>
+                                </excludes>
+                                <consoleOutput>true</consoleOutput>
+                                <failOnViolation>false</failOnViolation>
+                            </configuration>
+                        </execution>
+                        <execution>
+                            <id>onap-java-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 -->
+                                <sourceDirectories>
+                                    <directory>${project.build.sourceDirectory}/src/main/java</directory>
+                                </sourceDirectories>
+                                <includeResources>true</includeResources>
+                                <includeTestSourceDirectory>true</includeTestSourceDirectory>
+                                <includeTestResources>true</includeTestResources>
+                                <excludes>
+                                </excludes>
+                                <consoleOutput>true</consoleOutput>
+                                <failOnViolation>false</failOnViolation>
+                            </configuration>
+                        </execution>
+                    </executions>
+                </plugin>
+                <plugin>
+                    <groupId>org.gaul</groupId>
+                    <artifactId>modernizer-maven-plugin</artifactId>
+                    <version>2.1.0</version>
+                    <executions>
+                        <execution>
+                            <id>modernizer</id>
+                            <phase>verify</phase>
+                            <goals>
+                                <goal>modernizer</goal>
+                            </goals>
+                            <configuration>
+                                <failOnViolations>false</failOnViolations>
+                                <skip>true</skip>
+                            </configuration>
+                        </execution>
+                    </executions>
+                    <configuration>
+                        <failOnViolations>false</failOnViolations>
+                        <skip>true</skip>
+                    </configuration>
+                </plugin>
+                <!--
+                <plugin>
+                    <groupId>org.apache.karaf.tooling</groupId>
+                    <artifactId>karaf-maven-plugin</artifactId>
+                    <configuration>
+                        <useVersionRange>true</useVersionRange>
+                        <includeTransitiveVersionRanges>true</includeTransitiveVersionRanges>
+                    </configuration>
+                </plugin>
+            -->
+            </plugins>
+        </pluginManagement>
+        <plugins>
+            <!-- Plugins from oparent version (parent of oparent) -->
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-deploy-plugin</artifactId>
+            </plugin>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-site-plugin</artifactId>
+                <!--
+                <configuration>
+                    <reportPlugins>
+                        <reportPlugin>
+                            <groupId>org.apache.maven.plugins</groupId>
+                            <artifactId>maven-checkstyle-plugin</artifactId>
+                            <version>${checkstyle.plugin.version}</version>
+                        </reportPlugin>
+                    </reportPlugins>
+                </configuration>
+                -->
+            </plugin>
+            <!-- end of plugins from oparent version (parent of oparent) -->
+
+            <!-- Plugins from oparent -->
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <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>
+                <version>${jacoco.version}</version>
+                <executions>
+                    <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>
+                    <execution>
+                        <id>default-prepare-agent</id>
+                        <goals>
+                            <goal>prepare-agent</goal>
+                        </goals>
+                    </execution>
+                    <execution>
+                        <id>default-report</id>
+                        <phase>prepare-package</phase>
+                        <goals>
+                            <goal>report</goal>
+                        </goals>
+                    </execution>
+                    <execution>
+                        <id>default-check</id>
+                        <goals>
+                            <goal>check</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <rule>
+                                    <element>PACKAGE</element>
+                                    <limits>
+                                        <limit>
+                                            <counter>COMPLEXITY</counter>
+                                            <value>COVEREDRATIO</value>
+                                            <minimum>0.0</minimum>
+                                        </limit>
+                                    </limits>
+                                </rule>
+                            </rules>
+                        </configuration>
+                    </execution>
+                </executions>
+            </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 oparent -->
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-javadoc-plugin</artifactId>
+                <executions>
+                    <execution>
+                        <id>attach-javadocs</id>
+                        <goals>
+                            <goal>jar</goal>
+                        </goals>
+                        <configuration>
+                            <additionalparam>-Xdoclint:none</additionalparam>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+            <plugin>
+                <artifactId>maven-enforcer-plugin</artifactId>
+                <version>3.0.0-M2</version>
+                <executions>
+                    <execution>
+                        <id>enforce-property</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <requireProperty>
+                                    <property>o-ran-sc.nexus.url</property>
+                                    <message>You must set a o-ran-sc.nexus.url property in your
+                                        ~/.m2/settings.xml. See oparent/settings.xml for an example.
+                                    </message>
+                                </requireProperty>
+                            </rules>
+                            <fail>true</fail>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>enforce-no-snapshots</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <requireReleaseDeps>
+                                    <failWhenParentIsSnapshot>false</failWhenParentIsSnapshot>
+                                    <onlyWhenRelease>true</onlyWhenRelease>
+                                    <level>WARN</level>
+                                </requireReleaseDeps>
+                            </rules>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>enforce-maven</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <requireJavaVersion>
+                                    <version>1.8.0</version>
+                                </requireJavaVersion>
+                                <requireMavenVersion>
+                                    <version>[3.5.0,)</version>
+                                </requireMavenVersion>
+                            </rules>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>enforce-banned-dependencies</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <bannedDependencies>
+                                    <message>Please always use mockito-core instead of mockito-all (see https://bugs.opendaylight.org/show_bug.cgi?id=7662), and spotbugs:annotations instead of findbugs:annotations</message>
+                                    <excludes>
+                                        <exclude>org.mockito:mockito-all</exclude>
+                                        <!-- <exclude>com.google.code.findbugs:annotations</exclude> -->
+                                    </excludes>
+                                </bannedDependencies>
+                            </rules>
+                            <fail>true</fail>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+            <plugin>
+                <groupId>pl.project13.maven</groupId>
+                <artifactId>git-commit-id-plugin</artifactId>
+                <version>4.0.0</version>
+                <configuration>
+                    <commitIdGenerationMode>full</commitIdGenerationMode>
+                    <includeOnlyProperties>
+                        <includeOnlyProperty>^git.build.(time|version)$</includeOnlyProperty>
+                        <includeOnlyProperty>^git.commit.id.(abbrev|full)$</includeOnlyProperty>
+                    </includeOnlyProperties>
+                </configuration>
+            </plugin>
+        </plugins>
+    </build>
+
+    <reporting>
+        <plugins>
+            <plugin>
+                <artifactId>maven-javadoc-plugin</artifactId>
+                <configuration>
+                    <failOnError>false</failOnError>
+                    <additionalparam>-Xdoclint:none</additionalparam>
+                </configuration>
+            </plugin>
+        </plugins>
+    </reporting>
+
+    <profiles>
+        <!-- Profiles from O-RAN-SC 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>
+                                        <groupId>ant</groupId>
+                                        <artifactId>ant</artifactId>
+                                    </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>
+                        <groupId>org.codehaus.mojo</groupId>
+                        <artifactId>exec-maven-plugin</artifactId>
+                        <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>
+        <profile>
+            <id>sonar-jacoco-aggregate</id>
+            <activation>
+                <property>
+                    <name>onap.jacoco.aggregateFile</name>
+                </property>
+            </activation>
+            <build>
+                <plugins>
+                    <plugin>
+                        <groupId>org.jacoco</groupId>
+                        <artifactId>jacoco-maven-plugin</artifactId>
+                        <executions>
+                            <execution>
+                                <id>merge</id>
+                                <goals>
+                                    <goal>merge</goal>
+                                </goals>
+                                <phase>generate-resources</phase>
+                                <configuration>
+                                    <destFile>${onap.jacoco.aggregateFile}</destFile>
+                                    <fileSets>
+                                        <fileSet>
+                                            <directory>${project.basedir}</directory>
+                                            <includes>
+                                                <include>**/target/code-coverage/*.exec</include>
+                                            </includes>
+                                        </fileSet>
+                                    </fileSets>
+                                </configuration>
+                            </execution>
+                        </executions>
+                    </plugin>
+                </plugins>
+            </build>
+        </profile>
+        <!-- End of profiles from O-RAN-SC oparent -->
+
+       
+    </profiles>
+</project>
diff --git a/parents/odlparent/odlparent-lite/pom.xml b/parents/odlparent/odlparent-lite/pom.xml
new file mode 100644 (file)
index 0000000..915bf6a
--- /dev/null
@@ -0,0 +1,1281 @@
+<?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>
+
+    <!-- PLEASE READ !!!!! This file is generated from ccsdk/parent/setup/src/main/template/pom-template.xml
+        Any updates needed should be made to that template and not to the generated
+        pom.xml file -->
+    <parent>
+        <groupId>org.opendaylight.odlparent</groupId>
+        <artifactId>odlparent-lite</artifactId>
+        <version>14.0.8</version>
+        <relativePath/>
+    </parent>
+
+    <groupId>org.o-ran-sc.oam-controller.parent</groupId>
+    <artifactId>odlparent-lite</artifactId>
+    <version>3.0.2-SNAPSHOT</version>
+    <packaging>pom</packaging>
+
+    <name>O-RAN-SC :: ${project.groupId} :: ${project.artifactId}</name>
+    <description>Root POM to be used in place of odlparent for CCSDK based projects</description>
+    <url>http://wiki.o-ran-sc.org</url>
+    <organization>
+        <name>O-RAN-SC</name>
+    </organization>
+
+    <issueManagement>
+        <system>JIRA</system>
+        <url>https://jira.o-ran-sc.org/</url>
+    </issueManagement>
+    <distributionManagement>
+        <repository>
+            <id>o-ran-sc-releases</id>
+            <url>${o-ran-sc.nexus.release-url}</url>
+        </repository>
+        <snapshotRepository>
+            <id>o-ran-sc-snapshots</id>
+            <url>${o-ran-sc.nexus.snapshot-url}</url>
+        </snapshotRepository>
+    </distributionManagement>
+
+    <properties>
+        <!-- Sonar properties -->
+        <sonar.scanner.version>3.7.0.1746</sonar.scanner.version>
+        <sonar-jacoco-listeners.version>3.2</sonar-jacoco-listeners.version>
+        <sonar.core.codeCoveragePlugin>jacoco</sonar.core.codeCoveragePlugin>
+        <!-- Default Sonar configuration -->
+        <sonar.coverage.jacoco.xmlReportPaths>${project.reporting.outputDirectory}/jacoco-ut/jacoco.xml,${project.reporting.outputDirectory}/jacoco-it/jacoco.xml</sonar.coverage.jacoco.xmlReportPaths>
+        <!-- Note: This list should match jacoco-maven-plugin's exclusion list below -->
+        <sonar.exclusions>**/gen/**,**/generated-sources/**,**/yang-gen**,**/pax/**</sonar.exclusions>
+
+        <!-- Jacoco properties -->
+        <jacoco.version>0.8.12</jacoco.version>
+
+        <!-- properties from oparent -->
+        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
+        <!-- sitePath may be overridden in the inheriting POM if desired -->
+        <sitePath>/content/sites/site/${project.groupId}/${project.artifactId}/${project.version}</sitePath>
+
+        <!-- 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 -->
+
+        <!-- O-RAN-SC repositories -->
+        <o-ran-sc.nexus.url>https://nexus.o-ran-sc.org</o-ran-sc.nexus.url>
+        <o-ran-sc.nexus.host>nexus.o-ran-sc.org</o-ran-sc.nexus.host>
+        <o-ran-sc.nexus.port>443</o-ran-sc.nexus.port>
+        <o-ran-sc.nexus.protocol>https</o-ran-sc.nexus.protocol>
+        <o-ran-sc.nexus.public-url>https://nexus.o-ran-sc.org/content/groups/public</o-ran-sc.nexus.public-url>
+        <o-ran-sc.nexus.staging-url>https://nexus.o-ran-sc.org/content/groups/staging</o-ran-sc.nexus.staging-url>
+        <o-ran-sc.nexus.release-url>https://nexus.o-ran-sc.org/content/repositories/releases</o-ran-sc.nexus.release-url>
+        <o-ran-sc.nexus.snapshot-url>https://nexus.o-ran-sc.org/content/repositories/snapshots</o-ran-sc.nexus.snapshot-url>
+        <o-ran-sc.nexus.staging.server-id>o-ran-sc-staging</o-ran-sc.nexus.staging.server-id>
+        <o-ran-sc.nexus.staging.profile-id>176c31dfe190a</o-ran-sc.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>21</java.version>
+        <maven-surefire-plugin.version>3.0.0-M8</maven-surefire-plugin.version>
+        <maven-failsafe-plugin.version>3.0.0-M8</maven-failsafe-plugin.version>
+        <bundle.plugin.version>5.1.1</bundle.plugin.version>
+        <maven-compiler-plugin.version>3.10.1</maven-compiler-plugin.version>
+        <features.file>features.xml</features.file>
+        <jmxGeneratorPath>src/main/yang-gen-config</jmxGeneratorPath>
+        <salGeneratorPath>src/main/yang-gen-sal</salGeneratorPath>
+        <checkstyle.plugin.version>3.2.1</checkstyle.plugin.version>
+        <checkstyle.skip>true</checkstyle.skip>
+        <odlparent.spotbugs.enforce>false</odlparent.spotbugs.enforce>
+
+        <!-- logging-analytics versions -->
+        <logging-analytics.version>1.6.9</logging-analytics.version>
+
+        <!-- CCSDK component versions -->
+        <ccsdk.cds.version>(1.5.99999, 1.6.99999-SNAPSHOT]</ccsdk.cds.version>
+        <ccsdk.features.version>(1.5.99999, 1.6.99999-SNAPSHOT]</ccsdk.features.version>
+        <ccsdk.distribution.version>(1.5.99999, 1.6.99999-SNAPSHOT]</ccsdk.distribution.version>
+        <ccsdk.sli.version>(1.6.99999, 1.7.99999-SNAPSHOT]</ccsdk.sli.version>
+        <ccsdk.sli.core.version>${ccsdk.sli.version}</ccsdk.sli.core.version>
+        <ccsdk.sli.adaptors.version>${ccsdk.sli.version}</ccsdk.sli.adaptors.version>
+        <ccsdk.sli.northbound.version>${ccsdk.sli.version}</ccsdk.sli.northbound.version>
+        <ccsdk.sli.plugins.version>${ccsdk.sli.version}</ccsdk.sli.plugins.version>
+        <sdnctl.aai.service.version>${ccsdk.sli.version}</sdnctl.aai.service.version>
+        <sdnctl.dblib.version>${ccsdk.sli.version}</sdnctl.dblib.version>
+        <sdnctl.mdsal.resource.version>${ccsdk.sli.version}</sdnctl.mdsal.resource.version>
+        <sdnctl.slipluginutils.version>${ccsdk.sli.version}</sdnctl.slipluginutils.version>
+
+        <!-- Support libraries used by OpenDaylight -->
+        <odl.mdsal.version>14.0.8</odl.mdsal.version>
+        <odl.mdsal.model.version>14.0.8</odl.mdsal.model.version>
+        <odl.mdsal.generator.version>11.0.9</odl.mdsal.generator.version>
+        <odl.netconf.restconf.version>14.0.11</odl.netconf.restconf.version>
+        <odl.netconf.netconf.version>14.0.11</odl.netconf.netconf.version>
+        <odl.netconf.sal.rest.docgen.version>14.0.11</odl.netconf.sal.rest.docgen.version>
+
+        <!-- Used by aaa, vtn -->
+        <commons.codec.version>1.15</commons.codec.version>
+        <!-- Used by netconf, ovsdb -->
+        <commons.lang3.version>3.17.0</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.8.0</commons.net.version>
+        <!-- Used by neutron -->
+        <eclipse.persistence.version>None</eclipse.persistence.version>
+        <!-- Used by aaa -->
+        <felix.dependencymanager.version>4.4.1</felix.dependencymanager.version>
+        <!-- Used by lacp, netconf, ovsdb, sfc, toolkit; see also vtn -->
+        <gson.version>2.12.1</gson.version>
+        <!-- Used by aaa, dlux, persistence, snmp4sdn, sxp -->
+        <guava.version>33.4.0-jre</guava.version>
+        <!-- Used by aaa, alto, netconf, ovsdb, sfc; see also affinity, defense4all,
+            integration/distribution, snmp4sdn, toolkit, ttp -->
+        <jackson.version>2.17.3</jackson.version>
+        <!-- Used by snmp4sdn, yangtools -->
+        <javassist.version>3.30.2-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>2.46</jersey.version>
+        <!-- Used by sfc -->
+        <jersey.client.version>2.46</jersey.client.version>
+
+        <!-- Used everywhere -->
+        <junit.version>4.13.2</junit.version>
+        <!-- Used by coretutorials, sfc, snmp4sdn, sxp; see also affinity, toolkit -->
+        <logback.version>1.2.11</logback.version>
+        <!-- Used by nic, sfc, sxp, tsdr -->
+        <mockito.version>3.12.4</mockito.version>
+        <!-- Used by bgpcep, netconf, ovsdb, sxp; see also opendove, toolkit -->
+        <netty.version>4.1.119.Final</netty.version>
+        <!-- Used by openflowjava, persistence, sfc, snmp4sdn, sxp; see also affinity, toolkit -->
+        <slf4j.version>2.0.12</slf4j.version>
+        <!-- Used in integration/distribution; see also affinity, snmp4sdn, toolkit, tsdr, ttp -->
+        <spring.version>4.3.25.RELEASE</spring.version>
+
+        <!-- Extra support libraries used by SDN-C -->
+        <jvnet.jaxb2.version>0.6.4</jvnet.jaxb2.version>
+        <antlr.version>4.12.0</antlr.version>
+        <antlr4.version>4.12.0</antlr4.version>
+
+
+        <eelf.maven.plugin.version>1.0.0</eelf.maven.plugin.version>
+
+        <!-- Managed dependency versions -->
+        <apache.httpcomponents.core.version>4.4.12</apache.httpcomponents.core.version>
+        <apache.httpcomponents.client.version>4.5.13</apache.httpcomponents.client.version>
+        <derby.version>10.14.2.0</derby.version>
+        <eelf.version>1.0.0</eelf.version>
+        <grpc.version>1.21.1</grpc.version>
+        <log4j.version>2.17.1</log4j.version>
+        <log4j2.version>2.17.1</log4j2.version>
+        <jetty.version>9.4.54.v20240208</jetty.version>
+        <mariadb.connector.version>2.7.5</mariadb.connector.version>
+        <mariadb4j.version>2.4.0</mariadb4j.version>
+        <testng.version>6.14.3</testng.version>
+        <tomcat-jdbc.version>9.0.52</tomcat-jdbc.version>
+        <skip.karaf.featureTest>true</skip.karaf.featureTest>
+        <dependency-list.file>direct-dependencies.txt</dependency-list.file>
+    </properties>
+
+    <dependencyManagement>
+        <dependencies>
+            <!-- Note: If value in BOM conflicts with value inherited from
+            parent pom, inherited value takes precedence.  This seems more like
+            a bug than a feature, but this is how maven 3.6 works -->
+            <dependency>
+                <groupId>org.o-ran-sc.oam-controller.parent</groupId>
+                <artifactId>dependencies-odl-bom</artifactId>
+                <version>3.0.2-SNAPSHOT</version>
+                <type>pom</type>
+                <scope>import</scope>
+            </dependency>
+            <dependency>
+                <groupId>org.o-ran-sc.oam-controller.parent</groupId>
+                <artifactId>dependencies-bom</artifactId>
+                <version>3.0.2-SNAPSHOT</version>
+                <type>pom</type>
+                <scope>import</scope>
+            </dependency>
+            <dependency>
+                <groupId>org.springframework.boot</groupId>
+                <artifactId>spring-boot-dependencies</artifactId>
+                <version>2.3.8.RELEASE</version>
+                <scope>import</scope>
+                <type>pom</type>
+            </dependency>
+            <dependency>
+                <groupId>org.mariadb.jdbc</groupId>
+                <artifactId>mariadb-java-client</artifactId>
+                <version>${mariadb.connector.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.onap.logging-analytics</groupId>
+                <artifactId>logging-slf4j</artifactId>
+                <version>${logging-analytics.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.onap.logging-analytics</groupId>
+                <artifactId>logging-filter-base</artifactId>
+                <version>${logging-analytics.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.antlr</groupId>
+                <artifactId>antlr4-runtime</artifactId>
+                <version>${antlr.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.antlr</groupId>
+                <artifactId>antlr4</artifactId>
+                <version>${antlr.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>junit</groupId>
+                <artifactId>junit</artifactId>
+                <version>${junit.version}</version>
+                <scope>test</scope>
+            </dependency>
+        </dependencies>
+    </dependencyManagement>
+
+    <repositories>
+        <repository>
+            <id>o-ran-sc-public</id>
+            <url>${o-ran-sc.nexus.public-url}</url>
+            <releases>
+                <enabled>true</enabled>
+                <updatePolicy>never</updatePolicy>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+                <updatePolicy>always</updatePolicy>
+            </snapshots>
+        </repository>
+        <repository>
+            <id>o-ran-sc-staging</id>
+            <url>${o-ran-sc.nexus.staging-url}</url>
+            <releases>
+                <enabled>true</enabled>
+                <updatePolicy>never</updatePolicy>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+                <updatePolicy>always</updatePolicy>
+            </snapshots>
+        </repository>
+        <repository>
+            <id>o-ran-sc-release</id>
+            <name>o-ran-sc-repository-releases</name>
+            <url>${o-ran-sc.nexus.release-url}</url>
+            <releases>
+                <enabled>true</enabled>
+                <updatePolicy>never</updatePolicy>
+            </releases>
+            <snapshots>
+                <enabled>false</enabled>
+            </snapshots>
+        </repository>
+        <repository>
+            <id>o-ran-sc-snapshot</id>
+            <name>o-ran-sc-repository-snapshots</name>
+            <url>${o-ran-sc.nexus.snapshot-url}</url>
+            <releases>
+                <enabled>false</enabled>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+            </snapshots>
+        </repository>
+        <repository>
+            <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>
+        </repository>
+        <repository>
+            <id>opendaylight-snapshot</id>
+            <name>opendaylight-snapshot</name>
+            <url>${opendaylight.nexus.snapshot-url}</url>
+            <releases>
+                <enabled>false</enabled>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+            </snapshots>
+        </repository>
+    </repositories>
+
+    <pluginRepositories>
+        <pluginRepository>
+            <id>o-ran-sc-public</id>
+            <url>${o-ran-sc.nexus.public-url}</url>
+            <releases>
+                <enabled>true</enabled>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+            </snapshots>
+        </pluginRepository>
+        <pluginRepository>
+            <id>o-ran-sc-staging</id>
+            <url>${o-ran-sc.nexus.staging-url}</url>
+            <releases>
+                <enabled>true</enabled>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+            </snapshots>
+        </pluginRepository>
+        <pluginRepository>
+            <id>o-ran-sc-snapshot</id>
+            <url>${o-ran-sc.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>
+    </pluginRepositories>
+
+    <build>
+        <pluginManagement>
+            <plugins>
+                <!-- Plugins from O-RAN-SC version (parent of 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/>
+                        <deployAtEnd>true</deployAtEnd>
+                    </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>org.apache.maven.plugins</groupId>
+                    <artifactId>maven-enforcer-plugin</artifactId>
+                    <version>3.0.0-M2</version>
+                    <executions>
+                        <execution>
+                            <id>enforce-property</id>
+                            <goals>
+                                <goal>enforce</goal>
+                            </goals>
+                            <configuration>
+                                <rules>
+                                    <requireProperty>
+                                        <property>o-ran-sc.nexus.url</property>
+                                        <message>You must set a o-ran-sc.nexus.url property in your
+                                            ~/.m2/settings.xml. See oparent/settings.xml for an example.
+                                        </message>
+                                    </requireProperty>
+                                </rules>
+                                <fail>true</fail>
+                            </configuration>
+                        </execution>
+                        <execution>
+                            <id>enforce-no-snapshots</id>
+                            <goals>
+                                <goal>enforce</goal>
+                            </goals>
+                            <configuration>
+                                <rules>
+                                    <requireReleaseDeps>
+                                        <failWhenParentIsSnapshot>false</failWhenParentIsSnapshot>
+                                        <onlyWhenRelease>true</onlyWhenRelease>
+                                        <level>WARN</level>
+                                    </requireReleaseDeps>
+                                </rules>
+                            </configuration>
+                        </execution>
+                        <execution>
+                            <id>enforce-maven</id>
+                            <goals>
+                                <goal>enforce</goal>
+                            </goals>
+                            <configuration>
+                                <rules>
+                                    <requireJavaVersion>
+                                        <version>8</version>
+                                    </requireJavaVersion>
+                                    <requireMavenVersion>
+                                        <version>[3.5.0,)</version>
+                                    </requireMavenVersion>
+                                </rules>
+                            </configuration>
+                        </execution>
+                        <execution>
+                            <id>enforce-banned-dependencies</id>
+                            <goals>
+                                <goal>enforce</goal>
+                            </goals>
+                            <configuration>
+                                <rules>
+                                    <bannedDependencies>
+                                        <message>Please always use mockito-core instead of mockito-all (see https://bugs.opendaylight.org/show_bug.cgi?id=7662), and spotbugs:annotations instead of findbugs:annotations</message>
+                                        <excludes>
+                                            <exclude>org.mockito:mockito-all</exclude>
+                                            <!-- <exclude>com.google.code.findbugs:annotations</exclude> -->
+                                        </excludes>
+                                    </bannedDependencies>
+                                </rules>
+                                <fail>true</fail>
+                            </configuration>
+                        </execution>
+                    </executions>
+                </plugin>
+                <!-- https://mvnrepository.com/artifact/org.sonarsource.scanner.maven/sonar-maven-plugin -->
+                <plugin>
+                    <groupId>org.sonarsource.scanner.maven</groupId>
+                    <artifactId>sonar-maven-plugin</artifactId>
+                    <version>${sonar.scanner.version}</version>
+                </plugin>
+                <!-- end of plugins from O-RAN-SC version (parent of oparent) -->
+                <!-- Plugins from O-RAN-SC oparent -->
+                <plugin>
+                    <groupId>org.apache.maven.plugins</groupId>
+                    <artifactId>maven-surefire-plugin</artifactId>
+                    <version>${maven-surefire-plugin.version}</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>${maven-failsafe-plugin.version}</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>
+
+                <!-- End of plugins from O-RAN-SC 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.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>
+                <plugin>
+                    <groupId>com.github.ferstl</groupId>
+                    <artifactId>depgraph-maven-plugin</artifactId>
+                    <version>3.3.0</version>
+                    <configuration>
+                        <graphFormat>text</graphFormat>
+                        <outputFileName>${dependency-list.file}</outputFileName>
+                        <outputDirectory>${project.basedir}</outputDirectory>
+                        <transitiveExcludes>*</transitiveExcludes>
+                        <showVersions>true</showVersions>
+                        <showGroupIds>true</showGroupIds>
+                    </configuration>
+                </plugin>
+                <plugin>
+                    <groupId>de.jacks-it-lab</groupId>
+                    <artifactId>frontend-maven-plugin</artifactId>
+                    <version>1.7.2</version>
+                </plugin>
+                <plugin>
+                    <groupId>com.github.alexcojocaru</groupId>
+                    <artifactId>elasticsearch-maven-plugin</artifactId>
+                    <version>6.16</version>
+                    <configuration>
+                        <version>7.1.1</version>
+                    </configuration>
+                </plugin>
+                <plugin>
+                    <groupId>org.apache.maven.plugins</groupId>
+                    <artifactId>maven-javadoc-plugin</artifactId>
+                    <version>3.2.0</version>
+                    <configuration>
+                        <failOnError>false</failOnError>
+                    </configuration>
+                </plugin>
+                <plugin>
+                    <groupId>com.github.spotbugs</groupId>
+                    <artifactId>spotbugs-maven-plugin</artifactId>
+                    <version>3.1.12.2</version>
+                    <executions>
+                        <execution>
+                            <id>analyze-compile</id>
+                            <phase>compile</phase>
+                            <goals>
+                                <goal>check</goal>
+                            </goals>
+                            <configuration>
+                                <plugins>
+                                    <plugin>
+                                        <groupId>jp.skypencil.findbugs.slf4j</groupId>
+                                        <artifactId>bug-pattern</artifactId>
+                                        <version>1.5.0</version>
+                                    </plugin>
+                                </plugins>
+                                <effort>Max</effort>
+                                <threshold>Low</threshold>
+                                <failOnError>false</failOnError>
+                                <skip>true</skip>
+                                <excludeFilterFile>spotbugs-exclude.xml</excludeFilterFile>
+                                <xmlOutput>true</xmlOutput>
+                                <findbugsXmlOutputDirectory>/home/jack/onap/onap-sdnr/features/sdnr/wt-aluminium-sr0-2/target/wt/common/target-ide/spotbugs</findbugsXmlOutputDirectory>
+                            </configuration>
+                        </execution>
+                    </executions>
+                    <dependencies>
+                        <dependency>
+                            <groupId>com.github.spotbugs</groupId>
+                            <artifactId>spotbugs</artifactId>
+                            <version>3.1.12</version>
+                            <scope>compile</scope>
+                        </dependency>
+                        <dependency>
+                            <groupId>org.opendaylight.odlparent</groupId>
+                            <artifactId>spotbugs</artifactId>
+                            <version>7.0.5</version>
+                            <scope>compile</scope>
+                        </dependency>
+                        <dependency>
+                            <groupId>org.slf4j</groupId>
+                            <artifactId>slf4j-simple</artifactId>
+                            <version>1.8.0-beta2</version>
+                            <scope>compile</scope>
+                        </dependency>
+                    </dependencies>
+                    <configuration>
+                        <plugins>
+                            <plugin>
+                                <groupId>jp.skypencil.findbugs.slf4j</groupId>
+                                <artifactId>bug-pattern</artifactId>
+                                <version>1.5.0</version>
+                            </plugin>
+                        </plugins>
+                        <effort>Max</effort>
+                        <threshold>Low</threshold>
+                        <failOnError>false</failOnError>
+                        <skip>true</skip>
+                        <excludeFilterFile>spotbugs-exclude.xml</excludeFilterFile>
+                        <xmlOutput>true</xmlOutput>
+                        <findbugsXmlOutputDirectory>/home/jack/onap/onap-sdnr/features/sdnr/wt-aluminium-sr0-2/target/wt/common/target-ide/spotbugs</findbugsXmlOutputDirectory>
+                    </configuration>
+                </plugin>
+                <plugin>
+                    <groupId>org.apache.maven.plugins</groupId>
+                    <artifactId>maven-checkstyle-plugin</artifactId>
+                    <version>${checkstyle.plugin.version}</version>
+                    <dependencies>
+                        <dependency>
+                            <groupId>org.onap.oparent</groupId>
+                            <artifactId>checkstyle</artifactId>
+                            <version>1.2.2</version>
+                        </dependency>
+                    </dependencies>
+                    <executions>
+                        <execution>
+                            <phase>process-sources</phase>
+                            <goals>
+                                <goal>check</goal>
+                            </goals>
+                            <configuration>
+                                <failOnViolation>false</failOnViolation>
+                                <skip>true</skip>
+                            </configuration>
+                        </execution>
+                        <execution>
+                            <id>check-license</id>
+                            <goals>
+                                <goal>check</goal>
+                            </goals>
+                            <phase>process-sources</phase>
+                            <configuration>
+                                <configLocation>onap-checkstyle/check-license.xml</configLocation>
+                                <includeResources>false</includeResources>
+                                <includeTestSourceDirectory>true</includeTestSourceDirectory>
+                                <includeTestResources>false</includeTestResources>
+                                <sourceDirectories>
+                                    <directory>${project.build.sourceDirectory}</directory>
+                                </sourceDirectories>
+                                <excludes>
+                                </excludes>
+                                <consoleOutput>true</consoleOutput>
+                                <failOnViolation>false</failOnViolation>
+                            </configuration>
+                        </execution>
+                        <execution>
+                            <id>onap-java-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 -->
+                                <sourceDirectories>
+                                    <directory>${project.build.sourceDirectory}/src/main/java</directory>
+                                </sourceDirectories>
+                                <includeResources>true</includeResources>
+                                <includeTestSourceDirectory>true</includeTestSourceDirectory>
+                                <includeTestResources>true</includeTestResources>
+                                <excludes>
+                                </excludes>
+                                <consoleOutput>true</consoleOutput>
+                                <failOnViolation>false</failOnViolation>
+                            </configuration>
+                        </execution>
+                    </executions>
+                </plugin>
+                <plugin>
+                    <groupId>org.gaul</groupId>
+                    <artifactId>modernizer-maven-plugin</artifactId>
+                    <version>2.1.0</version>
+                    <executions>
+                        <execution>
+                            <id>modernizer</id>
+                            <phase>verify</phase>
+                            <goals>
+                                <goal>modernizer</goal>
+                            </goals>
+                            <configuration>
+                                <failOnViolations>false</failOnViolations>
+                                <skip>true</skip>
+                            </configuration>
+                        </execution>
+                    </executions>
+                    <configuration>
+                        <failOnViolations>false</failOnViolations>
+                        <skip>true</skip>
+                    </configuration>
+                </plugin>
+                <!--
+                <plugin>
+                    <groupId>org.apache.karaf.tooling</groupId>
+                    <artifactId>karaf-maven-plugin</artifactId>
+                    <configuration>
+                        <useVersionRange>true</useVersionRange>
+                        <includeTransitiveVersionRanges>true</includeTransitiveVersionRanges>
+                    </configuration>
+                </plugin>
+            -->
+            </plugins>
+        </pluginManagement>
+        <plugins>
+            <!-- Plugins from oparent version (parent of oparent) -->
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-deploy-plugin</artifactId>
+            </plugin>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-site-plugin</artifactId>
+                <!--
+                <configuration>
+                    <reportPlugins>
+                        <reportPlugin>
+                            <groupId>org.apache.maven.plugins</groupId>
+                            <artifactId>maven-checkstyle-plugin</artifactId>
+                            <version>${checkstyle.plugin.version}</version>
+                        </reportPlugin>
+                    </reportPlugins>
+                </configuration>
+                -->
+            </plugin>
+            <!-- end of plugins from oparent version (parent of oparent) -->
+
+            <!-- Plugins from oparent -->
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <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>
+                <version>${jacoco.version}</version>
+                <executions>
+                    <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>
+                    <execution>
+                        <id>default-prepare-agent</id>
+                        <goals>
+                            <goal>prepare-agent</goal>
+                        </goals>
+                    </execution>
+                    <execution>
+                        <id>default-report</id>
+                        <phase>prepare-package</phase>
+                        <goals>
+                            <goal>report</goal>
+                        </goals>
+                    </execution>
+                    <execution>
+                        <id>default-check</id>
+                        <goals>
+                            <goal>check</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <rule>
+                                    <element>PACKAGE</element>
+                                    <limits>
+                                        <limit>
+                                            <counter>COMPLEXITY</counter>
+                                            <value>COVEREDRATIO</value>
+                                            <minimum>0.0</minimum>
+                                        </limit>
+                                    </limits>
+                                </rule>
+                            </rules>
+                        </configuration>
+                    </execution>
+                </executions>
+            </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 oparent -->
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-javadoc-plugin</artifactId>
+                <executions>
+                    <execution>
+                        <id>attach-javadocs</id>
+                        <goals>
+                            <goal>jar</goal>
+                        </goals>
+                        <configuration>
+                            <additionalparam>-Xdoclint:none</additionalparam>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+            <plugin>
+                <artifactId>maven-enforcer-plugin</artifactId>
+                <version>3.0.0-M2</version>
+                <executions>
+                    <execution>
+                        <id>enforce-property</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <requireProperty>
+                                    <property>o-ran-sc.nexus.url</property>
+                                    <message>You must set a o-ran-sc.nexus.url property in your
+                                        ~/.m2/settings.xml. See oparent/settings.xml for an example.
+                                    </message>
+                                </requireProperty>
+                            </rules>
+                            <fail>true</fail>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>enforce-no-snapshots</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <requireReleaseDeps>
+                                    <failWhenParentIsSnapshot>false</failWhenParentIsSnapshot>
+                                    <onlyWhenRelease>true</onlyWhenRelease>
+                                    <level>WARN</level>
+                                </requireReleaseDeps>
+                            </rules>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>enforce-maven</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <requireJavaVersion>
+                                    <version>1.8.0</version>
+                                </requireJavaVersion>
+                                <requireMavenVersion>
+                                    <version>[3.5.0,)</version>
+                                </requireMavenVersion>
+                            </rules>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>enforce-banned-dependencies</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <bannedDependencies>
+                                    <message>Please always use mockito-core instead of mockito-all (see https://bugs.opendaylight.org/show_bug.cgi?id=7662), and spotbugs:annotations instead of findbugs:annotations</message>
+                                    <excludes>
+                                        <exclude>org.mockito:mockito-all</exclude>
+                                        <!-- <exclude>com.google.code.findbugs:annotations</exclude> -->
+                                    </excludes>
+                                </bannedDependencies>
+                            </rules>
+                            <fail>true</fail>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+            <plugin>
+                <groupId>pl.project13.maven</groupId>
+                <artifactId>git-commit-id-plugin</artifactId>
+                <version>4.0.0</version>
+                <configuration>
+                    <commitIdGenerationMode>full</commitIdGenerationMode>
+                    <includeOnlyProperties>
+                        <includeOnlyProperty>^git.build.(time|version)$</includeOnlyProperty>
+                        <includeOnlyProperty>^git.commit.id.(abbrev|full)$</includeOnlyProperty>
+                    </includeOnlyProperties>
+                </configuration>
+            </plugin>
+        </plugins>
+    </build>
+
+    <reporting>
+        <plugins>
+            <plugin>
+                <artifactId>maven-javadoc-plugin</artifactId>
+                <configuration>
+                    <failOnError>false</failOnError>
+                    <additionalparam>-Xdoclint:none</additionalparam>
+                </configuration>
+            </plugin>
+        </plugins>
+    </reporting>
+
+    <profiles>
+        <!-- Profiles from O-RAN-SC 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>
+                                        <groupId>ant</groupId>
+                                        <artifactId>ant</artifactId>
+                                    </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>
+                        <groupId>org.codehaus.mojo</groupId>
+                        <artifactId>exec-maven-plugin</artifactId>
+                        <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>
+        <profile>
+            <id>sonar-jacoco-aggregate</id>
+            <activation>
+                <property>
+                    <name>onap.jacoco.aggregateFile</name>
+                </property>
+            </activation>
+            <build>
+                <plugins>
+                    <plugin>
+                        <groupId>org.jacoco</groupId>
+                        <artifactId>jacoco-maven-plugin</artifactId>
+                        <executions>
+                            <execution>
+                                <id>merge</id>
+                                <goals>
+                                    <goal>merge</goal>
+                                </goals>
+                                <phase>generate-resources</phase>
+                                <configuration>
+                                    <destFile>${onap.jacoco.aggregateFile}</destFile>
+                                    <fileSets>
+                                        <fileSet>
+                                            <directory>${project.basedir}</directory>
+                                            <includes>
+                                                <include>**/target/code-coverage/*.exec</include>
+                                            </includes>
+                                        </fileSet>
+                                    </fileSets>
+                                </configuration>
+                            </execution>
+                        </executions>
+                    </plugin>
+                </plugins>
+            </build>
+        </profile>
+        <!-- End of profiles from O-RAN-SC oparent -->
+
+       
+    </profiles>
+</project>
diff --git a/parents/odlparent/odlparent/pom.xml b/parents/odlparent/odlparent/pom.xml
new file mode 100644 (file)
index 0000000..9260c36
--- /dev/null
@@ -0,0 +1,1281 @@
+<?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>
+
+    <!-- PLEASE READ !!!!! This file is generated from ccsdk/parent/setup/src/main/template/pom-template.xml
+        Any updates needed should be made to that template and not to the generated
+        pom.xml file -->
+    <parent>
+        <groupId>org.opendaylight.odlparent</groupId>
+        <artifactId>odlparent</artifactId>
+        <version>14.0.8</version>
+        <relativePath/>
+    </parent>
+
+    <groupId>org.o-ran-sc.oam-controller.parent</groupId>
+    <artifactId>odlparent</artifactId>
+    <version>3.0.2-SNAPSHOT</version>
+    <packaging>pom</packaging>
+
+    <name>O-RAN-SC :: ${project.groupId} :: ${project.artifactId}</name>
+    <description>Root POM to be used in place of odlparent for CCSDK based projects</description>
+    <url>http://wiki.o-ran-sc.org</url>
+    <organization>
+        <name>O-RAN-SC</name>
+    </organization>
+
+    <issueManagement>
+        <system>JIRA</system>
+        <url>https://jira.o-ran-sc.org/</url>
+    </issueManagement>
+    <distributionManagement>
+        <repository>
+            <id>o-ran-sc-releases</id>
+            <url>${o-ran-sc.nexus.release-url}</url>
+        </repository>
+        <snapshotRepository>
+            <id>o-ran-sc-snapshots</id>
+            <url>${o-ran-sc.nexus.snapshot-url}</url>
+        </snapshotRepository>
+    </distributionManagement>
+
+    <properties>
+        <!-- Sonar properties -->
+        <sonar.scanner.version>3.7.0.1746</sonar.scanner.version>
+        <sonar-jacoco-listeners.version>3.2</sonar-jacoco-listeners.version>
+        <sonar.core.codeCoveragePlugin>jacoco</sonar.core.codeCoveragePlugin>
+        <!-- Default Sonar configuration -->
+        <sonar.coverage.jacoco.xmlReportPaths>${project.reporting.outputDirectory}/jacoco-ut/jacoco.xml,${project.reporting.outputDirectory}/jacoco-it/jacoco.xml</sonar.coverage.jacoco.xmlReportPaths>
+        <!-- Note: This list should match jacoco-maven-plugin's exclusion list below -->
+        <sonar.exclusions>**/gen/**,**/generated-sources/**,**/yang-gen**,**/pax/**</sonar.exclusions>
+
+        <!-- Jacoco properties -->
+        <jacoco.version>0.8.12</jacoco.version>
+
+        <!-- properties from oparent -->
+        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
+        <!-- sitePath may be overridden in the inheriting POM if desired -->
+        <sitePath>/content/sites/site/${project.groupId}/${project.artifactId}/${project.version}</sitePath>
+
+        <!-- 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 -->
+
+        <!-- O-RAN-SC repositories -->
+        <o-ran-sc.nexus.url>https://nexus.o-ran-sc.org</o-ran-sc.nexus.url>
+        <o-ran-sc.nexus.host>nexus.o-ran-sc.org</o-ran-sc.nexus.host>
+        <o-ran-sc.nexus.port>443</o-ran-sc.nexus.port>
+        <o-ran-sc.nexus.protocol>https</o-ran-sc.nexus.protocol>
+        <o-ran-sc.nexus.public-url>https://nexus.o-ran-sc.org/content/groups/public</o-ran-sc.nexus.public-url>
+        <o-ran-sc.nexus.staging-url>https://nexus.o-ran-sc.org/content/groups/staging</o-ran-sc.nexus.staging-url>
+        <o-ran-sc.nexus.release-url>https://nexus.o-ran-sc.org/content/repositories/releases</o-ran-sc.nexus.release-url>
+        <o-ran-sc.nexus.snapshot-url>https://nexus.o-ran-sc.org/content/repositories/snapshots</o-ran-sc.nexus.snapshot-url>
+        <o-ran-sc.nexus.staging.server-id>o-ran-sc-staging</o-ran-sc.nexus.staging.server-id>
+        <o-ran-sc.nexus.staging.profile-id>176c31dfe190a</o-ran-sc.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>21</java.version>
+        <maven-surefire-plugin.version>3.0.0-M8</maven-surefire-plugin.version>
+        <maven-failsafe-plugin.version>3.0.0-M8</maven-failsafe-plugin.version>
+        <bundle.plugin.version>5.1.1</bundle.plugin.version>
+        <maven-compiler-plugin.version>3.10.1</maven-compiler-plugin.version>
+        <features.file>features.xml</features.file>
+        <jmxGeneratorPath>src/main/yang-gen-config</jmxGeneratorPath>
+        <salGeneratorPath>src/main/yang-gen-sal</salGeneratorPath>
+        <checkstyle.plugin.version>3.2.1</checkstyle.plugin.version>
+        <checkstyle.skip>true</checkstyle.skip>
+        <odlparent.spotbugs.enforce>false</odlparent.spotbugs.enforce>
+
+        <!-- logging-analytics versions -->
+        <logging-analytics.version>1.6.9</logging-analytics.version>
+
+        <!-- CCSDK component versions -->
+        <ccsdk.cds.version>(1.5.99999, 1.6.99999-SNAPSHOT]</ccsdk.cds.version>
+        <ccsdk.features.version>(1.5.99999, 1.6.99999-SNAPSHOT]</ccsdk.features.version>
+        <ccsdk.distribution.version>(1.5.99999, 1.6.99999-SNAPSHOT]</ccsdk.distribution.version>
+        <ccsdk.sli.version>(1.6.99999, 1.7.99999-SNAPSHOT]</ccsdk.sli.version>
+        <ccsdk.sli.core.version>${ccsdk.sli.version}</ccsdk.sli.core.version>
+        <ccsdk.sli.adaptors.version>${ccsdk.sli.version}</ccsdk.sli.adaptors.version>
+        <ccsdk.sli.northbound.version>${ccsdk.sli.version}</ccsdk.sli.northbound.version>
+        <ccsdk.sli.plugins.version>${ccsdk.sli.version}</ccsdk.sli.plugins.version>
+        <sdnctl.aai.service.version>${ccsdk.sli.version}</sdnctl.aai.service.version>
+        <sdnctl.dblib.version>${ccsdk.sli.version}</sdnctl.dblib.version>
+        <sdnctl.mdsal.resource.version>${ccsdk.sli.version}</sdnctl.mdsal.resource.version>
+        <sdnctl.slipluginutils.version>${ccsdk.sli.version}</sdnctl.slipluginutils.version>
+
+        <!-- Support libraries used by OpenDaylight -->
+        <odl.mdsal.version>14.0.8</odl.mdsal.version>
+        <odl.mdsal.model.version>14.0.8</odl.mdsal.model.version>
+        <odl.mdsal.generator.version>11.0.9</odl.mdsal.generator.version>
+        <odl.netconf.restconf.version>14.0.11</odl.netconf.restconf.version>
+        <odl.netconf.netconf.version>14.0.11</odl.netconf.netconf.version>
+        <odl.netconf.sal.rest.docgen.version>14.0.11</odl.netconf.sal.rest.docgen.version>
+
+        <!-- Used by aaa, vtn -->
+        <commons.codec.version>1.15</commons.codec.version>
+        <!-- Used by netconf, ovsdb -->
+        <commons.lang3.version>3.17.0</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.8.0</commons.net.version>
+        <!-- Used by neutron -->
+        <eclipse.persistence.version>None</eclipse.persistence.version>
+        <!-- Used by aaa -->
+        <felix.dependencymanager.version>4.4.1</felix.dependencymanager.version>
+        <!-- Used by lacp, netconf, ovsdb, sfc, toolkit; see also vtn -->
+        <gson.version>2.12.1</gson.version>
+        <!-- Used by aaa, dlux, persistence, snmp4sdn, sxp -->
+        <guava.version>33.4.0-jre</guava.version>
+        <!-- Used by aaa, alto, netconf, ovsdb, sfc; see also affinity, defense4all,
+            integration/distribution, snmp4sdn, toolkit, ttp -->
+        <jackson.version>2.17.3</jackson.version>
+        <!-- Used by snmp4sdn, yangtools -->
+        <javassist.version>3.30.2-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>2.46</jersey.version>
+        <!-- Used by sfc -->
+        <jersey.client.version>2.46</jersey.client.version>
+
+        <!-- Used everywhere -->
+        <junit.version>4.13.2</junit.version>
+        <!-- Used by coretutorials, sfc, snmp4sdn, sxp; see also affinity, toolkit -->
+        <logback.version>1.2.11</logback.version>
+        <!-- Used by nic, sfc, sxp, tsdr -->
+        <mockito.version>3.12.4</mockito.version>
+        <!-- Used by bgpcep, netconf, ovsdb, sxp; see also opendove, toolkit -->
+        <netty.version>4.1.119.Final</netty.version>
+        <!-- Used by openflowjava, persistence, sfc, snmp4sdn, sxp; see also affinity, toolkit -->
+        <slf4j.version>2.0.12</slf4j.version>
+        <!-- Used in integration/distribution; see also affinity, snmp4sdn, toolkit, tsdr, ttp -->
+        <spring.version>4.3.25.RELEASE</spring.version>
+
+        <!-- Extra support libraries used by SDN-C -->
+        <jvnet.jaxb2.version>0.6.4</jvnet.jaxb2.version>
+        <antlr.version>4.12.0</antlr.version>
+        <antlr4.version>4.12.0</antlr4.version>
+
+
+        <eelf.maven.plugin.version>1.0.0</eelf.maven.plugin.version>
+
+        <!-- Managed dependency versions -->
+        <apache.httpcomponents.core.version>4.4.12</apache.httpcomponents.core.version>
+        <apache.httpcomponents.client.version>4.5.13</apache.httpcomponents.client.version>
+        <derby.version>10.14.2.0</derby.version>
+        <eelf.version>1.0.0</eelf.version>
+        <grpc.version>1.21.1</grpc.version>
+        <log4j.version>2.17.1</log4j.version>
+        <log4j2.version>2.17.1</log4j2.version>
+        <jetty.version>9.4.54.v20240208</jetty.version>
+        <mariadb.connector.version>2.7.5</mariadb.connector.version>
+        <mariadb4j.version>2.4.0</mariadb4j.version>
+        <testng.version>6.14.3</testng.version>
+        <tomcat-jdbc.version>9.0.52</tomcat-jdbc.version>
+        <skip.karaf.featureTest>true</skip.karaf.featureTest>
+        <dependency-list.file>direct-dependencies.txt</dependency-list.file>
+    </properties>
+
+    <dependencyManagement>
+        <dependencies>
+            <!-- Note: If value in BOM conflicts with value inherited from
+            parent pom, inherited value takes precedence.  This seems more like
+            a bug than a feature, but this is how maven 3.6 works -->
+            <dependency>
+                <groupId>org.o-ran-sc.oam-controller.parent</groupId>
+                <artifactId>dependencies-odl-bom</artifactId>
+                <version>3.0.2-SNAPSHOT</version>
+                <type>pom</type>
+                <scope>import</scope>
+            </dependency>
+            <dependency>
+                <groupId>org.o-ran-sc.oam-controller.parent</groupId>
+                <artifactId>dependencies-bom</artifactId>
+                <version>3.0.2-SNAPSHOT</version>
+                <type>pom</type>
+                <scope>import</scope>
+            </dependency>
+            <dependency>
+                <groupId>org.springframework.boot</groupId>
+                <artifactId>spring-boot-dependencies</artifactId>
+                <version>2.3.8.RELEASE</version>
+                <scope>import</scope>
+                <type>pom</type>
+            </dependency>
+            <dependency>
+                <groupId>org.mariadb.jdbc</groupId>
+                <artifactId>mariadb-java-client</artifactId>
+                <version>${mariadb.connector.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.onap.logging-analytics</groupId>
+                <artifactId>logging-slf4j</artifactId>
+                <version>${logging-analytics.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.onap.logging-analytics</groupId>
+                <artifactId>logging-filter-base</artifactId>
+                <version>${logging-analytics.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.antlr</groupId>
+                <artifactId>antlr4-runtime</artifactId>
+                <version>${antlr.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.antlr</groupId>
+                <artifactId>antlr4</artifactId>
+                <version>${antlr.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>junit</groupId>
+                <artifactId>junit</artifactId>
+                <version>${junit.version}</version>
+                <scope>test</scope>
+            </dependency>
+        </dependencies>
+    </dependencyManagement>
+
+    <repositories>
+        <repository>
+            <id>o-ran-sc-public</id>
+            <url>${o-ran-sc.nexus.public-url}</url>
+            <releases>
+                <enabled>true</enabled>
+                <updatePolicy>never</updatePolicy>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+                <updatePolicy>always</updatePolicy>
+            </snapshots>
+        </repository>
+        <repository>
+            <id>o-ran-sc-staging</id>
+            <url>${o-ran-sc.nexus.staging-url}</url>
+            <releases>
+                <enabled>true</enabled>
+                <updatePolicy>never</updatePolicy>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+                <updatePolicy>always</updatePolicy>
+            </snapshots>
+        </repository>
+        <repository>
+            <id>o-ran-sc-release</id>
+            <name>o-ran-sc-repository-releases</name>
+            <url>${o-ran-sc.nexus.release-url}</url>
+            <releases>
+                <enabled>true</enabled>
+                <updatePolicy>never</updatePolicy>
+            </releases>
+            <snapshots>
+                <enabled>false</enabled>
+            </snapshots>
+        </repository>
+        <repository>
+            <id>o-ran-sc-snapshot</id>
+            <name>o-ran-sc-repository-snapshots</name>
+            <url>${o-ran-sc.nexus.snapshot-url}</url>
+            <releases>
+                <enabled>false</enabled>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+            </snapshots>
+        </repository>
+        <repository>
+            <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>
+        </repository>
+        <repository>
+            <id>opendaylight-snapshot</id>
+            <name>opendaylight-snapshot</name>
+            <url>${opendaylight.nexus.snapshot-url}</url>
+            <releases>
+                <enabled>false</enabled>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+            </snapshots>
+        </repository>
+    </repositories>
+
+    <pluginRepositories>
+        <pluginRepository>
+            <id>o-ran-sc-public</id>
+            <url>${o-ran-sc.nexus.public-url}</url>
+            <releases>
+                <enabled>true</enabled>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+            </snapshots>
+        </pluginRepository>
+        <pluginRepository>
+            <id>o-ran-sc-staging</id>
+            <url>${o-ran-sc.nexus.staging-url}</url>
+            <releases>
+                <enabled>true</enabled>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+            </snapshots>
+        </pluginRepository>
+        <pluginRepository>
+            <id>o-ran-sc-snapshot</id>
+            <url>${o-ran-sc.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>
+    </pluginRepositories>
+
+    <build>
+        <pluginManagement>
+            <plugins>
+                <!-- Plugins from O-RAN-SC version (parent of 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/>
+                        <deployAtEnd>true</deployAtEnd>
+                    </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>org.apache.maven.plugins</groupId>
+                    <artifactId>maven-enforcer-plugin</artifactId>
+                    <version>3.0.0-M2</version>
+                    <executions>
+                        <execution>
+                            <id>enforce-property</id>
+                            <goals>
+                                <goal>enforce</goal>
+                            </goals>
+                            <configuration>
+                                <rules>
+                                    <requireProperty>
+                                        <property>o-ran-sc.nexus.url</property>
+                                        <message>You must set a o-ran-sc.nexus.url property in your
+                                            ~/.m2/settings.xml. See oparent/settings.xml for an example.
+                                        </message>
+                                    </requireProperty>
+                                </rules>
+                                <fail>true</fail>
+                            </configuration>
+                        </execution>
+                        <execution>
+                            <id>enforce-no-snapshots</id>
+                            <goals>
+                                <goal>enforce</goal>
+                            </goals>
+                            <configuration>
+                                <rules>
+                                    <requireReleaseDeps>
+                                        <failWhenParentIsSnapshot>false</failWhenParentIsSnapshot>
+                                        <onlyWhenRelease>true</onlyWhenRelease>
+                                        <level>WARN</level>
+                                    </requireReleaseDeps>
+                                </rules>
+                            </configuration>
+                        </execution>
+                        <execution>
+                            <id>enforce-maven</id>
+                            <goals>
+                                <goal>enforce</goal>
+                            </goals>
+                            <configuration>
+                                <rules>
+                                    <requireJavaVersion>
+                                        <version>8</version>
+                                    </requireJavaVersion>
+                                    <requireMavenVersion>
+                                        <version>[3.5.0,)</version>
+                                    </requireMavenVersion>
+                                </rules>
+                            </configuration>
+                        </execution>
+                        <execution>
+                            <id>enforce-banned-dependencies</id>
+                            <goals>
+                                <goal>enforce</goal>
+                            </goals>
+                            <configuration>
+                                <rules>
+                                    <bannedDependencies>
+                                        <message>Please always use mockito-core instead of mockito-all (see https://bugs.opendaylight.org/show_bug.cgi?id=7662), and spotbugs:annotations instead of findbugs:annotations</message>
+                                        <excludes>
+                                            <exclude>org.mockito:mockito-all</exclude>
+                                            <!-- <exclude>com.google.code.findbugs:annotations</exclude> -->
+                                        </excludes>
+                                    </bannedDependencies>
+                                </rules>
+                                <fail>true</fail>
+                            </configuration>
+                        </execution>
+                    </executions>
+                </plugin>
+                <!-- https://mvnrepository.com/artifact/org.sonarsource.scanner.maven/sonar-maven-plugin -->
+                <plugin>
+                    <groupId>org.sonarsource.scanner.maven</groupId>
+                    <artifactId>sonar-maven-plugin</artifactId>
+                    <version>${sonar.scanner.version}</version>
+                </plugin>
+                <!-- end of plugins from O-RAN-SC version (parent of oparent) -->
+                <!-- Plugins from O-RAN-SC oparent -->
+                <plugin>
+                    <groupId>org.apache.maven.plugins</groupId>
+                    <artifactId>maven-surefire-plugin</artifactId>
+                    <version>${maven-surefire-plugin.version}</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>${maven-failsafe-plugin.version}</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>
+
+                <!-- End of plugins from O-RAN-SC 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.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>
+                <plugin>
+                    <groupId>com.github.ferstl</groupId>
+                    <artifactId>depgraph-maven-plugin</artifactId>
+                    <version>3.3.0</version>
+                    <configuration>
+                        <graphFormat>text</graphFormat>
+                        <outputFileName>${dependency-list.file}</outputFileName>
+                        <outputDirectory>${project.basedir}</outputDirectory>
+                        <transitiveExcludes>*</transitiveExcludes>
+                        <showVersions>true</showVersions>
+                        <showGroupIds>true</showGroupIds>
+                    </configuration>
+                </plugin>
+                <plugin>
+                    <groupId>de.jacks-it-lab</groupId>
+                    <artifactId>frontend-maven-plugin</artifactId>
+                    <version>1.7.2</version>
+                </plugin>
+                <plugin>
+                    <groupId>com.github.alexcojocaru</groupId>
+                    <artifactId>elasticsearch-maven-plugin</artifactId>
+                    <version>6.16</version>
+                    <configuration>
+                        <version>7.1.1</version>
+                    </configuration>
+                </plugin>
+                <plugin>
+                    <groupId>org.apache.maven.plugins</groupId>
+                    <artifactId>maven-javadoc-plugin</artifactId>
+                    <version>3.2.0</version>
+                    <configuration>
+                        <failOnError>false</failOnError>
+                    </configuration>
+                </plugin>
+                <plugin>
+                    <groupId>com.github.spotbugs</groupId>
+                    <artifactId>spotbugs-maven-plugin</artifactId>
+                    <version>3.1.12.2</version>
+                    <executions>
+                        <execution>
+                            <id>analyze-compile</id>
+                            <phase>compile</phase>
+                            <goals>
+                                <goal>check</goal>
+                            </goals>
+                            <configuration>
+                                <plugins>
+                                    <plugin>
+                                        <groupId>jp.skypencil.findbugs.slf4j</groupId>
+                                        <artifactId>bug-pattern</artifactId>
+                                        <version>1.5.0</version>
+                                    </plugin>
+                                </plugins>
+                                <effort>Max</effort>
+                                <threshold>Low</threshold>
+                                <failOnError>false</failOnError>
+                                <skip>true</skip>
+                                <excludeFilterFile>spotbugs-exclude.xml</excludeFilterFile>
+                                <xmlOutput>true</xmlOutput>
+                                <findbugsXmlOutputDirectory>/home/jack/onap/onap-sdnr/features/sdnr/wt-aluminium-sr0-2/target/wt/common/target-ide/spotbugs</findbugsXmlOutputDirectory>
+                            </configuration>
+                        </execution>
+                    </executions>
+                    <dependencies>
+                        <dependency>
+                            <groupId>com.github.spotbugs</groupId>
+                            <artifactId>spotbugs</artifactId>
+                            <version>3.1.12</version>
+                            <scope>compile</scope>
+                        </dependency>
+                        <dependency>
+                            <groupId>org.opendaylight.odlparent</groupId>
+                            <artifactId>spotbugs</artifactId>
+                            <version>7.0.5</version>
+                            <scope>compile</scope>
+                        </dependency>
+                        <dependency>
+                            <groupId>org.slf4j</groupId>
+                            <artifactId>slf4j-simple</artifactId>
+                            <version>1.8.0-beta2</version>
+                            <scope>compile</scope>
+                        </dependency>
+                    </dependencies>
+                    <configuration>
+                        <plugins>
+                            <plugin>
+                                <groupId>jp.skypencil.findbugs.slf4j</groupId>
+                                <artifactId>bug-pattern</artifactId>
+                                <version>1.5.0</version>
+                            </plugin>
+                        </plugins>
+                        <effort>Max</effort>
+                        <threshold>Low</threshold>
+                        <failOnError>false</failOnError>
+                        <skip>true</skip>
+                        <excludeFilterFile>spotbugs-exclude.xml</excludeFilterFile>
+                        <xmlOutput>true</xmlOutput>
+                        <findbugsXmlOutputDirectory>/home/jack/onap/onap-sdnr/features/sdnr/wt-aluminium-sr0-2/target/wt/common/target-ide/spotbugs</findbugsXmlOutputDirectory>
+                    </configuration>
+                </plugin>
+                <plugin>
+                    <groupId>org.apache.maven.plugins</groupId>
+                    <artifactId>maven-checkstyle-plugin</artifactId>
+                    <version>${checkstyle.plugin.version}</version>
+                    <dependencies>
+                        <dependency>
+                            <groupId>org.onap.oparent</groupId>
+                            <artifactId>checkstyle</artifactId>
+                            <version>1.2.2</version>
+                        </dependency>
+                    </dependencies>
+                    <executions>
+                        <execution>
+                            <phase>process-sources</phase>
+                            <goals>
+                                <goal>check</goal>
+                            </goals>
+                            <configuration>
+                                <failOnViolation>false</failOnViolation>
+                                <skip>true</skip>
+                            </configuration>
+                        </execution>
+                        <execution>
+                            <id>check-license</id>
+                            <goals>
+                                <goal>check</goal>
+                            </goals>
+                            <phase>process-sources</phase>
+                            <configuration>
+                                <configLocation>onap-checkstyle/check-license.xml</configLocation>
+                                <includeResources>false</includeResources>
+                                <includeTestSourceDirectory>true</includeTestSourceDirectory>
+                                <includeTestResources>false</includeTestResources>
+                                <sourceDirectories>
+                                    <directory>${project.build.sourceDirectory}</directory>
+                                </sourceDirectories>
+                                <excludes>
+                                </excludes>
+                                <consoleOutput>true</consoleOutput>
+                                <failOnViolation>false</failOnViolation>
+                            </configuration>
+                        </execution>
+                        <execution>
+                            <id>onap-java-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 -->
+                                <sourceDirectories>
+                                    <directory>${project.build.sourceDirectory}/src/main/java</directory>
+                                </sourceDirectories>
+                                <includeResources>true</includeResources>
+                                <includeTestSourceDirectory>true</includeTestSourceDirectory>
+                                <includeTestResources>true</includeTestResources>
+                                <excludes>
+                                </excludes>
+                                <consoleOutput>true</consoleOutput>
+                                <failOnViolation>false</failOnViolation>
+                            </configuration>
+                        </execution>
+                    </executions>
+                </plugin>
+                <plugin>
+                    <groupId>org.gaul</groupId>
+                    <artifactId>modernizer-maven-plugin</artifactId>
+                    <version>2.1.0</version>
+                    <executions>
+                        <execution>
+                            <id>modernizer</id>
+                            <phase>verify</phase>
+                            <goals>
+                                <goal>modernizer</goal>
+                            </goals>
+                            <configuration>
+                                <failOnViolations>false</failOnViolations>
+                                <skip>true</skip>
+                            </configuration>
+                        </execution>
+                    </executions>
+                    <configuration>
+                        <failOnViolations>false</failOnViolations>
+                        <skip>true</skip>
+                    </configuration>
+                </plugin>
+                <!--
+                <plugin>
+                    <groupId>org.apache.karaf.tooling</groupId>
+                    <artifactId>karaf-maven-plugin</artifactId>
+                    <configuration>
+                        <useVersionRange>true</useVersionRange>
+                        <includeTransitiveVersionRanges>true</includeTransitiveVersionRanges>
+                    </configuration>
+                </plugin>
+            -->
+            </plugins>
+        </pluginManagement>
+        <plugins>
+            <!-- Plugins from oparent version (parent of oparent) -->
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-deploy-plugin</artifactId>
+            </plugin>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-site-plugin</artifactId>
+                <!--
+                <configuration>
+                    <reportPlugins>
+                        <reportPlugin>
+                            <groupId>org.apache.maven.plugins</groupId>
+                            <artifactId>maven-checkstyle-plugin</artifactId>
+                            <version>${checkstyle.plugin.version}</version>
+                        </reportPlugin>
+                    </reportPlugins>
+                </configuration>
+                -->
+            </plugin>
+            <!-- end of plugins from oparent version (parent of oparent) -->
+
+            <!-- Plugins from oparent -->
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <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>
+                <version>${jacoco.version}</version>
+                <executions>
+                    <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>
+                    <execution>
+                        <id>default-prepare-agent</id>
+                        <goals>
+                            <goal>prepare-agent</goal>
+                        </goals>
+                    </execution>
+                    <execution>
+                        <id>default-report</id>
+                        <phase>prepare-package</phase>
+                        <goals>
+                            <goal>report</goal>
+                        </goals>
+                    </execution>
+                    <execution>
+                        <id>default-check</id>
+                        <goals>
+                            <goal>check</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <rule>
+                                    <element>PACKAGE</element>
+                                    <limits>
+                                        <limit>
+                                            <counter>COMPLEXITY</counter>
+                                            <value>COVEREDRATIO</value>
+                                            <minimum>0.0</minimum>
+                                        </limit>
+                                    </limits>
+                                </rule>
+                            </rules>
+                        </configuration>
+                    </execution>
+                </executions>
+            </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 oparent -->
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-javadoc-plugin</artifactId>
+                <executions>
+                    <execution>
+                        <id>attach-javadocs</id>
+                        <goals>
+                            <goal>jar</goal>
+                        </goals>
+                        <configuration>
+                            <additionalparam>-Xdoclint:none</additionalparam>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+            <plugin>
+                <artifactId>maven-enforcer-plugin</artifactId>
+                <version>3.0.0-M2</version>
+                <executions>
+                    <execution>
+                        <id>enforce-property</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <requireProperty>
+                                    <property>o-ran-sc.nexus.url</property>
+                                    <message>You must set a o-ran-sc.nexus.url property in your
+                                        ~/.m2/settings.xml. See oparent/settings.xml for an example.
+                                    </message>
+                                </requireProperty>
+                            </rules>
+                            <fail>true</fail>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>enforce-no-snapshots</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <requireReleaseDeps>
+                                    <failWhenParentIsSnapshot>false</failWhenParentIsSnapshot>
+                                    <onlyWhenRelease>true</onlyWhenRelease>
+                                    <level>WARN</level>
+                                </requireReleaseDeps>
+                            </rules>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>enforce-maven</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <requireJavaVersion>
+                                    <version>1.8.0</version>
+                                </requireJavaVersion>
+                                <requireMavenVersion>
+                                    <version>[3.5.0,)</version>
+                                </requireMavenVersion>
+                            </rules>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>enforce-banned-dependencies</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <bannedDependencies>
+                                    <message>Please always use mockito-core instead of mockito-all (see https://bugs.opendaylight.org/show_bug.cgi?id=7662), and spotbugs:annotations instead of findbugs:annotations</message>
+                                    <excludes>
+                                        <exclude>org.mockito:mockito-all</exclude>
+                                        <!-- <exclude>com.google.code.findbugs:annotations</exclude> -->
+                                    </excludes>
+                                </bannedDependencies>
+                            </rules>
+                            <fail>true</fail>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+            <plugin>
+                <groupId>pl.project13.maven</groupId>
+                <artifactId>git-commit-id-plugin</artifactId>
+                <version>4.0.0</version>
+                <configuration>
+                    <commitIdGenerationMode>full</commitIdGenerationMode>
+                    <includeOnlyProperties>
+                        <includeOnlyProperty>^git.build.(time|version)$</includeOnlyProperty>
+                        <includeOnlyProperty>^git.commit.id.(abbrev|full)$</includeOnlyProperty>
+                    </includeOnlyProperties>
+                </configuration>
+            </plugin>
+        </plugins>
+    </build>
+
+    <reporting>
+        <plugins>
+            <plugin>
+                <artifactId>maven-javadoc-plugin</artifactId>
+                <configuration>
+                    <failOnError>false</failOnError>
+                    <additionalparam>-Xdoclint:none</additionalparam>
+                </configuration>
+            </plugin>
+        </plugins>
+    </reporting>
+
+    <profiles>
+        <!-- Profiles from O-RAN-SC 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>
+                                        <groupId>ant</groupId>
+                                        <artifactId>ant</artifactId>
+                                    </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>
+                        <groupId>org.codehaus.mojo</groupId>
+                        <artifactId>exec-maven-plugin</artifactId>
+                        <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>
+        <profile>
+            <id>sonar-jacoco-aggregate</id>
+            <activation>
+                <property>
+                    <name>onap.jacoco.aggregateFile</name>
+                </property>
+            </activation>
+            <build>
+                <plugins>
+                    <plugin>
+                        <groupId>org.jacoco</groupId>
+                        <artifactId>jacoco-maven-plugin</artifactId>
+                        <executions>
+                            <execution>
+                                <id>merge</id>
+                                <goals>
+                                    <goal>merge</goal>
+                                </goals>
+                                <phase>generate-resources</phase>
+                                <configuration>
+                                    <destFile>${onap.jacoco.aggregateFile}</destFile>
+                                    <fileSets>
+                                        <fileSet>
+                                            <directory>${project.basedir}</directory>
+                                            <includes>
+                                                <include>**/target/code-coverage/*.exec</include>
+                                            </includes>
+                                        </fileSet>
+                                    </fileSets>
+                                </configuration>
+                            </execution>
+                        </executions>
+                    </plugin>
+                </plugins>
+            </build>
+        </profile>
+        <!-- End of profiles from O-RAN-SC oparent -->
+
+       
+    </profiles>
+</project>
diff --git a/parents/odlparent/pom.xml b/parents/odlparent/pom.xml
new file mode 100755 (executable)
index 0000000..fc8880d
--- /dev/null
@@ -0,0 +1,41 @@
+<?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.o-ran-sc.oam-controller.parent</groupId>
+        <artifactId>parent</artifactId>
+        <version>3.0.2-SNAPSHOT</version>
+    </parent>
+
+    <groupId>org.o-ran-sc.oam-controller.parent</groupId>
+    <artifactId>odlparent-aggregator</artifactId>
+    <version>3.0.2-SNAPSHOT</version>
+    <packaging>pom</packaging>
+
+    <name>O-RAN-SC :: ${project.groupId} :: ${project.artifactId}</name>
+
+    <modules>
+        <module>setup</module>
+        <module>binding-parent</module>
+        <module>bundle-parent</module>
+        <module>feature-repo-parent</module>
+        <module>karaf4-parent</module>
+        <module>mdsal-it-parent</module>
+        <module>odlparent</module>
+        <module>odlparent-lite</module>
+        <module>single-feature-parent</module>
+        <module>client-parent</module>
+    </modules>
+
+    <distributionManagement>
+        <repository>
+            <id>o-ran-sc-releases</id>
+            <url>https://nexus.o-ran-sc.org/content/repositories/releases</url>
+        </repository>
+        <snapshotRepository>
+            <id>o-ran-sc-snapshots</id>
+            <url>https://nexus.o-ran-sc.org/content/repositories/snapshots</url>
+        </snapshotRepository>
+    </distributionManagement>
+</project>
diff --git a/parents/odlparent/setup/pom.xml b/parents/odlparent/setup/pom.xml
new file mode 100755 (executable)
index 0000000..4eaa4b4
--- /dev/null
@@ -0,0 +1,317 @@
+<?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.o-ran-sc.oam-controller.parent</groupId>
+        <artifactId>odlparent-aggregator</artifactId>
+        <version>3.0.2-SNAPSHOT</version>
+    </parent>
+
+    <groupId>org.o-ran-sc.oam-controller.parent</groupId>
+    <artifactId>setup</artifactId>
+    <version>3.0.2-SNAPSHOT</version>
+    <packaging>pom</packaging>
+
+    <name>O-RAN-SC :: ${project.groupId} :: ${project.artifactId}</name>
+    <description>Root POM to be used in place of odlparent for CCSDK based projects</description>
+    <url>http://wiki.onap.org</url>
+
+    <build>
+        <plugins>
+            <plugin>
+                <artifactId>maven-resources-plugin</artifactId>
+                <version>2.6</version>
+                <executions>
+                    <execution>
+                        <id>create-binding-parent-pom</id>
+                        <goals>
+                            <goal>copy-resources</goal>
+                        </goals><!-- here the phase you need -->
+                        <phase>validate</phase>
+                        <configuration>
+                            <outputDirectory>../binding-parent</outputDirectory>
+                            <resources>
+                                <resource>
+                                    <directory>src/main/resources</directory>
+                                    <includes>
+                                        <include>pom-template.xml</include>
+                                    </includes>
+                                    <filtering>true</filtering>
+                                </resource>
+                            </resources>
+                            <escapeString>\</escapeString>
+                            <filters>
+                                <filter>${basedir}/src/main/properties/binding-parent.properties</filter>
+                            </filters>
+                            <encoding>UTF-8</encoding>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>create-bundle-parent-pom</id>
+                        <goals>
+                            <goal>copy-resources</goal>
+                        </goals><!-- here the phase you need -->
+                        <phase>validate</phase>
+                        <configuration>
+                            <outputDirectory>../bundle-parent</outputDirectory>
+                            <resources>
+                                <resource>
+                                    <directory>src/main/resources</directory>
+                                    <includes>
+                                        <include>pom-template.xml</include>
+                                    </includes>
+                                    <filtering>true</filtering>
+                                </resource>
+                            </resources>
+                            <escapeString>\</escapeString>
+                            <filters>
+                                <filter>${basedir}/src/main/properties/bundle-parent.properties</filter>
+                            </filters>
+                            <encoding>UTF-8</encoding>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>create-feature-repo-parent-pom</id>
+                        <goals>
+                            <goal>copy-resources</goal>
+                        </goals><!-- here the phase you need -->
+                        <phase>validate</phase>
+                        <configuration>
+                            <outputDirectory>../feature-repo-parent</outputDirectory>
+                            <resources>
+                                <resource>
+                                    <directory>src/main/resources</directory>
+                                    <includes>
+                                        <include>pom-template.xml</include>
+                                    </includes>
+                                    <filtering>true</filtering>
+                                </resource>
+                            </resources>
+                            <escapeString>\</escapeString>
+                            <filters>
+                                <filter>${basedir}/src/main/properties/feature-repo-parent.properties</filter>
+                            </filters>
+                            <encoding>UTF-8</encoding>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>create-karaf4-parent-pom</id>
+                        <goals>
+                            <goal>copy-resources</goal>
+                        </goals><!-- here the phase you need -->
+                        <phase>validate</phase>
+                        <configuration>
+                            <outputDirectory>../karaf4-parent</outputDirectory>
+                            <resources>
+                                <resource>
+                                    <directory>src/main/resources</directory>
+                                    <includes>
+                                        <include>pom-template.xml</include>
+                                    </includes>
+                                    <filtering>true</filtering>
+                                </resource>
+                            </resources>
+                            <escapeString>\</escapeString>
+                            <filters>
+                                <filter>${basedir}/src/main/properties/karaf4-parent.properties</filter>
+                            </filters>
+                            <encoding>UTF-8</encoding>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>create-mdsal-it-parent-pom</id>
+                        <goals>
+                            <goal>copy-resources</goal>
+                        </goals><!-- here the phase you need -->
+                        <phase>validate</phase>
+                        <configuration>
+                            <outputDirectory>../mdsal-it-parent</outputDirectory>
+                            <resources>
+                                <resource>
+                                    <directory>src/main/resources</directory>
+                                    <includes>
+                                        <include>pom-template.xml</include>
+                                    </includes>
+                                    <filtering>true</filtering>
+                                </resource>
+                            </resources>
+                            <escapeString>\</escapeString>
+                            <filters>
+                                <filter>${basedir}/src/main/properties/mdsal-it-parent.properties</filter>
+                            </filters>
+                            <encoding>UTF-8</encoding>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>create-odlparent-pom</id>
+                        <goals>
+                            <goal>copy-resources</goal>
+                        </goals><!-- here the phase you need -->
+                        <phase>validate</phase>
+                        <configuration>
+                            <outputDirectory>../odlparent</outputDirectory>
+                            <resources>
+                                <resource>
+                                    <directory>src/main/resources</directory>
+                                    <includes>
+                                        <include>pom-template.xml</include>
+                                    </includes>
+                                    <filtering>true</filtering>
+                                </resource>
+                            </resources>
+                            <escapeString>\</escapeString>
+                            <filters>
+                                <filter>${basedir}/src/main/properties/odlparent.properties</filter>
+                            </filters>
+                            <encoding>UTF-8</encoding>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>create-odlparent-lite-pom</id>
+                        <goals>
+                            <goal>copy-resources</goal>
+                        </goals><!-- here the phase you need -->
+                        <phase>validate</phase>
+                        <configuration>
+                            <outputDirectory>../odlparent-lite</outputDirectory>
+                            <resources>
+                                <resource>
+                                    <directory>src/main/resources</directory>
+                                    <includes>
+                                        <include>pom-template.xml</include>
+                                    </includes>
+                                    <filtering>true</filtering>
+                                </resource>
+                            </resources>
+                            <escapeString>\</escapeString>
+                            <filters>
+                                <filter>${basedir}/src/main/properties/odlparent-lite.properties</filter>
+                            </filters>
+                            <encoding>UTF-8</encoding>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>create-single-feature-parent-pom</id>
+                        <goals>
+                            <goal>copy-resources</goal>
+                        </goals><!-- here the phase you need -->
+                        <phase>validate</phase>
+                        <configuration>
+                            <outputDirectory>../single-feature-parent</outputDirectory>
+                            <resources>
+                                <resource>
+                                    <directory>src/main/resources</directory>
+                                    <includes>
+                                        <include>pom-template.xml</include>
+                                    </includes>
+                                    <filtering>true</filtering>
+                                </resource>
+                            </resources>
+                            <escapeString>\</escapeString>
+                            <filters>
+                                <filter>${basedir}/src/main/properties/single-feature-parent.properties</filter>
+                            </filters>
+                            <encoding>UTF-8</encoding>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+            <plugin>
+                <groupId>com.coderplus.maven.plugins</groupId>
+                <artifactId>copy-rename-maven-plugin</artifactId>
+                <version>1.0.1</version>
+                <executions>
+                    <execution>
+                        <id>rename-binding-parent-pom</id>
+                        <phase>validate</phase>
+                        <goals>
+                            <goal>rename</goal>
+                        </goals>
+                        <configuration>
+                            <sourceFile>../binding-parent/pom-template.xml</sourceFile>
+                            <destinationFile>../binding-parent/pom.xml</destinationFile>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>rename-bundle-parent-pom</id>
+                        <phase>validate</phase>
+                        <goals>
+                            <goal>rename</goal>
+                        </goals>
+                        <configuration>
+                            <sourceFile>../bundle-parent/pom-template.xml</sourceFile>
+                            <destinationFile>../bundle-parent/pom.xml</destinationFile>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>rename-feature-repo-parent-pom</id>
+                        <phase>validate</phase>
+                        <goals>
+                            <goal>rename</goal>
+                        </goals>
+                        <configuration>
+                            <sourceFile>../feature-repo-parent/pom-template.xml</sourceFile>
+                            <destinationFile>../feature-repo-parent/pom.xml</destinationFile>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>rename-karaf4-parent-pom</id>
+                        <phase>validate</phase>
+                        <goals>
+                            <goal>rename</goal>
+                        </goals>
+                        <configuration>
+                            <sourceFile>../karaf4-parent/pom-template.xml</sourceFile>
+                            <destinationFile>../karaf4-parent/pom.xml</destinationFile>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>rename-mdsal-it-parent-pom</id>
+                        <phase>validate</phase>
+                        <goals>
+                            <goal>rename</goal>
+                        </goals>
+                        <configuration>
+                            <sourceFile>../mdsal-it-parent/pom-template.xml</sourceFile>
+                            <destinationFile>../mdsal-it-parent/pom.xml</destinationFile>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>rename-odlparent-pom</id>
+                        <phase>validate</phase>
+                        <goals>
+                            <goal>rename</goal>
+                        </goals>
+                        <configuration>
+                            <sourceFile>../odlparent/pom-template.xml</sourceFile>
+                            <destinationFile>../odlparent/pom.xml</destinationFile>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>rename-odlparent-lite-pom</id>
+                        <phase>validate</phase>
+                        <goals>
+                            <goal>rename</goal>
+                        </goals>
+                        <configuration>
+                            <sourceFile>../odlparent-lite/pom-template.xml</sourceFile>
+                            <destinationFile>../odlparent-lite/pom.xml</destinationFile>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>rename-single-feature-parent-pom</id>
+                        <phase>validate</phase>
+                        <goals>
+                            <goal>rename</goal>
+                        </goals>
+                        <configuration>
+                            <sourceFile>../single-feature-parent/pom-template.xml</sourceFile>
+                            <destinationFile>../single-feature-parent/pom.xml</destinationFile>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+        </plugins>
+    </build>
+</project>
diff --git a/parents/odlparent/setup/src/main/properties/binding-parent.properties b/parents/odlparent/setup/src/main/properties/binding-parent.properties
new file mode 100644 (file)
index 0000000..748e3fe
--- /dev/null
@@ -0,0 +1,3 @@
+odlparent.artifactId=binding-parent
+odlparent.groupId=org.opendaylight.mdsal
+odlparent.version=14.0.11
diff --git a/parents/odlparent/setup/src/main/properties/bundle-parent.properties b/parents/odlparent/setup/src/main/properties/bundle-parent.properties
new file mode 100644 (file)
index 0000000..2b177e5
--- /dev/null
@@ -0,0 +1,3 @@
+odlparent.artifactId=bundle-parent
+odlparent.groupId=org.opendaylight.odlparent
+odlparent.version=14.0.8
diff --git a/parents/odlparent/setup/src/main/properties/feature-repo-parent.properties b/parents/odlparent/setup/src/main/properties/feature-repo-parent.properties
new file mode 100644 (file)
index 0000000..5aed6be
--- /dev/null
@@ -0,0 +1,3 @@
+odlparent.artifactId=feature-repo-parent
+odlparent.groupId=org.opendaylight.odlparent
+odlparent.version=14.0.8
diff --git a/parents/odlparent/setup/src/main/properties/karaf4-parent.properties b/parents/odlparent/setup/src/main/properties/karaf4-parent.properties
new file mode 100644 (file)
index 0000000..4bb4904
--- /dev/null
@@ -0,0 +1,3 @@
+odlparent.artifactId=karaf4-parent
+odlparent.groupId=org.opendaylight.odlparent
+odlparent.version=14.0.8
diff --git a/parents/odlparent/setup/src/main/properties/mdsal-it-parent.properties b/parents/odlparent/setup/src/main/properties/mdsal-it-parent.properties
new file mode 100644 (file)
index 0000000..09c9098
--- /dev/null
@@ -0,0 +1,3 @@
+odlparent.artifactId=mdsal-it-parent
+odlparent.groupId=org.opendaylight.controller
+odlparent.version=10.0.9
diff --git a/parents/odlparent/setup/src/main/properties/odlparent-lite.properties b/parents/odlparent/setup/src/main/properties/odlparent-lite.properties
new file mode 100644 (file)
index 0000000..77340e1
--- /dev/null
@@ -0,0 +1,3 @@
+odlparent.artifactId=odlparent-lite
+odlparent.groupId=org.opendaylight.odlparent
+odlparent.version=14.0.8
diff --git a/parents/odlparent/setup/src/main/properties/odlparent.properties b/parents/odlparent/setup/src/main/properties/odlparent.properties
new file mode 100644 (file)
index 0000000..cdaf9e9
--- /dev/null
@@ -0,0 +1,3 @@
+odlparent.artifactId=odlparent
+odlparent.groupId=org.opendaylight.odlparent
+odlparent.version=14.0.8
diff --git a/parents/odlparent/setup/src/main/properties/single-feature-parent.properties b/parents/odlparent/setup/src/main/properties/single-feature-parent.properties
new file mode 100644 (file)
index 0000000..7afcc89
--- /dev/null
@@ -0,0 +1,3 @@
+odlparent.artifactId=single-feature-parent
+odlparent.groupId=org.opendaylight.odlparent
+odlparent.version=14.0.8
diff --git a/parents/odlparent/setup/src/main/resources/pom-template.xml b/parents/odlparent/setup/src/main/resources/pom-template.xml
new file mode 100755 (executable)
index 0000000..a41563e
--- /dev/null
@@ -0,0 +1,1281 @@
+<?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>
+
+    <!-- PLEASE READ !!!!! This file is generated from ccsdk/parent/setup/src/main/template/pom-template.xml
+        Any updates needed should be made to that template and not to the generated
+        pom.xml file -->
+    <parent>
+        <groupId>${odlparent.groupId}</groupId>
+        <artifactId>${odlparent.artifactId}</artifactId>
+        <version>${odlparent.version}</version>
+        <relativePath/>
+    </parent>
+
+    <groupId>org.o-ran-sc.oam-controller.parent</groupId>
+    <artifactId>${odlparent.artifactId}</artifactId>
+    <version>${project.version}</version>
+    <packaging>pom</packaging>
+
+    <name>O-RAN-SC :: \${project.groupId} :: \${project.artifactId}</name>
+    <description>Root POM to be used in place of odlparent for CCSDK based projects</description>
+    <url>http://wiki.o-ran-sc.org</url>
+    <organization>
+        <name>O-RAN-SC</name>
+    </organization>
+
+    <issueManagement>
+        <system>JIRA</system>
+        <url>https://jira.o-ran-sc.org/</url>
+    </issueManagement>
+    <distributionManagement>
+        <repository>
+            <id>o-ran-sc-releases</id>
+            <url>\${o-ran-sc.nexus.release-url}</url>
+        </repository>
+        <snapshotRepository>
+            <id>o-ran-sc-snapshots</id>
+            <url>\${o-ran-sc.nexus.snapshot-url}</url>
+        </snapshotRepository>
+    </distributionManagement>
+
+    <properties>
+        <!-- Sonar properties -->
+        <sonar.scanner.version>3.7.0.1746</sonar.scanner.version>
+        <sonar-jacoco-listeners.version>3.2</sonar-jacoco-listeners.version>
+        <sonar.core.codeCoveragePlugin>jacoco</sonar.core.codeCoveragePlugin>
+        <!-- Default Sonar configuration -->
+        <sonar.coverage.jacoco.xmlReportPaths>\${project.reporting.outputDirectory}/jacoco-ut/jacoco.xml,\${project.reporting.outputDirectory}/jacoco-it/jacoco.xml</sonar.coverage.jacoco.xmlReportPaths>
+        <!-- Note: This list should match jacoco-maven-plugin's exclusion list below -->
+        <sonar.exclusions>**/gen/**,**/generated-sources/**,**/yang-gen**,**/pax/**</sonar.exclusions>
+
+        <!-- Jacoco properties -->
+        <jacoco.version>0.8.12</jacoco.version>
+
+        <!-- properties from oparent -->
+        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
+        <!-- sitePath may be overridden in the inheriting POM if desired -->
+        <sitePath>/content/sites/site/\${project.groupId}/\${project.artifactId}/\${project.version}</sitePath>
+
+        <!-- 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 -->
+
+        <!-- O-RAN-SC repositories -->
+        <o-ran-sc.nexus.url>https://nexus.o-ran-sc.org</o-ran-sc.nexus.url>
+        <o-ran-sc.nexus.host>nexus.o-ran-sc.org</o-ran-sc.nexus.host>
+        <o-ran-sc.nexus.port>443</o-ran-sc.nexus.port>
+        <o-ran-sc.nexus.protocol>https</o-ran-sc.nexus.protocol>
+        <o-ran-sc.nexus.public-url>https://nexus.o-ran-sc.org/content/groups/public</o-ran-sc.nexus.public-url>
+        <o-ran-sc.nexus.staging-url>https://nexus.o-ran-sc.org/content/groups/staging</o-ran-sc.nexus.staging-url>
+        <o-ran-sc.nexus.release-url>https://nexus.o-ran-sc.org/content/repositories/releases</o-ran-sc.nexus.release-url>
+        <o-ran-sc.nexus.snapshot-url>https://nexus.o-ran-sc.org/content/repositories/snapshots</o-ran-sc.nexus.snapshot-url>
+        <o-ran-sc.nexus.staging.server-id>o-ran-sc-staging</o-ran-sc.nexus.staging.server-id>
+        <o-ran-sc.nexus.staging.profile-id>176c31dfe190a</o-ran-sc.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>21</java.version>
+        <maven-surefire-plugin.version>3.0.0-M8</maven-surefire-plugin.version>
+        <maven-failsafe-plugin.version>3.0.0-M8</maven-failsafe-plugin.version>
+        <bundle.plugin.version>5.1.1</bundle.plugin.version>
+        <maven-compiler-plugin.version>3.10.1</maven-compiler-plugin.version>
+        <features.file>features.xml</features.file>
+        <jmxGeneratorPath>src/main/yang-gen-config</jmxGeneratorPath>
+        <salGeneratorPath>src/main/yang-gen-sal</salGeneratorPath>
+        <checkstyle.plugin.version>3.2.1</checkstyle.plugin.version>
+        <checkstyle.skip>true</checkstyle.skip>
+        <odlparent.spotbugs.enforce>false</odlparent.spotbugs.enforce>
+
+        <!-- logging-analytics versions -->
+        <logging-analytics.version>1.6.9</logging-analytics.version>
+
+        <!-- CCSDK component versions -->
+        <ccsdk.cds.version>(1.5.99999, 1.6.99999-SNAPSHOT]</ccsdk.cds.version>
+        <ccsdk.features.version>(1.5.99999, 1.6.99999-SNAPSHOT]</ccsdk.features.version>
+        <ccsdk.distribution.version>(1.5.99999, 1.6.99999-SNAPSHOT]</ccsdk.distribution.version>
+        <ccsdk.sli.version>(1.6.99999, 1.7.99999-SNAPSHOT]</ccsdk.sli.version>
+        <ccsdk.sli.core.version>\${ccsdk.sli.version}</ccsdk.sli.core.version>
+        <ccsdk.sli.adaptors.version>\${ccsdk.sli.version}</ccsdk.sli.adaptors.version>
+        <ccsdk.sli.northbound.version>\${ccsdk.sli.version}</ccsdk.sli.northbound.version>
+        <ccsdk.sli.plugins.version>\${ccsdk.sli.version}</ccsdk.sli.plugins.version>
+        <sdnctl.aai.service.version>\${ccsdk.sli.version}</sdnctl.aai.service.version>
+        <sdnctl.dblib.version>\${ccsdk.sli.version}</sdnctl.dblib.version>
+        <sdnctl.mdsal.resource.version>\${ccsdk.sli.version}</sdnctl.mdsal.resource.version>
+        <sdnctl.slipluginutils.version>\${ccsdk.sli.version}</sdnctl.slipluginutils.version>
+
+        <!-- Support libraries used by OpenDaylight -->
+        <odl.mdsal.version>14.0.8</odl.mdsal.version>
+        <odl.mdsal.model.version>14.0.8</odl.mdsal.model.version>
+        <odl.mdsal.generator.version>11.0.9</odl.mdsal.generator.version>
+        <odl.netconf.restconf.version>14.0.11</odl.netconf.restconf.version>
+        <odl.netconf.netconf.version>14.0.11</odl.netconf.netconf.version>
+        <odl.netconf.sal.rest.docgen.version>14.0.11</odl.netconf.sal.rest.docgen.version>
+
+        <!-- Used by aaa, vtn -->
+        <commons.codec.version>1.15</commons.codec.version>
+        <!-- Used by netconf, ovsdb -->
+        <commons.lang3.version>3.17.0</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.8.0</commons.net.version>
+        <!-- Used by neutron -->
+        <eclipse.persistence.version>None</eclipse.persistence.version>
+        <!-- Used by aaa -->
+        <felix.dependencymanager.version>4.4.1</felix.dependencymanager.version>
+        <!-- Used by lacp, netconf, ovsdb, sfc, toolkit; see also vtn -->
+        <gson.version>2.12.1</gson.version>
+        <!-- Used by aaa, dlux, persistence, snmp4sdn, sxp -->
+        <guava.version>33.4.0-jre</guava.version>
+        <!-- Used by aaa, alto, netconf, ovsdb, sfc; see also affinity, defense4all,
+            integration/distribution, snmp4sdn, toolkit, ttp -->
+        <jackson.version>2.17.3</jackson.version>
+        <!-- Used by snmp4sdn, yangtools -->
+        <javassist.version>3.30.2-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>2.46</jersey.version>
+        <!-- Used by sfc -->
+        <jersey.client.version>2.46</jersey.client.version>
+
+        <!-- Used everywhere -->
+        <junit.version>4.13.2</junit.version>
+        <!-- Used by coretutorials, sfc, snmp4sdn, sxp; see also affinity, toolkit -->
+        <logback.version>1.2.11</logback.version>
+        <!-- Used by nic, sfc, sxp, tsdr -->
+        <mockito.version>3.12.4</mockito.version>
+        <!-- Used by bgpcep, netconf, ovsdb, sxp; see also opendove, toolkit -->
+        <netty.version>4.1.119.Final</netty.version>
+        <!-- Used by openflowjava, persistence, sfc, snmp4sdn, sxp; see also affinity, toolkit -->
+        <slf4j.version>2.0.12</slf4j.version>
+        <!-- Used in integration/distribution; see also affinity, snmp4sdn, toolkit, tsdr, ttp -->
+        <spring.version>4.3.25.RELEASE</spring.version>
+
+        <!-- Extra support libraries used by SDN-C -->
+        <jvnet.jaxb2.version>0.6.4</jvnet.jaxb2.version>
+        <antlr.version>4.12.0</antlr.version>
+        <antlr4.version>4.12.0</antlr4.version>
+
+
+        <eelf.maven.plugin.version>1.0.0</eelf.maven.plugin.version>
+
+        <!-- Managed dependency versions -->
+        <apache.httpcomponents.core.version>4.4.12</apache.httpcomponents.core.version>
+        <apache.httpcomponents.client.version>4.5.13</apache.httpcomponents.client.version>
+        <derby.version>10.14.2.0</derby.version>
+        <eelf.version>1.0.0</eelf.version>
+        <grpc.version>1.21.1</grpc.version>
+        <log4j.version>2.17.1</log4j.version>
+        <log4j2.version>2.17.1</log4j2.version>
+        <jetty.version>9.4.54.v20240208</jetty.version>
+        <mariadb.connector.version>2.7.5</mariadb.connector.version>
+        <mariadb4j.version>2.4.0</mariadb4j.version>
+        <testng.version>6.14.3</testng.version>
+        <tomcat-jdbc.version>9.0.52</tomcat-jdbc.version>
+        <skip.karaf.featureTest>true</skip.karaf.featureTest>
+        <dependency-list.file>direct-dependencies.txt</dependency-list.file>
+    </properties>
+
+    <dependencyManagement>
+        <dependencies>
+            <!-- Note: If value in BOM conflicts with value inherited from
+            parent pom, inherited value takes precedence.  This seems more like
+            a bug than a feature, but this is how maven 3.6 works -->
+            <dependency>
+                <groupId>${project.groupId}</groupId>
+                <artifactId>dependencies-odl-bom</artifactId>
+                <version>${project.version}</version>
+                <type>pom</type>
+                <scope>import</scope>
+            </dependency>
+            <dependency>
+                <groupId>${project.groupId}</groupId>
+                <artifactId>dependencies-bom</artifactId>
+                <version>${project.version}</version>
+                <type>pom</type>
+                <scope>import</scope>
+            </dependency>
+            <dependency>
+                <groupId>org.springframework.boot</groupId>
+                <artifactId>spring-boot-dependencies</artifactId>
+                <version>2.3.8.RELEASE</version>
+                <scope>import</scope>
+                <type>pom</type>
+            </dependency>
+            <dependency>
+                <groupId>org.mariadb.jdbc</groupId>
+                <artifactId>mariadb-java-client</artifactId>
+                <version>${mariadb.connector.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.onap.logging-analytics</groupId>
+                <artifactId>logging-slf4j</artifactId>
+                <version>\${logging-analytics.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.onap.logging-analytics</groupId>
+                <artifactId>logging-filter-base</artifactId>
+                <version>\${logging-analytics.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.antlr</groupId>
+                <artifactId>antlr4-runtime</artifactId>
+                <version>\${antlr.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.antlr</groupId>
+                <artifactId>antlr4</artifactId>
+                <version>\${antlr.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>junit</groupId>
+                <artifactId>junit</artifactId>
+                <version>\${junit.version}</version>
+                <scope>test</scope>
+            </dependency>
+        </dependencies>
+    </dependencyManagement>
+
+    <repositories>
+        <repository>
+            <id>o-ran-sc-public</id>
+            <url>\${o-ran-sc.nexus.public-url}</url>
+            <releases>
+                <enabled>true</enabled>
+                <updatePolicy>never</updatePolicy>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+                <updatePolicy>always</updatePolicy>
+            </snapshots>
+        </repository>
+        <repository>
+            <id>o-ran-sc-staging</id>
+            <url>\${o-ran-sc.nexus.staging-url}</url>
+            <releases>
+                <enabled>true</enabled>
+                <updatePolicy>never</updatePolicy>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+                <updatePolicy>always</updatePolicy>
+            </snapshots>
+        </repository>
+        <repository>
+            <id>o-ran-sc-release</id>
+            <name>o-ran-sc-repository-releases</name>
+            <url>\${o-ran-sc.nexus.release-url}</url>
+            <releases>
+                <enabled>true</enabled>
+                <updatePolicy>never</updatePolicy>
+            </releases>
+            <snapshots>
+                <enabled>false</enabled>
+            </snapshots>
+        </repository>
+        <repository>
+            <id>o-ran-sc-snapshot</id>
+            <name>o-ran-sc-repository-snapshots</name>
+            <url>\${o-ran-sc.nexus.snapshot-url}</url>
+            <releases>
+                <enabled>false</enabled>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+            </snapshots>
+        </repository>
+        <repository>
+            <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>
+        </repository>
+        <repository>
+            <id>opendaylight-snapshot</id>
+            <name>opendaylight-snapshot</name>
+            <url>\${opendaylight.nexus.snapshot-url}</url>
+            <releases>
+                <enabled>false</enabled>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+            </snapshots>
+        </repository>
+    </repositories>
+
+    <pluginRepositories>
+        <pluginRepository>
+            <id>o-ran-sc-public</id>
+            <url>\${o-ran-sc.nexus.public-url}</url>
+            <releases>
+                <enabled>true</enabled>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+            </snapshots>
+        </pluginRepository>
+        <pluginRepository>
+            <id>o-ran-sc-staging</id>
+            <url>\${o-ran-sc.nexus.staging-url}</url>
+            <releases>
+                <enabled>true</enabled>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+            </snapshots>
+        </pluginRepository>
+        <pluginRepository>
+            <id>o-ran-sc-snapshot</id>
+            <url>\${o-ran-sc.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>
+    </pluginRepositories>
+
+    <build>
+        <pluginManagement>
+            <plugins>
+                <!-- Plugins from O-RAN-SC version (parent of 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/>
+                        <deployAtEnd>true</deployAtEnd>
+                    </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>org.apache.maven.plugins</groupId>
+                    <artifactId>maven-enforcer-plugin</artifactId>
+                    <version>3.0.0-M2</version>
+                    <executions>
+                        <execution>
+                            <id>enforce-property</id>
+                            <goals>
+                                <goal>enforce</goal>
+                            </goals>
+                            <configuration>
+                                <rules>
+                                    <requireProperty>
+                                        <property>o-ran-sc.nexus.url</property>
+                                        <message>You must set a o-ran-sc.nexus.url property in your
+                                            ~/.m2/settings.xml. See oparent/settings.xml for an example.
+                                        </message>
+                                    </requireProperty>
+                                </rules>
+                                <fail>true</fail>
+                            </configuration>
+                        </execution>
+                        <execution>
+                            <id>enforce-no-snapshots</id>
+                            <goals>
+                                <goal>enforce</goal>
+                            </goals>
+                            <configuration>
+                                <rules>
+                                    <requireReleaseDeps>
+                                        <failWhenParentIsSnapshot>false</failWhenParentIsSnapshot>
+                                        <onlyWhenRelease>true</onlyWhenRelease>
+                                        <level>WARN</level>
+                                    </requireReleaseDeps>
+                                </rules>
+                            </configuration>
+                        </execution>
+                        <execution>
+                            <id>enforce-maven</id>
+                            <goals>
+                                <goal>enforce</goal>
+                            </goals>
+                            <configuration>
+                                <rules>
+                                    <requireJavaVersion>
+                                        <version>8</version>
+                                    </requireJavaVersion>
+                                    <requireMavenVersion>
+                                        <version>[3.5.0,)</version>
+                                    </requireMavenVersion>
+                                </rules>
+                            </configuration>
+                        </execution>
+                        <execution>
+                            <id>enforce-banned-dependencies</id>
+                            <goals>
+                                <goal>enforce</goal>
+                            </goals>
+                            <configuration>
+                                <rules>
+                                    <bannedDependencies>
+                                        <message>Please always use mockito-core instead of mockito-all (see https://bugs.opendaylight.org/show_bug.cgi?id=7662), and spotbugs:annotations instead of findbugs:annotations</message>
+                                        <excludes>
+                                            <exclude>org.mockito:mockito-all</exclude>
+                                            <!-- <exclude>com.google.code.findbugs:annotations</exclude> -->
+                                        </excludes>
+                                    </bannedDependencies>
+                                </rules>
+                                <fail>true</fail>
+                            </configuration>
+                        </execution>
+                    </executions>
+                </plugin>
+                <!-- https://mvnrepository.com/artifact/org.sonarsource.scanner.maven/sonar-maven-plugin -->
+                <plugin>
+                    <groupId>org.sonarsource.scanner.maven</groupId>
+                    <artifactId>sonar-maven-plugin</artifactId>
+                    <version>${sonar.scanner.version}</version>
+                </plugin>
+                <!-- end of plugins from O-RAN-SC version (parent of oparent) -->
+                <!-- Plugins from O-RAN-SC oparent -->
+                <plugin>
+                    <groupId>org.apache.maven.plugins</groupId>
+                    <artifactId>maven-surefire-plugin</artifactId>
+                    <version>${maven-surefire-plugin.version}</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>${maven-failsafe-plugin.version}</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>
+
+                <!-- End of plugins from O-RAN-SC 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.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>
+                <plugin>
+                    <groupId>com.github.ferstl</groupId>
+                    <artifactId>depgraph-maven-plugin</artifactId>
+                    <version>3.3.0</version>
+                    <configuration>
+                        <graphFormat>text</graphFormat>
+                        <outputFileName>\${dependency-list.file}</outputFileName>
+                        <outputDirectory>\${project.basedir}</outputDirectory>
+                        <transitiveExcludes>*</transitiveExcludes>
+                        <showVersions>true</showVersions>
+                        <showGroupIds>true</showGroupIds>
+                    </configuration>
+                </plugin>
+                <plugin>
+                    <groupId>de.jacks-it-lab</groupId>
+                    <artifactId>frontend-maven-plugin</artifactId>
+                    <version>1.7.2</version>
+                </plugin>
+                <plugin>
+                    <groupId>com.github.alexcojocaru</groupId>
+                    <artifactId>elasticsearch-maven-plugin</artifactId>
+                    <version>6.16</version>
+                    <configuration>
+                        <version>7.1.1</version>
+                    </configuration>
+                </plugin>
+                <plugin>
+                    <groupId>org.apache.maven.plugins</groupId>
+                    <artifactId>maven-javadoc-plugin</artifactId>
+                    <version>3.2.0</version>
+                    <configuration>
+                        <failOnError>false</failOnError>
+                    </configuration>
+                </plugin>
+                <plugin>
+                    <groupId>com.github.spotbugs</groupId>
+                    <artifactId>spotbugs-maven-plugin</artifactId>
+                    <version>3.1.12.2</version>
+                    <executions>
+                        <execution>
+                            <id>analyze-compile</id>
+                            <phase>compile</phase>
+                            <goals>
+                                <goal>check</goal>
+                            </goals>
+                            <configuration>
+                                <plugins>
+                                    <plugin>
+                                        <groupId>jp.skypencil.findbugs.slf4j</groupId>
+                                        <artifactId>bug-pattern</artifactId>
+                                        <version>1.5.0</version>
+                                    </plugin>
+                                </plugins>
+                                <effort>Max</effort>
+                                <threshold>Low</threshold>
+                                <failOnError>false</failOnError>
+                                <skip>true</skip>
+                                <excludeFilterFile>spotbugs-exclude.xml</excludeFilterFile>
+                                <xmlOutput>true</xmlOutput>
+                                <findbugsXmlOutputDirectory>/home/jack/onap/onap-sdnr/features/sdnr/wt-aluminium-sr0-2/target/wt/common/target-ide/spotbugs</findbugsXmlOutputDirectory>
+                            </configuration>
+                        </execution>
+                    </executions>
+                    <dependencies>
+                        <dependency>
+                            <groupId>com.github.spotbugs</groupId>
+                            <artifactId>spotbugs</artifactId>
+                            <version>3.1.12</version>
+                            <scope>compile</scope>
+                        </dependency>
+                        <dependency>
+                            <groupId>org.opendaylight.odlparent</groupId>
+                            <artifactId>spotbugs</artifactId>
+                            <version>7.0.5</version>
+                            <scope>compile</scope>
+                        </dependency>
+                        <dependency>
+                            <groupId>org.slf4j</groupId>
+                            <artifactId>slf4j-simple</artifactId>
+                            <version>1.8.0-beta2</version>
+                            <scope>compile</scope>
+                        </dependency>
+                    </dependencies>
+                    <configuration>
+                        <plugins>
+                            <plugin>
+                                <groupId>jp.skypencil.findbugs.slf4j</groupId>
+                                <artifactId>bug-pattern</artifactId>
+                                <version>1.5.0</version>
+                            </plugin>
+                        </plugins>
+                        <effort>Max</effort>
+                        <threshold>Low</threshold>
+                        <failOnError>false</failOnError>
+                        <skip>true</skip>
+                        <excludeFilterFile>spotbugs-exclude.xml</excludeFilterFile>
+                        <xmlOutput>true</xmlOutput>
+                        <findbugsXmlOutputDirectory>/home/jack/onap/onap-sdnr/features/sdnr/wt-aluminium-sr0-2/target/wt/common/target-ide/spotbugs</findbugsXmlOutputDirectory>
+                    </configuration>
+                </plugin>
+                <plugin>
+                    <groupId>org.apache.maven.plugins</groupId>
+                    <artifactId>maven-checkstyle-plugin</artifactId>
+                    <version>${checkstyle.plugin.version}</version>
+                    <dependencies>
+                        <dependency>
+                            <groupId>org.onap.oparent</groupId>
+                            <artifactId>checkstyle</artifactId>
+                            <version>1.2.2</version>
+                        </dependency>
+                    </dependencies>
+                    <executions>
+                        <execution>
+                            <phase>process-sources</phase>
+                            <goals>
+                                <goal>check</goal>
+                            </goals>
+                            <configuration>
+                                <failOnViolation>false</failOnViolation>
+                                <skip>true</skip>
+                            </configuration>
+                        </execution>
+                        <execution>
+                            <id>check-license</id>
+                            <goals>
+                                <goal>check</goal>
+                            </goals>
+                            <phase>process-sources</phase>
+                            <configuration>
+                                <configLocation>onap-checkstyle/check-license.xml</configLocation>
+                                <includeResources>false</includeResources>
+                                <includeTestSourceDirectory>true</includeTestSourceDirectory>
+                                <includeTestResources>false</includeTestResources>
+                                <sourceDirectories>
+                                    <directory>\${project.build.sourceDirectory}</directory>
+                                </sourceDirectories>
+                                <excludes>
+                                </excludes>
+                                <consoleOutput>true</consoleOutput>
+                                <failOnViolation>false</failOnViolation>
+                            </configuration>
+                        </execution>
+                        <execution>
+                            <id>onap-java-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 -->
+                                <sourceDirectories>
+                                    <directory>\${project.build.sourceDirectory}/src/main/java</directory>
+                                </sourceDirectories>
+                                <includeResources>true</includeResources>
+                                <includeTestSourceDirectory>true</includeTestSourceDirectory>
+                                <includeTestResources>true</includeTestResources>
+                                <excludes>
+                                </excludes>
+                                <consoleOutput>true</consoleOutput>
+                                <failOnViolation>false</failOnViolation>
+                            </configuration>
+                        </execution>
+                    </executions>
+                </plugin>
+                <plugin>
+                    <groupId>org.gaul</groupId>
+                    <artifactId>modernizer-maven-plugin</artifactId>
+                    <version>2.1.0</version>
+                    <executions>
+                        <execution>
+                            <id>modernizer</id>
+                            <phase>verify</phase>
+                            <goals>
+                                <goal>modernizer</goal>
+                            </goals>
+                            <configuration>
+                                <failOnViolations>false</failOnViolations>
+                                <skip>true</skip>
+                            </configuration>
+                        </execution>
+                    </executions>
+                    <configuration>
+                        <failOnViolations>false</failOnViolations>
+                        <skip>true</skip>
+                    </configuration>
+                </plugin>
+                <!--
+                <plugin>
+                    <groupId>org.apache.karaf.tooling</groupId>
+                    <artifactId>karaf-maven-plugin</artifactId>
+                    <configuration>
+                        <useVersionRange>true</useVersionRange>
+                        <includeTransitiveVersionRanges>true</includeTransitiveVersionRanges>
+                    </configuration>
+                </plugin>
+            -->
+            </plugins>
+        </pluginManagement>
+        <plugins>
+            <!-- Plugins from oparent version (parent of oparent) -->
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-deploy-plugin</artifactId>
+            </plugin>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-site-plugin</artifactId>
+                <!--
+                <configuration>
+                    <reportPlugins>
+                        <reportPlugin>
+                            <groupId>org.apache.maven.plugins</groupId>
+                            <artifactId>maven-checkstyle-plugin</artifactId>
+                            <version>${checkstyle.plugin.version}</version>
+                        </reportPlugin>
+                    </reportPlugins>
+                </configuration>
+                -->
+            </plugin>
+            <!-- end of plugins from oparent version (parent of oparent) -->
+
+            <!-- Plugins from oparent -->
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <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>
+                <version>\${jacoco.version}</version>
+                <executions>
+                    <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>
+                    <execution>
+                        <id>default-prepare-agent</id>
+                        <goals>
+                            <goal>prepare-agent</goal>
+                        </goals>
+                    </execution>
+                    <execution>
+                        <id>default-report</id>
+                        <phase>prepare-package</phase>
+                        <goals>
+                            <goal>report</goal>
+                        </goals>
+                    </execution>
+                    <execution>
+                        <id>default-check</id>
+                        <goals>
+                            <goal>check</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <rule>
+                                    <element>PACKAGE</element>
+                                    <limits>
+                                        <limit>
+                                            <counter>COMPLEXITY</counter>
+                                            <value>COVEREDRATIO</value>
+                                            <minimum>0.0</minimum>
+                                        </limit>
+                                    </limits>
+                                </rule>
+                            </rules>
+                        </configuration>
+                    </execution>
+                </executions>
+            </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 oparent -->
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-javadoc-plugin</artifactId>
+                <executions>
+                    <execution>
+                        <id>attach-javadocs</id>
+                        <goals>
+                            <goal>jar</goal>
+                        </goals>
+                        <configuration>
+                            <additionalparam>-Xdoclint:none</additionalparam>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+            <plugin>
+                <artifactId>maven-enforcer-plugin</artifactId>
+                <version>3.0.0-M2</version>
+                <executions>
+                    <execution>
+                        <id>enforce-property</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <requireProperty>
+                                    <property>o-ran-sc.nexus.url</property>
+                                    <message>You must set a o-ran-sc.nexus.url property in your
+                                        ~/.m2/settings.xml. See oparent/settings.xml for an example.
+                                    </message>
+                                </requireProperty>
+                            </rules>
+                            <fail>true</fail>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>enforce-no-snapshots</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <requireReleaseDeps>
+                                    <failWhenParentIsSnapshot>false</failWhenParentIsSnapshot>
+                                    <onlyWhenRelease>true</onlyWhenRelease>
+                                    <level>WARN</level>
+                                </requireReleaseDeps>
+                            </rules>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>enforce-maven</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <requireJavaVersion>
+                                    <version>1.8.0</version>
+                                </requireJavaVersion>
+                                <requireMavenVersion>
+                                    <version>[3.5.0,)</version>
+                                </requireMavenVersion>
+                            </rules>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>enforce-banned-dependencies</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <bannedDependencies>
+                                    <message>Please always use mockito-core instead of mockito-all (see https://bugs.opendaylight.org/show_bug.cgi?id=7662), and spotbugs:annotations instead of findbugs:annotations</message>
+                                    <excludes>
+                                        <exclude>org.mockito:mockito-all</exclude>
+                                        <!-- <exclude>com.google.code.findbugs:annotations</exclude> -->
+                                    </excludes>
+                                </bannedDependencies>
+                            </rules>
+                            <fail>true</fail>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+            <plugin>
+                <groupId>pl.project13.maven</groupId>
+                <artifactId>git-commit-id-plugin</artifactId>
+                <version>4.0.0</version>
+                <configuration>
+                    <commitIdGenerationMode>full</commitIdGenerationMode>
+                    <includeOnlyProperties>
+                        <includeOnlyProperty>^git.build.(time|version)$</includeOnlyProperty>
+                        <includeOnlyProperty>^git.commit.id.(abbrev|full)$</includeOnlyProperty>
+                    </includeOnlyProperties>
+                </configuration>
+            </plugin>
+        </plugins>
+    </build>
+
+    <reporting>
+        <plugins>
+            <plugin>
+                <artifactId>maven-javadoc-plugin</artifactId>
+                <configuration>
+                    <failOnError>false</failOnError>
+                    <additionalparam>-Xdoclint:none</additionalparam>
+                </configuration>
+            </plugin>
+        </plugins>
+    </reporting>
+
+    <profiles>
+        <!-- Profiles from O-RAN-SC 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>
+                                        <groupId>ant</groupId>
+                                        <artifactId>ant</artifactId>
+                                    </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>
+                        <groupId>org.codehaus.mojo</groupId>
+                        <artifactId>exec-maven-plugin</artifactId>
+                        <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>
+        <profile>
+            <id>sonar-jacoco-aggregate</id>
+            <activation>
+                <property>
+                    <name>onap.jacoco.aggregateFile</name>
+                </property>
+            </activation>
+            <build>
+                <plugins>
+                    <plugin>
+                        <groupId>org.jacoco</groupId>
+                        <artifactId>jacoco-maven-plugin</artifactId>
+                        <executions>
+                            <execution>
+                                <id>merge</id>
+                                <goals>
+                                    <goal>merge</goal>
+                                </goals>
+                                <phase>generate-resources</phase>
+                                <configuration>
+                                    <destFile>${onap.jacoco.aggregateFile}</destFile>
+                                    <fileSets>
+                                        <fileSet>
+                                            <directory>\${project.basedir}</directory>
+                                            <includes>
+                                                <include>**/target/code-coverage/*.exec</include>
+                                            </includes>
+                                        </fileSet>
+                                    </fileSets>
+                                </configuration>
+                            </execution>
+                        </executions>
+                    </plugin>
+                </plugins>
+            </build>
+        </profile>
+        <!-- End of profiles from O-RAN-SC oparent -->
+
+       
+    </profiles>
+</project>
diff --git a/parents/odlparent/single-feature-parent/pom.xml b/parents/odlparent/single-feature-parent/pom.xml
new file mode 100644 (file)
index 0000000..7169702
--- /dev/null
@@ -0,0 +1,1281 @@
+<?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>
+
+    <!-- PLEASE READ !!!!! This file is generated from ccsdk/parent/setup/src/main/template/pom-template.xml
+        Any updates needed should be made to that template and not to the generated
+        pom.xml file -->
+    <parent>
+        <groupId>org.opendaylight.odlparent</groupId>
+        <artifactId>single-feature-parent</artifactId>
+        <version>14.0.8</version>
+        <relativePath/>
+    </parent>
+
+    <groupId>org.o-ran-sc.oam-controller.parent</groupId>
+    <artifactId>single-feature-parent</artifactId>
+    <version>3.0.2-SNAPSHOT</version>
+    <packaging>pom</packaging>
+
+    <name>O-RAN-SC :: ${project.groupId} :: ${project.artifactId}</name>
+    <description>Root POM to be used in place of odlparent for CCSDK based projects</description>
+    <url>http://wiki.o-ran-sc.org</url>
+    <organization>
+        <name>O-RAN-SC</name>
+    </organization>
+
+    <issueManagement>
+        <system>JIRA</system>
+        <url>https://jira.o-ran-sc.org/</url>
+    </issueManagement>
+    <distributionManagement>
+        <repository>
+            <id>o-ran-sc-releases</id>
+            <url>${o-ran-sc.nexus.release-url}</url>
+        </repository>
+        <snapshotRepository>
+            <id>o-ran-sc-snapshots</id>
+            <url>${o-ran-sc.nexus.snapshot-url}</url>
+        </snapshotRepository>
+    </distributionManagement>
+
+    <properties>
+        <!-- Sonar properties -->
+        <sonar.scanner.version>3.7.0.1746</sonar.scanner.version>
+        <sonar-jacoco-listeners.version>3.2</sonar-jacoco-listeners.version>
+        <sonar.core.codeCoveragePlugin>jacoco</sonar.core.codeCoveragePlugin>
+        <!-- Default Sonar configuration -->
+        <sonar.coverage.jacoco.xmlReportPaths>${project.reporting.outputDirectory}/jacoco-ut/jacoco.xml,${project.reporting.outputDirectory}/jacoco-it/jacoco.xml</sonar.coverage.jacoco.xmlReportPaths>
+        <!-- Note: This list should match jacoco-maven-plugin's exclusion list below -->
+        <sonar.exclusions>**/gen/**,**/generated-sources/**,**/yang-gen**,**/pax/**</sonar.exclusions>
+
+        <!-- Jacoco properties -->
+        <jacoco.version>0.8.12</jacoco.version>
+
+        <!-- properties from oparent -->
+        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
+        <!-- sitePath may be overridden in the inheriting POM if desired -->
+        <sitePath>/content/sites/site/${project.groupId}/${project.artifactId}/${project.version}</sitePath>
+
+        <!-- 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 -->
+
+        <!-- O-RAN-SC repositories -->
+        <o-ran-sc.nexus.url>https://nexus.o-ran-sc.org</o-ran-sc.nexus.url>
+        <o-ran-sc.nexus.host>nexus.o-ran-sc.org</o-ran-sc.nexus.host>
+        <o-ran-sc.nexus.port>443</o-ran-sc.nexus.port>
+        <o-ran-sc.nexus.protocol>https</o-ran-sc.nexus.protocol>
+        <o-ran-sc.nexus.public-url>https://nexus.o-ran-sc.org/content/groups/public</o-ran-sc.nexus.public-url>
+        <o-ran-sc.nexus.staging-url>https://nexus.o-ran-sc.org/content/groups/staging</o-ran-sc.nexus.staging-url>
+        <o-ran-sc.nexus.release-url>https://nexus.o-ran-sc.org/content/repositories/releases</o-ran-sc.nexus.release-url>
+        <o-ran-sc.nexus.snapshot-url>https://nexus.o-ran-sc.org/content/repositories/snapshots</o-ran-sc.nexus.snapshot-url>
+        <o-ran-sc.nexus.staging.server-id>o-ran-sc-staging</o-ran-sc.nexus.staging.server-id>
+        <o-ran-sc.nexus.staging.profile-id>176c31dfe190a</o-ran-sc.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>21</java.version>
+        <maven-surefire-plugin.version>3.0.0-M8</maven-surefire-plugin.version>
+        <maven-failsafe-plugin.version>3.0.0-M8</maven-failsafe-plugin.version>
+        <bundle.plugin.version>5.1.1</bundle.plugin.version>
+        <maven-compiler-plugin.version>3.10.1</maven-compiler-plugin.version>
+        <features.file>features.xml</features.file>
+        <jmxGeneratorPath>src/main/yang-gen-config</jmxGeneratorPath>
+        <salGeneratorPath>src/main/yang-gen-sal</salGeneratorPath>
+        <checkstyle.plugin.version>3.2.1</checkstyle.plugin.version>
+        <checkstyle.skip>true</checkstyle.skip>
+        <odlparent.spotbugs.enforce>false</odlparent.spotbugs.enforce>
+
+        <!-- logging-analytics versions -->
+        <logging-analytics.version>1.6.9</logging-analytics.version>
+
+        <!-- CCSDK component versions -->
+        <ccsdk.cds.version>(1.5.99999, 1.6.99999-SNAPSHOT]</ccsdk.cds.version>
+        <ccsdk.features.version>(1.5.99999, 1.6.99999-SNAPSHOT]</ccsdk.features.version>
+        <ccsdk.distribution.version>(1.5.99999, 1.6.99999-SNAPSHOT]</ccsdk.distribution.version>
+        <ccsdk.sli.version>(1.6.99999, 1.7.99999-SNAPSHOT]</ccsdk.sli.version>
+        <ccsdk.sli.core.version>${ccsdk.sli.version}</ccsdk.sli.core.version>
+        <ccsdk.sli.adaptors.version>${ccsdk.sli.version}</ccsdk.sli.adaptors.version>
+        <ccsdk.sli.northbound.version>${ccsdk.sli.version}</ccsdk.sli.northbound.version>
+        <ccsdk.sli.plugins.version>${ccsdk.sli.version}</ccsdk.sli.plugins.version>
+        <sdnctl.aai.service.version>${ccsdk.sli.version}</sdnctl.aai.service.version>
+        <sdnctl.dblib.version>${ccsdk.sli.version}</sdnctl.dblib.version>
+        <sdnctl.mdsal.resource.version>${ccsdk.sli.version}</sdnctl.mdsal.resource.version>
+        <sdnctl.slipluginutils.version>${ccsdk.sli.version}</sdnctl.slipluginutils.version>
+
+        <!-- Support libraries used by OpenDaylight -->
+        <odl.mdsal.version>14.0.8</odl.mdsal.version>
+        <odl.mdsal.model.version>14.0.8</odl.mdsal.model.version>
+        <odl.mdsal.generator.version>11.0.9</odl.mdsal.generator.version>
+        <odl.netconf.restconf.version>14.0.11</odl.netconf.restconf.version>
+        <odl.netconf.netconf.version>14.0.11</odl.netconf.netconf.version>
+        <odl.netconf.sal.rest.docgen.version>14.0.11</odl.netconf.sal.rest.docgen.version>
+
+        <!-- Used by aaa, vtn -->
+        <commons.codec.version>1.15</commons.codec.version>
+        <!-- Used by netconf, ovsdb -->
+        <commons.lang3.version>3.17.0</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.8.0</commons.net.version>
+        <!-- Used by neutron -->
+        <eclipse.persistence.version>None</eclipse.persistence.version>
+        <!-- Used by aaa -->
+        <felix.dependencymanager.version>4.4.1</felix.dependencymanager.version>
+        <!-- Used by lacp, netconf, ovsdb, sfc, toolkit; see also vtn -->
+        <gson.version>2.12.1</gson.version>
+        <!-- Used by aaa, dlux, persistence, snmp4sdn, sxp -->
+        <guava.version>33.4.0-jre</guava.version>
+        <!-- Used by aaa, alto, netconf, ovsdb, sfc; see also affinity, defense4all,
+            integration/distribution, snmp4sdn, toolkit, ttp -->
+        <jackson.version>2.17.3</jackson.version>
+        <!-- Used by snmp4sdn, yangtools -->
+        <javassist.version>3.30.2-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>2.46</jersey.version>
+        <!-- Used by sfc -->
+        <jersey.client.version>2.46</jersey.client.version>
+
+        <!-- Used everywhere -->
+        <junit.version>4.13.2</junit.version>
+        <!-- Used by coretutorials, sfc, snmp4sdn, sxp; see also affinity, toolkit -->
+        <logback.version>1.2.11</logback.version>
+        <!-- Used by nic, sfc, sxp, tsdr -->
+        <mockito.version>3.12.4</mockito.version>
+        <!-- Used by bgpcep, netconf, ovsdb, sxp; see also opendove, toolkit -->
+        <netty.version>4.1.119.Final</netty.version>
+        <!-- Used by openflowjava, persistence, sfc, snmp4sdn, sxp; see also affinity, toolkit -->
+        <slf4j.version>2.0.12</slf4j.version>
+        <!-- Used in integration/distribution; see also affinity, snmp4sdn, toolkit, tsdr, ttp -->
+        <spring.version>4.3.25.RELEASE</spring.version>
+
+        <!-- Extra support libraries used by SDN-C -->
+        <jvnet.jaxb2.version>0.6.4</jvnet.jaxb2.version>
+        <antlr.version>4.12.0</antlr.version>
+        <antlr4.version>4.12.0</antlr4.version>
+
+
+        <eelf.maven.plugin.version>1.0.0</eelf.maven.plugin.version>
+
+        <!-- Managed dependency versions -->
+        <apache.httpcomponents.core.version>4.4.12</apache.httpcomponents.core.version>
+        <apache.httpcomponents.client.version>4.5.13</apache.httpcomponents.client.version>
+        <derby.version>10.14.2.0</derby.version>
+        <eelf.version>1.0.0</eelf.version>
+        <grpc.version>1.21.1</grpc.version>
+        <log4j.version>2.17.1</log4j.version>
+        <log4j2.version>2.17.1</log4j2.version>
+        <jetty.version>9.4.54.v20240208</jetty.version>
+        <mariadb.connector.version>2.7.5</mariadb.connector.version>
+        <mariadb4j.version>2.4.0</mariadb4j.version>
+        <testng.version>6.14.3</testng.version>
+        <tomcat-jdbc.version>9.0.52</tomcat-jdbc.version>
+        <skip.karaf.featureTest>true</skip.karaf.featureTest>
+        <dependency-list.file>direct-dependencies.txt</dependency-list.file>
+    </properties>
+
+    <dependencyManagement>
+        <dependencies>
+            <!-- Note: If value in BOM conflicts with value inherited from
+            parent pom, inherited value takes precedence.  This seems more like
+            a bug than a feature, but this is how maven 3.6 works -->
+            <dependency>
+                <groupId>org.o-ran-sc.oam-controller.parent</groupId>
+                <artifactId>dependencies-odl-bom</artifactId>
+                <version>3.0.2-SNAPSHOT</version>
+                <type>pom</type>
+                <scope>import</scope>
+            </dependency>
+            <dependency>
+                <groupId>org.o-ran-sc.oam-controller.parent</groupId>
+                <artifactId>dependencies-bom</artifactId>
+                <version>3.0.2-SNAPSHOT</version>
+                <type>pom</type>
+                <scope>import</scope>
+            </dependency>
+            <dependency>
+                <groupId>org.springframework.boot</groupId>
+                <artifactId>spring-boot-dependencies</artifactId>
+                <version>2.3.8.RELEASE</version>
+                <scope>import</scope>
+                <type>pom</type>
+            </dependency>
+            <dependency>
+                <groupId>org.mariadb.jdbc</groupId>
+                <artifactId>mariadb-java-client</artifactId>
+                <version>${mariadb.connector.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.onap.logging-analytics</groupId>
+                <artifactId>logging-slf4j</artifactId>
+                <version>${logging-analytics.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.onap.logging-analytics</groupId>
+                <artifactId>logging-filter-base</artifactId>
+                <version>${logging-analytics.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.antlr</groupId>
+                <artifactId>antlr4-runtime</artifactId>
+                <version>${antlr.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.antlr</groupId>
+                <artifactId>antlr4</artifactId>
+                <version>${antlr.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>junit</groupId>
+                <artifactId>junit</artifactId>
+                <version>${junit.version}</version>
+                <scope>test</scope>
+            </dependency>
+        </dependencies>
+    </dependencyManagement>
+
+    <repositories>
+        <repository>
+            <id>o-ran-sc-public</id>
+            <url>${o-ran-sc.nexus.public-url}</url>
+            <releases>
+                <enabled>true</enabled>
+                <updatePolicy>never</updatePolicy>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+                <updatePolicy>always</updatePolicy>
+            </snapshots>
+        </repository>
+        <repository>
+            <id>o-ran-sc-staging</id>
+            <url>${o-ran-sc.nexus.staging-url}</url>
+            <releases>
+                <enabled>true</enabled>
+                <updatePolicy>never</updatePolicy>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+                <updatePolicy>always</updatePolicy>
+            </snapshots>
+        </repository>
+        <repository>
+            <id>o-ran-sc-release</id>
+            <name>o-ran-sc-repository-releases</name>
+            <url>${o-ran-sc.nexus.release-url}</url>
+            <releases>
+                <enabled>true</enabled>
+                <updatePolicy>never</updatePolicy>
+            </releases>
+            <snapshots>
+                <enabled>false</enabled>
+            </snapshots>
+        </repository>
+        <repository>
+            <id>o-ran-sc-snapshot</id>
+            <name>o-ran-sc-repository-snapshots</name>
+            <url>${o-ran-sc.nexus.snapshot-url}</url>
+            <releases>
+                <enabled>false</enabled>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+            </snapshots>
+        </repository>
+        <repository>
+            <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>
+        </repository>
+        <repository>
+            <id>opendaylight-snapshot</id>
+            <name>opendaylight-snapshot</name>
+            <url>${opendaylight.nexus.snapshot-url}</url>
+            <releases>
+                <enabled>false</enabled>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+            </snapshots>
+        </repository>
+    </repositories>
+
+    <pluginRepositories>
+        <pluginRepository>
+            <id>o-ran-sc-public</id>
+            <url>${o-ran-sc.nexus.public-url}</url>
+            <releases>
+                <enabled>true</enabled>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+            </snapshots>
+        </pluginRepository>
+        <pluginRepository>
+            <id>o-ran-sc-staging</id>
+            <url>${o-ran-sc.nexus.staging-url}</url>
+            <releases>
+                <enabled>true</enabled>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+            </snapshots>
+        </pluginRepository>
+        <pluginRepository>
+            <id>o-ran-sc-snapshot</id>
+            <url>${o-ran-sc.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>
+    </pluginRepositories>
+
+    <build>
+        <pluginManagement>
+            <plugins>
+                <!-- Plugins from O-RAN-SC version (parent of 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/>
+                        <deployAtEnd>true</deployAtEnd>
+                    </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>org.apache.maven.plugins</groupId>
+                    <artifactId>maven-enforcer-plugin</artifactId>
+                    <version>3.0.0-M2</version>
+                    <executions>
+                        <execution>
+                            <id>enforce-property</id>
+                            <goals>
+                                <goal>enforce</goal>
+                            </goals>
+                            <configuration>
+                                <rules>
+                                    <requireProperty>
+                                        <property>o-ran-sc.nexus.url</property>
+                                        <message>You must set a o-ran-sc.nexus.url property in your
+                                            ~/.m2/settings.xml. See oparent/settings.xml for an example.
+                                        </message>
+                                    </requireProperty>
+                                </rules>
+                                <fail>true</fail>
+                            </configuration>
+                        </execution>
+                        <execution>
+                            <id>enforce-no-snapshots</id>
+                            <goals>
+                                <goal>enforce</goal>
+                            </goals>
+                            <configuration>
+                                <rules>
+                                    <requireReleaseDeps>
+                                        <failWhenParentIsSnapshot>false</failWhenParentIsSnapshot>
+                                        <onlyWhenRelease>true</onlyWhenRelease>
+                                        <level>WARN</level>
+                                    </requireReleaseDeps>
+                                </rules>
+                            </configuration>
+                        </execution>
+                        <execution>
+                            <id>enforce-maven</id>
+                            <goals>
+                                <goal>enforce</goal>
+                            </goals>
+                            <configuration>
+                                <rules>
+                                    <requireJavaVersion>
+                                        <version>8</version>
+                                    </requireJavaVersion>
+                                    <requireMavenVersion>
+                                        <version>[3.5.0,)</version>
+                                    </requireMavenVersion>
+                                </rules>
+                            </configuration>
+                        </execution>
+                        <execution>
+                            <id>enforce-banned-dependencies</id>
+                            <goals>
+                                <goal>enforce</goal>
+                            </goals>
+                            <configuration>
+                                <rules>
+                                    <bannedDependencies>
+                                        <message>Please always use mockito-core instead of mockito-all (see https://bugs.opendaylight.org/show_bug.cgi?id=7662), and spotbugs:annotations instead of findbugs:annotations</message>
+                                        <excludes>
+                                            <exclude>org.mockito:mockito-all</exclude>
+                                            <!-- <exclude>com.google.code.findbugs:annotations</exclude> -->
+                                        </excludes>
+                                    </bannedDependencies>
+                                </rules>
+                                <fail>true</fail>
+                            </configuration>
+                        </execution>
+                    </executions>
+                </plugin>
+                <!-- https://mvnrepository.com/artifact/org.sonarsource.scanner.maven/sonar-maven-plugin -->
+                <plugin>
+                    <groupId>org.sonarsource.scanner.maven</groupId>
+                    <artifactId>sonar-maven-plugin</artifactId>
+                    <version>${sonar.scanner.version}</version>
+                </plugin>
+                <!-- end of plugins from O-RAN-SC version (parent of oparent) -->
+                <!-- Plugins from O-RAN-SC oparent -->
+                <plugin>
+                    <groupId>org.apache.maven.plugins</groupId>
+                    <artifactId>maven-surefire-plugin</artifactId>
+                    <version>${maven-surefire-plugin.version}</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>${maven-failsafe-plugin.version}</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>
+
+                <!-- End of plugins from O-RAN-SC 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.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>
+                <plugin>
+                    <groupId>com.github.ferstl</groupId>
+                    <artifactId>depgraph-maven-plugin</artifactId>
+                    <version>3.3.0</version>
+                    <configuration>
+                        <graphFormat>text</graphFormat>
+                        <outputFileName>${dependency-list.file}</outputFileName>
+                        <outputDirectory>${project.basedir}</outputDirectory>
+                        <transitiveExcludes>*</transitiveExcludes>
+                        <showVersions>true</showVersions>
+                        <showGroupIds>true</showGroupIds>
+                    </configuration>
+                </plugin>
+                <plugin>
+                    <groupId>de.jacks-it-lab</groupId>
+                    <artifactId>frontend-maven-plugin</artifactId>
+                    <version>1.7.2</version>
+                </plugin>
+                <plugin>
+                    <groupId>com.github.alexcojocaru</groupId>
+                    <artifactId>elasticsearch-maven-plugin</artifactId>
+                    <version>6.16</version>
+                    <configuration>
+                        <version>7.1.1</version>
+                    </configuration>
+                </plugin>
+                <plugin>
+                    <groupId>org.apache.maven.plugins</groupId>
+                    <artifactId>maven-javadoc-plugin</artifactId>
+                    <version>3.2.0</version>
+                    <configuration>
+                        <failOnError>false</failOnError>
+                    </configuration>
+                </plugin>
+                <plugin>
+                    <groupId>com.github.spotbugs</groupId>
+                    <artifactId>spotbugs-maven-plugin</artifactId>
+                    <version>3.1.12.2</version>
+                    <executions>
+                        <execution>
+                            <id>analyze-compile</id>
+                            <phase>compile</phase>
+                            <goals>
+                                <goal>check</goal>
+                            </goals>
+                            <configuration>
+                                <plugins>
+                                    <plugin>
+                                        <groupId>jp.skypencil.findbugs.slf4j</groupId>
+                                        <artifactId>bug-pattern</artifactId>
+                                        <version>1.5.0</version>
+                                    </plugin>
+                                </plugins>
+                                <effort>Max</effort>
+                                <threshold>Low</threshold>
+                                <failOnError>false</failOnError>
+                                <skip>true</skip>
+                                <excludeFilterFile>spotbugs-exclude.xml</excludeFilterFile>
+                                <xmlOutput>true</xmlOutput>
+                                <findbugsXmlOutputDirectory>/home/jack/onap/onap-sdnr/features/sdnr/wt-aluminium-sr0-2/target/wt/common/target-ide/spotbugs</findbugsXmlOutputDirectory>
+                            </configuration>
+                        </execution>
+                    </executions>
+                    <dependencies>
+                        <dependency>
+                            <groupId>com.github.spotbugs</groupId>
+                            <artifactId>spotbugs</artifactId>
+                            <version>3.1.12</version>
+                            <scope>compile</scope>
+                        </dependency>
+                        <dependency>
+                            <groupId>org.opendaylight.odlparent</groupId>
+                            <artifactId>spotbugs</artifactId>
+                            <version>7.0.5</version>
+                            <scope>compile</scope>
+                        </dependency>
+                        <dependency>
+                            <groupId>org.slf4j</groupId>
+                            <artifactId>slf4j-simple</artifactId>
+                            <version>1.8.0-beta2</version>
+                            <scope>compile</scope>
+                        </dependency>
+                    </dependencies>
+                    <configuration>
+                        <plugins>
+                            <plugin>
+                                <groupId>jp.skypencil.findbugs.slf4j</groupId>
+                                <artifactId>bug-pattern</artifactId>
+                                <version>1.5.0</version>
+                            </plugin>
+                        </plugins>
+                        <effort>Max</effort>
+                        <threshold>Low</threshold>
+                        <failOnError>false</failOnError>
+                        <skip>true</skip>
+                        <excludeFilterFile>spotbugs-exclude.xml</excludeFilterFile>
+                        <xmlOutput>true</xmlOutput>
+                        <findbugsXmlOutputDirectory>/home/jack/onap/onap-sdnr/features/sdnr/wt-aluminium-sr0-2/target/wt/common/target-ide/spotbugs</findbugsXmlOutputDirectory>
+                    </configuration>
+                </plugin>
+                <plugin>
+                    <groupId>org.apache.maven.plugins</groupId>
+                    <artifactId>maven-checkstyle-plugin</artifactId>
+                    <version>${checkstyle.plugin.version}</version>
+                    <dependencies>
+                        <dependency>
+                            <groupId>org.onap.oparent</groupId>
+                            <artifactId>checkstyle</artifactId>
+                            <version>1.2.2</version>
+                        </dependency>
+                    </dependencies>
+                    <executions>
+                        <execution>
+                            <phase>process-sources</phase>
+                            <goals>
+                                <goal>check</goal>
+                            </goals>
+                            <configuration>
+                                <failOnViolation>false</failOnViolation>
+                                <skip>true</skip>
+                            </configuration>
+                        </execution>
+                        <execution>
+                            <id>check-license</id>
+                            <goals>
+                                <goal>check</goal>
+                            </goals>
+                            <phase>process-sources</phase>
+                            <configuration>
+                                <configLocation>onap-checkstyle/check-license.xml</configLocation>
+                                <includeResources>false</includeResources>
+                                <includeTestSourceDirectory>true</includeTestSourceDirectory>
+                                <includeTestResources>false</includeTestResources>
+                                <sourceDirectories>
+                                    <directory>${project.build.sourceDirectory}</directory>
+                                </sourceDirectories>
+                                <excludes>
+                                </excludes>
+                                <consoleOutput>true</consoleOutput>
+                                <failOnViolation>false</failOnViolation>
+                            </configuration>
+                        </execution>
+                        <execution>
+                            <id>onap-java-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 -->
+                                <sourceDirectories>
+                                    <directory>${project.build.sourceDirectory}/src/main/java</directory>
+                                </sourceDirectories>
+                                <includeResources>true</includeResources>
+                                <includeTestSourceDirectory>true</includeTestSourceDirectory>
+                                <includeTestResources>true</includeTestResources>
+                                <excludes>
+                                </excludes>
+                                <consoleOutput>true</consoleOutput>
+                                <failOnViolation>false</failOnViolation>
+                            </configuration>
+                        </execution>
+                    </executions>
+                </plugin>
+                <plugin>
+                    <groupId>org.gaul</groupId>
+                    <artifactId>modernizer-maven-plugin</artifactId>
+                    <version>2.1.0</version>
+                    <executions>
+                        <execution>
+                            <id>modernizer</id>
+                            <phase>verify</phase>
+                            <goals>
+                                <goal>modernizer</goal>
+                            </goals>
+                            <configuration>
+                                <failOnViolations>false</failOnViolations>
+                                <skip>true</skip>
+                            </configuration>
+                        </execution>
+                    </executions>
+                    <configuration>
+                        <failOnViolations>false</failOnViolations>
+                        <skip>true</skip>
+                    </configuration>
+                </plugin>
+                <!--
+                <plugin>
+                    <groupId>org.apache.karaf.tooling</groupId>
+                    <artifactId>karaf-maven-plugin</artifactId>
+                    <configuration>
+                        <useVersionRange>true</useVersionRange>
+                        <includeTransitiveVersionRanges>true</includeTransitiveVersionRanges>
+                    </configuration>
+                </plugin>
+            -->
+            </plugins>
+        </pluginManagement>
+        <plugins>
+            <!-- Plugins from oparent version (parent of oparent) -->
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-deploy-plugin</artifactId>
+            </plugin>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-site-plugin</artifactId>
+                <!--
+                <configuration>
+                    <reportPlugins>
+                        <reportPlugin>
+                            <groupId>org.apache.maven.plugins</groupId>
+                            <artifactId>maven-checkstyle-plugin</artifactId>
+                            <version>${checkstyle.plugin.version}</version>
+                        </reportPlugin>
+                    </reportPlugins>
+                </configuration>
+                -->
+            </plugin>
+            <!-- end of plugins from oparent version (parent of oparent) -->
+
+            <!-- Plugins from oparent -->
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <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>
+                <version>${jacoco.version}</version>
+                <executions>
+                    <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>
+                    <execution>
+                        <id>default-prepare-agent</id>
+                        <goals>
+                            <goal>prepare-agent</goal>
+                        </goals>
+                    </execution>
+                    <execution>
+                        <id>default-report</id>
+                        <phase>prepare-package</phase>
+                        <goals>
+                            <goal>report</goal>
+                        </goals>
+                    </execution>
+                    <execution>
+                        <id>default-check</id>
+                        <goals>
+                            <goal>check</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <rule>
+                                    <element>PACKAGE</element>
+                                    <limits>
+                                        <limit>
+                                            <counter>COMPLEXITY</counter>
+                                            <value>COVEREDRATIO</value>
+                                            <minimum>0.0</minimum>
+                                        </limit>
+                                    </limits>
+                                </rule>
+                            </rules>
+                        </configuration>
+                    </execution>
+                </executions>
+            </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 oparent -->
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-javadoc-plugin</artifactId>
+                <executions>
+                    <execution>
+                        <id>attach-javadocs</id>
+                        <goals>
+                            <goal>jar</goal>
+                        </goals>
+                        <configuration>
+                            <additionalparam>-Xdoclint:none</additionalparam>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+            <plugin>
+                <artifactId>maven-enforcer-plugin</artifactId>
+                <version>3.0.0-M2</version>
+                <executions>
+                    <execution>
+                        <id>enforce-property</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <requireProperty>
+                                    <property>o-ran-sc.nexus.url</property>
+                                    <message>You must set a o-ran-sc.nexus.url property in your
+                                        ~/.m2/settings.xml. See oparent/settings.xml for an example.
+                                    </message>
+                                </requireProperty>
+                            </rules>
+                            <fail>true</fail>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>enforce-no-snapshots</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <requireReleaseDeps>
+                                    <failWhenParentIsSnapshot>false</failWhenParentIsSnapshot>
+                                    <onlyWhenRelease>true</onlyWhenRelease>
+                                    <level>WARN</level>
+                                </requireReleaseDeps>
+                            </rules>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>enforce-maven</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <requireJavaVersion>
+                                    <version>1.8.0</version>
+                                </requireJavaVersion>
+                                <requireMavenVersion>
+                                    <version>[3.5.0,)</version>
+                                </requireMavenVersion>
+                            </rules>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>enforce-banned-dependencies</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <bannedDependencies>
+                                    <message>Please always use mockito-core instead of mockito-all (see https://bugs.opendaylight.org/show_bug.cgi?id=7662), and spotbugs:annotations instead of findbugs:annotations</message>
+                                    <excludes>
+                                        <exclude>org.mockito:mockito-all</exclude>
+                                        <!-- <exclude>com.google.code.findbugs:annotations</exclude> -->
+                                    </excludes>
+                                </bannedDependencies>
+                            </rules>
+                            <fail>true</fail>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+            <plugin>
+                <groupId>pl.project13.maven</groupId>
+                <artifactId>git-commit-id-plugin</artifactId>
+                <version>4.0.0</version>
+                <configuration>
+                    <commitIdGenerationMode>full</commitIdGenerationMode>
+                    <includeOnlyProperties>
+                        <includeOnlyProperty>^git.build.(time|version)$</includeOnlyProperty>
+                        <includeOnlyProperty>^git.commit.id.(abbrev|full)$</includeOnlyProperty>
+                    </includeOnlyProperties>
+                </configuration>
+            </plugin>
+        </plugins>
+    </build>
+
+    <reporting>
+        <plugins>
+            <plugin>
+                <artifactId>maven-javadoc-plugin</artifactId>
+                <configuration>
+                    <failOnError>false</failOnError>
+                    <additionalparam>-Xdoclint:none</additionalparam>
+                </configuration>
+            </plugin>
+        </plugins>
+    </reporting>
+
+    <profiles>
+        <!-- Profiles from O-RAN-SC 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>
+                                        <groupId>ant</groupId>
+                                        <artifactId>ant</artifactId>
+                                    </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>
+                        <groupId>org.codehaus.mojo</groupId>
+                        <artifactId>exec-maven-plugin</artifactId>
+                        <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>
+        <profile>
+            <id>sonar-jacoco-aggregate</id>
+            <activation>
+                <property>
+                    <name>onap.jacoco.aggregateFile</name>
+                </property>
+            </activation>
+            <build>
+                <plugins>
+                    <plugin>
+                        <groupId>org.jacoco</groupId>
+                        <artifactId>jacoco-maven-plugin</artifactId>
+                        <executions>
+                            <execution>
+                                <id>merge</id>
+                                <goals>
+                                    <goal>merge</goal>
+                                </goals>
+                                <phase>generate-resources</phase>
+                                <configuration>
+                                    <destFile>${onap.jacoco.aggregateFile}</destFile>
+                                    <fileSets>
+                                        <fileSet>
+                                            <directory>${project.basedir}</directory>
+                                            <includes>
+                                                <include>**/target/code-coverage/*.exec</include>
+                                            </includes>
+                                        </fileSet>
+                                    </fileSets>
+                                </configuration>
+                            </execution>
+                        </executions>
+                    </plugin>
+                </plugins>
+            </build>
+        </profile>
+        <!-- End of profiles from O-RAN-SC oparent -->
+
+       
+    </profiles>
+</project>
diff --git a/parents/oparent/pom.xml b/parents/oparent/pom.xml
new file mode 100755 (executable)
index 0000000..c2505c6
--- /dev/null
@@ -0,0 +1,480 @@
+<?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.onap.oparent</groupId>
+        <artifactId>oparent</artifactId>
+        <version>3.3.1</version>
+        <relativePath/>
+    </parent> -->
+
+    <groupId>org.o-ran-sc.oam-controller.parent</groupId>
+    <artifactId>oparent</artifactId>
+    <version>3.0.2-SNAPSHOT</version>
+    <packaging>pom</packaging>
+
+    <name>O-RAN-SC :: ${project.groupId} :: ${project.artifactId}</name>
+    <description>Root POM to be used in place of oparent for CCSDK based projects</description>
+    <url>http://wiki.onap.org</url>
+    <organization>
+        <name>O-RAN-SC</name>
+    </organization>
+
+    <issueManagement>
+        <system>JIRA</system>
+        <url>https://jira.onap.org/</url>
+    </issueManagement>
+    <distributionManagement>
+        <repository>
+            <id>o-ran-sc-releases</id>
+            <url>${o-ran-sc.nexus.release-url}</url>
+        </repository>
+        <snapshotRepository>
+            <id>o-ran-sc-snapshots</id>
+            <url>${o-ran-sc.nexus.snapshot-url}</url>
+        </snapshotRepository>
+    </distributionManagement>
+
+    <properties>
+        <!-- Sonar properties -->
+        <sonar.scanner.version>3.7.0.1746</sonar.scanner.version>
+        <sonar-jacoco-listeners.version>3.2</sonar-jacoco-listeners.version>
+        <sonar.core.codeCoveragePlugin>jacoco</sonar.core.codeCoveragePlugin>
+        <!-- Default Sonar configuration -->
+        <sonar.coverage.jacoco.xmlReportPaths>${project.reporting.outputDirectory}/jacoco-ut/jacoco.xml,${project.reporting.outputDirectory}/jacoco-it/jacoco.xml</sonar.coverage.jacoco.xmlReportPaths>
+        <!-- Note: This list should match jacoco-maven-plugin's exclusion list below -->
+        <sonar.exclusions>**/gen/**,**/generated-sources/**,**/yang-gen**,**/pax/**</sonar.exclusions>
+
+        <!-- Jacoco properties -->
+        <jacoco.version>0.8.8</jacoco.version>
+        <!-- O-RAN-SC repositories -->
+        <o-ran-sc.nexus.url>https://nexus.o-ran-sc.org</o-ran-sc.nexus.url>
+        <o-ran-sc.nexus.host>nexus.o-ran-sc.org</o-ran-sc.nexus.host>
+        <o-ran-sc.nexus.port>443</o-ran-sc.nexus.port>
+        <o-ran-sc.nexus.protocol>https</o-ran-sc.nexus.protocol>
+        <o-ran-sc.nexus.public-url>https://nexus.o-ran-sc.org/content/groups/public</o-ran-sc.nexus.public-url>
+        <o-ran-sc.nexus.staging-url>https://nexus.o-ran-sc.org/content/groups/staging</o-ran-sc.nexus.staging-url>
+        <o-ran-sc.nexus.release-url>https://nexus.o-ran-sc.org/content/repositories/releases</o-ran-sc.nexus.release-url>
+        <o-ran-sc.nexus.snapshot-url>https://nexus.o-ran-sc.org/content/repositories/snapshots</o-ran-sc.nexus.snapshot-url>
+        <o-ran-sc.nexus.staging.server-id>o-ran-sc-staging</o-ran-sc.nexus.staging.server-id>
+        <o-ran-sc.nexus.staging.profile-id>176c31dfe190a</o-ran-sc.nexus.staging.profile-id>
+
+        <java.version>17</java.version>
+        <maven-surefire-plugin.version>3.0.0-M8</maven-surefire-plugin.version>
+        <maven-failsafe-plugin.version>3.0.0-M8</maven-failsafe-plugin.version>
+        <bundle.plugin.version>5.1.1</bundle.plugin.version>
+        <maven-compiler-plugin.version>3.10.1</maven-compiler-plugin.version>
+        <checkstyle.skip>true</checkstyle.skip>
+        <logback.version>1.2.11</logback.version>
+
+        <!-- CCSDK component versions -->
+        <ccsdk.cds.version>(1.4.9999, 1.5.99999-SNAPSHOT]</ccsdk.cds.version>
+        <ccsdk.features.version>(1.4.99999, 1.5.99999-SNAPSHOT]</ccsdk.features.version>
+        <ccsdk.sli.version>(1.5.99999, 1.6.99999-SNAPSHOT]</ccsdk.sli.version>
+        <ccsdk.sli.core.version>${ccsdk.sli.version}</ccsdk.sli.core.version>
+        <ccsdk.sli.adaptors.version>${ccsdk.sli.version}</ccsdk.sli.adaptors.version>
+        <ccsdk.sli.northbound.version>${ccsdk.sli.version}</ccsdk.sli.northbound.version>
+        <ccsdk.sli.plugins.version>${ccsdk.sli.version}</ccsdk.sli.plugins.version>
+        <ccsdk.distribution.version>(1.4.9999, 1.5.99999-SNAPSHOT]</ccsdk.distribution.version>
+
+        <log4j.version>2.17.1</log4j.version>
+        <log4j2.version>2.17.1</log4j2.version>
+        <mariadb.connector.version>2.7.5</mariadb.connector.version>
+        <fasterxml.jackson.version>2.10.5</fasterxml.jackson.version>
+        <velocity.version>2.3</velocity.version>
+        <dmaap.listener.version>1.1.14</dmaap.listener.version>
+        <sdc.client.version>2.0.0</sdc.client.version>
+        <sdc.tosca.version>1.6.5</sdc.tosca.version>
+
+        <antlr.version>4.12.0</antlr.version>
+        <antlr4.version>4.12.0</antlr4.version>
+    </properties>
+
+    <dependencyManagement>
+        <dependencies>
+            <dependency>
+                <!-- keep groupId and version as plain and not as var,
+                otherwise ccsdk/distribution/dependencies is not resolving correctly -->
+                <groupId>org.o-ran-sc.oam-controller.parent</groupId>
+                <artifactId>dependencies-bom</artifactId>
+                <version>3.0.2-SNAPSHOT</version>
+                <type>pom</type>
+                <scope>import</scope>
+            </dependency>
+            <dependency>
+                <groupId>org.springframework.boot</groupId>
+                <artifactId>spring-boot-dependencies</artifactId>
+                <version>2.3.8.RELEASE</version>
+                <type>pom</type>
+                <scope>import</scope>
+            </dependency>
+            <dependency>
+                 <groupId>org.antlr</groupId>
+                 <artifactId>antlr4-runtime</artifactId>
+                 <version>${antlr.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.mariadb.jdbc</groupId>
+                <artifactId>mariadb-java-client</artifactId>
+                <version>${mariadb.connector.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.onap.sdc.sdc-distribution-client</groupId>
+                <artifactId>sdc-distribution-client</artifactId>
+                <version>${sdc.client.version}</version>
+                <scope>compile</scope>
+            </dependency>
+            <dependency>
+                <groupId>org.onap.sdc.sdc-tosca</groupId>
+                <artifactId>sdc-tosca</artifactId>
+                <version>${sdc.tosca.version}</version>
+                <scope>compile</scope>
+            </dependency>
+            <dependency>
+                <groupId>org.onap.dmaap.messagerouter.dmaapclient</groupId>
+                <artifactId>dmaapClient</artifactId>
+                <version>${dmaap.listener.version}</version>
+            </dependency>
+        </dependencies>
+    </dependencyManagement>
+    <dependencies>
+        <dependency>
+            <groupId>javax.annotation</groupId>
+            <artifactId>javax.annotation-api</artifactId>
+            <version>1.3.2</version>
+        </dependency>
+        <dependency>
+            <groupId>junit</groupId>
+            <artifactId>junit</artifactId>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.slf4j</groupId>
+            <artifactId>slf4j-api</artifactId>
+            <scope>provided</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.slf4j</groupId>
+            <artifactId>slf4j-simple</artifactId>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.mockito</groupId>
+            <artifactId>mockito-core</artifactId>
+            <version>3.12.4</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.testng</groupId>
+            <artifactId>testng</artifactId>
+            <version>6.11</version>
+            <scope>test</scope>
+        </dependency>
+    </dependencies>
+
+    <repositories>
+        <repository>
+            <id>onap-public</id>
+            <url>${o-ran-sc.nexus.public-url}</url>
+            <releases>
+                <enabled>true</enabled>
+                <updatePolicy>never</updatePolicy>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+                <updatePolicy>always</updatePolicy>
+            </snapshots>
+        </repository>
+        <repository>
+            <id>onap-staging</id>
+            <url>${o-ran-sc.nexus.staging-url}</url>
+            <releases>
+                <enabled>true</enabled>
+                <updatePolicy>never</updatePolicy>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+                <updatePolicy>always</updatePolicy>
+            </snapshots>
+        </repository>
+        <repository>
+            <id>o-ran-sc-release</id>
+            <name>o-ran-sc-repository-releases</name>
+            <url>${o-ran-sc.nexus.release-url}</url>
+            <releases>
+                <enabled>true</enabled>
+                <updatePolicy>never</updatePolicy>
+            </releases>
+            <snapshots>
+                <enabled>false</enabled>
+            </snapshots>
+        </repository>
+        <repository>
+            <id>o-ran-sc-snapshot</id>
+            <name>o-ran-sc-repository-snapshots</name>
+            <url>${o-ran-sc.nexus.snapshot-url}</url>
+            <releases>
+                <enabled>false</enabled>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+            </snapshots>
+        </repository>
+    </repositories>
+    <pluginRepositories>
+        <pluginRepository>
+            <id>onap-public</id>
+            <url>${o-ran-sc.nexus.public-url}</url>
+            <releases>
+                <enabled>true</enabled>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+            </snapshots>
+        </pluginRepository>
+        <pluginRepository>
+            <id>onap-staging</id>
+            <url>${o-ran-sc.nexus.staging-url}</url>
+            <releases>
+                <enabled>true</enabled>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+            </snapshots>
+        </pluginRepository>
+        <pluginRepository>
+            <id>onap-snapshot</id>
+            <url>${o-ran-sc.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>
+
+    <build>
+        <pluginManagement>
+            <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>
+                 <plugin>
+                    <groupId>org.apache.maven.plugins</groupId>
+                    <artifactId>maven-compiler-plugin</artifactId>
+                    <version>${maven-compiler-plugin.version}</version>
+                    <configuration>
+                        <release>${java.version}</release>
+                        <!--explicitly remove source and target-->
+                        <source combine.self="override"/>
+                        <target combine.self="override"/>
+                    </configuration>
+                </plugin>
+                <plugin>
+                    <groupId>org.apache.maven.plugins</groupId>
+                    <artifactId>maven-resources-plugin</artifactId>
+                    <version>3.2.0</version>
+                </plugin>
+                <plugin>
+                    <groupId>org.antlr</groupId>
+                    <artifactId>antlr4-maven-plugin</artifactId>
+                    <version>${antlr.version}</version>
+                </plugin>
+            </plugins>
+        </pluginManagement>
+        <plugins>
+            <!-- Jacoco / Sonar -->
+            <plugin>
+                <groupId>org.jacoco</groupId>
+                <artifactId>jacoco-maven-plugin</artifactId>
+                <version>${jacoco.version}</version>
+                <executions>
+                    <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>
+                    <execution>
+                        <id>default-prepare-agent</id>
+                        <goals>
+                            <goal>prepare-agent</goal>
+                        </goals>
+                    </execution>
+                    <execution>
+                        <id>default-report</id>
+                        <phase>prepare-package</phase>
+                        <goals>
+                            <goal>report</goal>
+                        </goals>
+                    </execution>
+                    <execution>
+                        <id>default-check</id>
+                        <goals>
+                            <goal>check</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <rule>
+                                    <element>PACKAGE</element>
+                                    <limits>
+                                        <limit>
+                                            <counter>COMPLEXITY</counter>
+                                            <value>COVEREDRATIO</value>
+                                            <minimum>0.0</minimum>
+                                        </limit>
+                                    </limits>
+                                </rule>
+                            </rules>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+            <plugin>
+                <groupId>org.codehaus.mojo</groupId>
+                <artifactId>versions-maven-plugin</artifactId>
+                <version>2.5</version>
+                <configuration>
+                    <processAllModules>true</processAllModules>
+                </configuration>
+            </plugin>
+            <plugin>
+                <groupId>org.apache.felix</groupId>
+                <artifactId>maven-bundle-plugin</artifactId>
+                <version>${bundle.plugin.version}</version>
+                <extensions>true</extensions>
+            </plugin>
+            <plugin>
+                <groupId>org.eclipse.m2e</groupId>
+                <artifactId>lifecycle-mapping</artifactId>
+                <version>1.0.0</version>
+                <configuration>
+                    <lifecycleMappingMetadata>
+                        <pluginExecutions>
+                            <pluginExecution>
+                                <pluginExecutionFilter>
+                                    <groupId>org.apache.felix</groupId>
+                                    <artifactId>maven-bundle-plugin</artifactId>
+                                    <versionRange>[1.0,)</versionRange>
+                                    <goals>
+                                        <goal>manifest</goal>
+                                    </goals>
+                                </pluginExecutionFilter>
+                                <action>
+                                    <execute />
+                                    <ignore />
+                                </action>
+                            </pluginExecution>
+                        </pluginExecutions>
+                    </lifecycleMappingMetadata>
+                </configuration>
+            </plugin>
+        </plugins>
+    </build>
+
+    <profiles>
+        <profile>
+            <id>sonar-jacoco-aggregate</id>
+            <activation>
+                <property>
+                    <name>onap.jacoco.aggregateFile</name>
+                </property>
+            </activation>
+            <build>
+                <plugins>
+                    <plugin>
+                        <groupId>org.jacoco</groupId>
+                        <artifactId>jacoco-maven-plugin</artifactId>
+                        <executions>
+                            <execution>
+                                <id>merge</id>
+                                <goals>
+                                    <goal>merge</goal>
+                                </goals>
+                                <phase>generate-resources</phase>
+                                <configuration>
+                                    <destFile>${onap.jacoco.aggregateFile}</destFile>
+                                    <fileSets>
+                                        <fileSet>
+                                            <directory>${project.basedir}</directory>
+                                            <includes>
+                                                <include>**/target/code-coverage/*.exec</include>
+                                            </includes>
+                                        </fileSet>
+                                    </fileSets>
+                                </configuration>
+                            </execution>
+                        </executions>
+                    </plugin>
+                </plugins>
+            </build>
+        </profile>
+    </profiles>
+</project>
diff --git a/parents/pom.xml b/parents/pom.xml
new file mode 100755 (executable)
index 0000000..35c84eb
--- /dev/null
@@ -0,0 +1,116 @@
+<?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>
+
+    <groupId>org.o-ran-sc.oam-controller.parent</groupId>
+    <artifactId>parent</artifactId>
+    <version>3.0.2-SNAPSHOT</version>
+    <packaging>pom</packaging>
+
+    <name>O-RAN-SC :: ${project.groupId} :: ${project.artifactId}</name>
+
+    <modules>
+        <module>installed-odl-bom</module>
+        <module>dependencies-bom</module>
+        <module>dependencies-odl-bom</module>
+        <module>oparent</module>
+        <!-- <module>standalone</module> -->
+        <module>odlparent</module>
+       <!-- <module>springboot</module>-->
+    </modules>
+
+    <distributionManagement>
+        <repository>
+            <id>o-ran-sc-releases</id>
+            <url>https://nexus.o-ran-sc.org/content/repositories/releases</url>
+        </repository>
+        <snapshotRepository>
+            <id>o-ran-sc-snapshots</id>
+            <url>https://nexus.o-ran-sc.org/content/repositories/snapshots</url>
+        </snapshotRepository>
+    </distributionManagement>
+
+    <properties>
+        <o-ran-sc.nexus.host>nexus.o-ran-sc.org</o-ran-sc.nexus.host>
+        <o-ran-sc.nexus.staging.server-id>o-ran-sc-staging</o-ran-sc.nexus.staging.server-id>
+        <o-ran-sc.nexus.staging.profile-id>176c31dfe190a</o-ran-sc.nexus.staging.profile-id>
+    </properties>
+
+    <build>
+        <plugins>
+            <plugin>
+                <groupId>org.codehaus.mojo</groupId>
+                <artifactId>versions-maven-plugin</artifactId>
+                <version>2.5</version>
+                <configuration>
+                    <processAllModules>true</processAllModules>
+                </configuration>
+            </plugin>
+            <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>
+
+    <profiles>
+        <profile>
+            <id>dependency-list</id>
+            <build>
+                <plugins>
+                    <plugin>
+                        <groupId>com.github.ferstl</groupId>
+                        <artifactId>depgraph-maven-plugin</artifactId>
+                        <version>3.3.0</version>
+                        <configuration>
+                            <graphFormat>text</graphFormat>
+                            <outputFileName>direct-dependencies.txt</outputFileName>
+                            <outputDirectory>${project.basedir}</outputDirectory>
+                            <transitiveExcludes>*</transitiveExcludes>
+                            <showVersions>true</showVersions>
+                            <showGroupIds>true</showGroupIds>
+                        </configuration>
+                        <executions>
+                            <execution>
+                                <phase>validate</phase>
+                                <inherited>false</inherited>
+                                <goals>
+                                    <goal>aggregate</goal>
+                                </goals>
+                            </execution>
+                        </executions>
+                    </plugin>
+                    <plugin>
+                        <groupId>org.codehaus.mojo</groupId>
+                        <artifactId>build-helper-maven-plugin</artifactId>
+                        <executions>
+                            <execution>
+                                <id>attach-artifacts</id>
+                                <phase>package</phase>
+                                <inherited>false</inherited>
+                                <goals>
+                                    <goal>attach-artifact</goal>
+                                </goals>
+                                <configuration>
+                                    <artifacts>
+                                        <artifact>
+                                            <file>${project.basedir}/direct-dependencies.txt</file>
+                                            <type>txt</type>
+                                            <classifier>dependencies</classifier>
+                                        </artifact>
+                                    </artifacts>
+                                </configuration>
+                            </execution>
+                        </executions>
+                    </plugin>
+                </plugins>
+            </build>
+        </profile>
+    </profiles>
+</project>
diff --git a/parents/tools/README.md b/parents/tools/README.md
new file mode 100644 (file)
index 0000000..62a8520
--- /dev/null
@@ -0,0 +1,30 @@
+# CCSDK parent tools
+
+## migrateOdl.py
+
+This script tries to generate the ccsdk odl parents out of the existing odl parents and a downloaded and extracted odl folder.
+
+Usage
+
+```
+$ python3 tools/migrateOdlParents.py --src ~/Downloads/karaf-0.15.1
+```
+
+args:
+
+ * --src  opendaylight source folder
+ * --group-id parent group-id to set (default=org.onap.ccsdk.parent)
+ * --version parent version to set
+ * --non-strict  flag to stop on fail (default=True)
+
+
+## mkbom.sh
+
+This script searches for all artifacts in the local odl repository folder $ODL_HOME/system and writes out of this a pom file. This is used to generate the installed-odl-bom/pom.xml.
+
+Usage:
+
+```
+$ cd ~/Downloads/opendaylight-15.0.0/system
+$ ./your-path-to-odl-parents/tools/mkbom.sh your-group-id  your-artifact-id your-version > /your-path-to-odl-parents/installed-odl-bom/pom.xml
+```
\ No newline at end of file
diff --git a/parents/tools/changeVersion.sh b/parents/tools/changeVersion.sh
new file mode 100755 (executable)
index 0000000..144ca53
--- /dev/null
@@ -0,0 +1,20 @@
+#! /bin/bash
+
+if [ $# -ne 1 ]
+then
+       echo "Usage: $0 new-version"
+       exit 1
+fi
+
+
+mvn versions:set versions:update-child-modules versions:commit -B -DnewVersion=$1
+
+base_version=$(echo $1 | cut -d- -f1)
+major=$(echo $base_version | cut -d. -f1)
+minor=$(echo $base_version | cut -d. -f2)
+patch=$(echo $base_version | cut -d. -f3)
+
+if [ -f version.properties ]
+then
+    sed -i ''  -e 's/\(release_name=\).*/\1'$major'/;s/\(sprint_number=\).*/\1'$minor'/;s/\(feature_revision=\).*/\1'$patch'/'  version.properties
+fi
diff --git a/parents/tools/lib/pomfile.py b/parents/tools/lib/pomfile.py
new file mode 100644 (file)
index 0000000..c73fbc8
--- /dev/null
@@ -0,0 +1,111 @@
+import re
+import tempfile
+import tempfile
+import glob
+import shutil
+from .xpath import XPath
+
+class PomFile:
+
+    def __init__(self, filename):
+        self.filename=filename
+
+    def hasParent(self) -> bool:
+        pattern_compiled = re.compile('<project[>\ ]')
+        inProject=False
+        with open(self.filename,'r') as src_file:
+                for line in src_file:
+                    m = pattern_compiled.search(line)
+                    if m is not None:
+                        if inProject == True:
+                            return True
+                        inProject=True
+                        pattern_compiled = re.compile('<parent[>\ ]')
+        return False
+                    
+
+    def setDependencyVersion(self, groupId, artifactId, version) -> bool:
+        return self.setXmlValue('/project/dependencies/dependency[groupId={},artifactId={}]/version'.format(groupId,artifactId),version)
+    def setDependencyManagementVersion(self, groupId, artifactId, version) -> bool:
+        return self.setXmlValue('/project/dependencyManagement/dependencies/dependency[groupId={},artifactId={}]/version'.format(groupId,artifactId),version)
+    # set xmlElementValue (just simple values - no objects)
+    # valuePath: xpath
+    #    e.g. /project/parent/version
+    #         /project/dependencies/dependency[groupId=org.opendaylight.netconf]/version
+    # value: value to set
+    def setXmlValue(self, valuePath, value, replaceMultiple=False) -> bool:
+        if value is None:
+            print("unable to set {} to {} in {}: {}".format(valuePath, value, self.filename, str(False)))
+            return False
+        found=False
+        pathToFind = XPath(valuePath)
+        pattern = re.compile('<([^>^\ ^?^!]+(\ \/)?)')
+        curPath=XPath()
+        curParent=None
+        isComment=False
+        with tempfile.NamedTemporaryFile(mode='w', delete=False) as tmp_file:
+            with open(self.filename) as src_file:
+                for line in src_file:
+                    if found == False or replaceMultiple:
+                        x=line.find('<!--')
+                        y=line.find('-->')
+                        if x>=0:
+                            isComment=True
+                        if y>=0 and y > x:
+                            isComment=False
+                        if not isComment:
+                            matches = pattern.finditer(line,y)
+                            for matchNum, match in enumerate(matches, 1):
+                                f = match.group(1)
+                                # end tag detected
+                                if f.startswith("/"):
+                                    curPath.remove(f[1:])
+                                # start tag detected (not autoclosing xml like <br />)
+                                elif not f.endswith("/"):
+                                    x = curPath.add(f)
+                                    if curParent is None:
+                                        curParent = x
+                                    else:
+                                        curParent = curPath.last(1)
+                                else:
+                                    continue
+                                if pathToFind.equals(curPath, False):
+                                    pre=line[0:line.index('<')]
+                                    line=pre+'<{x}>{v}</{x}>\n'.format(x=f,v=value)
+                                    found=True
+                                    curPath.remove(f)
+                                    break
+                                elif pathToFind.parentParamIsNeeded(curPath.subpath(1), f):
+                                    v = self.tryToGetValue(line, f)
+                                    if v is not None:
+                                        curParent.setFilter(f, v)
+
+                    tmp_file.write(line)
+            # Overwrite the original file with the munged temporary file in a
+            # manner preserving file attributes (e.g., permissions).
+            shutil.copystat(self.filename, tmp_file.name)
+            shutil.move(tmp_file.name, self.filename)
+        print("set {} to {} in {}: {}".format(valuePath, value, self.filename, str(found)))
+        return found
+
+    def tryToGetValue(self, line, xmlTag=None):
+        pattern = re.compile('<([^>^\ ^?^!]+)>([^<]+)<\/([^>^\ ^?^!]+)>' if xmlTag is None else '<('+xmlTag+')>([^<]+)<\/('+xmlTag+')>') 
+        matches = pattern.finditer(line)
+        match = next(matches)
+        if match is not None:
+            return match.group(2)
+        return None
+
+    @staticmethod
+    def findAll(folder, excludes=[]):
+        files= glob.glob(folder + "/**/pom.xml", recursive = True)
+        r=[]
+        for file in files:
+            doExclude=False
+            for exclude in excludes:
+                if exclude in file:
+                    doExclude=True
+                    break
+            if not doExclude:
+                r.append(file)
+        return r
diff --git a/parents/tools/lib/xpath.py b/parents/tools/lib/xpath.py
new file mode 100644 (file)
index 0000000..07f8e38
--- /dev/null
@@ -0,0 +1,84 @@
+
+import re
+
+
+class XPathComponent:
+    regex = r"([^\/^\[]+)(\[([^\]]+)\])?"
+    def __init__(self, expr):
+        matches = re.finditer(XPathComponent.regex, expr, re.DOTALL | re.IGNORECASE)
+        match = next(matches)
+        self.name = match.group(1)
+        tmp = match.group(3) if len(match.groups())>2 else None
+        self.filter = tmp.split(',') if tmp is not None else [] 
+
+    def equals(self, comp, ignoreFilter=False) -> bool:
+        if ignoreFilter:
+            return self.name == comp.name
+        if self.name == comp.name:
+            return set(self.filter) == set(comp.filter)
+        return False
+    
+    def setFilter(self, f, v):
+        self.filter.append('{}={}'.format(f,v))
+
+    def hasFilter(self, propertyName):
+        search=propertyName+'='
+        for filter in self.filter:
+            if filter.startswith(search):
+                return True
+        return False
+
+    def __str__(self) -> str:
+        return "XPathComponent[name={}, filter={}]".format(self.name, self.filter)
+    
+class XPath:
+
+    def __init__(self, expr=None):
+        self.raw = expr
+        tmp = expr.split('/') if expr is not None else []
+        self.components=[]
+        if len(tmp)>0 and len(tmp[0])==0:
+            tmp.pop(0)
+        for x in tmp:
+            self.components.append(XPathComponent(x))
+    
+    def add(self, c: str) -> XPathComponent:
+        xc=XPathComponent(c)
+        self.components.append(xc)
+        return xc
+
+    def remove(self, c: str) -> bool:
+        if self.components[len(self.components)-1].equals(XPathComponent(c), True):
+            self.components.pop()
+            return True
+        return False
+
+    def parentParamIsNeeded(self, xp, paramName) -> bool:
+        for i in range(len(xp.components)):
+            if i>=len(self.components):
+                return False
+            if not self.components[i].equals(xp.components[i], True):
+                return False
+        return self.components[len(xp.components)-1].hasFilter(paramName)
+
+    def equals(self, path, ignoreFilter=False) -> bool:
+        if len(self.components) != len(path.components):
+            return False
+
+        for i in range(len(self.components)):
+            if not self.components[i].equals(path.components[i], ignoreFilter):
+                return False
+        return True
+
+    def lastname(self) -> str:
+        tmp = self.last()
+        return tmp.name if tmp is not None else ""
+
+    def last(self, off=0) -> XPathComponent:
+        return self.components[len(self.components)-1-off] if len(self.components)>off else None
+
+    def subpath(self, off=0):
+        tmp =XPath()
+        for i in range(len(self.components)-off):
+            tmp.components.append(self.components[i])
+        return tmp
\ No newline at end of file
diff --git a/parents/tools/migrateOdlParents.py b/parents/tools/migrateOdlParents.py
new file mode 100755 (executable)
index 0000000..4d2bc12
--- /dev/null
@@ -0,0 +1,298 @@
+#!/usr/bin/python3
+import os
+import argparse
+import subprocess
+import re
+import shutil
+import tempfile
+from lib.pomfile import PomFile
+
+DEFAULT_PARENT_GROUPID="org.onap.ccsdk.parent"
+DEFAULT_PARENT_VERSION="2.7.0-SNAPSHOT"
+DEFAULT_STRICT=True
+USE_OLD_SERVLET_API=True
+
+class OdlParentMigrator:
+
+    def __init__(self,odlSourcePath, odlParentPath=None, groupId=DEFAULT_PARENT_GROUPID, version=DEFAULT_PARENT_VERSION, strict=DEFAULT_STRICT):
+        self.odlSourcePath=odlSourcePath
+        self.mvnbin = "/usr/bin/mvn"
+        self.version = version
+        self.groupId = groupId
+        self.strict = strict
+        if odlParentPath is None:
+            odlParentPath = os.path.abspath(os.path.dirname(os.path.realpath(__file__))+"/../odlparent")
+        self.odlParentPath=odlParentPath
+        self.parentPath =os.path.abspath(odlParentPath+'/../') 
+
+
+    def getMvnRepoVersion(self, groupId, artifactId):
+        path="{}/system/{}/{}".format(self.odlSourcePath,groupId.replace('.','/'),artifactId)
+        if not os.path.exists(path):
+            return None
+        folders =[f for f in os.listdir(path) if os.path.isdir(os.path.join(path, f))]
+        if len(folders)<1:
+            return None
+        return folders[0]
+    
+    def getMvnRepoVersions(self, groupId, artifactId):
+        path="{}/system/{}/{}".format(self.odlSourcePath,groupId.replace('.','/'),artifactId)
+        if not os.path.exists(path):
+            return None
+        folders =[f for f in os.listdir(path) if os.path.isdir(os.path.join(path, f))]
+        if len(folders)<1:
+            return None
+        return folders
+
+    def migrateInstalledOdlBom(self) -> bool:
+        success = True
+        print("migrating installed-odl-bom")
+        root=os.path.abspath(self.odlParentPath+'/..')
+        self.exec(('cd {src}/system && '+
+            '{root}/tools/mkbom.sh {groupId} {artifactId} {version}> '+
+            '{root}/installed-odl-bom/pom.xml && cd -').format(
+            root=root,src=self.odlSourcePath,
+            parent=self.odlParentPath,groupId=self.groupId,
+            artifactId='installed-odl-bom', version=self.version))
+        if USE_OLD_SERVLET_API:
+            pom = PomFile('{}/installed-odl-bom/pom.xml'.format(root))
+            success = pom.setDependencyManagementVersion('javax.servlet','javax.servlet-api','3.1.0')
+
+        print("done")
+        return success
+
+    def migrateDependenciesBom(self) -> bool:
+        success = True
+        print("migrating dependencies-bom")
+    
+        print("done" if success else "failed")
+        return success
+
+    def migrateSetupProperties(self) -> bool:
+        success = True
+        print("migrating setup")
+        mdsalVersion=self.getMvnRepoVersion('org.opendaylight.mdsal','mdsal-binding-api')
+        odlBundleVersion=self.getMvnRepoVersion('org.opendaylight.odlparent','features-odlparent')
+        mdsalItVersion=self.getMvnRepoVersion('org.opendaylight.controller','features-controller')
+        yangVersion = self.getMvnRepoVersion('org.opendaylight.yangtools','yang-common')
+        self.replaceInFile(self.odlParentPath+'/setup/src/main/properties/binding-parent.properties',
+            'odlparent.version=.*','odlparent.version={}'.format(mdsalVersion))
+        self.replaceInFile(self.odlParentPath+'/setup/src/main/properties/bundle-parent.properties',
+            'odlparent.version=.*','odlparent.version={}'.format(odlBundleVersion))
+        self.replaceInFile(self.odlParentPath+'/setup/src/main/properties/feature-repo-parent.properties',
+            'odlparent.version=.*','odlparent.version={}'.format(odlBundleVersion))
+        self.replaceInFile(self.odlParentPath+'/setup/src/main/properties/karaf4-parent.properties',
+            'odlparent.version=.*','odlparent.version={}'.format(odlBundleVersion))
+        self.replaceInFile(self.odlParentPath+'/setup/src/main/properties/mdsal-it-parent.properties',
+            'odlparent.version=.*','odlparent.version={}'.format(mdsalItVersion))
+        self.replaceInFile(self.odlParentPath+'/setup/src/main/properties/odlparent-lite.properties',
+            'odlparent.version=.*','odlparent.version={}'.format(odlBundleVersion))
+        self.replaceInFile(self.odlParentPath+'/setup/src/main/properties/odlparent.properties',
+            'odlparent.version=.*','odlparent.version={}'.format(odlBundleVersion))
+        self.replaceInFile(self.odlParentPath+'/setup/src/main/properties/single-feature-parent.properties',
+            'odlparent.version=.*','odlparent.version={}'.format(odlBundleVersion))
+
+
+        templatePom = PomFile(self.odlParentPath+'/setup/src/main/resources/pom-template.xml')
+        # x = templatePom.setXmlValue('/project/properties/odl.controller.mdsal.version',mdsalVersion)
+        # success = success and x
+        x = templatePom.setXmlValue('/project/properties/odl.mdsal.version',odlBundleVersion)
+        success = success and x
+        x = templatePom.setXmlValue('/project/properties/odl.mdsal.model.version',odlBundleVersion)
+        success = success and x
+        x = templatePom.setXmlValue('/project/properties/odl.netconf.restconf.version',mdsalVersion)
+        success = success and x
+        x = templatePom.setXmlValue('/project/properties/odl.netconf.netconf.version',mdsalVersion)
+        success = success and x
+        x = templatePom.setXmlValue('/project/properties/odl.netconf.sal.rest.docgen.version',mdsalVersion)
+        success = success and x
+        
+        x = templatePom.setXmlValue('/project/properties/commons.codec.version',
+            self.getMvnRepoVersion('commons-codec','commons-codec'))
+        success = success and x
+        x = templatePom.setXmlValue('/project/properties/commons.lang3.version',
+            self.getMvnRepoVersion('org.apache.commons','commons-lang3'))
+        success = success and x
+        x = templatePom.setXmlValue('/project/properties/commons.lang.version',
+            self.getMvnRepoVersion('commons-lang','commons-lang'))
+        success = success and x
+        x = templatePom.setXmlValue('/project/properties/commons.net.version',
+            self.getMvnRepoVersion('commons-net','commons-net'))
+        success = success and x
+        x = templatePom.setXmlValue('/project/properties/eclipse.persistence.version',
+            self.getMvnRepoVersion('org.eclipse.persistence','org.eclipse.persistence.core'))
+        success = success and x
+        x = templatePom.setXmlValue('/project/properties/gson.version',
+            self.getMvnRepoVersion('com.google.code.gson','gson'))
+        success = success and x
+        x = templatePom.setXmlValue('/project/properties/guava.version',
+            self.getMvnRepoVersion('com.google.guava','guava'))
+        success = success and x
+        x = templatePom.setXmlValue('/project/properties/jackson.version',
+            self.getMvnRepoVersion('com.fasterxml.jackson.core','jackson-core'))
+        success = success and x
+        x = templatePom.setXmlValue('/project/properties/javassist.version',
+            self.getMvnRepoVersion('org.javassist','javassist'))
+        success = success and x
+        x = templatePom.setXmlValue('/project/properties/jersey.version',
+            self.getMvnRepoVersion('org.glassfish.jersey.core','jersey-common'))
+        success = success and x
+        x = templatePom.setXmlValue('/project/properties/jersey.client.version',
+            self.getMvnRepoVersion('org.glassfish.jersey.core','jersey-client'))
+        success = success and x
+        x = templatePom.setXmlValue('/project/properties/org.json.version',
+            self.getMvnRepoVersion('org.json','json'))
+        success = success and x
+        x = templatePom.setXmlValue('/project/properties/netty.version',
+            self.getMvnRepoVersion('io.netty','netty-common'))
+        success = success and x
+        x = templatePom.setXmlValue('/project/properties/slf4j.version',
+            self.getMvnRepoVersion('org.slf4j','slf4j-api'))
+        success = success and x
+        x = templatePom.setXmlValue('/project/properties/derby.version',
+            self.getMvnRepoVersion('org.apache.derby','derby'))
+        success = success and x
+        x = templatePom.setXmlValue('/project/properties/jetty.version',
+            self.getMvnRepoVersion('org.eclipse.jetty','jetty-http'))        
+        success = success and x
+        print("done" if success else "failed")
+        return success
+
+    def migrateDependenciesOdlBom(self):
+        success = True
+        print("migrating dependencies-odl-bom")
+        bgpVersion = self.getMvnRepoVersion('org.opendaylight.bgpcep','topology-api')
+        controllerVersion = self.getMvnRepoVersion('org.opendaylight.controller', 'blueprint')
+        mdsalVersion=self.getMvnRepoVersion('org.opendaylight.mdsal','mdsal-binding-api')
+        netconfVersion = self.getMvnRepoVersion('org.opendaylight.netconf','netconf-api')
+
+        pomFile = PomFile(os.path.abspath(self.parentPath+'/dependencies-odl-bom/pom.xml'))
+        x = pomFile.setXmlValue('/project/version',self.version)
+        success = success and x
+        x = pomFile.setXmlValue('/project/dependencyManagement/dependencies/dependency[artifactId=bgpcep-artifacts]/version',bgpVersion)
+        success = success and x
+        x = pomFile.setXmlValue('/project/dependencyManagement/dependencies/dependency[artifactId=controller-artifacts]/version',controllerVersion)
+        success = success and x
+        x = pomFile.setXmlValue('/project/dependencyManagement/dependencies/dependency[artifactId=mdsal-artifacts]/version',mdsalVersion)
+        success = success and x
+        # x = pomFile.setXmlValue('/project/dependencyManagement/dependencies/dependency[artifactId=netconf-artifacts]/version',netconfVersion)
+        # success = success and x
+        # x = pomFile.setXmlValue('/project/dependencyManagement/dependencies/dependency[artifactId=sal-binding-broker-impl]/version',netconfVersion, True)
+        # success = success and x
+        # at the moment not possible because of dependent variable in path after value to set
+        # x = pomFile.setXmlValue('/project/dependencyManagement/dependencies/dependency[artifactId=sal-binding-broker-impl,type=test-jar]/version',netconfVersion)
+        # success = success and x
+        # x = pomFile.setXmlValue('/project/dependencyManagement/dependencies/dependency[artifactId=sal-test-model]/version',netconfVersion)
+        # success = success and x
+        print("done" if success else "failed")
+        return success
+
+    def setParentValues(self):
+        print("setting all other parents")
+        # find all pom.xml files with parent to set
+        pomfiles=[os.path.abspath(self.parentPath+'/pom.xml'),
+            os.path.abspath(self.parentPath+'/dependencies-bom/pom.xml'),
+            os.path.abspath(self.odlParentPath+'/pom.xml'),
+            os.path.abspath(self.odlParentPath+'/setup/pom.xml'),
+            os.path.abspath(self.parentPath+'/springboot/pom.xml'),
+            os.path.abspath(self.parentPath+'/springboot/spring-boot-setup/pom.xml')]
+        
+        subs = os.listdir(os.path.abspath(self.parentPath+'/springboot'))
+        for sub in subs:
+            if sub.startswith('springboot'):
+                pomfiles.append(self.parentPath+'/springboot/'+sub+'/pom.xml')
+                          
+        success=True
+        for file in pomfiles:
+            pomfile = PomFile(file)
+            if pomfile.hasParent():
+                x = pomfile.setXmlValue('/project/parent/groupId',self.groupId)
+                success = success and x
+                x = pomfile.setXmlValue('/project/parent/version',self.version)
+                success = success and x
+            
+        # find all pom.xml files with groupId and version to set
+        pomfiles=PomFile.findAll(os.path.abspath(self.odlParentPath+'/..'))
+        for file in pomfiles:
+            pomfile = PomFile(file)
+            x = pomfile.setXmlValue('/project/groupId',self.groupId)
+            success = success and x
+            x = pomfile.setXmlValue('/project/version',self.version)
+            success = success and x
+        
+        # set only groupId for odl template
+        pomfile = PomFile(self.odlParentPath+'/setup/src/main/resources/pom-template.xml')
+        x = pomfile.setXmlValue('/project/groupId',self.groupId)
+        success = success and x
+        print("done" if success else "failed")
+        return success
+        
+    def execMaven(self, command):
+        print(self.execToStdOut(self.mvnbin,command))
+
+
+        
+
+    '''
+    Perform the pure-Python equivalent of in-place `sed` substitution: e.g.,
+    `sed -i -e 's/'${pattern}'/'${repl}' "${filename}"`.
+    '''
+    def replaceInFile(self, filename, pattern, replacement):
+   
+        # For efficiency, precompile the passed regular expression.
+        pattern_compiled = re.compile(pattern)
+
+        # For portability, NamedTemporaryFile() defaults to mode "w+b" (i.e., binary
+        # writing with updating). This is usually a good thing. In this case,
+        # however, binary writing imposes non-trivial encoding constraints trivially
+        # resolved by switching to text writing. Let's do that.
+        with tempfile.NamedTemporaryFile(mode='w', delete=False) as tmp_file:
+            with open(filename) as src_file:
+                for line in src_file:
+                    tmp_file.write(pattern_compiled.sub(replacement, line))
+
+        # Overwrite the original file with the munged temporary file in a
+        # manner preserving file attributes (e.g., permissions).
+        shutil.copystat(filename, tmp_file.name)
+        shutil.move(tmp_file.name, filename)
+
+    def exec(self, bin, params=""):
+        output = subprocess.Popen(
+            bin+" "+params, shell=True, stdout=subprocess.PIPE).stdout.read()
+        return output
+    def execToStdOut(self, bin, params=""):
+        process = subprocess.Popen(
+            (bin+" "+params).split(' '), shell=False)
+        process.communicate()
+    
+    def run(self):
+        print("starting ONAP odl parent migration")
+        print("odl src={}".format(self.odlSourcePath))
+        print("target ={}".format(self.odlParentPath))
+        x = self.migrateInstalledOdlBom()
+        if self.strict and not x:
+            exit(1)
+        x = self.migrateDependenciesBom()
+        if self.strict and not x:
+            exit(1)
+        x = self.migrateDependenciesOdlBom()
+        if self.strict and not x:
+            exit(1)
+        x = self.migrateSetupProperties()
+        if self.strict and not x:
+            exit(1)
+        x = self.setParentValues()
+        if self.strict and not x:
+            exit(1)
+#        self.execMaven('clean install -f {}'.format(self.odlParentPath+'/setup'))
+#        self.execMaven('clean install -f {}'.format(self.parentPath))
+
+parser = argparse.ArgumentParser(description='ONAP odl parent migration tool')
+parser.add_argument('--src', type=str, required=True, help='the source folder where odl is located')
+parser.add_argument('--group-id', type=str, required=False,default=DEFAULT_PARENT_GROUPID, help='groupid for the parents')
+parser.add_argument('--version', type=str, required=False,default=DEFAULT_PARENT_VERSION, help='version')
+parser.add_argument('--non-strict', action='store_false' if DEFAULT_STRICT else 'store_true', help='determine stopping script if something cannot be set')
+args = parser.parse_args()
+
+migrator = OdlParentMigrator(args.src,None,args.group_id, args.version, args.non_strict)
+migrator.run()
\ No newline at end of file
diff --git a/parents/tools/mkbom.sh b/parents/tools/mkbom.sh
new file mode 100755 (executable)
index 0000000..149c50c
--- /dev/null
@@ -0,0 +1,104 @@
+#!/bin/bash
+
+if [ $# -ne 3 ]
+then
+  echo "Usage: $0 groupId artifactId version"
+  exit 1
+fi
+
+pomGroupId=$1
+pomArtifactId=$2
+pomVersion=$3
+
+jarlist=/tmp/mkbom-jar-$$
+
+
+
+# Make list of jars
+for jar in $(find . -name '*.jar' -print | cut -d'/' -f2- | sort)
+do
+    version=$(echo $jar | rev | cut -d'/' -f2 | rev)
+    artifactId=$(echo $jar | rev | cut -d'/' -f3 | rev)
+    groupId=$(echo $jar | rev | cut -d'/' -f4- | rev | tr '/' '.')
+    echo "$groupId|$artifactId|$version" >> $jarlist
+done
+
+
+
+cat <<END
+<?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>
+
+    <groupId>$pomGroupId</groupId>
+    <artifactId>$pomArtifactId</artifactId>
+    <version>$pomVersion</version>
+    <packaging>pom</packaging>
+
+    <distributionManagement>
+        <repository>
+            <id>o-ran-sc-releases</id>
+            <url>https://nexus.o-ran-sc.org/content/repositories/releases</url>
+        </repository>
+        <snapshotRepository>
+            <id>o-ran-sc-snapshots</id>
+            <url>https://nexus.o-ran-sc.org/content/repositories/snapshots</url>
+        </snapshotRepository>
+    </distributionManagement>
+
+    <dependencyManagement>
+        <dependencies>
+END
+
+lastGroupId="UNSET"
+lastArtifactId="UNSET"
+lastVersion="UNSET"
+for ln in $(cat $jarlist | sort -u)
+do
+
+    groupId=$(echo $ln | cut -d'|' -f1)
+    artifactId=$(echo $ln | cut -d'|' -f2)
+    version=$(echo $ln | cut -d'|' -f3)
+
+    if [ "$lastGroupId" != "UNSET" ]
+    then
+        if [ "$lastGroupId" != "$groupId" -o "$lastArtifactId" != "$artifactId" ]
+        then
+            echo "            <dependency>"
+            echo "                <groupId>$lastGroupId</groupId>"
+            echo "                <artifactId>$lastArtifactId</artifactId>"
+            echo "                <version>$lastVersion</version>"
+            echo "            </dependency>"
+        fi
+    fi
+    lastGroupId=$groupId
+    lastArtifactId=$artifactId
+    lastVersion=$version
+done
+
+echo "            <dependency>"
+echo "                <groupId>$lastGroupId</groupId>"
+echo "                <artifactId>$lastArtifactId</artifactId>"
+echo "                <version>$lastVersion</version>"
+echo "            </dependency>"
+
+cat  <<END
+        </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>
+END
diff --git a/parents/tools/updParentVersion.sh b/parents/tools/updParentVersion.sh
new file mode 100755 (executable)
index 0000000..90f8d5c
--- /dev/null
@@ -0,0 +1,46 @@
+#!/bin/bash
+
+updatePom() {
+cat $1 | xsltproc -o $1 /tmp/rebase-pom.xslt -
+}
+
+export -f updatePom
+
+# Create XSLT script
+newVersion=$2
+echo "newVersion is $newVersion"
+cat <<END > /tmp/rebase-pom.xslt
+<?xml version="1.0" encoding="utf-8"?>
+<xsl:stylesheet version="1.0"
+    xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+    xmlns:pom="http://maven.apache.org/POM/4.0.0"
+    xmlns="http://maven.apache.org/POM/4.0.0"
+    exclude-result-prefixes="pom">
+    <xsl:output method="xml" encoding="UTF-8" indent="yes" omit-xml-declaration="no" cdata-section-elements="sdnc.keypass"/>
+
+    <!-- Copy everything that does not match a rewrite rule -->
+    <xsl:template match="@*|node()">
+        <xsl:copy>
+            <xsl:apply-templates select="@*|node()" />
+        </xsl:copy>
+    </xsl:template>
+
+    <!-- Change ccsdk parent pom version -->
+    <xsl:template match="//pom:parent[pom:groupId='org.onap.ccsdk.parent']/pom:version">
+    <version>$newVersion</version>
+    </xsl:template>
+</xsl:stylesheet>
+END
+
+if [ $# -ne 2 ]
+then
+       echo "Usage: $0 <directory> <version>"
+       exit 1
+fi
+
+find $1 -name pom.xml -exec bash -c 'updatePom "$0" $1' '{}' \;
+
+#Adding single empty line before project tag if there is a header available
+find $1 -name pom.xml -exec sed -i '' '$!N;s@-->\n<project@-->\
+\
+<project@;P;D' {} \;
diff --git a/parents/version.properties b/parents/version.properties
new file mode 100644 (file)
index 0000000..ff8b7df
--- /dev/null
@@ -0,0 +1,15 @@
+###########################################################
+# Versioning variables
+# Note that these variables cannot be structured (e.g. : version.release or version.snapshot etc... )
+# because they are used in Jenkins, whose plug-in doesn't support
+
+
+release_name=2
+sprint_number=7
+feature_revision=0
+
+base_version=${release_name}.${sprint_number}.${feature_revision}
+
+release_version=${base_version}
+snapshot_version=${base_version}-SNAPSHOT
+
diff --git a/settings.xml b/settings.xml
new file mode 100644 (file)
index 0000000..2fd39f7
--- /dev/null
@@ -0,0 +1,178 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+   Copyright (c) 2016-2018 Huawei Technologies Co., Ltd. and others.  All rights reserved.
+   Modifications Copyright (c) 2020 AT&T Technologies.  All rights reserved.
+
+   Licensed under the Apache License, Version 2.0 (the "License");
+   you may not use this file except in compliance with the License.
+   You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+-->
+<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
+       <profiles>
+               <profile>
+                       <id>onap-settings</id>
+                       <properties>
+                               <onap.nexus.url>https://nexus.onap.org</onap.nexus.url>
+                               <onap.nexus.rawrepo.baseurl.upload>https://nexus.onap.org/content/sites/raw</onap.nexus.rawrepo.baseurl.upload>
+                               <onap.nexus.rawrepo.baseurl.download>https://nexus.onap.org/service/local/repositories/raw/content</onap.nexus.rawrepo.baseurl.download>
+                               <onap.nexus.rawrepo.serverid>ecomp-raw</onap.nexus.rawrepo.serverid>
+                               <!-- properties for Nexus Docker registry -->
+                               <onap.nexus.dockerregistry.daily>nexus3.onap.org:10003</onap.nexus.dockerregistry.daily>
+                               <onap.nexus.dockerregistry.release>nexus3.onap.org:10002</onap.nexus.dockerregistry.release>
+                               <docker.pull.registry>nexus3.onap.org:10001</docker.pull.registry>
+                               <docker.push.registry>nexus3.onap.org:10003</docker.push.registry>
+                       </properties>
+               </profile>
+               <profile>
+                       <id>github-packages</id>
+                       <repositories>
+                               <repository>
+                                       <id>github</id>
+                                       <name>github-packages</name>
+                                       <url>https://maven.pkg.github.com/o-ran-sc/netconf</url>
+                               </repository>
+                       </repositories>
+                       <pluginRepositories>
+                               <pluginRepository>
+                                       <id>github</id>
+                                       <name>github-packages</name>
+                                       <url>https://maven.pkg.github.com/o-ran-sc/netconf</url>
+                               </pluginRepository>
+                       </pluginRepositories>
+               </profile>
+                               <profile>
+                       <id>github-packages</id>
+                       <repositories>
+                               <repository>
+                                       <id>github</id>
+                                       <name>github-packages</name>
+                                       <url>https://maven.pkg.github.com/o-ran-sc/ccsdk-features</url>
+                               </repository>
+                       </repositories>
+                       <pluginRepositories>
+                               <pluginRepository>
+                                       <id>github</id>
+                                       <name>github-packages</name>
+                                       <url>https://maven.pkg.github.com/o-ran-sc/ccsdk-features</url>
+                               </pluginRepository>
+                       </pluginRepositories>
+               </profile>
+               <profile>
+                       <id>onap-snapshots</id>
+                       <repositories>
+                               <repository>
+                                       <id>onap-snapshots</id>
+                                       <name>onap-snapshots</name>
+                                       <url>https://nexus.onap.org/content/repositories/snapshots/</url>
+                                       <releases>
+                                               <enabled>false</enabled>
+                                       </releases>
+                                       <snapshots>
+                                               <enabled>true</enabled>
+                                       </snapshots>
+                               </repository>
+                       </repositories>
+                       <pluginRepositories>
+                               <pluginRepository>
+                                       <id>onap-snapshots</id>
+                                       <name>onap-snapshots</name>
+                                       <url>https://nexus.onap.org/content/repositories/snapshots/</url>
+                                       <releases>
+                                               <enabled>false</enabled>
+                                       </releases>
+                                       <snapshots>
+                                               <enabled>true</enabled>
+                                       </snapshots>
+                               </pluginRepository>
+                       </pluginRepositories>
+               </profile>
+               <profile>
+                       <id>onap-releases</id>
+                       <repositories>
+                               <repository>
+                                       <id>onap-releases</id>
+                                       <name>onap-releases</name>
+                                       <url>https://nexus.onap.org/content/repositories/releases/</url>
+                                       <releases>
+                                               <enabled>true</enabled>
+                                       </releases>
+                                       <snapshots>
+                                               <enabled>false</enabled>
+                                       </snapshots>
+                               </repository>
+                       </repositories>
+                       <pluginRepositories>
+                               <pluginRepository>
+                                       <id>onap-releases</id>
+                                       <name>onap-releases</name>
+                                       <url>https://nexus.onap.org/content/repositories/releases/</url>
+                                       <releases>
+                                               <enabled>true</enabled>
+                                       </releases>
+                                       <snapshots>
+                                               <enabled>false</enabled>
+                                       </snapshots>
+                               </pluginRepository>
+                       </pluginRepositories>
+               </profile>
+               <profile>
+                       <id>onap-public</id>
+                       <repositories>
+                               <repository>
+                                       <id>central</id>
+                                       <url>https://repo1.maven.org/maven2/</url>
+                               </repository>
+                               <repository>
+                                       <id>onap-public</id>
+                                       <name>onap-public</name>
+                                       <url>https://nexus.onap.org/content/repositories/public/</url>
+                                       <releases>
+                                               <enabled>true</enabled>
+                                       </releases>
+                                       <snapshots>
+                                               <enabled>false</enabled>
+                                       </snapshots>
+                               </repository>
+                       </repositories>
+                       <pluginRepositories>
+                               <pluginRepository>
+                                       <id>central</id>
+                                       <url>https://repo1.maven.org/maven2/</url>
+                               </pluginRepository>
+                               <pluginRepository>
+                                       <id>onap-public</id>
+                                       <name>onap-public</name>
+                                       <url>https://nexus.onap.org/content/repositories/public/</url>
+                                       <releases>
+                                               <enabled>true</enabled>
+                                       </releases>
+                                       <snapshots>
+                                               <enabled>false</enabled>
+                                       </snapshots>
+                               </pluginRepository>
+                       </pluginRepositories>
+               </profile>
+       </profiles>
+       <activeProfiles>
+               <activeProfile>github-packages</activeProfile>
+               <activeProfile>onap-settings</activeProfile>
+               <activeProfile>onap-snapshots</activeProfile>
+               <activeProfile>onap-releases</activeProfile>
+               <activeProfile>onap-public</activeProfile>
+       </activeProfiles>
+       <servers>
+               <server>
+                       <id>github</id>
+                       <username>o-ran-sc</username>
+                       <password>${env.GITHUB_TOKEN}</password>
+               </server>
+       </servers>
+</settings>