diff options
Diffstat (limited to 'framework/src/onos/core/api/src/main/java/org/onosproject/net/mcast')
5 files changed, 0 insertions, 367 deletions
diff --git a/framework/src/onos/core/api/src/main/java/org/onosproject/net/mcast/McastEvent.java b/framework/src/onos/core/api/src/main/java/org/onosproject/net/mcast/McastEvent.java deleted file mode 100644 index 979194c3..00000000 --- a/framework/src/onos/core/api/src/main/java/org/onosproject/net/mcast/McastEvent.java +++ /dev/null @@ -1,118 +0,0 @@ -/* - * Copyright 2015 Open Networking Laboratory - * - * 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. - */ -package org.onosproject.net.mcast; - -import com.google.common.annotations.Beta; -import org.onosproject.event.AbstractEvent; -import org.onosproject.net.ConnectPoint; - -import java.util.Optional; - -import static com.google.common.base.MoreObjects.toStringHelper; - -/** - * An entity representing a multicast event. Event either add or remove - * sinks or sources. - */ -@Beta -public class McastEvent extends AbstractEvent<McastEvent.Type, McastRoute> { - - private final Optional<ConnectPoint> sink; - private final Optional<ConnectPoint> source; - - public enum Type { - /** - * A new mcast route has been added. - */ - ROUTE_ADDED, - - /** - * A mcast route has been removed. - */ - ROUTE_REMOVED, - - /** - * A source for a mcast route (ie. the subject) has been added. - */ - SOURCE_ADDED, - - /** - * A sink for a mcast route (ie. the subject) has been added. - */ - SINK_ADDED, - - /** - * A source for a mcast route (ie. the subject) has been removed. - */ - SINK_REMOVED - } - - private McastEvent(McastEvent.Type type, McastRoute subject) { - super(type, subject); - sink = Optional.empty(); - source = Optional.empty(); - } - - private McastEvent(McastEvent.Type type, McastRoute subject, long time) { - super(type, subject, time); - sink = Optional.empty(); - source = Optional.empty(); - } - - public McastEvent(McastEvent.Type type, McastRoute subject, - ConnectPoint sink, - ConnectPoint source) { - super(type, subject); - this.sink = Optional.ofNullable(sink); - this.source = Optional.ofNullable(source); - } - - public McastEvent(McastEvent.Type type, McastRoute subject, long time, - ConnectPoint sink, - ConnectPoint source) { - super(type, subject, time); - this.sink = Optional.ofNullable(sink); - this.source = Optional.ofNullable(source); - } - - /** - * The sink which has been removed or added. The field may not be set - * if the sink has not been detected yet or has been removed. - * - * @return an optional connect point - */ - public Optional<ConnectPoint> sink() { - return sink; - } - - /** - * The source which has been removed or added. - - * @return an optional connect point - */ - public Optional<ConnectPoint> source() { - return source; - } - - @Override - public String toString() { - return toStringHelper(this) - .add("type", type()) - .add("route", subject()) - .add("source", source) - .add("sinks", sink).toString(); - } -} diff --git a/framework/src/onos/core/api/src/main/java/org/onosproject/net/mcast/McastListener.java b/framework/src/onos/core/api/src/main/java/org/onosproject/net/mcast/McastListener.java deleted file mode 100644 index 06449b99..00000000 --- a/framework/src/onos/core/api/src/main/java/org/onosproject/net/mcast/McastListener.java +++ /dev/null @@ -1,26 +0,0 @@ -/* - * Copyright 2015 Open Networking Laboratory - * - * 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. - */ -package org.onosproject.net.mcast; - -import com.google.common.annotations.Beta; -import org.onosproject.event.EventListener; - -/** - * A listener interface for multicast events. - */ -@Beta -public interface McastListener extends EventListener<McastEvent> { -} diff --git a/framework/src/onos/core/api/src/main/java/org/onosproject/net/mcast/McastRoute.java b/framework/src/onos/core/api/src/main/java/org/onosproject/net/mcast/McastRoute.java deleted file mode 100644 index ff1292bf..00000000 --- a/framework/src/onos/core/api/src/main/java/org/onosproject/net/mcast/McastRoute.java +++ /dev/null @@ -1,117 +0,0 @@ -/* - * Copyright 2015 Open Networking Laboratory - * - * 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. - */ -package org.onosproject.net.mcast; - -import com.google.common.annotations.Beta; -import com.google.common.base.Objects; -import org.onlab.packet.IpPrefix; - -import static com.google.common.base.MoreObjects.toStringHelper; -import static com.google.common.base.Preconditions.checkNotNull; - -/** - * An entity representing a multicast route consisting of a source - * and a multicast group address. - */ -@Beta -public class McastRoute { - - public enum Type { - /** - * Route originates from PIM. - */ - PIM, - - /** - * Route originates from IGMP. - */ - IGMP, - - /** - * Route originates from other config (ie. REST, CLI). - */ - STATIC - } - - private final IpPrefix source; - private final IpPrefix group; - private final Type type; - - public McastRoute(IpPrefix source, IpPrefix group, Type type) { - checkNotNull(source, "Multicast route must have a source"); - checkNotNull(group, "Multicast route must specify a group address"); - checkNotNull(type, "Must indicate what type of route"); - this.source = source; - this.group = group; - this.type = type; - } - - /** - * Fetches the source address of this route. - * - * @return an ip address - */ - public IpPrefix source() { - return source; - } - - /** - * Fetches the group address of this route. - * - * @return an ip address - */ - public IpPrefix group() { - return group; - } - - /** - * Obtains how this route was created. - * @return a type of route - - */ - public Type type() { - return type; - } - - @Override - public String toString() { - return toStringHelper(this) - .add("source", source) - .add("group", group) - .add("origin", type) - .toString(); - } - - @Override - public boolean equals(Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - McastRoute that = (McastRoute) o; - return Objects.equal(source, that.source) && - Objects.equal(group, that.group) && - Objects.equal(type, that.type); - } - - @Override - public int hashCode() { - return Objects.hashCode(source, group, type); - } - -} diff --git a/framework/src/onos/core/api/src/main/java/org/onosproject/net/mcast/MulticastRouteService.java b/framework/src/onos/core/api/src/main/java/org/onosproject/net/mcast/MulticastRouteService.java deleted file mode 100644 index bf65033a..00000000 --- a/framework/src/onos/core/api/src/main/java/org/onosproject/net/mcast/MulticastRouteService.java +++ /dev/null @@ -1,86 +0,0 @@ -/* - * Copyright 2015 Open Networking Laboratory - * - * 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. - */ -package org.onosproject.net.mcast; - -import com.google.common.annotations.Beta; -import org.onosproject.event.ListenerService; -import org.onosproject.net.ConnectPoint; - -import java.util.List; - -/** - * A service interface for maintaining multicast information. - */ -@Beta -public interface MulticastRouteService - extends ListenerService<McastEvent, McastListener> { - - /** - * Adds a route to the information base. - * - * @param route a multicast route - */ - void add(McastRoute route); - - /** - * Removes a route from the information base. - * - * @param route a multicast route - */ - void remove(McastRoute route); - - /** - * Adds a source connection to the route from where the - * data stream is originating. - * - * @param route the multicast route - * @param connectPoint a source connect point - */ - void addSource(McastRoute route, ConnectPoint connectPoint); - - /** - * Adds a sink to the route to which a data stream should be - * sent to. - * - * @param route a multicast route - * @param connectPoint a sink connect point - */ - void addSink(McastRoute route, ConnectPoint connectPoint); - - /** - * Removes a sink from the route. - * - * @param route the multicast route - * @param connectPoint a sink connect point - */ - void removeSink(McastRoute route, ConnectPoint connectPoint); - - /** - * Find the data source association for this multicast route. - * - * @param route a multicast route - * @return a connect point - */ - ConnectPoint fetchSource(McastRoute route); - - /** - * Find the list of sinks for this route. - * - * @param route a multicast route - * @return a list of connect points - */ - List<ConnectPoint> fetchSinks(McastRoute route); -} diff --git a/framework/src/onos/core/api/src/main/java/org/onosproject/net/mcast/package-info.java b/framework/src/onos/core/api/src/main/java/org/onosproject/net/mcast/package-info.java deleted file mode 100644 index e8dcc7b8..00000000 --- a/framework/src/onos/core/api/src/main/java/org/onosproject/net/mcast/package-info.java +++ /dev/null @@ -1,20 +0,0 @@ -/* - * Copyright 2015 Open Networking Laboratory - * - * 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. - */ - -/** - * External model entities of the multicast RIB. - */ -package org.onosproject.net.mcast;
\ No newline at end of file |