SEBA-991-A new API needed to remove specific sources from a McastRoute
Change-Id: Ia7e6cf6939c517743d5adc6bc3869decdf64609f
diff --git a/apps/mcast/api/src/main/java/org/onosproject/mcast/api/McastRouteData.java b/apps/mcast/api/src/main/java/org/onosproject/mcast/api/McastRouteData.java
index ce81ea9..a343c39 100644
--- a/apps/mcast/api/src/main/java/org/onosproject/mcast/api/McastRouteData.java
+++ b/apps/mcast/api/src/main/java/org/onosproject/mcast/api/McastRouteData.java
@@ -121,8 +121,8 @@
* Adds sources for a given host Id. If the Host Id is {@link HostId#NONE} the sources are intended to be
* used at all times independently of the attached host.
*
- * @param hostId the host
- * @param sources the sources
+ * @param hostId the host
+ * @param sources the sources
*/
public void addSources(HostId hostId, Set<ConnectPoint> sources) {
checkNotNull(hostId);
diff --git a/apps/mcast/api/src/main/java/org/onosproject/mcast/api/McastStore.java b/apps/mcast/api/src/main/java/org/onosproject/mcast/api/McastStore.java
index 484f32ec..5e2c1e6 100644
--- a/apps/mcast/api/src/main/java/org/onosproject/mcast/api/McastStore.java
+++ b/apps/mcast/api/src/main/java/org/onosproject/mcast/api/McastStore.java
@@ -57,7 +57,7 @@
* The source stored with this method are not tied with any host.
* Traffic will be sent from all of them.
*
- * @param route a Multicast route
+ * @param route a Multicast route
* @param sources set of specific connect points
*/
void storeSources(McastRoute route, Set<ConnectPoint> sources);
@@ -78,6 +78,15 @@
void removeSource(McastRoute route, HostId source);
/**
+ * Removes a set of source connect points for a given route.
+ * This method is not tied with any host.
+ *
+ * @param route a Multicast route
+ * @param sources set of specific connect points
+ */
+ void removeSources(McastRoute route, Set<ConnectPoint> sources);
+
+ /**
* Removes a set of source connect points for a given host the route.
*
* @param route the multicast route
diff --git a/apps/mcast/api/src/main/java/org/onosproject/mcast/api/MulticastRouteService.java b/apps/mcast/api/src/main/java/org/onosproject/mcast/api/MulticastRouteService.java
index bd32363..2e34a4b 100644
--- a/apps/mcast/api/src/main/java/org/onosproject/mcast/api/MulticastRouteService.java
+++ b/apps/mcast/api/src/main/java/org/onosproject/mcast/api/MulticastRouteService.java
@@ -86,7 +86,7 @@
* used as different sources for that Mcast Tree. For dual-homed sources
* please use {@link #addSource(McastRoute route, HostId hostId) addSource}.
*
- * @param route a Multicast route
+ * @param route a Multicast route
* @param sources a set of source connect points
*/
void addSources(McastRoute route, Set<ConnectPoint> sources);
@@ -107,6 +107,26 @@
void removeSource(McastRoute route, HostId source);
/**
+ * Removes a set of sources from the route.
+ * If this method is used the connect points will all be
+ * used as different sources for that Mcast Tree. For dual-homed sources
+ * please use {@link #removeSource(McastRoute, HostId)}.
+ *
+ * @param route the multicast route
+ * @param sources set of sources
+ */
+ void removeSources(McastRoute route, Set<ConnectPoint> sources);
+
+ /**
+ * Removes a set of source connect points for a given host source from the route.
+ *
+ * @param route a multicast route
+ * @param hostId a source host
+ * @param connectPoints the source for the specific connect points
+ */
+ void removeSources(McastRoute route, HostId hostId, Set<ConnectPoint> connectPoints);
+
+ /**
* Adds a sink to the route to which a data stream should be
* sent to.
*