| package net.onrc.onos.core.topology; |
| |
| import net.floodlightcontroller.core.module.IFloodlightService; |
| |
| /** |
| * Interface for providing the topology service to other modules. |
| */ |
| public interface ITopologyService extends IFloodlightService, |
| ITopologyReplicationWriter { |
| /** |
| * Allows a module to get a reference to the global topology object. |
| * |
| * @return the global Topology object |
| */ |
| public MutableTopology getTopology(); |
| |
| /** |
| * Adds a listener for topology events. |
| * |
| * @param listener the listener to add. |
| * @param startFromSnapshot if true, and if the topology is not |
| * empty, the first event should be a snapshot of the current topology. |
| */ |
| public void addListener(ITopologyListener listener, |
| boolean startFromSnapshot); |
| |
| /** |
| * Removes a listener for topology events. The listener will no longer |
| * receive topology events after this call. |
| * |
| * @param listener the listener to remove. |
| */ |
| public void removeListener(ITopologyListener listener); |
| } |