Converting builtin applications to be delivered in a self-contained manner via OAR files.
Change-Id: I5b7c6939aacc263248868fac2e0f69124c5f3609
diff --git a/providers/null/app.xml b/providers/null/app.xml
index a6343d2..0965043 100644
--- a/providers/null/app.xml
+++ b/providers/null/app.xml
@@ -14,7 +14,9 @@
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
-<app name="org.onosproject.null" origin="ON.Lab" version="1.2.0"
- features="onos-null">
- <description>Null southbound providers for testing</description>
+<app name="org.onosproject.null" origin="ON.Lab" version="${feature.version}"
+ featuresRepo="mvn:${project.groupId}/${project.artifactId}/${project.version}/xml/features"
+ features="${project.artifactId}">
+ <description>${project.description}</description>
+ <artifact>mvn:${project.groupId}/${project.artifactId}/${project.version}</artifact>
</app>
diff --git a/providers/null/src/main/java/org/onosproject/provider/nil/NullPacketProvider.java b/providers/null/src/main/java/org/onosproject/provider/nil/NullPacketProvider.java
index a1baec9..674b33f 100644
--- a/providers/null/src/main/java/org/onosproject/provider/nil/NullPacketProvider.java
+++ b/providers/null/src/main/java/org/onosproject/provider/nil/NullPacketProvider.java
@@ -136,8 +136,8 @@
@Override
public void run(Timeout to) {
- if (!devices.isEmpty()) {
- sendEvent(devices.get(currentDevice));
+ if (!devices.isEmpty() && !to.isCancelled()) {
+ sendEvent(devices.get(Math.max(currentDevice, devices.size())));
currentDevice = (currentDevice + 1) % devices.size();
timeout = timer.newTimeout(to.getTask(), delay, TimeUnit.MILLISECONDS);
}