Bump ONOS to 2.2 and build with Java 11
Change-Id: I215f7ca5cbded3acd9c440fe723f6f21d77f9ed5
diff --git a/README-NEW-DESIGN.md b/README-NEW-DESIGN.md
index 3a6603f..f043dd6 100644
--- a/README-NEW-DESIGN.md
+++ b/README-NEW-DESIGN.md
@@ -57,9 +57,9 @@
-------
To test the related work:
-- Run ONOS 1.13.9-rc4 using "ok clean"
+- Run ONOS 2.2.0 using "ok clean"
-- Go to 1.13.9-rc4/config directory and create cfg.json. If you want to test the remote address, then enter the entry:
+- Go to 2.2.0/config directory and create cfg.json. If you want to test the remote address, then enter the entry:
```
{
@@ -161,7 +161,7 @@
```
- Add the config that refers to cfg.json.
```
- onos-netcfg localhost /tmp/1.13.9-rc4/config/cfg.json
+ onos-netcfg localhost /tmp/2.2.0/config/cfg.json
```
- Connect to ONOS CLI and run SADIS commands:
diff --git a/api/pom.xml b/api/pom.xml
index c234fc5..fe3f53d 100755
--- a/api/pom.xml
+++ b/api/pom.xml
@@ -15,14 +15,14 @@
~ limitations under the License.
-->
<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">
+ 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>
<artifactId>sadis</artifactId>
<groupId>org.opencord</groupId>
- <version>3.2.0-SNAPSHOT</version>
+ <version>4.0.0-SNAPSHOT</version>
<relativePath>../pom.xml</relativePath>
</parent>
@@ -33,40 +33,21 @@
<description>Subscriber and Device Information Service API</description>
- <dependencies>
- <dependency>
- <groupId>org.onosproject</groupId>
- <artifactId>onlab-junit</artifactId>
- <version>${onos.version}</version>
- <scope>test</scope>
- </dependency>
-
- <dependency>
- <groupId>org.onosproject</groupId>
- <artifactId>onos-core-serializers</artifactId>
- <version>${onos.version}</version>
- </dependency>
- </dependencies>
-
<build>
- <plugins>
- <plugin>
- <groupId>org.apache.felix</groupId>
- <artifactId>maven-bundle-plugin</artifactId>
- <extensions>true</extensions>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-source-plugin</artifactId>
- <executions>
- <execution>
- <id>attach-sources</id>
- <goals>
- <goal>jar</goal>
- </goals>
- </execution>
- </executions>
- </plugin>
- </plugins>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-source-plugin</artifactId>
+ <version>3.1.0</version>
+ <executions>
+ <execution>
+ <id>attach-sources</id>
+ <goals>
+ <goal>jar</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
</build>
</project>
diff --git a/app/app.xml b/app/app.xml
index 13be528..dd828f2 100755
--- a/app/app.xml
+++ b/app/app.xml
@@ -14,8 +14,10 @@
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
-<app name="org.opencord.sadis" origin="ON.Lab" version="${project.version}"
- category="Traffic Steering" url="http://onosproject.org" title="Subscriber And Device Information App"
+<app name="org.opencord.sadis" origin="Open Networking Foundation"
+ version="${project.version}"
+ category="Traffic Steering" url="http://onosproject.org"
+ title="Subscriber And Device Information App"
featuresRepo="mvn:${project.groupId}/${project.artifactId}/${project.version}/xml/features"
features="${project.artifactId}">
<description>${project.description}</description>
diff --git a/app/pom.xml b/app/pom.xml
index 4061bd8..b21eea4 100755
--- a/app/pom.xml
+++ b/app/pom.xml
@@ -20,9 +20,10 @@
<parent>
<groupId>org.opencord</groupId>
<artifactId>sadis</artifactId>
- <version>3.2.0-SNAPSHOT</version>
+ <version>4.0.0-SNAPSHOT</version>
<relativePath>../pom.xml</relativePath>
</parent>
+
<modelVersion>4.0.0</modelVersion>
<artifactId>sadis-app</artifactId>
@@ -54,19 +55,6 @@
</dependency>
<dependency>
- <groupId>org.onosproject</groupId>
- <artifactId>onlab-osgi</artifactId>
- <version>${onos.version}</version>
- </dependency>
-
- <dependency>
- <groupId>org.onosproject</groupId>
- <artifactId>onlab-junit</artifactId>
- <version>${onos.version}</version>
- <scope>test</scope>
- </dependency>
-
- <dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
@@ -75,13 +63,14 @@
<dependency>
<groupId>org.onosproject</groupId>
- <artifactId>onos-rest</artifactId>
+ <artifactId>onos-cli</artifactId>
<version>${onos.version}</version>
+ <scope>provided</scope>
</dependency>
<dependency>
<groupId>org.onosproject</groupId>
- <artifactId>onos-cli</artifactId>
+ <artifactId>onos-core-common</artifactId>
<version>${onos.version}</version>
<scope>provided</scope>
</dependency>
@@ -94,22 +83,90 @@
</dependency>
<dependency>
+ <groupId>org.osgi</groupId>
+ <artifactId>org.osgi.service.component.annotations</artifactId>
+ <version>1.4.0</version>
+ <scope>provided</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.osgi</groupId>
+ <artifactId>org.osgi.compendium</artifactId>
+ <version>5.0.0</version>
+ <scope>provided</scope>
+ </dependency>
+
+ <dependency>
<groupId>org.apache.karaf.shell</groupId>
<artifactId>org.apache.karaf.shell.console</artifactId>
+ <version>${karaf.version}</version>
+ <scope>provided</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.karaf.shell</groupId>
+ <artifactId>org.apache.karaf.shell.core</artifactId>
+ <version>${karaf.version}</version>
+ <scope>provided</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>com.fasterxml.jackson.core</groupId>
+ <artifactId>jackson-core</artifactId>
+ <version>2.9.5</version>
+ <scope>provided</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>javax.ws.rs</groupId>
+ <artifactId>javax.ws.rs-api</artifactId>
+ <version>2.1</version>
+ <scope>provided</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>com.google.guava</groupId>
+ <artifactId>guava</artifactId>
+ <version>22.0</version>
+ <scope>provided</scope>
</dependency>
</dependencies>
<build>
<plugins>
+
<plugin>
<groupId>org.onosproject</groupId>
<artifactId>onos-maven-plugin</artifactId>
- <version>1.11</version>
+ <version>2.2</version>
+ <executions>
+ <execution>
+ <id>cfg</id>
+ <phase>generate-resources</phase>
+ <goals>
+ <goal>cfg</goal>
+ </goals>
+ </execution>
+ <execution>
+ <id>swagger</id>
+ <phase>generate-sources</phase>
+ <goals>
+ <goal>swagger</goal>
+ </goals>
+ </execution>
+ <execution>
+ <id>app</id>
+ <phase>package</phase>
+ <goals>
+ <goal>app</goal>
+ </goals>
+ </execution>
+ </executions>
</plugin>
+
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
- <extensions>true</extensions>
<configuration>
<instructions>
<_wab>src/main/webapp/</_wab>
@@ -124,28 +181,12 @@
*,org.glassfish.jersey.servlet
</Import-Package>
<Web-ContextPath>${web.context}</Web-ContextPath>
+ <Karaf-Commands>org.opencord.sadis.cli</Karaf-Commands>
+ <_dsannotations-options>inherit</_dsannotations-options>
</instructions>
</configuration>
</plugin>
- <plugin>
- <groupId>org.apache.felix</groupId>
- <artifactId>maven-scr-plugin</artifactId>
- <version>1.21.0</version>
- <executions>
- <execution>
- <id>generate-scr-srcdescriptor</id>
- <goals>
- <goal>scr</goal>
- </goals>
- </execution>
- </executions>
- <configuration>
- <supportedProjectTypes>
- <supportedProjectType>bundle</supportedProjectType>
- <supportedProjectType>war</supportedProjectType>
- </supportedProjectTypes>
- </configuration>
- </plugin>
+
</plugins>
</build>
</project>
diff --git a/app/src/main/java/org/opencord/sadis/cli/BandwidthProfileGetCommand.java b/app/src/main/java/org/opencord/sadis/cli/BandwidthProfileGetCommand.java
index 1d1f032..c6e3a4f 100644
--- a/app/src/main/java/org/opencord/sadis/cli/BandwidthProfileGetCommand.java
+++ b/app/src/main/java/org/opencord/sadis/cli/BandwidthProfileGetCommand.java
@@ -15,8 +15,9 @@
*/
package org.opencord.sadis.cli;
-import org.apache.karaf.shell.commands.Argument;
-import org.apache.karaf.shell.commands.Command;
+import org.apache.karaf.shell.api.action.lifecycle.Service;
+import org.apache.karaf.shell.api.action.Argument;
+import org.apache.karaf.shell.api.action.Command;
import org.onosproject.cli.AbstractShellCommand;
import org.opencord.sadis.BandwidthProfileInformation;
import org.opencord.sadis.BaseInformationService;
@@ -25,6 +26,7 @@
/**
* Bandwidth profile information service CLI.
*/
+@Service
@Command(scope = "onos", name = "bandwidthProfile", description = "Bandwidth profile information service CLI command")
public class BandwidthProfileGetCommand extends AbstractShellCommand {
@@ -35,7 +37,7 @@
private BaseInformationService<BandwidthProfileInformation> service = sadisService.getBandwidthProfileService();
@Override
- protected void execute() {
+ protected void doExecute() {
BandwidthProfileInformation info = service.get(id);
if (info != null) {
print(info.toString());
diff --git a/app/src/main/java/org/opencord/sadis/cli/SubscriberGetCommand.java b/app/src/main/java/org/opencord/sadis/cli/SubscriberGetCommand.java
index 81130a2..f62493d 100644
--- a/app/src/main/java/org/opencord/sadis/cli/SubscriberGetCommand.java
+++ b/app/src/main/java/org/opencord/sadis/cli/SubscriberGetCommand.java
@@ -15,8 +15,9 @@
*/
package org.opencord.sadis.cli;
-import org.apache.karaf.shell.commands.Argument;
-import org.apache.karaf.shell.commands.Command;
+import org.apache.karaf.shell.api.action.Argument;
+import org.apache.karaf.shell.api.action.Command;
+import org.apache.karaf.shell.api.action.lifecycle.Service;
import org.onosproject.cli.AbstractShellCommand;
import org.opencord.sadis.BaseInformationService;
import org.opencord.sadis.SadisService;
@@ -25,6 +26,7 @@
/**
* Subscriber And Device Information Service CLI.
*/
+@Service
@Command(scope = "onos", name = "sadis", description = "Subscriber And Device Information Service CLI command")
public class SubscriberGetCommand extends AbstractShellCommand {
@@ -35,7 +37,7 @@
private BaseInformationService<SubscriberAndDeviceInformation> service = sadisService.getSubscriberInfoService();
@Override
- protected void execute() {
+ protected void doExecute() {
SubscriberAndDeviceInformation info = service.get(id);
if (info != null) {
print(info.toString());
diff --git a/app/src/main/java/org/opencord/sadis/impl/SadisManager.java b/app/src/main/java/org/opencord/sadis/impl/SadisManager.java
index bcd4ae6..b67bfbd 100644
--- a/app/src/main/java/org/opencord/sadis/impl/SadisManager.java
+++ b/app/src/main/java/org/opencord/sadis/impl/SadisManager.java
@@ -16,12 +16,6 @@
package org.opencord.sadis.impl;
import com.google.common.collect.Lists;
-import org.apache.felix.scr.annotations.Component;
-import org.apache.felix.scr.annotations.Reference;
-import org.apache.felix.scr.annotations.ReferenceCardinality;
-import org.apache.felix.scr.annotations.Service;
-import org.apache.felix.scr.annotations.Activate;
-import org.apache.felix.scr.annotations.Deactivate;
import org.onosproject.codec.CodecService;
import org.onosproject.core.ApplicationId;
import org.onosproject.core.CoreService;
@@ -29,30 +23,34 @@
import org.onosproject.net.config.NetworkConfigEvent;
import org.onosproject.net.config.NetworkConfigListener;
import org.onosproject.net.config.NetworkConfigRegistry;
-import org.opencord.sadis.BaseInformationService;
import org.opencord.sadis.BandwidthProfileInformation;
+import org.opencord.sadis.BaseInformationService;
import org.opencord.sadis.SadisService;
import org.opencord.sadis.SubscriberAndDeviceInformation;
+import org.osgi.service.component.annotations.Activate;
+import org.osgi.service.component.annotations.Component;
+import org.osgi.service.component.annotations.Deactivate;
+import org.osgi.service.component.annotations.Reference;
+import org.osgi.service.component.annotations.ReferenceCardinality;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.util.List;
import java.util.Set;
-@Service
@Component(immediate = true)
public class SadisManager implements SadisService {
private final Logger log = LoggerFactory.getLogger(this.getClass());
private static final String SADIS_APP = "org.opencord.sadis";
- @Reference(cardinality = ReferenceCardinality.MANDATORY_UNARY)
+ @Reference(cardinality = ReferenceCardinality.MANDATORY)
protected CoreService coreService;
- @Reference(cardinality = ReferenceCardinality.MANDATORY_UNARY)
+ @Reference(cardinality = ReferenceCardinality.MANDATORY)
protected NetworkConfigRegistry cfgService;
- @Reference(cardinality = ReferenceCardinality.MANDATORY_UNARY)
+ @Reference(cardinality = ReferenceCardinality.MANDATORY)
protected CodecService codecService;
private final InternalConfigListener cfgListener = new InternalConfigListener();
diff --git a/app/src/main/resources/OSGI-INF/blueprint/shell-config.xml b/app/src/main/resources/OSGI-INF/blueprint/shell-config.xml
deleted file mode 100644
index ff8e7bc..0000000
--- a/app/src/main/resources/OSGI-INF/blueprint/shell-config.xml
+++ /dev/null
@@ -1,27 +0,0 @@
-<!--
- ~ Copyright 2017-present Open Networking Foundation
- ~
- ~ 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.
- -->
-<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0">
-
- <command-bundle xmlns="http://karaf.apache.org/xmlns/shell/v1.1.0">
- <command>
- <action class="org.opencord.sadis.cli.SubscriberGetCommand"/>
- </command>
- <command>
- <action class="org.opencord.sadis.cli.BandwidthProfileGetCommand"/>
- </command>
- </command-bundle>
-
-</blueprint>
diff --git a/pom.xml b/pom.xml
index 6af5edf..c38189d 100644
--- a/pom.xml
+++ b/pom.xml
@@ -19,26 +19,22 @@
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.onosproject</groupId>
- <artifactId>onos-dependencies</artifactId>
- <version>1.13.9-rc4</version>
- <relativePath></relativePath>
- </parent>
-
<groupId>org.opencord</groupId>
<artifactId>sadis</artifactId>
- <version>3.2.0-SNAPSHOT</version>
+ <version>4.0.0-SNAPSHOT</version>
<packaging>pom</packaging>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
- <onos.version>1.13.9-rc4</onos.version>
+ <onos.version>2.2.0</onos.version>
<onos.app.name>org.opencord.sadis</onos.app.name>
<onos.app.category>Utility</onos.app.category>
- <onos.app.title>Subscriber and Access Device Information Service</onos.app.title>
+ <onos.app.title>
+ Subscriber and Access Device Information Service
+ </onos.app.title>
<onos.app.origin>Open Networking Laboratory</onos.app.origin>
<onos.app.url>http://opencord.org</onos.app.url>
+ <karaf.version>4.2.6</karaf.version>
</properties>
<modules>
@@ -51,26 +47,36 @@
<groupId>org.onosproject</groupId>
<artifactId>onos-api</artifactId>
<version>${onos.version}</version>
+ <scope>provided</scope>
</dependency>
<dependency>
<groupId>org.onosproject</groupId>
<artifactId>onlab-misc</artifactId>
<version>${onos.version}</version>
+ <scope>provided</scope>
</dependency>
<dependency>
- <groupId>org.onosproject</groupId>
- <artifactId>onlab-osgi</artifactId>
- <version>${onos.version}</version>
+ <groupId>com.fasterxml.jackson.core</groupId>
+ <artifactId>jackson-annotations</artifactId>
+ <version>2.9.5</version>
+ <scope>provided</scope>
</dependency>
<dependency>
- <groupId>org.onosproject</groupId>
- <artifactId>onos-core-common</artifactId>
- <version>${onos.version}</version>
+ <groupId>com.fasterxml.jackson.core</groupId>
+ <artifactId>jackson-databind</artifactId>
+ <version>2.9.5</version>
+ <scope>provided</scope>
</dependency>
+ <dependency>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-api</artifactId>
+ <version>1.7.25</version>
+ <scope>provided</scope>
+ </dependency>
</dependencies>
<repositories>
@@ -99,4 +105,26 @@
</snapshots>
</repository>
</repositories>
+
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>maven-bundle-plugin</artifactId>
+ <version>4.1.0</version>
+ <extensions>true</extensions>
+ <inherited>true</inherited>
+ </plugin>
+
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <version>3.8.0</version>
+ <configuration>
+ <release>11</release>
+ </configuration>
+ <inherited>true</inherited>
+ </plugin>
+ </plugins>
+ </build>
</project>