[SEBA-864]Cordmcast test cases
Change-Id: I9b22f1124281d5538ab0f21a03db243a7cfb31e3
diff --git a/src/main/java/org/opencord/cordmcast/CordMcast.java b/src/main/java/org/opencord/cordmcast/CordMcast.java
index ad3f2a7..bd10980 100644
--- a/src/main/java/org/opencord/cordmcast/CordMcast.java
+++ b/src/main/java/org/opencord/cordmcast/CordMcast.java
@@ -244,21 +244,24 @@
}
NextContent next = groups.get(groupInfo).value();
- ObjectiveContext context = new DefaultObjectiveContext(
- (objective) -> log.debug("Successfully remove {}",
- groupInfo.group),
- (objective, error) -> log.warn("Failed to remove {}: {}",
- groupInfo.group, error));
- // remove the flow rule
- flowObjectiveService.forward(groupInfo.getDevice(), fwdObject(next.getNextId(),
- groupInfo.group).remove(context));
- // remove all ports from the group
- next.getOutPorts().stream().forEach(portNumber ->
- flowObjectiveService.next(groupInfo.getDevice(), nextObject(next.getNextId(),
- portNumber, NextType.RemoveFromExisting,
- groupInfo.group))
- );
+ if (next != null) {
+ ObjectiveContext context = new DefaultObjectiveContext(
+ (objective) -> log.debug("Successfully remove {}",
+ groupInfo.group),
+ (objective, error) -> log.warn("Failed to remove {}: {}",
+ groupInfo.group, error));
+ // remove the flow rule
+ flowObjectiveService.forward(groupInfo.getDevice(), fwdObject(next.getNextId(),
+ groupInfo.group).remove(context));
+ // remove all ports from the group
+ next.getOutPorts().stream().forEach(portNumber ->
+ flowObjectiveService.next(groupInfo.getDevice(), nextObject(next.getNextId(),
+ portNumber,
+ NextType.RemoveFromExisting,
+ groupInfo.group))
+ );
+ }
});
groups.clear();
} finally {